pg_eventstore 1.10.0 → 1.12.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/CHANGELOG.md +10 -0
- data/docs/reading_events.md +98 -0
- data/lib/pg_eventstore/client.rb +22 -4
- data/lib/pg_eventstore/commands/all_stream_read_grouped.rb +69 -0
- data/lib/pg_eventstore/commands/regular_stream_read_grouped.rb +31 -0
- data/lib/pg_eventstore/commands.rb +2 -0
- data/lib/pg_eventstore/errors.rb +10 -0
- data/lib/pg_eventstore/partition.rb +23 -0
- data/lib/pg_eventstore/queries/event_queries.rb +18 -0
- data/lib/pg_eventstore/queries/partition_queries.rb +21 -0
- data/lib/pg_eventstore/queries.rb +2 -0
- data/lib/pg_eventstore/query_builders/basic_filtering.rb +27 -0
- data/lib/pg_eventstore/query_builders/events_filtering.rb +47 -31
- data/lib/pg_eventstore/query_builders/partitions_filtering.rb +83 -0
- data/lib/pg_eventstore/sql_builder.rb +10 -0
- data/lib/pg_eventstore/subscriptions/callback_handlers/events_processor_handlers.rb +2 -2
- data/lib/pg_eventstore/subscriptions/callback_handlers/subscription_runner_handlers.rb +3 -3
- data/lib/pg_eventstore/subscriptions/queries/subscription_queries.rb +1 -9
- data/lib/pg_eventstore/utils.rb +27 -8
- data/lib/pg_eventstore/version.rb +1 -1
- data/lib/pg_eventstore/web/application.rb +39 -10
- data/lib/pg_eventstore/web/paginator/helpers.rb +11 -3
- data/lib/pg_eventstore/web/public/javascripts/pg_eventstore.js +41 -4
- data/lib/pg_eventstore/web/public/stylesheets/pg_eventstore.css +12 -0
- data/lib/pg_eventstore/web/views/home/partials/event_filter.erb +5 -1
- data/lib/pg_eventstore/web/views/home/partials/events.erb +5 -5
- data/lib/pg_eventstore/web/views/home/partials/stream_filter.erb +15 -3
- data/lib/pg_eventstore/web/views/subscriptions/index.erb +2 -2
- data/lib/pg_eventstore.rb +1 -0
- data/sig/pg_eventstore/client.rbs +2 -0
- data/sig/pg_eventstore/commands/all_stream_read_grouped.rbs +16 -0
- data/sig/pg_eventstore/commands/regular_stream_read_grouped.rbs +8 -0
- data/sig/pg_eventstore/errors.rbs +8 -0
- data/sig/pg_eventstore/partition.rbs +15 -0
- data/sig/pg_eventstore/queries/event_queries.rbs +2 -0
- data/sig/pg_eventstore/queries/partition_queries.rbs +6 -0
- data/sig/pg_eventstore/query_builders/basic_filtering.rbs +15 -0
- data/sig/pg_eventstore/query_builders/events_filtering_query.rbs +17 -17
- data/sig/pg_eventstore/query_builders/partitions_filtering.rbs +21 -0
- data/sig/pg_eventstore/sql_builder.rbs +1 -1
- data/sig/pg_eventstore/subscriptions/callback_handlers/subscription_runner_handlers.rbs +2 -2
- data/sig/pg_eventstore/utils.rbs +4 -0
- data/sig/pg_eventstore/web/application.rbs +6 -0
- data/sig/pg_eventstore/web/paginator/helpers.rbs +2 -0
- metadata +13 -6
@@ -10,6 +10,8 @@ module PgEventstore
|
|
10
10
|
# _@param_ `event`
|
11
11
|
def event_exists?: (PgEventstore::Event event) -> bool
|
12
12
|
|
13
|
+
def grouped_events: (Stream stream, Array[Hash[untyped, untyped]] options_by_event_type, **untyped options)-> Array[Event]
|
14
|
+
|
13
15
|
# _@param_ `events`
|
14
16
|
def ids_from_db: (::Array[PgEventstore::Event] events) -> ::Array[String]
|
15
17
|
|
@@ -39,6 +39,8 @@ module PgEventstore
|
|
39
39
|
# _@return_ — partition attributes
|
40
40
|
def context_partition: (PgEventstore::Stream stream) -> ::Hash[untyped, untyped]?
|
41
41
|
|
42
|
+
def partitions: (Array[Hash[Symbol, String | nil]] stream_filters, Array[String] event_filters)-> Array[Partition]
|
43
|
+
|
42
44
|
# _@param_ `stream`
|
43
45
|
#
|
44
46
|
# _@return_ — partition attributes
|
@@ -70,5 +72,9 @@ module PgEventstore
|
|
70
72
|
|
71
73
|
# Returns the value of attribute connection.
|
72
74
|
attr_accessor connection: PgEventstore::Connection
|
75
|
+
|
76
|
+
private
|
77
|
+
|
78
|
+
def deserialize: (Hash[untyped, untyped] attrs)-> Partition
|
73
79
|
end
|
74
80
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module QueryBuilders
|
3
|
+
class BasicFiltering
|
4
|
+
@sql_builder: SQLBuilder
|
5
|
+
|
6
|
+
def initialize: -> void
|
7
|
+
|
8
|
+
def to_exec_params: -> [String, Array[untyped]]
|
9
|
+
|
10
|
+
def to_sql_builder: -> SQLBuilder
|
11
|
+
|
12
|
+
def to_table_name: -> String
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,39 +1,37 @@
|
|
1
1
|
module PgEventstore
|
2
2
|
module QueryBuilders
|
3
3
|
# @!visibility private
|
4
|
-
class EventsFiltering
|
4
|
+
class EventsFiltering < BasicFiltering
|
5
5
|
DEFAULT_LIMIT: Integer
|
6
6
|
SQL_DIRECTIONS: Hash[String | Symbol, String]
|
7
7
|
SUBSCRIPTIONS_OPTIONS: ::Array[Symbol]
|
8
8
|
|
9
|
-
|
9
|
+
TABLE_NAME: String
|
10
|
+
|
11
|
+
def self.events_filtering: (Stream stream, ::Hash[untyped, untyped] options) -> EventsFiltering
|
12
|
+
|
13
|
+
def self.extract_event_types_filter: (Hash[untyped, untyped] options) -> Array[String]
|
14
|
+
|
15
|
+
def self.extract_streams_filter: (Hash[untyped, untyped] options) -> Array[Hash[untyped, untyped]]
|
10
16
|
|
11
|
-
def self.events_filtering: (PgEventstore::Stream stream, ::Hash[untyped, untyped] options) -> PgEventstore::QueryBuilders::EventsFiltering
|
12
|
-
|
13
17
|
# _@param_ `options`
|
14
|
-
def self.subscriptions_events_filtering: (::Hash[untyped, untyped] options) ->
|
18
|
+
def self.subscriptions_events_filtering: (::Hash[untyped, untyped] options) -> EventsFiltering
|
15
19
|
|
16
20
|
# _@param_ `options`
|
17
|
-
def self.all_stream_filtering: (::Hash[untyped, untyped] options) ->
|
21
|
+
def self.all_stream_filtering: (::Hash[untyped, untyped] options) -> EventsFiltering
|
18
22
|
|
19
23
|
# _@param_ `stream`
|
20
24
|
#
|
21
25
|
# _@param_ `options`
|
22
|
-
def self.specific_stream_filtering: (
|
26
|
+
def self.specific_stream_filtering: (Stream stream, ::Hash[untyped, untyped] options) -> EventsFiltering
|
23
27
|
|
24
|
-
def self.system_stream_filtering: (
|
28
|
+
def self.system_stream_filtering: (Stream stream, Hash[untyped, untyped] options) -> EventsFiltering
|
25
29
|
|
26
30
|
def initialize: () -> void
|
27
31
|
|
28
|
-
# _@param_ `context`
|
29
|
-
#
|
30
|
-
# _@param_ `stream_name`
|
31
|
-
#
|
32
|
-
# _@param_ `stream_id`
|
33
32
|
def add_stream_attrs: (?context: String?, ?stream_name: String?, ?stream_id: String?) -> void
|
34
33
|
|
35
|
-
|
36
|
-
def add_event_types: (::Array[String]? event_types) -> void
|
34
|
+
def add_event_types: (::Array[String] event_types) -> void
|
37
35
|
|
38
36
|
# _@param_ `revision`
|
39
37
|
#
|
@@ -54,9 +52,11 @@ module PgEventstore
|
|
54
52
|
# _@param_ `limit`
|
55
53
|
def add_limit: (Integer? limit) -> void
|
56
54
|
|
57
|
-
def
|
55
|
+
def set_source: (String table_name)-> void
|
56
|
+
|
57
|
+
def to_sql_builder: () -> SQLBuilder
|
58
58
|
|
59
|
-
def to_exec_params: () ->
|
59
|
+
def to_exec_params: () -> [String, Array[untyped]]
|
60
60
|
|
61
61
|
# _@param_ `stream_attrs`
|
62
62
|
def correct_stream_filter?: (::Hash[untyped, untyped] stream_attrs) -> bool
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module QueryBuilders
|
3
|
+
class PartitionsFiltering < BasicFiltering
|
4
|
+
TABLE_NAME: String
|
5
|
+
|
6
|
+
def self.extract_event_types_filter: (Hash[untyped, untyped] options) -> Array[String]
|
7
|
+
|
8
|
+
def self.extract_streams_filter: (Hash[untyped, untyped] options) -> Array[Hash[untyped, untyped]]
|
9
|
+
|
10
|
+
def add_event_types: (::Array[String] event_types) -> void
|
11
|
+
|
12
|
+
def add_stream_attrs: (?context: String?, ?stream_name: String?) -> void
|
13
|
+
|
14
|
+
def with_event_types: -> void
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def correct_stream_filter?: (::Hash[untyped, untyped] stream_attrs) -> bool
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -4,11 +4,11 @@ module PgEventstore
|
|
4
4
|
|
5
5
|
def self.update_subscription_stats: (PgEventstore::Subscription subscription, PgEventstore::SubscriptionHandlerPerformance stats, Integer current_position) -> void
|
6
6
|
|
7
|
-
def self.update_subscription_error: (PgEventstore::Subscription subscription,
|
7
|
+
def self.update_subscription_error: (PgEventstore::Subscription subscription, PgEventstore::WrappedException error) -> void
|
8
8
|
|
9
9
|
def self.restart_events_processor: (PgEventstore::Subscription subscription, _RestartTerminator? restart_terminator,
|
10
10
|
_FailedSubscriptionNotifier? failed_subscription_notifier, PgEventstore::EventsProcessor events_processor,
|
11
|
-
|
11
|
+
PgEventstore::WrappedException error) -> void
|
12
12
|
|
13
13
|
def self.update_subscription_chunk_stats: (PgEventstore::Subscription subscription, Integer global_position) -> void
|
14
14
|
|
data/sig/pg_eventstore/utils.rbs
CHANGED
@@ -20,5 +20,9 @@ module PgEventstore
|
|
20
20
|
def self.underscore_str: (String str) -> String
|
21
21
|
|
22
22
|
def self.original_global_position: (Hash[untyped, untyped] raw_event) -> Integer
|
23
|
+
|
24
|
+
def self.unwrap_exception: (PgEventstore::WrappedException | StandardError wrapped_exception)-> StandardError
|
25
|
+
|
26
|
+
def self.wrap_exception: (StandardError exception, **untyped extra)-> PgEventstore::WrappedException
|
23
27
|
end
|
24
28
|
end
|
@@ -5,6 +5,8 @@ module PgEventstore
|
|
5
5
|
COOKIES_FLASH_MESSAGE_KEY: String
|
6
6
|
DEFAULT_ADMIN_UI_CONFIG: Symbol
|
7
7
|
|
8
|
+
EMPTY_STRING_SIGN: String
|
9
|
+
|
8
10
|
def asset_url: (String path) -> String
|
9
11
|
|
10
12
|
def connection: -> PgEventstore::Connection
|
@@ -13,6 +15,8 @@ module PgEventstore
|
|
13
15
|
|
14
16
|
def current_config=: (untyped val) -> void
|
15
17
|
|
18
|
+
def escape_empty_string: (String? string) -> String?
|
19
|
+
|
16
20
|
def events_filter: -> Array[String]?
|
17
21
|
|
18
22
|
def flash_message=: (({ message: String, kind: String }) val)-> String
|
@@ -30,6 +34,8 @@ module PgEventstore
|
|
30
34
|
def streams_filter: -> Array[Hash[untyped, untyped]]?
|
31
35
|
|
32
36
|
def system_stream: -> String?
|
37
|
+
|
38
|
+
def unescape_empty_string: (String? string) -> String?
|
33
39
|
end
|
34
40
|
end
|
35
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pg_eventstore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Dzyzenko
|
8
|
-
autorequire:
|
9
8
|
bindir: exe
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: pg
|
@@ -116,6 +115,7 @@ files:
|
|
116
115
|
- lib/pg_eventstore/cli/wait_for_subscriptions_set_shutdown.rb
|
117
116
|
- lib/pg_eventstore/client.rb
|
118
117
|
- lib/pg_eventstore/commands.rb
|
118
|
+
- lib/pg_eventstore/commands/all_stream_read_grouped.rb
|
119
119
|
- lib/pg_eventstore/commands/append.rb
|
120
120
|
- lib/pg_eventstore/commands/delete_event.rb
|
121
121
|
- lib/pg_eventstore/commands/delete_stream.rb
|
@@ -124,6 +124,7 @@ files:
|
|
124
124
|
- lib/pg_eventstore/commands/link_to.rb
|
125
125
|
- lib/pg_eventstore/commands/multiple.rb
|
126
126
|
- lib/pg_eventstore/commands/read.rb
|
127
|
+
- lib/pg_eventstore/commands/regular_stream_read_grouped.rb
|
127
128
|
- lib/pg_eventstore/commands/regular_stream_read_paginated.rb
|
128
129
|
- lib/pg_eventstore/commands/system_stream_read_paginated.rb
|
129
130
|
- lib/pg_eventstore/config.rb
|
@@ -139,6 +140,7 @@ files:
|
|
139
140
|
- lib/pg_eventstore/extensions/using_connection_extension.rb
|
140
141
|
- lib/pg_eventstore/maintenance.rb
|
141
142
|
- lib/pg_eventstore/middleware.rb
|
143
|
+
- lib/pg_eventstore/partition.rb
|
142
144
|
- lib/pg_eventstore/pg_connection.rb
|
143
145
|
- lib/pg_eventstore/queries.rb
|
144
146
|
- lib/pg_eventstore/queries/event_queries.rb
|
@@ -146,7 +148,9 @@ files:
|
|
146
148
|
- lib/pg_eventstore/queries/maintenance_queries.rb
|
147
149
|
- lib/pg_eventstore/queries/partition_queries.rb
|
148
150
|
- lib/pg_eventstore/queries/transaction_queries.rb
|
151
|
+
- lib/pg_eventstore/query_builders/basic_filtering.rb
|
149
152
|
- lib/pg_eventstore/query_builders/events_filtering.rb
|
153
|
+
- lib/pg_eventstore/query_builders/partitions_filtering.rb
|
150
154
|
- lib/pg_eventstore/rspec/has_option_matcher.rb
|
151
155
|
- lib/pg_eventstore/rspec/test_helpers.rb
|
152
156
|
- lib/pg_eventstore/sql_builder.rb
|
@@ -271,6 +275,7 @@ files:
|
|
271
275
|
- sig/pg_eventstore/cli/try_unlock_subscriptions_set.rbs
|
272
276
|
- sig/pg_eventstore/cli/wait_for_subscriptions_set_shutdown.rbs
|
273
277
|
- sig/pg_eventstore/client.rbs
|
278
|
+
- sig/pg_eventstore/commands/all_stream_read_grouped.rbs
|
274
279
|
- sig/pg_eventstore/commands/append.rbs
|
275
280
|
- sig/pg_eventstore/commands/delete_event.rbs
|
276
281
|
- sig/pg_eventstore/commands/delete_stream.rbs
|
@@ -279,6 +284,7 @@ files:
|
|
279
284
|
- sig/pg_eventstore/commands/link_to.rbs
|
280
285
|
- sig/pg_eventstore/commands/multiple.rbs
|
281
286
|
- sig/pg_eventstore/commands/read.rbs
|
287
|
+
- sig/pg_eventstore/commands/regular_stream_read_grouped.rbs
|
282
288
|
- sig/pg_eventstore/commands/regular_stream_read_paginated.rbs
|
283
289
|
- sig/pg_eventstore/commands/system_stream_read_paginated.rbs
|
284
290
|
- sig/pg_eventstore/config.rbs
|
@@ -294,6 +300,7 @@ files:
|
|
294
300
|
- sig/pg_eventstore/extensions/using_connection_extension.rbs
|
295
301
|
- sig/pg_eventstore/maintenance.rbs
|
296
302
|
- sig/pg_eventstore/middleware.rbs
|
303
|
+
- sig/pg_eventstore/partition.rbs
|
297
304
|
- sig/pg_eventstore/pg_connection.rbs
|
298
305
|
- sig/pg_eventstore/queries.rbs
|
299
306
|
- sig/pg_eventstore/queries/event_queries.rbs
|
@@ -301,7 +308,9 @@ files:
|
|
301
308
|
- sig/pg_eventstore/queries/maintenance_queries.rbs
|
302
309
|
- sig/pg_eventstore/queries/partition_queries.rbs
|
303
310
|
- sig/pg_eventstore/queries/transaction_queries.rbs
|
311
|
+
- sig/pg_eventstore/query_builders/basic_filtering.rbs
|
304
312
|
- sig/pg_eventstore/query_builders/events_filtering_query.rbs
|
313
|
+
- sig/pg_eventstore/query_builders/partitions_filtering.rbs
|
305
314
|
- sig/pg_eventstore/sql_builder.rbs
|
306
315
|
- sig/pg_eventstore/stream.rbs
|
307
316
|
- sig/pg_eventstore/subscriptions/basic_runner.rbs
|
@@ -368,7 +377,6 @@ metadata:
|
|
368
377
|
homepage_uri: https://github.com/yousty/pg_eventstore
|
369
378
|
source_code_uri: https://github.com/yousty/pg_eventstore
|
370
379
|
changelog_uri: https://github.com/yousty/pg_eventstore/blob/main/CHANGELOG.md
|
371
|
-
post_install_message:
|
372
380
|
rdoc_options: []
|
373
381
|
require_paths:
|
374
382
|
- lib
|
@@ -383,8 +391,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
383
391
|
- !ruby/object:Gem::Version
|
384
392
|
version: '0'
|
385
393
|
requirements: []
|
386
|
-
rubygems_version: 3.
|
387
|
-
signing_key:
|
394
|
+
rubygems_version: 3.6.7
|
388
395
|
specification_version: 4
|
389
396
|
summary: EventStore implementation using PostgreSQL
|
390
397
|
test_files: []
|