Skip to content

Releases: RailsEventStore/rails_event_store

v2.16.0

17 Mar 13:39
8dd4057
Compare
Choose a tag to compare

RubyEventStore

  • Fix: deprecation warning about ostruct not being a part of Ruby 3.5
  • Change: OpenStruct is handled by RubyEventStore::Mappers::Transformation::PreserveTypes only if the library is present in the project bundle
  • Add: Testing against and official support for Rails 8.0
  • Add: Testing against and official support for Ruby 3.4
  • Remove: Testing against Rails 6.0 and 6.1 and official support for this EOL releases

RailsEventStore

  • Add: Testing against and official support for Rails 8.0
  • Add: Testing against and official support for Ruby 3.4
  • Remove: Testing against Rails 6.0 and 6.1 and official support for this EOL releases

RubyEventStore::ActiveRecord

  • Add: Testing against and official support for Rails 8.0
  • Add: Testing against and official support for Ruby 3.4
  • Remove: Testing against Rails 6.0 and 6.1 and official support for this EOL releases

AggregateRoot

  • Add: Testing against and official support for Rails 8.0
  • Add: Testing against and official support for Ruby 3.4
  • Remove: Testing against Rails 6.0 and 6.1 and official support for this EOL releases

RubyEventStore::RSpec

  • Add: Testing against and official support for Rails 8.0
  • Add: Testing against and official support for Ruby 3.4
  • Remove: Testing against Rails 6.0 and 6.1 and official support for this EOL releases

RubyEventStore::Browser

  • Add: Testing against and official support for Rails 8.0
  • Add: Testing against and official support for Ruby 3.4
  • Remove: Testing against Rails 6.0 and 6.1 and official support for this EOL releases

v2.15.0

09 Aug 13:15
Compare
Choose a tag to compare

RubyEventStore

  • no changes

