ruby_event_store-active_record 2.14.0 → 2.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 768f44df1b698a3b20ceb63698ce08c0a33b311e8b93b44c727a3065cb8c27cb
4
- data.tar.gz: 1cdde67b7c6199bc27e305da173fc0bdb6a036e730cea0c2f1e01a2545464617
3
+ metadata.gz: a1be9b7cd983f181f719012a18922ca7e3107b03c4c663b25d960bbf1c7b1cc0
4
+ data.tar.gz: 0c22a5c1a0b261e5cdb54a70f2c52a2bca38f25e7f97e095461b38e1257b8792
5
5
  SHA512:
6
- metadata.gz: 1e63b20b1c818ef39e88c4ed13de111894676e9b804acea6a2442310899b6609d84e1d6e60a0aa2c1c896dcec3eb131650dea7c4b7948eafd91e4dd5c0f20516
7
- data.tar.gz: 7b774ec7afa20277cfcec9d0c4fa825fc6822c8ff037cef7c3310c512f324696e3ce80720fe95a8f959d498d60625cbb4f55bef4b0275fbdd036e3b41e081b4a
6
+ metadata.gz: 364917d7bd4cc7a6b1e745e03e76301cf7d413a8d1929c1c24dfe7042f5bd4c32758feb51eeffbeb9918b0248875650e3b66cfe6072d9bdcdc4677b05306a25a
7
+ data.tar.gz: 0ec4280ba169bad9bceb4c86450cbe8e089bba72fc03f2702311c2bf6f84a4dd66eb94cd85ec575760fcf8f31affb18caf89d409819e37d8752f6472c47b2d49
@@ -18,22 +18,13 @@ module RubyEventStore
18
18
  def append_to_stream(records, stream, expected_version)
19
19
  return if records.empty?
20
20
 
21
- hashes = []
22
- event_ids = []
23
- records.each do |record|
24
- hashes << insert_hash(record, record.serialize(serializer))
25
- event_ids << record.event_id
26
- end
27
- add_to_stream(event_ids, stream, expected_version) { @event_klass.insert_all!(hashes) }
21
+ append_to_stream_(records, stream, expected_version)
28
22
  end
29
23
 
30
24
  def link_to_stream(event_ids, stream, expected_version)
31
25
  return if event_ids.empty?
32
26
 
33
- (event_ids - @event_klass.where(event_id: event_ids).pluck(:event_id)).each do |id|
34
- raise EventNotFound.new(id)
35
- end
36
- add_to_stream(event_ids, stream, expected_version)
27
+ link_to_stream_(event_ids, stream, expected_version)
37
28
  end
38
29
 
39
30
  def delete_stream(stream)
@@ -159,6 +150,25 @@ module RubyEventStore
159
150
  def start_transaction(&block)
160
151
  @event_klass.transaction(requires_new: true, &block)
161
152
  end
153
+
154
+ def link_to_stream_(event_ids, stream, expected_version)
155
+ (
156
+ event_ids - @event_klass.where(event_id: event_ids).pluck(:event_id)
157
+ ).each { |id| raise EventNotFound.new(id) }
158
+ add_to_stream(event_ids, stream, expected_version)
159
+ end
160
+
161
+ def append_to_stream_(records, stream, expected_version)
162
+ hashes = []
163
+ event_ids = []
164
+ records.each do |record|
165
+ hashes << insert_hash(record, record.serialize(serializer))
166
+ event_ids << record.event_id
167
+ end
168
+ add_to_stream(event_ids, stream, expected_version) do
169
+ @event_klass.insert_all!(hashes)
170
+ end
171
+ end
162
172
  end
163
173
  end
164
174
  end
@@ -2,16 +2,6 @@
2
2
 
3
3
  class CreateEventStoreEvents < ActiveRecord::Migration[<%= migration_version %>]
4
4
  def change
5
- create_table(:event_store_events_in_streams, force: false) do |t|
6
- t.string :stream, null: false
7
- t.integer :position, null: true
8
- t.references :event, null: false, type: :string, limit: 36, index: false
9
- t.datetime :created_at, null: false, precision: 6, index: true
10
- end
11
- add_index :event_store_events_in_streams, [:stream, :position], unique: true
12
- add_index :event_store_events_in_streams, [:stream, :event_id], unique: true
13
- add_index :event_store_events_in_streams, [:event_id]
14
-
15
5
  create_table(:event_store_events, force: false) do |t|
16
6
  t.references :event, null: false, type: :string, limit: 36, index: { unique: true }
17
7
  t.string :event_type, null: false, index: true
@@ -21,6 +11,14 @@ class CreateEventStoreEvents < ActiveRecord::Migration[<%= migration_version %>]
21
11
  t.datetime :valid_at, null: true, precision: 6, index: true
22
12
  end
23
13
 
24
- add_foreign_key "event_store_events_in_streams", "event_store_events", column: "event_id", primary_key: "event_id"
14
+ create_table(:event_store_events_in_streams, force: false) do |t|
15
+ t.string :stream, null: false
16
+ t.integer :position, null: true, default: :null
17
+ t.references :event, null: false, type: :string, limit: 36, index: true, foreign_key: { to_table: :event_store_events, primary_key: :event_id }
18
+ t.datetime :created_at, null: false, precision: 6, index: true
19
+
20
+ t.index [:stream, :position], unique: true
21
+ t.index [:stream, :event_id], unique: true
22
+ end
25
23
  end
