We reworked the service-manager interactions. The operations for credential rotation become idempotent now, making
outside retries possible.
The old commands still work but are now deprecated: they emit a warning and delegate to the new implementations. Migrate to the replacements below, as the deprecated commands will be removed in a future release.
| deprecated svm command | new svm command |
|---|---|
--svm-repair-bindings
| --svm-make-bindings-single
|
--svm-fresh-bindings
| --svm-make-bindings-double
|
--svm-refresh-bindings
| see choreography below |
The full rotation is a five-step choreography of the two idempotent commands:
- rolling restart — converge apps onto the most-recent binding.
--svm-make-bindings-single— prune to one binding per instance.--svm-make-bindings-double— add the new binding.- rolling restart — apps switch to the new binding.
--svm-make-bindings-single— prune the old binding.
If the fleet is already at one binding per instance, skip to step 3.
CHANGED
-
npm: use
bundleDependenciesinstead of shrinkwrap to ship thewhatwg-urloverride to users. shrinkwrap is no
longer honored as of npm v12. -
svm: reworked
--svm-repair-bindingsto--svm-make-bindings-singleand--svm-fresh-bindingsto
--svm-make-bindings-double. both are now idempotent and have theSERVICE_PLAN TENANT_IDcalling args, making
them consistent with othersvmcommands. -
svm:
--svm-repair-bindings,--svm-fresh-bindings, and--svm-refresh-bindingsare deprecated. they still work
but now emit a warning. they are reimplemented on top of the new idempotent binding logic in a way that reproduces
their previous behavior, and will be removed in a future release. migrate to--svm-make-bindings-single,
--svm-make-bindings-double.
FIXED
-
reg: subscription listing now uses the cursor-based paging APIs (
/subscription-manager/v2/subscriptionsand
/saas-manager/v2/application/subscriptions) instead of page-number paging, keeping pagination reliable for large
result sets (fixes #197). -
core: mtx cache now dedupes concurrent lookups of the same configured app name, avoiding redundant cf requests.