sequent 4.1.0 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/bin/sequent +2 -1
  3. data/lib/sequent/core/aggregate_repository.rb +31 -0
  4. data/lib/sequent/core/aggregate_root.rb +20 -0
  5. data/lib/sequent/core/command_record.rb +1 -1
  6. data/lib/sequent/core/event_store.rb +32 -1
  7. data/lib/sequent/core/helpers/attr_matchers/argument_serializer.rb +35 -0
  8. data/lib/sequent/core/helpers/attr_matchers/attr_matchers.rb +10 -0
  9. data/lib/sequent/core/helpers/attr_matchers/dsl.rb +23 -0
  10. data/lib/sequent/core/helpers/attr_matchers/equals.rb +24 -0
  11. data/lib/sequent/core/helpers/attr_matchers/greater_than.rb +24 -0
  12. data/lib/sequent/core/helpers/attr_matchers/greater_than_equals.rb +24 -0
  13. data/lib/sequent/core/helpers/attr_matchers/less_than.rb +24 -0
  14. data/lib/sequent/core/helpers/attr_matchers/less_than_equals.rb +24 -0
  15. data/lib/sequent/core/helpers/attr_matchers/not_equals.rb +24 -0
  16. data/lib/sequent/core/helpers/attribute_support.rb +34 -9
  17. data/lib/sequent/core/helpers/autoset_attributes.rb +5 -5
  18. data/lib/sequent/core/helpers/message_dispatcher.rb +20 -0
  19. data/lib/sequent/core/helpers/message_handler.rb +62 -8
  20. data/lib/sequent/core/helpers/message_handler_option_registry.rb +59 -0
  21. data/lib/sequent/core/helpers/message_matchers/any.rb +34 -0
  22. data/lib/sequent/core/helpers/message_matchers/argument_coercer.rb +24 -0
  23. data/lib/sequent/core/helpers/message_matchers/argument_serializer.rb +20 -0
  24. data/lib/sequent/core/helpers/message_matchers/dsl.rb +23 -0
  25. data/lib/sequent/core/helpers/message_matchers/except_opt.rb +24 -0
  26. data/lib/sequent/core/helpers/message_matchers/has_attrs.rb +54 -0
  27. data/lib/sequent/core/helpers/message_matchers/instance_of.rb +24 -0
  28. data/lib/sequent/core/helpers/message_matchers/is_a.rb +34 -0
  29. data/lib/sequent/core/helpers/message_matchers/message_matchers.rb +10 -0
  30. data/lib/sequent/core/helpers/message_router.rb +55 -0
  31. data/lib/sequent/core/projector.rb +28 -0
  32. data/lib/sequent/core/transactions/active_record_transaction_provider.rb +25 -0
  33. data/lib/sequent/core/transactions/read_only_active_record_transaction_provider.rb +46 -0
  34. data/lib/sequent/core/transactions/transactions.rb +1 -0
  35. data/lib/sequent/core/workflow.rb +30 -2
  36. data/lib/sequent/generator/project.rb +7 -0
  37. data/lib/sequent/generator/template_project/ruby-version +1 -0
  38. data/lib/sequent/test/command_handler_helpers.rb +2 -2
  39. data/lib/sequent/util/dry_run.rb +18 -13
  40. data/lib/version.rb +1 -1
  41. metadata +36 -13
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequent
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lars Vonk
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2021-12-21 00:00:00.000000000 Z
15
+ date: 2022-06-16 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: activemodel
@@ -21,9 +21,9 @@ dependencies:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
23
  version: '5.0'
24
- - - "<="
24
+ - - "<"
25
25
  - !ruby/object:Gem::Version
26
- version: 6.1.4
26
+ version: '7.1'
27
27
  type: :runtime
28
28
  prerelease: false
29
29
  version_requirements: !ruby/object:Gem::Requirement
@@ -31,9 +31,9 @@ dependencies:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '5.0'
34
- - - "<="
34
+ - - "<"
35
35
  - !ruby/object:Gem::Version
36
- version: 6.1.4
36
+ version: '7.1'
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: activerecord
39
39
  requirement: !ruby/object:Gem::Requirement
@@ -41,9 +41,9 @@ dependencies:
41
41
  - - ">="
42
42
  - !ruby/object:Gem::Version
43
43
  version: '5.0'
44
- - - "<="
44
+ - - "<"
45
45
  - !ruby/object:Gem::Version
46
- version: 6.1.4
46
+ version: '7.1'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
@@ -51,9 +51,9 @@ dependencies:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: '5.0'
54
- - - "<="
54
+ - - "<"
55
55
  - !ruby/object:Gem::Version
56
- version: 6.1.4
56
+ version: '7.1'
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: bcrypt
59
59
  requirement: !ruby/object:Gem::Requirement
@@ -119,7 +119,7 @@ dependencies:
119
119
  version: 2.6.5
