Skip to content

Releases: Accenture/reactive-interaction-gateway

2.1.0

15 Feb 18:18
Compare
Choose a tag to compare

Added

  • Prometheus monitoring endpoint. #96
  • The proxy configuration can now also be passed as a JSON string. This allows to run the Docker image in environments where mounting a file in a container is not possible. #159

Removed

  • Rate limiting. #144

2.0.2

20 Jan 18:13
Compare
Choose a tag to compare

Fixed

  • Upgraded a dependency to fix the Docker build. #149

2.0.1

20 Jan 15:06
Compare
Choose a tag to compare

Fixed

  • A library upgrade caused idle SSE connections to time out after 60 seconds. This timeout is now disabled. PR #148

2.0.0

16 Jan 21:20
Compare
Choose a tag to compare

Added

  • HTTP/2 and HTTPS support. #34
  • The SSE and WebSocket endpoints now take a "subscriptions" parameter that allows to create (manual) subscriptions (JSON encoded list). This has the same effect as establishing a connection and calling the subscriptions endpoint afterwards.
  • OpenAPI (Swagger) documentation for RIG's internal API. #116
  • Support for the CloudEvents v0.2 format. #112
  • [Proxy] In API definitions regular expressions can now be used to define matching request paths. Also, request paths can be rewritten (see api.ex for an example). #88

Changed

  • The SSE and WebSocket endpoints' "token" parameter is renamed to "jwt" (to not confuse it with the connection token).
  • [Proxy] When forwarding requests, RIG related meta data (e.g. correlation ID) in CloudEvents is now put into an object under the top-level key "rig". Note that in terms of the current CloudEvents 0.2 specification this makes "rig" an extension. Also, all RIG related keys have been renamed from snake_case to camelCase.
  • [Proxy] Previously API definitions for proxy were turning on security check for endpoints by not_secured: false which is a bit confusing -- changed to more readable form secured: true.
  • [Auth] No longer assumes the "Bearer" token type when no access token type is prepended in the Authorization header. Consequently, a client is expected to explicitly use "Bearer" for sending its JWT authorization token. More more details, see RFC 6749.
  • All events that RIG creates are now in CloudEvents v0.2 format (before: CloudEvents v0.1).
  • [Proxy] When using Kafka or Kinesis as the target, connection related data is added to the event before publishing it to the respective topic/partition. With the introduction of CloudEvents v0.2, RIG now follows the CloudEvent extension syntax with all fields put into a common top-level object called "rig". Additionally, the object's field names have been changed slightly to prevent simple mistakes like case-sensitivity issues. Also, the expected request body fields have been renamed to be more descriptive. To that end, usage information returned as plaintext should help the API user in case of a Bad Request.

Fixed

  • Extractor configuration reload
  • [Inbound] Fixed response to CORS related preflight request.

2.0.0-beta.2

09 Nov 15:31
Compare
Choose a tag to compare

Added

  • [Auth] JWT now supports RS256 algorithm in addition to HS256. #84
  • [Outbound] Support Kafka SSL and SASL/Plain authentication. #79
  • [Inbound] Add new endpoints at /_rig/v1/ for subscribing to CloudEvents using SSE/WS, for creating subscriptions to specific event types, and for publishing CloudEvents. #90
  • [Inbound] Expose setting for proxy response timeout. #91
  • [Inbound] Subscriptions inference using JWT on SSE/WS connection and subscription creation. #90
  • [Inbound] Allow publishing events to Kafka and Kinesis via reverse-proxy HTTP calls. Optionally, a response can be waited for (using a correlation ID).
  • [Docs] Simple event subscription examples for SSE and WS.
  • [Outbound] Kafka/Kinesis firehose - set topic/stream to consume and invoke HTTP request when event is consumed.

Changed

  • [Inbound] SSE heartbeats are now sent as comments rather than events, and events without data carry an empty data line to improve cross-browser compatibility. #64
  • [Docs] General documentation and outdated info.

Removed

  • [Inbound] Previous SSE/WS communication via Phoenix channels.
  • Events that don't follow the CloudEvents spec are no longer supported (easy migration: put your event in a CloudEvent's data field).

Fixed

  • [Inbound] Flaky tests in router_test.exs -- switching from Bypass to Fakeserver. #74
  • [Docs] Channels example. [#64]#64