OWASP-BLT / BLT-Flutter

The official OWASP BLT App repository/ Heist 'em bugs!
https://owasp.org/www-project-bug-logging-tool/
BSD 3-Clause "New" or "Revised" License
23 stars 31 forks source link

Bump awesome_notifications from 0.9.3+1 to 0.10.0 #451

Open dependabot[bot] opened 1 month ago

dependabot[bot] commented 1 month ago

Bumps awesome_notifications from 0.9.3+1 to 0.10.0.

Release notes

Sourced from awesome_notifications's releases.

Release Notes for Awesome Notifications Version 0.10.0

We're excited to announce the release of Awesome Notifications Version 0.10.0. This update encompasses a range of enhancements designed to improve the functionality and stability of your notification experiences on both Android and iOS platforms, as well as ensuring full compatibility with the latest Flutter developments.

Key Enhancements:

Extended Support for Flutter 3.24

  • Updated to Flutter 3.24: The entire Awesome Notifications framework, including the example app, has been updated to fully support Flutter 3.24. This includes adapting to new Gradle Java standards and leveraging the latest features and optimizations provided by Flutter.

Android Platform Enhancements

  • Android 14 and AGP 8 Support: Upgraded all dependencies and the example app for full compatibility with Android 14 and Android Gradle Plugin 8, utilizing the latest Android features and development tools.
  • Firebase Dependencies Updated: Updated all Firebase dependencies to support Firebase core 3.0.0, ensuring our framework integrates seamlessly with the latest Firebase improvements.
  • MediaPlayer Album Art Resolution Fix: Addressed an issue where album art was displaying at reduced resolution on Android 14 devices. Album artwork now renders clearly and crisply, improving the visual quality of the media player.

iOS Platform Enhancements

  • Resilience Against Misconfigured Notification Service Extensions: Made adjustments to enhance resilience against missing registered events caused by misconfigured Notification Service Extension targets. In such cases, events will be registered using the current date instead, avoiding crashes.

Cross-Platform Improvements

  • Interval Changes to Duration Type: Changed interval values from integers (seconds) to Duration type, enhancing readability and understanding of time intervals within code.

Deprecated Features

  • Deprecation of weekOfMonth Parameter: The weekOfMonth parameter is deprecated due to unimplemented dependencies expected in versions beyond 1.0.0. It may be reconsidered for future inclusion.

Breaking Changes

  • Minimum Android SDK Increased to 23: The minimum Android version supported is now Android 6.0 (Marshmallow), to utilize newer security and encryption features.
  • Minimum iOS Deployment Target Increased to iOS 12: The increase in iOS deployment target to iOS 12 enhances compatibility with newer iOS features and improves security and performance.
  • Manual Addition of Android Permissions Required: Developers must now manually declare necessary permissions in their AndroidManifest.xml to ensure full functionality of the notification features, in case they are needed:
    • android.permission.VIBRATE
    • android.permission.SCHEDULE_EXACT_ALARM
    • android.permission.USE_FULL_SCREEN_INTENT
    • android.permission.WAKE_LOCK
    • android.permission.FOREGROUND_SERVICE
    • android.permission.RECEIVE_BOOT_COMPLETED

This version represents our commitment to providing a powerful, flexible notifications framework that meets the demands of modern app development. By addressing key areas of enhancement and ensuring compatibility with the latest development standards, we aim to deliver a more reliable, feature-rich package that developers can depend on for creating engaging notification experiences.

We encourage all users to update to version 0.10.0 to take full advantage of these improvements.

Changelog

Sourced from awesome_notifications's changelog.

[0.10.0] - 2024-10-14

Added

  • Support to AGP 8: Added new proguard rules to allow SQLite database, used to capture notification events and schedules, to work with AGP 8.
  • Example app updated to support Flutter 3.19: The flutter example was updated to fully support Flutter 3.24 with new Gradle Java Standards.
  • Firebase dependencies updated: All Firebase dependencies was updated to support Firebase core 3.0.0.
  • Intervals changed to Duration type: The inteval value was changed from int (sec) to Duration, allowing a better understanding of time reading the code.
  • Documentation Updated: Documentation updated to also include AndroidManifest instructions to recreate schedules when the device is restarted.

Fixed

  • MediaPlayer Album Art Resolution Fix: Addressed an issue where album art was displaying at reduced resolution on Android 14 devices. Album artwork now renders clearly and crisply, improving the visual quality of the media player.

Removals

  • Gson Library Removal: Removed the Gson library due to compatibility issues with Android's latest releases and the R8 minification process. Transitioned to a more robust serialization framework that better supports obfuscation and modern Android versions.

Breaking changes

  • Minimal supported Android version increased to 23: The minimal android supported is now 23 (Android 6), since some encryption and security features rely on this minimal version.
  • Minimum iOS Deployment Target Increased to 12: The minimum iOS deployment target has been increased to iOS 12 to leverage newer API capabilities and enhance app security and performance.
  • Necessity to Manually Add Permissions in AndroidManifest.xml: Projects will now need to manually declare the following permissions in their AndroidManifest.xml in case needed:
    • android.permission.VIBRATE
    • android.permission.SCHEDULE_EXACT_ALARM
    • android.permission.USE_FULL_SCREEN_INTENT
    • android.permission.WAKE_LOCK
    • android.permission.FOREGROUND_SERVICE
    • android.permission.RECEIVE_BOOT_COMPLETED

Deprecated

  • weekOfMonth parameter is deprecated and scheduled for removal in a future release due to unimplemented dependencies expected in versions beyond 1.0.0. It may be reconsidered for inclusion in later versions.
Commits
  • 5609585 Merge branch 'development'
  • fb08f50 Merge branch 'features/add-agp-8-support' into development
  • c15ffe8 Updated project to use last core packages on iOS at example app
  • 6319ace Changelog and documentation updated to version 0.10.0
  • 02a3478 Update test cases to use new Duration type and ensure high test coverage
  • 578b8e8 Update example app for Flutter 3.24 compatibility
  • b91a297 Example app updated to use the old App ID
  • 9bcc47b Refactor NotificationInterval to use Duration type
  • df01d57 Added RECEIVE_BOOT_COMPLETED permission at example app
  • e87ea6d Deprecate weekOfMonth parameter in calendar model
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)