diff --git a/.changeset/template-republish.md b/.changeset/template-republish.md deleted file mode 100644 index 0fa5cc1..0000000 --- a/.changeset/template-republish.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'@passmint/node': minor ---- - -Add `templates.republish()` and `templates.retrieveRepublish()` to push a template's current design to passes already issued from it, plus the `TemplateRepublish` and `TemplateRepublishedEvent` types. Existing call shapes are unchanged. - -- `templates.republish(id)` sends an `Idempotency-Key` (override with `{ idempotencyKey }`). A 429 `republish_in_progress` throws `PassmintRateLimitError` immediately; the SDK never auto-retries 429s, and this one can last minutes. -- New `template.republished` event type. `PassmintEventType` and `Event['type']` gain it, so exhaustive `switch`es over event types will flag the new case. `PASSMINT_EVENT_TYPES` gains an entry at runtime: code that subscribes with `[...PASSMINT_EVENT_TYPES]` will now receive it. It carries `data.object.template_republish` and no `pass`, so narrow with `event.type === 'template.republished'` and use `TemplateRepublishedEvent`. -- `template.republished` is only delivered to endpoints subscribed to it by name, never to `"*"`, so existing wildcard handlers that read `data.object.pass` keep working. -- `PassDelivery` gains optional `apple.retrying` and `google.retrying`, set when a failed push was queued for automatic retry. -- Server behaviour: `pass.update_failed` now fires only for permanent failures or once retries are exhausted, not for the first transient failure. diff --git a/CHANGELOG.md b/CHANGELOG.md index a6aa7ef..ada94a0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # @passmint/node +## 0.7.0 + +### Minor Changes + +- bc7ce7e: Add `templates.republish()` and `templates.retrieveRepublish()` to push a template's current design to passes already issued from it, plus the `TemplateRepublish` and `TemplateRepublishedEvent` types. Existing call shapes are unchanged. + + - `templates.republish(id)` sends an `Idempotency-Key` (override with `{ idempotencyKey }`). A 429 `republish_in_progress` throws `PassmintRateLimitError` immediately; the SDK never auto-retries 429s, and this one can last minutes. + - New `template.republished` event type. `PassmintEventType` and `Event['type']` gain it, so exhaustive `switch`es over event types will flag the new case. `PASSMINT_EVENT_TYPES` gains an entry at runtime: code that subscribes with `[...PASSMINT_EVENT_TYPES]` will now receive it. It carries `data.object.template_republish` and no `pass`, so narrow with `event.type === 'template.republished'` and use `TemplateRepublishedEvent`. + - `template.republished` is only delivered to endpoints subscribed to it by name, never to `"*"`, so existing wildcard handlers that read `data.object.pass` keep working. + - `PassDelivery` gains optional `apple.retrying` and `google.retrying`, set when a failed push was queued for automatic retry. + - Server behaviour: `pass.update_failed` now fires only for permanent failures or once retries are exhausted, not for the first transient failure. + ## 0.6.0 ### Minor Changes diff --git a/package.json b/package.json index 8a6c258..66a9179 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@passmint/node", - "version": "0.6.0", + "version": "0.7.0", "description": "Official Node.js SDK for the Passmint API.", "type": "module", "packageManager": "pnpm@9.15.0", diff --git a/src/version.ts b/src/version.ts index 0153627..a61a0cc 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1,2 +1,2 @@ // Generated by scripts/sync-version.mjs — do not edit by hand. -export const VERSION = '0.6.0' +export const VERSION = '0.7.0'