pg_eventstore 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +7 -0
  3. data/CODE_OF_CONDUCT.md +84 -0
  4. data/LICENSE.txt +21 -0
  5. data/README.md +90 -0
  6. data/db/extensions.sql +2 -0
  7. data/db/indexes.sql +13 -0
  8. data/db/primary_and_foreign_keys.sql +11 -0
  9. data/db/tables.sql +21 -0
  10. data/docs/appending_events.md +170 -0
  11. data/docs/configuration.md +82 -0
  12. data/docs/events_and_streams.md +45 -0
  13. data/docs/multiple_commands.md +46 -0
  14. data/docs/reading_events.md +161 -0
  15. data/docs/writing_middleware.md +160 -0
  16. data/lib/pg_eventstore/abstract_command.rb +18 -0
  17. data/lib/pg_eventstore/client.rb +133 -0
  18. data/lib/pg_eventstore/commands/append.rb +61 -0
  19. data/lib/pg_eventstore/commands/multiple.rb +14 -0
  20. data/lib/pg_eventstore/commands/read.rb +24 -0
  21. data/lib/pg_eventstore/commands.rb +6 -0
  22. data/lib/pg_eventstore/config.rb +30 -0
  23. data/lib/pg_eventstore/connection.rb +97 -0
  24. data/lib/pg_eventstore/errors.rb +107 -0
  25. data/lib/pg_eventstore/event.rb +59 -0
  26. data/lib/pg_eventstore/event_class_resolver.rb +17 -0
  27. data/lib/pg_eventstore/event_serializer.rb +27 -0
  28. data/lib/pg_eventstore/extensions/options_extension.rb +103 -0
  29. data/lib/pg_eventstore/middleware.rb +15 -0
  30. data/lib/pg_eventstore/pg_result_deserializer.rb +48 -0
  31. data/lib/pg_eventstore/queries.rb +127 -0
  32. data/lib/pg_eventstore/query_builders/events_filtering_query.rb +187 -0
  33. data/lib/pg_eventstore/rspec/has_option_matcher.rb +90 -0
  34. data/lib/pg_eventstore/sql_builder.rb +126 -0
  35. data/lib/pg_eventstore/stream.rb +72 -0
  36. data/lib/pg_eventstore/tasks/setup.rake +37 -0
  37. data/lib/pg_eventstore/version.rb +5 -0
  38. data/lib/pg_eventstore.rb +85 -0
  39. data/pg_eventstore.gemspec +40 -0
  40. metadata +113 -0
metadata ADDED
@@ -0,0 +1,113 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pg_eventstore
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Ivan Dzyzenko
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2023-12-12 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: pg
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.5'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.5'
27
+ - !ruby/object:Gem::Dependency
28
+ name: connection_pool
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.4'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.4'
41
+ description: EventStore implementation using PostgreSQL
42
+ email:
43
+ - ivan.dzyzenko@gmail.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - CHANGELOG.md
49
+ - CODE_OF_CONDUCT.md
50
+ - LICENSE.txt
51
+ - README.md
52
+ - db/extensions.sql
53
+ - db/indexes.sql
54
+ - db/primary_and_foreign_keys.sql
55
+ - db/tables.sql
56
+ - docs/appending_events.md
57
+ - docs/configuration.md
58
+ - docs/events_and_streams.md
59
+ - docs/multiple_commands.md
60
+ - docs/reading_events.md
61
+ - docs/writing_middleware.md
62
+ - lib/pg_eventstore.rb
63
+ - lib/pg_eventstore/abstract_command.rb
64
+ - lib/pg_eventstore/client.rb
65
+ - lib/pg_eventstore/commands.rb
66
+ - lib/pg_eventstore/commands/append.rb
67
+ - lib/pg_eventstore/commands/multiple.rb
68
+ - lib/pg_eventstore/commands/read.rb
69
+ - lib/pg_eventstore/config.rb
70
+ - lib/pg_eventstore/connection.rb
71
+ - lib/pg_eventstore/errors.rb
72
+ - lib/pg_eventstore/event.rb
73
+ - lib/pg_eventstore/event_class_resolver.rb
74
+ - lib/pg_eventstore/event_serializer.rb
75
+ - lib/pg_eventstore/extensions/options_extension.rb
76
+ - lib/pg_eventstore/middleware.rb
77
+ - lib/pg_eventstore/pg_result_deserializer.rb
78
+ - lib/pg_eventstore/queries.rb
79
+ - lib/pg_eventstore/query_builders/events_filtering_query.rb
80
+ - lib/pg_eventstore/rspec/has_option_matcher.rb
81
+ - lib/pg_eventstore/sql_builder.rb
82
+ - lib/pg_eventstore/stream.rb
83
+ - lib/pg_eventstore/tasks/setup.rake
84
+ - lib/pg_eventstore/version.rb
85
+ - pg_eventstore.gemspec
86
+ homepage: https://github.com/yousty/pg_eventstore
87
+ licenses:
88
+ - MIT
89
+ metadata:
90
+ allowed_push_host: https://rubygems.org
91
+ homepage_uri: https://github.com/yousty/pg_eventstore
92
+ source_code_uri: https://github.com/yousty/pg_eventstore
93
+ changelog_uri: https://github.com/yousty/pg_eventstore/blob/main/CHANGELOG.md
94
+ post_install_message:
95
+ rdoc_options: []
96
+ require_paths:
97
+ - lib
98
+ required_ruby_version: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: '3.0'
103
+ required_rubygems_version: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - ">="
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
108
+ requirements: []
109
+ rubygems_version: 3.4.10
110
+ signing_key:
111
+ specification_version: 4
112
+ summary: EventStore implementation using PostgreSQL
113
+ test_files: []