RailsEventStore

  • Fix: Template works with existing Rails 7.1 applications [046a59c, #1743]

RubyEventStore::ActiveRecord

  • Fix: Compatibility with strong_migrations [#1755]

AggregateRoot

  • Remove: Drop obsolete base64 gem dependency [#1738]

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • Add: Possibility to copy event id, payload or metadata to clipboard

  • Add: Search modal launched by Meta + K key shortcut

  • Add: Tooltips for current timezone — hovering over the created at or valid at fields displays selected timezone

  • Add: Favicon [#667]

  • Fix: Map IANA linked time zones to the canonical ones [7a13952, #1753]

  • Change: Pagination state is now kept in URL [#1742, #763]

  • Change: UI improvements

    show
    index

v2.14.0

29 Jan 14:49
Compare
Choose a tag to compare

RubyEventStore

  • no changes

RailsEventStore

  • no changes

RubyEventStore::ActiveRecord

  • no changes

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • Change: Several UX improvements for displaying events [#1726]

  • Change: Show timestamps in local timezone when browsing stream [#1723, #1727]

    Timezone is detected upon Browser start. There's still an ability to revert display to show timestamps in UTC, using select input in the footer.

    res_browser

v2.13.0

07 Dec 13:14
Compare
Choose a tag to compare

RubyEventStore

  • Change: RubyEventStore::BatchEnumerator optimization [#1708, #1711]

    Skip fetching the next batch if the previous one was smaller than the specified batch size.

RailsEventStore

  • no changes

RubyEventStore::ActiveRecord

  • Change: RubyEventStore::ActiveRecord::BatchEnumerator optimization [#1708, #1711]

    Skip fetching the next batch if the previous one was smaller than the specified batch size)

  • Change: N+1 optimization [#1708, #1710]

    Avoiding N+1 without additional query when join clause is used in the base read query.

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • no changes

v2.12.1

05 Sep 10:56
Compare
Choose a tag to compare

RubyEventStore

  • no changes

RailsEventStore

  • no changes

RubyEventStore::ActiveRecord

  • Fix: foreign key migration generators introduced in v2.12.0[459f443]

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • no changes

v2.12.0

04 Sep 15:36
e6a2706
Compare
Choose a tag to compare

RubyEventStore

  • Change: Calling Specification#from and Specification#to won't trigger SQL query to check if given event id exists [067e9b7]

  • Fix: Raise RubyEventStore::EventNotFound instead of NoMethodError if the event_id passed to Specification#from or Specification#to does not exist while using InMemoryRepository [#1673]

RailsEventStore

  • Add: Support ActiveJob::ConfiguredJob as a valid handler for ActiveJobScheduler [331c16b]

RubyEventStore::ActiveRecord

  • Add: Support for ActiveRecord PostGIS adapter in migration generators [#1650, #1668]

  • Add: Support for ActiveRecord Trilogy adapter in migration generators [#1671]

  • Add: Foreign keys for data consistency. This prevents manually removing events at database level if they are already linked in any stream [#1646]

    For existing Rails app installations use:

    bin/rails g rails_event_store_active_record:migration_for_foreign_key_on_event_id
    bin/rails db:migrate

    For non–Rails applications:

    bundle exec rake db:migrations:add_foreign_key_on_event_id
    bundle exec rake db:migrate

    New installations are no–op.

  • Fix: Raise RubyEventStore::EventNotFound instead of ActiveRecord::RecordNotFound if the event_id passed to Specification#from or Specification#to does not exist [#1673]

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • Fix: Publish matcher works correctly with in_streams specifier [#1670, #1672]

RubyEventStore::Browser

  • no changes

v2.11.1

24 Jul 16:24
de7ba9c
Compare
Choose a tag to compare

RubyEventStore

  • no changes

RailsEventStore

  • no changes

RubyEventStore::ActiveRecord

  • no changes

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • Fix: Browser being unusable due to two–section only version number and two–digit number being a part of version number [0400187, #1647]

v2.11.0

20 Jul 08:42
10ce88e
Compare
Choose a tag to compare

RubyEventStore

  • Fix: Restoring original type with PreserveTypes won't break when stored data shape is different than original one. This change also allows using OpenStruct for data and metadata [3c5d928]

RailsEventStore

  • Add: Out of the box OpenStruct support in JSONClient [2bed49c]

RubyEventStore::ActiveRecord

  • no changes

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • no changes

v2.10.0

19 Jul 13:03
Compare
Choose a tag to compare

RubyEventStore

  • no changes

RailsEventStore

  • Add: Optional ActiveJobIdOnlySchedulerthat carries only event_id. The largest benefit of it has constant size in redis as opposed to size dependent on data and metadata. With the scheduler comes the AsyncHandlerJobIdOnly [#755, 46dedc2]

  • Fix: JSONClient correctly handles mapper argument. Previously the mapper argument was unusable, as it was always and unconditionally overwritten [77b7338]

RubyEventStore::ActiveRecord

  • Add: MySQL now supports json column data type for storing data and metadata of events [8e4850b, ]

  • Fix: streams_of being slow due to lack of index on event_id in event_store_events_in_streams table (e.g. causing laggy event overview in RES Browser) [5c2c367]

    When installing RES from scratch, you don't have to do anything, RES setup will generate valid db migrations. If you're running RES in your existing application, please run accordingly:

    • for a Rails app:

      bin/rails g rails_event_store_active_record:migration_for_missing_event_id_index
      bin/rails db:migrate
      
    • for a non–Rails Ruby app:

      bundle exec rake db:migrations:fix_missing_event_id_index
      bundle exec rake db:migrate
      

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • no changes

v2.9.1

03 Feb 14:16
Compare
Choose a tag to compare

RubyEventStore

  • Fix: Encryption Mapper
    The missing transformation has been added. The RubyEventStore::Metadata requires metadata keys to be symbols.
  • Change: RubyEventStore::Client now has the InMemoryRepository as the default repository.
    There's no required action. This change is backward compatible.

RailsEventStore

  • no changes

RubyEventStore::ActiveRecord

  • Fix: Problem with reading the last event sorted by valid_at.
  • Change: Update ActiveRecord::Migration version from 4.2 to the latest.
    The schema doesn't change. There's no required action.

AggregateRoot

  • no changes

RubyEventStore::RSpec

  • no changes

RubyEventStore::Browser

  • no changes