Skip to content

Build(deps): Bump io.github.mirzemehdi:kmpnotifier from 1.6.1 to 2.0.0 - #32

Open
dependabot[bot] wants to merge 1 commit into
developfrom
dependabot/gradle/io.github.mirzemehdi-kmpnotifier-2.0.0
Open

Build(deps): Bump io.github.mirzemehdi:kmpnotifier from 1.6.1 to 2.0.0#32
dependabot[bot] wants to merge 1 commit into
developfrom
dependabot/gradle/io.github.mirzemehdi-kmpnotifier-2.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 15, 2026

Copy link
Copy Markdown

Bumps io.github.mirzemehdi:kmpnotifier from 1.6.1 to 2.0.0.

Release notes

Sourced from io.github.mirzemehdi:kmpnotifier's releases.

v2.0.0-RC

KMPNotifier 2.0.0

A major release: the library is split into focused modules so local-notification users no longer pull in Firebase, with a new KMPNotifier API. Your 1.x code keeps working — the old NotifierManager API is deprecated but fully functional via the compatibility umbrella.

✨ Highlights

  • Modular artifacts — depend only on what you use:
    • io.github.mirzemehdi:kmpnotifier-local — local notifications, no Firebase. All targets.
    • io.github.mirzemehdi:kmpnotifier-push-firebase — Firebase Cloud Messaging push. All targets (delivers on Android/iOS, no-op mock on desktop/web — same as 1.x).
    • io.github.mirzemehdi:kmpnotifier-core — shared core, pulled in automatically.
  • New KMPNotifier entry point with pluggable extensions:
    KMPNotifier.initialize(configuration, FirebasePush)   // local installs automatically
    KMPNotifier.localNotifier.notify { title = "Hi"; body = "There" }
    val token = KMPNotifier.firebasePushNotifier.getToken()
  • Listener split by concernKMPNotifier.Listener for shared events (clicks, action buttons); PushListener via KMPNotifier.addPushListener(...) for token/payload events.

⚠️ Breaking changes

  • Requires Kotlin 2.4.0+.
  • iOS minimum deployment target is 16.0 for the push module.
  • Built with AGP 9 — the Android artifact is now single-variant; the 1.x -android-debug artifacts no longer exist.
  • iOS consumes Firebase via Swift Package Manager instead of CocoaPods. Published klibs expose the swiftPMImport.… namespace instead of cocoapods.FirebaseMessaging.*.

🐛 Fixes

  • iOS: the UNUserNotificationCenter delegate is now owned by the local module and retained strongly — previously held by a weak reference inside the Firebase initializer, so notification callbacks could silently stop, and local-only setups depended on Firebase for click handling.
  • Thread-safe event fan-out; NotificationReceiver is no longer exported.

📦 Migration