120
120
  - - "<"
121
121
  - !ruby/object:Gem::Version
122
- version: '3.1'
122
+ version: '3.2'
123
123
  type: :runtime
124
124
  prerelease: false
125
125
  version_requirements: !ruby/object:Gem::Requirement
@@ -129,7 +129,7 @@ dependencies:
129
129
  version: 2.6.5
130
130
  - - "<"
131
131
  - !ruby/object:Gem::Version
132
- version: '3.1'
132
+ version: '3.2'
133
133
  - !ruby/object:Gem::Dependency
134
134
  name: pg
135
135
  requirement: !ruby/object:Gem::Requirement
@@ -333,6 +333,15 @@ files:
333
333
  - lib/sequent/core/ext/ext.rb
334
334
  - lib/sequent/core/helpers/array_with_type.rb
335
335
  - lib/sequent/core/helpers/association_validator.rb
336
+ - lib/sequent/core/helpers/attr_matchers/argument_serializer.rb
337
+ - lib/sequent/core/helpers/attr_matchers/attr_matchers.rb
338
+ - lib/sequent/core/helpers/attr_matchers/dsl.rb
339
+ - lib/sequent/core/helpers/attr_matchers/equals.rb
340
+ - lib/sequent/core/helpers/attr_matchers/greater_than.rb
341
+ - lib/sequent/core/helpers/attr_matchers/greater_than_equals.rb
342
+ - lib/sequent/core/helpers/attr_matchers/less_than.rb
343
+ - lib/sequent/core/helpers/attr_matchers/less_than_equals.rb
344
+ - lib/sequent/core/helpers/attr_matchers/not_equals.rb
336
345
  - lib/sequent/core/helpers/attribute_support.rb
337
346
  - lib/sequent/core/helpers/autoset_attributes.rb
338
347
  - lib/sequent/core/helpers/boolean_validator.rb
@@ -343,7 +352,19 @@ files:
343
352
  - lib/sequent/core/helpers/equal_support.rb
344
353
  - lib/sequent/core/helpers/helpers.rb
345
354
  - lib/sequent/core/helpers/mergable.rb
355
+ - lib/sequent/core/helpers/message_dispatcher.rb
346
356
  - lib/sequent/core/helpers/message_handler.rb
357
+ - lib/sequent/core/helpers/message_handler_option_registry.rb
358
+ - lib/sequent/core/helpers/message_matchers/any.rb
359
+ - lib/sequent/core/helpers/message_matchers/argument_coercer.rb
360
+ - lib/sequent/core/helpers/message_matchers/argument_serializer.rb
361
+ - lib/sequent/core/helpers/message_matchers/dsl.rb
362
+ - lib/sequent/core/helpers/message_matchers/except_opt.rb
363
+ - lib/sequent/core/helpers/message_matchers/has_attrs.rb
364
+ - lib/sequent/core/helpers/message_matchers/instance_of.rb
365
+ - lib/sequent/core/helpers/message_matchers/is_a.rb
366
+ - lib/sequent/core/helpers/message_matchers/message_matchers.rb
367
+ - lib/sequent/core/helpers/message_router.rb
347
368
  - lib/sequent/core/helpers/param_support.rb
348
369
  - lib/sequent/core/helpers/secret.rb
349
370
  - lib/sequent/core/helpers/string_support.rb
@@ -362,6 +383,7 @@ files:
362
383
  - lib/sequent/core/stream_record.rb
363
384
  - lib/sequent/core/transactions/active_record_transaction_provider.rb
364
385
  - lib/sequent/core/transactions/no_transactions.rb
386
+ - lib/sequent/core/transactions/read_only_active_record_transaction_provider.rb
365
387
  - lib/sequent/core/transactions/transactions.rb
366
388
  - lib/sequent/core/value_object.rb
367
389
  - lib/sequent/core/workflow.rb
@@ -393,6 +415,7 @@ files:
393
415
  - lib/sequent/generator/template_project/lib/post/post.rb
394
416
  - lib/sequent/generator/template_project/lib/post/post_command_handler.rb
395
417
  - lib/sequent/generator/template_project/my_app.rb
418
+ - lib/sequent/generator/template_project/ruby-version
396
419
  - lib/sequent/generator/template_project/spec/app/projectors/post_projector_spec.rb
397
420
  - lib/sequent/generator/template_project/spec/lib/post/post_command_handler_spec.rb
398
421
  - lib/sequent/generator/template_project/spec/spec_helper.rb
@@ -441,7 +464,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
441
464
  - !ruby/object:Gem::Version
442
465
  version: '0'
443
466
  requirements: []
444
- rubygems_version: 3.2.3
467
+ rubygems_version: 3.3.7
445
468
  signing_key:
446
469
  specification_version: 4
447
470
  summary: Event sourcing framework for Ruby