Overview | Getting Started | Features | Try Me | Changelog | Contributing |
---|
19.0.0 (2024-12-05)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 19 (e623821)
- solace-message-client: remove deprecated APIs (393c003)
-
solace-message-client: Updating
@solace-community/angular-solace-message-client
to Angular 19 introduced a breaking change.To migrate:
- Update your application to Angular 19; for detailed migration instructions, refer to https://v19.angular.dev/update-guide;
- Update
solclientjs
to version 10.17.1.
-
solace-message-client: Removing the deprecated APIs introduced breaking changes.
The following APIs have been removed:
SolaceMessageClientModule.forRoot
=> register Angular Solace Message Client usingprovideSolaceMessageClient
function instead;SolaceMessageClientModule.forChild
=> register Angular Solace Message Client usingprovideSolaceMessageClient
function instead;OAuthAccessTokenProvider
=> useOAuthAccessTokenFn
instead;BrowseOptions.emitOutsideAngularZone
=> messages are received in the zone in which subscribed to the Observable. To receive messages outside the Angular zone, subscribe to the Observable outside the Angular zone, otherwise inside the Angular zone;ConsumeOptions.emitOutsideAngularZone
=> messages are received in the zone in which subscribed to the Observable. To receive messages outside the Angular zone, subscribe to the Observable outside the Angular zone, otherwise inside the Angular zone;ObserveOptions.emitOutsideAngularZone
=> messages are received in the zone in which subscribed to the Observable. To receive messages outside the Angular zone, subscribe to the Observable outside the Angular zone, otherwise inside the Angular zone;RequestOptions.emitOutsideAngularZone
=> replies are received in the zone in which subscribed to the Observable. To receive replies outside the Angular zone, subscribe to the Observable outside the Angular zone, otherwise inside the Angular zone;
18.0.0 (2024-06-03)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 18 (bacf6aa)
-
solace-message-client: Updating
@solace-community/angular-solace-message-client
to Angular 18 introduced a breaking change.To migrate:
- Update your application to Angular 18; for detailed migration instructions, refer to https://v18.angular.dev/update-guide;
- Update
solclientjs
to version 10.16.0;
17.1.0 (2024-05-14)
- solace-message-client: deprecate class-based access token provider in favor of functional access token provider (94a3f0e)
- solace-message-client: provide function to set up Solace Message Client (d9be295)
- solace-message-client: receive messages in the zone in which subscribed for messages (944b10c)
- solace-message-client: support connecting to multiple Solace message brokers (c832b00), closes #71
- solace-message-client: support loading config asynchronously (1be10e6)
17.0.1 (2024-05-07)
- solace-message-client: support subscriptions with #share and #noexport (fa161bc)
17.0.0 (2023-11-21)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 17 (49b8c86), closes #68
-
solace-message-client: Updating
@solace-community/angular-solace-message-client
to Angular 17 introduced a breaking change.To migrate:
- Update your application to Angular 17; for detailed migration instructions, refer to https://v17.angular.io/guide/update-to-latest-version;
- Update
solclientjs
to version 10.15.0; solclientjs
now requires type definitions for node. In your tsconfig, addnode
to thetypes
array incompilerOptions
. If you have not specifiedtypes
, no manual registration ofnode
is required, since withouttypes
array all @types packages are included in the build.
16.0.0 (2023-05-17)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 16 (73a5edc), closes #60
- testapp: improve accessibility of testing app (7f91a5c)
-
solace-message-client: Updating
@solace-community/angular-solace-message-client
to Angular 16 introduced a breaking change.To migrate:
- update your application to Angular 16; for detailed migration instructions, refer to https://v16.angular.io/guide/update-to-latest-version;
- update
solclientjs
to version 10.13.0;
15.0.0 (2022-12-20)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 15 (4638ed2), closes #52
-
solace-message-client: Updating
@solace-community/angular-solace-message-client
to Angular 15 introduced a breaking change.To migrate:
- update your application to Angular 15; for detailed migration instructions, refer to https://v15.angular.io/guide/update-to-latest-version;
14.0.1 (2022-11-23)
14.0.0 (2022-08-16)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 14 (6c48828), closes #49
- tryme: use Solace sponsored broker as default broker (f4879be)
- solace-message-client: remove deprecated API
ObserveOptions#requestTimeout
(813cf2d) - solace-message-client: remove deprecated API
SolaceMessageClient#enqueue
(7f9125c)
-
solace-message-client: Updating
@solace-community/angular-solace-message-client
to Angular 14 introduced a breaking change.To migrate:
- update your application to Angular 14; for detailed migration instructions, refer to https://v14.angular.io/guide/update-to-latest-version;
- update @scion/toolkit to version 1.0.0 using the following command:
npm install @scion/toolkit@latest --save
. Note that the toolkit was previously released as pre-releases of version13.0.0
or older; for detailed migration instructions, refer to https://github.com/SchweizerischeBundesbahnen/scion-toolkit/blob/master/CHANGELOG_TOOLKIT.md
-
solace-message-client: Removing the deprecated API
ObserveOptions#requestTimeout
introduced a breaking change.To migrate, use
ObserveOptions#subscribeTimeout
instead. -
solace-message-client: Removing the deprecated API
SolaceMessageClient#enqueue
introduced a breaking change.To send a message to a queue, use
SolaceMessageClient#publish
instead and pass the queue destination. The queue destination can be constructed usingSolclientFactory
as follows:SolclientFactory.createDurableQueueDestination('queue')
.
13.1.0 (2022-04-24)
- tryme: do not require username and password when authenticating via OAUTH (478d2b3)
- solace-message-client: add API for OAUTH 2 authentication (8090648), closes #39
- solace-message-client: add API for request-response communication (dcd831d), closes #38
- solace-message-client: allow changing the log level (7ee0155)
- solace-message-client: migrate to "solclientjs" type definitions (7ce7212), closes #37
-
solace-message-client: migrating to "solclientjs" type definitions introduced a breaking change.
To migrate:
- install
[email protected]
using the NPM command line, as follows:npm install [email protected] --save
- install
@types/events
using the NPM command line since required by solclientjs typings, as follows:npm install @types/events --save-dev
- install
@types/long
using the NPM command line since required by solclientjs typings, as follows:npm install @types/long --save-dev
- import solclientjs specific types from
solclientjs
instead of@solace-community/angular-solace-message-client
- construct solclientjs specific objects via
SolclientFactory
instead ofSolaceObjectFactory
- construct
SDTField
viaSDTField.create(...)
instead ofSolaceObjectFactory.createSDTField(...)
factory method; - construct
SDTMapContainer
vianew SDTMapContainer()
instead ofSolaceObjectFactory.createSDTMapContainer()
factory method - when subscribing to a queue, you need to pass the queue spec via
QueueDescriptor
instance instead of an object literal, as follows:messageClient.consume$({ queueDescriptor: new QueueDescriptor({type: QueueType.QUEUE, name: 'queue'}), queueProperties: undefined, // necessary until solclientjs changes it to optional });
- when browsing a queue, you need to pass the queue spec via
QueueDescriptor
instance instead of an object literal, as follows:messageClient.browse$({ queueDescriptor: new QueueDescriptor({type: QueueType.QUEUE, name: 'queue'}), });
- For more information about known typedef issues, see issue/37
- install
13.0.0 (2022-04-10)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 13 and migrate to RxJS 7.5 (4d5029f), closes #34
-
solace-message-client: updating
@solace-community/angular-solace-message-client
to Angular 13 and RxJS 7.5 introduced a breaking change.To migrate:
- update your application to Angular 13; for detailed migration instructions, refer to https://github.com/angular/angular/blob/master/CHANGELOG.md.
- migrate your application to RxJS 7.5; for detailed migration instructions, refer to https://rxjs.dev/6-to-7-change-summary.
- update @scion/toolkit to version 13; for detailed migration instructions, refer to https://github.com/SchweizerischeBundesbahnen/scion-toolkit/blob/master/CHANGELOG.md.
12.0.1 (2021-11-15)
- solace-message-client: allow controlling if to receive messages outside the Angular zone (6399eca), closes #30
12.0.0 (2021-09-08)
- solace-message-client: update @solace-community/angular-solace-message-client to Angular 12 (913ae8a)
11.0.1 (2021-08-20)
- solace-message-client: disconnect from the broker gracefully (c66c154)
- testapp: mask password field (9494653)
- solace-message-client: remove automatic marshalling of message payload into JSON (f40d0cb)
- solace-message-client: add convenience API for passing and receiving message headers (d6450da)
- solace-message-client: add Solace typedef for
Session
,MessageConsumer
,QueueBrowser
, and related objects (2e3b8ab) - solace-message-client: allow browsing messages in a queue, without removing/consuming the messages (c3bc031)
- solace-message-client: allow consuming messages sent to a queue or topic endpoint (b377ed5)
- solace-message-client: allow intercepting a message before sending it to the broker (df8e7ad)
- solace-message-client: notify when actually subscribed to a destination (245697e), closes #16
- solace-message-client: provide access to the message consumer object if connecting to a queue or topic endpoint (b37c0bf)
- solace-message-client: resolve guaranteed messaging promise after acknowledged by the broker (15fc874)
- solace-message-client: support sending messages to a queue (ab901cd)
- testapp: add toggle to follow message tail (55a517d)
- testapp: allow sending empty messages (9c260e8)
- testapp: display content of zipped messages (a119c65)
- testapp: display message content in a viewport (db13feb)
- testapp: log error when the connection to the broker fails (64052ff)
- testapp: persist session connect properties in local storage (59d328f)
- testapp: retry connecting during initial connection setup (cdf1ebe)
-
solace-message-client: Refactoring the API for publishing messages introduced following breaking change:
- message payload is no longer automatically marshalled to JSON;
- removed option to set the message body format; instead, it is derived from passed data automatically;
if passing structured data in the form of a
SDTField
, data is transported as structured message of the typeTEXT
,MAP
, orSTREAM
, or as binary message otherwise; - removed RxJS operator
mapToObject
for unmarshalling received JSON data;
To migrate:
- to send JSON serialized data (formerly via
MessageBodyFormat.JSON
or by default), you need to pass serialized data instead of the object literal; - to send a structured text message (formerly via
MessageBodyFormat.TEXT
), add transfer data to aSDTField
of the typeSTRING
, as following:solaceMessageClient.publish('topic', SolaceObjectFactory.createSDTField(SDTFieldType.STRING, 'payload'))
; - to send binary data (formerly via
MessageBodyFormat.BINARY
), pass transfer data either as string, array buffer like object, or data view instead; - if used a
format
function to convert data into a structured container (Structured Data Type), pass transfer data in the form of aSDTField
instead; - if used
mapToObject
RxJS operator to unmarshall received JSON data into a JavaScript object literal, you need to unmarshall received data yourself;
11.0.0 (2021-03-18)
- solace-message-client: do not lose subscription when a topic is re-subscribed in quick succession (659ee26), closes #7
- solace-message-client: initial contribution of Angular Solace Message Client library (d5b275b)