Skip to content

Bump nats from 1.4.12 to 2.2.0#15

Closed
dependabot[bot] wants to merge 1 commit intothangtranse/developfrom
dependabot/npm_and_yarn/nats-2.2.0
Closed

Bump nats from 1.4.12 to 2.2.0#15
dependabot[bot] wants to merge 1 commit intothangtranse/developfrom
dependabot/npm_and_yarn/nats-2.2.0

Conversation

@dependabot
Copy link

@dependabot dependabot bot commented on behalf of github Oct 18, 2021

Bumps nats from 1.4.12 to 2.2.0.

Release notes

Sourced from nats's releases.

v2.2.0

This release contains a set of changes that are API-breaking for JetStream. Since the JetStream APIs on the JavaScript clients are Preview, only the minor version of the client has been bumped. Because of these changes, you should carefully read the Breaking Changes section to ensure you are not affected.

BREAKING CHANGES

JetStream Push Consumers In Queue Groups

The Push Consumer Queue feature has changed. A new nats-server (2.4.0) has been released that modifies how this feature works. The new JavaScript clients have been modified to work with the new server and will fail to work with an existing server using push consumers with queue groups.

Previously it was possible to create a push consumer and properly get it working in a queue group with a regular NatsConnection#subscribe or NatsConnection#jetstream()#subscribe() if all queue subscriptions used the same queue name and no plain (non-queue) subscriptions were used.

If the mix of subscriptions and queues referenced the same consumer but provided different queue names or no queue names, the delivery of messages was incorrect and could create conditions where some messages were seen in duplicate or have unexpected side effects.

The new nats-server changes will make an old consumer configuration with a queue group a noop - the server will not send messages to the client. To enable a queue group to work on a consumer:

  • The consumer configuration must specify a deliver_group matching the queue group name.
  • Configurations that use the consumer with a non-matching queue group will be invalid.
  • Configurations that use a queue group consumer without a queue group will be invalid.

The NATS client for JavaScript on 2.2.0 and beyond, enforces the above rules, so an Error is thrown from NatsConnection#jetstream().subscribe() for configurations that try to use the queue group incorrectly.

Because an old server will not report deliver_group for the consumer, any jetstream#subscribe() that attempts to specify a queue group will fail the validation.

If you are creating your own NATS subscription to handle the consumer, and have an old server, you may continue to do that until you upgrade the server, at which point the nats-server will stop delivering messages to your client. Please ensure you don't use the consumer from different queue groups in the meantime.

JetStreamManager#streams#getMessage(number)

This API has been removed (it was deprecated and printing console messages). To retrieve a message by its sequence, replace with JetStreamManager#streams#getMessage({seq: number}).

JetStream SequencePair was renamed SequenceInfo

This matches changes in the server. These types are referenced from ConsumerInfo.

Other Changes

  • [FIX] #441 - when Istio is booting, it is possible for the socket to close, triggering a catch(err) where the error is undefined - this fix simply aliases that as a connection refused error.

  • [FEAT] Added DeliveryPolicy#LastPerSubject which allows a consumer to get the last message for each subject in a stream.

  • [FEAT] PubAck now reports a domain field representing the JetStream domain if set or returning an empty string. This feature requires a newer server.

  • [FIX] ConsumerConfig now have fields deliver_group, description.

... (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 merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @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)

@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Oct 18, 2021
Bumps [nats](https://github.com/nats-io/nats.js) from 1.4.12 to 2.2.0.
- [Release notes](https://github.com/nats-io/nats.js/releases)
- [Commits](nats-io/nats.js@v1.4.12...v2.2.0)

---
updated-dependencies:
- dependency-name: nats
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/nats-2.2.0 branch from e18812d to ae6f4ce Compare October 28, 2021 05:39
@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Nov 8, 2021

Superseded by #41.

@dependabot dependabot bot closed this Nov 8, 2021
@dependabot dependabot bot deleted the dependabot/npm_and_yarn/nats-2.2.0 branch November 8, 2021 03:41
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 javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants