Releases: btravstack/amqp-contract
Release list
@amqp-contract/worker@2.2.0
Patch Changes
- Updated dependencies [bfc138c]
- @amqp-contract/contract@2.2.0
- @amqp-contract/core@2.2.0
@amqp-contract/worker@2.1.0
Patch Changes
- Updated dependencies [a8628d5]
- @amqp-contract/contract@2.1.0
- @amqp-contract/core@2.1.0
@amqp-contract/testing@2.2.0
@amqp-contract/testing@2.2.0
@amqp-contract/testing@2.1.0
@amqp-contract/testing@2.1.0
@amqp-contract/core@2.2.0
Patch Changes
- Updated dependencies [bfc138c]
- @amqp-contract/contract@2.2.0
@amqp-contract/core@2.1.0
Patch Changes
- Updated dependencies [a8628d5]
- @amqp-contract/contract@2.1.0
@amqp-contract/contract@2.2.0
Minor Changes
-
bfc138c: Upgrade
unthrown(and@unthrown/vitest) to3.0.0.amqp-contract's own public surface is unchanged — the
Result/AsyncResultyou receive from the client and worker keep the same shape and methods, and no source changes were needed.unthrown 3.0 does change how a defect is produced inside a
qualifymapper, which matters only if you author handlers that intentionally route an unexpected failure to theDefectchannel:- The standalone
Defectconstructor is no longer exported. qualifynow receives a second argument — adefectcallback — so its signature is(cause, defect) => E | defect(cause).
- import { fromPromise, Defect } from "unthrown"; - fromPromise(work(), (cause) => isExpected(cause) ? new MyError(cause) : Defect(cause)); + import { fromPromise } from "unthrown"; + fromPromise(work(), (cause, defect) => isExpected(cause) ? new MyError(cause) : defect(cause));
Mappers that only return a modeled error (the common case — e.g.
(cause) => new RetryableError("…", cause)) are unaffected. - The standalone
@amqp-contract/contract@2.1.0
Minor Changes
-
a8628d5: Upgrade
unthrown(and@unthrown/vitest) to2.0.0.unthrown 2.0 is additive relative to 1.x — it adds an
AsyncResultvalue namespace (AsyncResult.fromPromise/.all/ …), aflatTapErrcombinator, and anisResultguard. None of amqp-contract's public API changed: theResult/AsyncResulttypes you receive from the client and worker keep the same shape (2.0's types are a superset of 1.x's), andOk/Err/fromPromise/matchTags/TaggedError/.isOk()/.match()are unchanged.No code changes are required to adopt this. If you import
unthrowndirectly alongside amqp-contract, bump your own dependency to^2.0.0so a single copy is shared.
@amqp-contract/client@2.2.0
Patch Changes
- Updated dependencies [bfc138c]
- @amqp-contract/contract@2.2.0
- @amqp-contract/core@2.2.0
@amqp-contract/client@2.1.0
Patch Changes
- Updated dependencies [a8628d5]
- @amqp-contract/contract@2.1.0
- @amqp-contract/core@2.1.0