The deprecated NotifierManager API forwards to the new API with @Deprecated(ReplaceWith(...)) guidance — upgrade first, migrate at your own pace (removal planned for 3.0.0). Full guide: [MIGRATION.md](https://github.com/mirzemehdi/KMPNotifier/blob/main/MIGRATION.md).

1.x 2.0
NotifierManager.initialize(config) KMPNotifier.initialize(config, FirebasePush)
NotifierManager.getLocalNotifier() KMPNotifier.localNotifier
NotifierManager.getPushNotifier() KMPNotifier.firebasePushNotifier
NotifierManager.addListener { onNewToken... } KMPNotifier.addPushListener(...)
NotifierManager.addListener { onNotificationClicked... } KMPNotifier.addListener(...)

Full Changelog: https://github.com/mirzemehdi/KMPNotifier/blob/main/CHANGELOG.md


... (truncated)

Changelog

Sourced from io.github.mirzemehdi:kmpnotifier's changelog.

[2.0.0] - 2026-06-12

The library is split into focused modules so that local-notification users no longer pull in Firebase. See https://github.com/mirzemehdi/KMPNotifier/blob/main/MIGRATION.md for a step-by-step guide.

Added

  • New artifacts:
    • io.github.mirzemehdi:kmpnotifier-core — shared core (configuration, permissions, logging, shared events). All targets.
    • io.github.mirzemehdi:kmpnotifier-local — local notifications, no Firebase dependency. All targets.
    • io.github.mirzemehdi:kmpnotifier-push-firebase — Firebase Cloud Messaging push. All targets: delivers on android/iOS, no-op mock on desktop/web (1.x parity).
  • New entry point KMPNotifier with pluggable extensions: KMPNotifier.initialize(configuration, LocalNotifications) or KMPNotifier.initialize(configuration, FirebasePush) (FirebasePush installs LocalNotifications automatically).
  • KMPNotifier.localNotifier / LocalNotifications.notifier — local notifier accessor.
  • KMPNotifier.firebasePushNotifier / FirebasePush.notifier — push notifier accessor (push module only).
  • KMPNotifier.Listener — shared events (notification clicks, action buttons) for both local and push notifications.
  • PushListener + KMPNotifier.addPushListener/removePushListener/setPushListener (sugar over FirebasePush.addListener/...) — push-only events (token updates, push payloads), no longer part of the shared listener surface.
  • Scheduled local notifications via the scheduledAt (epoch millis) builder property — delivered on android (AlarmManager) and iOS (UNTimeIntervalNotificationTrigger); shown immediately on desktop/web. remove(id) cancels a pending schedule.
  • Notification action buttons via NotificationAction (the actions builder property), including inline text input (allowsTextInput / inputLabel; entered text delivered under the remote_input payload key). Android and iOS. Triggered actions arrive in KMPNotifier.Listener.onAction.
  • Builder DSL (KMPNotifier.localNotifier.notify { }) with id, title, body, payloadData (and a payload { } sub-DSL), image, actions, scheduledAt.
  • CHANGELOG.md and MIGRATION.md.
  • Cross-platform test suite (jvm, android, ios, js).

Changed

  • Built with AGP 9 (com.android.kotlin.multiplatform.library). The android target is now single-variant: the -android-debug artifacts published by 1.x no longer exist; consumers always get the release variant (standard for KMP libraries).

  • The library no longer depends on Koin (or any DI framework) at runtime — dependencies are wired manually inside the core module. One fewer transitive dependency for consumers.

  • io.github.mirzemehdi:kmpnotifier is now a compatibility umbrella that depends on the new modules. Existing code keeps compiling and working unchanged.

  • iOS: Firebase is now consumed through Swift Package Manager instead of the CocoaPods Gradle plugin (Kotlin swiftPMDependencies, firebase-ios-sdk 12.14.0). Kotlin is updated to 2.4.0 and the iOS minimum deployment target is now 16.0 (was 15.4).

  • Android: the Firebase messaging service is declared by kmpnotifier-push-firebase; the notification receiver and startup provider are declared by kmpnotifier-local/kmpnotifier-core. The merged manifest of existing apps is equivalent — no action needed.

Deprecated

  • NotifierManager and its platform extension functions. They keep working in 2.x and forward to the new API; removal is planned for 3.0.0. Replace with KMPNotifier, LocalNotifications and FirebasePush (see MIGRATION.md).

Fixed

... (truncated)

Commits

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 show <dependency name> 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)

Bumps [io.github.mirzemehdi:kmpnotifier](https://github.com/mirzemehdi/KMPNotifier) from 1.6.1 to 2.0.0.
- [Release notes](https://github.com/mirzemehdi/KMPNotifier/releases)
- [Changelog](https://github.com/mirzemehdi/KMPNotifier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mirzemehdi/KMPNotifier/commits)

---
updated-dependencies:
- dependency-name: io.github.mirzemehdi:kmpnotifier
  dependency-version: 2.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update java code labels Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file java Pull requests that update java code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants