You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(firebase): support FCM condition addressing in FirebaseDestination
The format callback may now return a non-empty `condition` (an FCM condition
expression over up to 5 topics, e.g. "'A' in topics && !('B' in topics)"). When
present the message is sent with `condition` and WITHOUT `topic` (FCM accepts one
or the other, never both); an absent/empty condition falls back to the normal topic
send, so existing formatters are unaffected. Enables targeting a combination of
topics — e.g. a topic's subscribers minus those also on another topic.
Bump to 0.7.0.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
4
4
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
7
+
## [0.7.0] — 2026-05-29
8
+
9
+
### Added
10
+
-**FCM condition addressing in `FirebaseDestination`** — the `format` callback may now return a non-empty `condition` (an [FCM condition expression](https://firebase.google.com/docs/cloud-messaging/send-message#send_messages_to_topics), boolean over up to 5 topics, e.g. `"'A' in topics && !('B' in topics)"`). When present, the message is sent with `condition` and **without**`topic` (FCM accepts one or the other, never both); an absent or empty-string `condition` falls back to the normal topic send, so existing formatters are unaffected. This enables targeting a *combination* of topics — e.g. delivering to a topic's subscribers while excluding those also subscribed to another topic. `topic` still cannot be set by `format` (it is stripped, as before).
11
+
12
+
### Changed
13
+
-`FirebaseDestination.send` strips both `topic` and `condition` from the formatted body before re-applying exactly one: `condition` when non-empty, otherwise the subscription's `topic`.
0 commit comments