Skip to content

Releases: launchdarkly/ruby-eventsource

v2.3.0

04 Sep 12:49
e54bf5f

Choose a tag to compare

2.3.0 (2025-08-28)

Features

  • Add ability to control SSE request method and body (#51) (7c65c4b)
  • Add ability to disable retries (#67) (f272b90)
  • Allow providing HTTP client option settings (#68) (1d9b31c)

Bug Fixes

  • Handle redirect on 301 and 307 (7d342e7)
  • Pass through proxy user and password if present (#69) (0bb36f3)
  • Support field without colon in event (7d342e7)

v2.2.6

15 Jul 15:23
45e2033

Choose a tag to compare

2.2.6 (2025-07-15)

Bug Fixes

  • Add logger as explicit dependency (#61) (50efb0d)
  • Update force_encoding to operate on unfrozen string (#60) (0e2e80d)

v2.2.5

14 Jul 17:10
ffd0ffa

Choose a tag to compare

2.2.5 (2025-07-14)

Bug Fixes

  • Bump minimum to ruby 3.1 (#57) (93a9947)
  • Explicitly mark buffer variable as unfrozen (#59) (ccf79af)

v2.2.4

29 Apr 13:37
a74139b

Choose a tag to compare

2.2.4 (2025-04-18)

Bug Fixes

  • Remove rake dependency from gemspec (#53) (8be0ccc)

v2.2.3

07 Mar 18:34
455445c

Choose a tag to compare

2.2.3 (2025-03-07)

Bug Fixes

  • Provide thread name for inspection (#46) (191fd68)

2.2.2

13 Mar 15:49

Choose a tag to compare

[2.2.2] - 2023-03-13

Fixed:

  • Content-Type checking was failing in some environments due to casing issues. Updated check to use a more robust header retrieval method. (Thanks, matt-dutchie!)

2.2.1

15 Jun 19:36

Choose a tag to compare

[2.2.1] - 2022-06-15

Fixed:

  • Improved efficiency of SSE parsing to reduce transient memory/CPU usage spikes when streams contain long lines. (Thanks, sq-square!)

2.2.0

31 Dec 21:04

Choose a tag to compare

[2.2.0] - 2021-12-31

Added:

  • The StreamEvent type now has a new property, last_event_id. Unlike the id property which reports only the value of the id: field (if any) in that particular event, last_event_id reports the id: value that was most recently specified in any event. The specification states that this state should be included in every event; the ability to distinguish last_event_id from id is an extended feature of this gem.

Fixed:

  • The client could stop reading the stream and return an error if there was a multi-byte UTF-8 character whose bytes were split across two reads. It now handles this correctly.
  • In JRuby only, the client returned an error when trying to reconnect a stream if the initial reconnect delay was set to zero.
  • As per the specification, the parser now ignores any id: field whose value contains a null (zero byte).
  • The last event ID that is sent in the Last-Event-Id header was only being updated if an event specified a non-empty value for id:. As per the specification, it should be possible to explicitly clear this value by putting an empty id: field in an event.

2.1.1

12 Oct 17:10

Choose a tag to compare

[2.1.1] - 2021-10-12

Fixed:

  • Performance should now be greatly improved when parsing events that have very long data. Previously, the logic for parsing the stream to find line breaks could result in unnecessary extra scans of the same characters and unnecessary extra string slicing. (#20)
  • The backoff delay algorithm was being inappropriately applied before the first connection attempt. In the default configuration, that meant an extra delay of between 0.5 seconds and 1 second.
  • Leading linefeeds were being dropped from multi-line event data. This does not affect use of SSE::Client within the LaunchDarkly SDK, because LaunchDarkly streams consist of JSON data so unescaped linefeeds are not significant, but it could affect uses of this library outside of the SDK.

2.1.0

11 Aug 19:37

Choose a tag to compare

[2.1.0] - 2021-08-11

Added:

  • New closed? method tests whether close has been called on the client. (Thanks, qcn!)