rails_event_store_active_record 2.0.0 → 2.3.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 +4 -4
- data/README.md +4 -2
- data/lib/rails_event_store_active_record/event.rb +3 -3
- data/lib/rails_event_store_active_record/event_repository.rb +13 -13
- data/lib/rails_event_store_active_record/event_repository_reader.rb +41 -10
- data/lib/rails_event_store_active_record/generators/migration_generator.rb +5 -10
- data/lib/rails_event_store_active_record/generators/templates/create_event_store_events_template.rb +30 -26
- data/lib/rails_event_store_active_record/pg_linearized_event_repository.rb +1 -1
- data/lib/rails_event_store_active_record/version.rb +1 -1
- data/lib/rails_event_store_active_record/with_abstract_base_class.rb +2 -2
- data/lib/rails_event_store_active_record.rb +10 -13
- metadata +19 -49
- data/.mutant.yml +0 -1
- data/CHANGELOG.md +0 -75
- data/Gemfile +0 -13
- data/Gemfile.lock +0 -245
- data/Gemfile.rails_5_0 +0 -13
- data/Gemfile.rails_5_0.lock +0 -217
- data/Gemfile.rails_5_1 +0 -13
- data/Gemfile.rails_5_1.lock +0 -217
- data/Gemfile.rails_5_2 +0 -13
- data/Gemfile.rails_5_2.lock +0 -225
- data/Gemfile.rails_6_0 +0 -13
- data/Gemfile.rails_6_0.lock +0 -241
- data/Makefile +0 -21
- data/lib/rails_event_store_active_record/generators/add_valid_at_generator.rb +0 -31
- data/lib/rails_event_store_active_record/generators/created_at_precision_generator.rb +0 -31
- data/lib/rails_event_store_active_record/generators/no_global_stream_entries_generator.rb +0 -29
- data/lib/rails_event_store_active_record/generators/templates/add_valid_at_template.rb +0 -14
- data/lib/rails_event_store_active_record/generators/templates/created_at_precision_template.rb +0 -45
- data/lib/rails_event_store_active_record/generators/templates/no_global_stream_entries_template.rb +0 -59
- data/rails_event_store_active_record.gemspec +0 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 47f9fb4041eeafab89312eabfbf9cada70da41480032fef06dcf3311f0e35d56
|
4
|
+
data.tar.gz: 79e021816506f4e49ff72e6f66f66820c9d588a30d1f3f8736d29cc478400340
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cfc072dd9e99031459dcc037cece006477f08c8b5ec014b592f579b3de403e57b7224a68691548b6e2e1b1d0d735aba841cb7a969f0d22916b8165360f4d64df
|
7
|
+
data.tar.gz: 440e6a1a06e37a05ec12590de43be4445314c8244d480f8a8a2ad261e5adcce05e5aa2115a9001011fcb063779ab6a74ff4e518dc0a463812bebe0eea67c50ff
|
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# RailsEventStoreActiveRecord
|
2
2
|
|
3
|
-
|
3
|
+
Persistent event repository implementation for RubyEventStore based on ActiveRecord. Ships with database schema and migrations suitable for PostgreSQL, MySQL ans SQLite database engines.
|
4
4
|
|
5
|
-
|
5
|
+
Includes repository implementation with linearized writes to achieve log-like properties of streams on top of SQL database engine.
|
6
|
+
|
7
|
+
Find out more at [https://railseventstore.org](https://railseventstore.org/)
|
@@ -1,16 +1,16 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
3
|
+
require "active_record"
|
4
4
|
|
5
5
|
module RailsEventStoreActiveRecord
|
6
6
|
class Event < ::ActiveRecord::Base
|
7
7
|
self.primary_key = :id
|
8
|
-
self.table_name =
|
8
|
+
self.table_name = "event_store_events"
|
9
9
|
end
|
10
10
|
|
11
11
|
class EventInStream < ::ActiveRecord::Base
|
12
12
|
self.primary_key = :id
|
13
|
-
self.table_name =
|
13
|
+
self.table_name = "event_store_events_in_streams"
|
14
14
|
belongs_to :event, primary_key: :event_id
|
15
15
|
end
|
16
16
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "active_support/core_ext/array"
|
4
|
+
require "activerecord-import"
|
5
5
|
|
6
6
|
module RailsEventStoreActiveRecord
|
7
7
|
class EventRepository
|
@@ -18,7 +18,7 @@ module RailsEventStoreActiveRecord
|
|
18
18
|
def append_to_stream(records, stream, expected_version)
|
19
19
|
hashes = []
|
20
20
|
event_ids = []
|
21
|
-
|
21
|
+
records.each do |record|
|
22
22
|
hashes << import_hash(record, record.serialize(serializer))
|
23
23
|
event_ids << record.event_id
|
24
24
|
end
|
@@ -28,7 +28,6 @@ module RailsEventStoreActiveRecord
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def link_to_stream(event_ids, stream, expected_version)
|
31
|
-
event_ids = Array(event_ids)
|
32
31
|
(event_ids - @event_klass.where(event_id: event_ids).pluck(:event_id)).each do |id|
|
33
32
|
raise RubyEventStore::EventNotFound.new(id)
|
34
33
|
end
|
@@ -56,7 +55,7 @@ module RailsEventStoreActiveRecord
|
|
56
55
|
end
|
57
56
|
|
58
57
|
def update_messages(records)
|
59
|
-
hashes =
|
58
|
+
hashes = records.map { |record| import_hash(record, record.serialize(serializer)) }
|
60
59
|
for_update = records.map(&:event_id)
|
61
60
|
start_transaction do
|
62
61
|
existing = @event_klass.where(event_id: for_update).pluck(:event_id, :id).to_h
|
@@ -67,9 +66,15 @@ module RailsEventStoreActiveRecord
|
|
67
66
|
end
|
68
67
|
|
69
68
|
def streams_of(event_id)
|
70
|
-
@
|
71
|
-
|
72
|
-
|
69
|
+
@repo_reader.streams_of(event_id)
|
70
|
+
end
|
71
|
+
|
72
|
+
def position_in_stream(event_id, stream)
|
73
|
+
@repo_reader.position_in_stream(event_id, stream)
|
74
|
+
end
|
75
|
+
|
76
|
+
def global_position(event_id)
|
77
|
+
@repo_reader.global_position(event_id)
|
73
78
|
end
|
74
79
|
|
75
80
|
private
|
@@ -88,7 +93,6 @@ module RailsEventStoreActiveRecord
|
|
88
93
|
event_id: event_id,
|
89
94
|
}
|
90
95
|
end
|
91
|
-
fill_ids(in_stream)
|
92
96
|
@stream_klass.import(in_stream) unless stream.global?
|
93
97
|
end
|
94
98
|
self
|
@@ -128,10 +132,6 @@ module RailsEventStoreActiveRecord
|
|
128
132
|
valid_at unless valid_at.eql?(created_at)
|
129
133
|
end
|
130
134
|
|
131
|
-
# Overwritten in a sub-class
|
132
|
-
def fill_ids(_in_stream)
|
133
|
-
end
|
134
|
-
|
135
135
|
def start_transaction(&block)
|
136
136
|
@event_klass.transaction(requires_new: true, &block)
|
137
137
|
end
|
@@ -14,20 +14,14 @@ module RailsEventStoreActiveRecord
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def last_stream_event(stream)
|
17
|
-
record_ = @stream_klass.where(stream: stream.name).order(
|
17
|
+
record_ = @stream_klass.where(stream: stream.name).order("position DESC, id DESC").first
|
18
18
|
record(record_) if record_
|
19
19
|
end
|
20
20
|
|
21
21
|
def read(spec)
|
22
22
|
stream = read_scope(spec)
|
23
|
-
|
24
23
|
if spec.batched?
|
25
|
-
|
26
|
-
search_in = spec.stream.global? ? @event_klass.table_name : @stream_klass.table_name
|
27
|
-
records = offset_id.nil? ? stream.limit(limit) : stream.where(start_offset_condition(spec, offset_id, search_in)).limit(limit)
|
28
|
-
[records.map(&method(:record)), records.last]
|
29
|
-
end
|
30
|
-
BatchEnumerator.new(spec.batch_size, spec.limit, batch_reader).each
|
24
|
+
spec.time_sort_by ? offset_limit_batch_reader(spec, stream) : monotonic_id_batch_reader(spec, stream)
|
31
25
|
elsif spec.first?
|
32
26
|
record_ = stream.first
|
33
27
|
record(record_) if record_
|
@@ -43,9 +37,46 @@ module RailsEventStoreActiveRecord
|
|
43
37
|
read_scope(spec).count
|
44
38
|
end
|
45
39
|
|
40
|
+
def streams_of(event_id)
|
41
|
+
@stream_klass.where(event_id: event_id)
|
42
|
+
.pluck(:stream)
|
43
|
+
.map { |name| RubyEventStore::Stream.new(name) }
|
44
|
+
end
|
45
|
+
|
46
|
+
def position_in_stream(event_id, stream)
|
47
|
+
record = @stream_klass.select("position").where(stream: stream.name).find_by(event_id: event_id)
|
48
|
+
raise RubyEventStore::EventNotFoundInStream if record.nil?
|
49
|
+
record.position
|
50
|
+
end
|
51
|
+
|
52
|
+
def global_position(event_id)
|
53
|
+
record = @event_klass.select("id").find_by(event_id: event_id)
|
54
|
+
raise RubyEventStore::EventNotFound.new(event_id) if record.nil?
|
55
|
+
record.id - 1
|
56
|
+
end
|
57
|
+
|
46
58
|
private
|
47
59
|
attr_reader :serializer
|
48
60
|
|
61
|
+
def offset_limit_batch_reader(spec, stream)
|
62
|
+
batch_reader = ->(offset, limit) do
|
63
|
+
stream
|
64
|
+
.offset(offset)
|
65
|
+
.limit(limit)
|
66
|
+
.map(&method(:record))
|
67
|
+
end
|
68
|
+
RubyEventStore::BatchEnumerator.new(spec.batch_size, spec.limit, batch_reader).each
|
69
|
+
end
|
70
|
+
|
71
|
+
def monotonic_id_batch_reader(spec, stream)
|
72
|
+
batch_reader = ->(offset_id, limit) do
|
73
|
+
search_in = spec.stream.global? ? @event_klass.table_name : @stream_klass.table_name
|
74
|
+
records = offset_id.nil? ? stream.limit(limit) : stream.where(start_offset_condition(spec, offset_id, search_in)).limit(limit)
|
75
|
+
[records.map(&method(:record)), records.last]
|
76
|
+
end
|
77
|
+
BatchEnumerator.new(spec.batch_size, spec.limit, batch_reader).each
|
78
|
+
end
|
79
|
+
|
49
80
|
def read_scope(spec)
|
50
81
|
if spec.stream.global?
|
51
82
|
stream = @event_klass
|
@@ -65,7 +96,7 @@ module RailsEventStoreActiveRecord
|
|
65
96
|
stream = stream.where(event_id: spec.with_ids) if spec.with_ids?
|
66
97
|
stream = stream.where(@event_klass.table_name => {event_type: spec.with_types}) if spec.with_types?
|
67
98
|
stream = ordered(stream.joins(:event), spec)
|
68
|
-
stream = stream.order(
|
99
|
+
stream = stream.order(id: order(spec))
|
69
100
|
stream = stream.limit(spec.limit) if spec.limit?
|
70
101
|
stream = stream.where(start_condition(spec)) if spec.start
|
71
102
|
stream = stream.where(stop_condition(spec)) if spec.stop
|
@@ -139,7 +170,7 @@ module RailsEventStoreActiveRecord
|
|
139
170
|
end
|
140
171
|
|
141
172
|
def order(spec)
|
142
|
-
spec.forward? ?
|
173
|
+
spec.forward? ? "ASC" : "DESC"
|
143
174
|
end
|
144
175
|
|
145
176
|
def record(record)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
begin
|
4
|
-
require
|
4
|
+
require "rails/generators"
|
5
5
|
rescue LoadError
|
6
6
|
end
|
7
7
|
|
@@ -11,12 +11,12 @@ module RailsEventStoreActiveRecord
|
|
11
11
|
|
12
12
|
DATA_TYPES = %w(binary json jsonb).freeze
|
13
13
|
|
14
|
-
source_root File.expand_path(File.join(File.dirname(__FILE__),
|
14
|
+
source_root File.expand_path(File.join(File.dirname(__FILE__), "../generators/templates"))
|
15
15
|
class_option(
|
16
16
|
:data_type,
|
17
17
|
type: :string,
|
18
|
-
default:
|
19
|
-
desc: "Configure the data type for `data` and `meta data`
|
18
|
+
default: "binary",
|
19
|
+
desc: "Configure the data type for `data` and `meta data` fields in Postgres migration (options: #{DATA_TYPES.join('/')})"
|
20
20
|
)
|
21
21
|
|
22
22
|
def initialize(*args)
|
@@ -34,15 +34,10 @@ module RailsEventStoreActiveRecord
|
|
34
34
|
private
|
35
35
|
|
36
36
|
def data_type
|
37
|
-
options.fetch(
|
38
|
-
end
|
39
|
-
|
40
|
-
def rails_version
|
41
|
-
Rails::VERSION::STRING
|
37
|
+
options.fetch("data_type")
|
42
38
|
end
|
43
39
|
|
44
40
|
def migration_version
|
45
|
-
return nil if Gem::Version.new(rails_version) < Gem::Version.new("5.0.0")
|
46
41
|
"[4.2]"
|
47
42
|
end
|
48
43
|
|
data/lib/rails_event_store_active_record/generators/templates/create_event_store_events_template.rb
CHANGED
@@ -2,38 +2,42 @@
|
|
2
2
|
|
3
3
|
class CreateEventStoreEvents < ActiveRecord::Migration<%= migration_version %>
|
4
4
|
def change
|
5
|
-
postgres =
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
if postgres
|
13
|
-
t.references :event, null: false, type: :uuid
|
14
|
-
else
|
15
|
-
t.references :event, null: false, type: :string, limit: 36
|
16
|
-
end
|
17
|
-
if postgres
|
5
|
+
postgres =
|
6
|
+
ActiveRecord::Base.connection.adapter_name == "PostgreSQL"
|
7
|
+
if postgres
|
8
|
+
create_table(:event_store_events_in_streams, id: :bigserial, force: false) do |t|
|
9
|
+
t.string :stream, null: false
|
10
|
+
t.integer :position, null: true
|
11
|
+
t.references :event, null: false, type: :uuid
|
18
12
|
t.datetime :created_at, null: false
|
19
|
-
else
|
20
|
-
t.datetime :created_at, null: false, precision: 6
|
21
13
|
end
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
add_index :event_store_events_in_streams, [:stream, :event_id], unique: true
|
14
|
+
add_index :event_store_events_in_streams, [:stream, :position], unique: true
|
15
|
+
add_index :event_store_events_in_streams, [:created_at]
|
16
|
+
add_index :event_store_events_in_streams, [:stream, :event_id], unique: true
|
26
17
|
|
27
|
-
|
28
|
-
create_table(:event_store_events, force: false) do |t|
|
18
|
+
create_table(:event_store_events, id: :bigserial, force: false) do |t|
|
29
19
|
t.references :event, null: false, type: :uuid
|
30
20
|
t.string :event_type, null: false
|
31
21
|
t.<%= data_type %> :metadata
|
32
|
-
t.<%= data_type %> :data,
|
22
|
+
t.<%= data_type %> :data, null: false
|
33
23
|
t.datetime :created_at, null: false
|
34
24
|
t.datetime :valid_at, null: true
|
35
25
|
end
|
26
|
+
add_index :event_store_events, :event_id, unique: true
|
27
|
+
add_index :event_store_events, :created_at
|
28
|
+
add_index :event_store_events, :valid_at
|
29
|
+
add_index :event_store_events, :event_type
|
36
30
|
else
|
31
|
+
create_table(:event_store_events_in_streams, force: false) do |t|
|
32
|
+
t.string :stream, null: false
|
33
|
+
t.integer :position, null: true
|
34
|
+
t.references :event, null: false, type: :string, limit: 36
|
35
|
+
t.datetime :created_at, null: false, precision: 6
|
36
|
+
end
|
37
|
+
add_index :event_store_events_in_streams, [:stream, :position], unique: true
|
38
|
+
add_index :event_store_events_in_streams, [:created_at]
|
39
|
+
add_index :event_store_events_in_streams, [:stream, :event_id], unique: true
|
40
|
+
|
37
41
|
create_table(:event_store_events, force: false) do |t|
|
38
42
|
t.references :event, null: false, type: :string, limit: 36
|
39
43
|
t.string :event_type, null: false
|
@@ -42,10 +46,10 @@ class CreateEventStoreEvents < ActiveRecord::Migration<%= migration_version %>
|
|
42
46
|
t.datetime :created_at, null: false, precision: 6
|
43
47
|
t.datetime :valid_at, null: true, precision: 6
|
44
48
|
end
|
49
|
+
add_index :event_store_events, :event_id, unique: true
|
50
|
+
add_index :event_store_events, :created_at
|
51
|
+
add_index :event_store_events, :valid_at
|
52
|
+
add_index :event_store_events, :event_type
|
45
53
|
end
|
46
|
-
add_index :event_store_events, :event_id, unique: true
|
47
|
-
add_index :event_store_events, :created_at
|
48
|
-
add_index :event_store_events, :valid_at
|
49
|
-
add_index :event_store_events, :event_type
|
50
54
|
end
|
51
55
|
end
|
@@ -21,7 +21,7 @@ module RailsEventStoreActiveRecord
|
|
21
21
|
Object.const_set("Event_#{instance_id}",
|
22
22
|
Class.new(@base_klass) do
|
23
23
|
self.primary_key = :id
|
24
|
-
self.table_name =
|
24
|
+
self.table_name = "event_store_events"
|
25
25
|
end
|
26
26
|
)
|
27
27
|
end
|
@@ -30,7 +30,7 @@ module RailsEventStoreActiveRecord
|
|
30
30
|
Object.const_set("EventInStream_#{instance_id}",
|
31
31
|
Class.new(@base_klass) do
|
32
32
|
self.primary_key = :id
|
33
|
-
self.table_name =
|
33
|
+
self.table_name = "event_store_events_in_streams"
|
34
34
|
belongs_to :event, primary_key: :event_id, class_name: "Event_#{instance_id}"
|
35
35
|
end
|
36
36
|
)
|
@@ -1,15 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
require 'rails_event_store_active_record/index_violation_detector'
|
14
|
-
require 'rails_event_store_active_record/pg_linearized_event_repository'
|
15
|
-
require 'rails_event_store_active_record/version'
|
3
|
+
require_relative "rails_event_store_active_record/generators/migration_generator"
|
4
|
+
require_relative "rails_event_store_active_record/event"
|
5
|
+
require_relative "rails_event_store_active_record/with_default_models"
|
6
|
+
require_relative "rails_event_store_active_record/with_abstract_base_class"
|
7
|
+
require_relative "rails_event_store_active_record/event_repository"
|
8
|
+
require_relative "rails_event_store_active_record/batch_enumerator"
|
9
|
+
require_relative "rails_event_store_active_record/event_repository_reader"
|
10
|
+
require_relative "rails_event_store_active_record/index_violation_detector"
|
11
|
+
require_relative "rails_event_store_active_record/pg_linearized_event_repository"
|
12
|
+
require_relative "rails_event_store_active_record/version"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_event_store_active_record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arkency
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-09-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ruby_event_store
|
@@ -16,42 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.3.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
26
|
+
version: 2.3.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: activerecord
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '5.0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: activemodel
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '3.0'
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '3.0'
|
40
|
+
version: '5.0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
42
|
name: activerecord-import
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,52 +52,36 @@ dependencies:
|
|
66
52
|
- - ">="
|
67
53
|
- !ruby/object:Gem::Version
|
68
54
|
version: 1.0.2
|
69
|
-
description:
|
70
|
-
|
71
|
-
|
72
|
-
|
55
|
+
description: |
|
56
|
+
Persistent event repository implementation for RubyEventStore based on ActiveRecord. Ships with database schema
|
57
|
+
and migrations suitable for PostgreSQL, MySQL ans SQLite database engines.
|
58
|
+
|
59
|
+
Includes repository implementation with linearized writes to achieve log-like properties of streams
|
60
|
+
on top of SQL database engine.
|
61
|
+
email: dev@arkency.com
|
73
62
|
executables: []
|
74
63
|
extensions: []
|
75
|
-
extra_rdoc_files:
|
64
|
+
extra_rdoc_files:
|
65
|
+
- README.md
|
76
66
|
files:
|
77
|
-
- ".mutant.yml"
|
78
|
-
- CHANGELOG.md
|
79
|
-
- Gemfile
|
80
|
-
- Gemfile.lock
|
81
|
-
- Gemfile.rails_5_0
|
82
|
-
- Gemfile.rails_5_0.lock
|
83
|
-
- Gemfile.rails_5_1
|
84
|
-
- Gemfile.rails_5_1.lock
|
85
|
-
- Gemfile.rails_5_2
|
86
|
-
- Gemfile.rails_5_2.lock
|
87
|
-
- Gemfile.rails_6_0
|
88
|
-
- Gemfile.rails_6_0.lock
|
89
|
-
- Makefile
|
90
67
|
- README.md
|
91
68
|
- lib/rails_event_store_active_record.rb
|
92
69
|
- lib/rails_event_store_active_record/batch_enumerator.rb
|
93
70
|
- lib/rails_event_store_active_record/event.rb
|
94
71
|
- lib/rails_event_store_active_record/event_repository.rb
|
95
72
|
- lib/rails_event_store_active_record/event_repository_reader.rb
|
96
|
-
- lib/rails_event_store_active_record/generators/add_valid_at_generator.rb
|
97
|
-
- lib/rails_event_store_active_record/generators/created_at_precision_generator.rb
|
98
73
|
- lib/rails_event_store_active_record/generators/migration_generator.rb
|
99
|
-
- lib/rails_event_store_active_record/generators/no_global_stream_entries_generator.rb
|
100
|
-
- lib/rails_event_store_active_record/generators/templates/add_valid_at_template.rb
|
101
74
|
- lib/rails_event_store_active_record/generators/templates/create_event_store_events_template.rb
|
102
|
-
- lib/rails_event_store_active_record/generators/templates/created_at_precision_template.rb
|
103
|
-
- lib/rails_event_store_active_record/generators/templates/no_global_stream_entries_template.rb
|
104
75
|
- lib/rails_event_store_active_record/index_violation_detector.rb
|
105
76
|
- lib/rails_event_store_active_record/pg_linearized_event_repository.rb
|
106
77
|
- lib/rails_event_store_active_record/version.rb
|
107
78
|
- lib/rails_event_store_active_record/with_abstract_base_class.rb
|
108
79
|
- lib/rails_event_store_active_record/with_default_models.rb
|
109
|
-
- rails_event_store_active_record.gemspec
|
110
80
|
homepage: https://railseventstore.org
|
111
81
|
licenses:
|
112
82
|
- MIT
|
113
83
|
metadata:
|
114
|
-
homepage_uri: https://railseventstore.org
|
84
|
+
homepage_uri: https://railseventstore.org
|
115
85
|
changelog_uri: https://github.com/RailsEventStore/rails_event_store/releases
|
116
86
|
source_code_uri: https://github.com/RailsEventStore/rails_event_store
|
117
87
|
bug_tracker_uri: https://github.com/RailsEventStore/rails_event_store/issues
|
@@ -123,7 +93,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
123
93
|
requirements:
|
124
94
|
- - ">="
|
125
95
|
- !ruby/object:Gem::Version
|
126
|
-
version: '
|
96
|
+
version: '2.6'
|
127
97
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
128
98
|
requirements:
|
129
99
|
- - ">="
|
@@ -133,5 +103,5 @@ requirements: []
|
|
133
103
|
rubygems_version: 3.1.4
|
134
104
|
signing_key:
|
135
105
|
specification_version: 4
|
136
|
-
summary:
|
106
|
+
summary: Persistent event repository implementation for RubyEventStore based on ActiveRecord
|
137
107
|
test_files: []
|