26
24
  end
@@ -2,16 +2,6 @@
2
2
 
3
3
  class CreateEventStoreEvents < ActiveRecord::Migration[<%= migration_version %>]
4
4
  def change
5
- create_table(:event_store_events_in_streams, force: false) do |t|
6
- t.string :stream, null: false
7
- t.integer :position, null: true
8
- t.references :event, null: false, type: :string, limit: 36, index: false
9
- t.datetime :created_at, null: false, precision: 6, index: true
10
- end
11
- add_index :event_store_events_in_streams, [:stream, :position], unique: true
12
- add_index :event_store_events_in_streams, [:stream, :event_id], unique: true
13
- add_index :event_store_events_in_streams, [:event_id]
14
-
15
5
  create_table(:event_store_events, force: false) do |t|
16
6
  t.references :event, null: false, type: :string, limit: 36, index: { unique: true }
17
7
  t.string :event_type, null: false, index: true
@@ -21,6 +11,14 @@ class CreateEventStoreEvents < ActiveRecord::Migration[<%= migration_version %>]
21
11
  t.datetime :valid_at, null: true, precision: 6, index: true
22
12
  end
23
13
 
24
- add_foreign_key "event_store_events_in_streams", "event_store_events", column: "event_id", primary_key: "event_id"
14
+ create_table(:event_store_events_in_streams, force: false) do |t|
15
+ t.string :stream, null: false
16
+ t.integer :position, null: true
17
+ t.references :event, null: false, type: :string, limit: 36, index: true, foreign_key: { to_table: :event_store_events, primary_key: :event_id }
18
+ t.datetime :created_at, null: false, precision: 6, index: true
19
+
20
+ t.index [:stream, :position], unique: true
21
+ t.index [:stream, :event_id], unique: true
22
+ end
25
23
  end
26
24
  end
@@ -2,16 +2,6 @@
2
2
 
3
3
  class CreateEventStoreEvents < ActiveRecord::Migration[<%= migration_version %>]
4
4
  def change
5
- create_table(:event_store_events_in_streams, id: :bigserial, force: false) do |t|
6
- t.string :stream, null: false
7
- t.integer :position, null: true
8
- t.references :event, null: false, type: :uuid, index: false
9
- t.datetime :created_at, null: false, type: :timestamp, precision: 6, index: true
10
- end
11
- add_index :event_store_events_in_streams, [:stream, :position], unique: true
12
- add_index :event_store_events_in_streams, [:stream, :event_id], unique: true
13
- add_index :event_store_events_in_streams, [:event_id]
14
-
15
5
  create_table(:event_store_events, id: :bigserial, force: false) do |t|
16
6
  t.references :event, null: false, type: :uuid, index: { unique: true }
17
7
  t.string :event_type, null: false, index: true
@@ -21,6 +11,14 @@ class CreateEventStoreEvents < ActiveRecord::Migration[<%= migration_version %>]
21
11
  t.datetime :valid_at, null: true, type: :timestamp, precision: 6, index: true
22
12
  end
23
13
 
24
- add_foreign_key "event_store_events_in_streams", "event_store_events", column: "event_id", primary_key: "event_id"
14
+ create_table(:event_store_events_in_streams, id: :bigserial, force: false) do |t|
15
+ t.string :stream, null: false
16
+ t.integer :position, null: true
17
+ t.references :event, null: false, type: :uuid, index: true, foreign_key: { to_table: :event_store_events, primary_key: :event_id }
18
+ t.datetime :created_at, null: false, type: :timestamp, precision: 6, index: true
19
+
20
+ t.index [:stream, :position], unique: true
21
+ t.index [:stream, :event_id], unique: true
22
+ end
25
23
  end
26
24
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RubyEventStore
4
4
  module ActiveRecord
5
- VERSION = "2.14.0"
5
+ VERSION = "2.16.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_event_store-active_record
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.14.0
4
+ version: 2.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arkency
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-01-29 00:00:00.000000000 Z
10
+ date: 2025-03-07 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: ruby_event_store
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - '='
18
17
  - !ruby/object:Gem::Version
19
- version: 2.14.0
18
+ version: 2.16.0
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - '='
25
24
  - !ruby/object:Gem::Version
26
- version: 2.14.0
25
+ version: 2.16.0
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: activerecord
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -89,7 +88,6 @@ metadata:
89
88
  source_code_uri: https://github.com/RailsEventStore/rails_event_store
90
89
  bug_tracker_uri: https://github.com/RailsEventStore/rails_event_store/issues
91
90
  rubygems_mfa_required: 'true'
92
- post_install_message:
93
91
  rdoc_options: []
94
92
  require_paths:
95
93
  - lib
@@ -104,8 +102,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
104
102
  - !ruby/object:Gem::Version
105
103
  version: '0'
106
104
  requirements: []
107
- rubygems_version: 3.5.5
108
- signing_key:
105
+ rubygems_version: 3.6.2
109
106
  specification_version: 4
110
107
  summary: Persistent event repository implementation for RubyEventStore based on ActiveRecord
111
108
  test_files: []