transaction_isolation_continued 1.0.5

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.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/main.yml +171 -0
  3. data/.gitignore +6 -0
  4. data/Gemfile +8 -0
  5. data/Gemfile.local +18 -0
  6. data/LICENSE +19 -0
  7. data/README.md +118 -0
  8. data/Rakefile +11 -0
  9. data/d +1 -0
  10. data/gemfiles/Gemfile.base +6 -0
  11. data/gemfiles/activerecord-5.2/Gemfile.base +4 -0
  12. data/gemfiles/activerecord-5.2/Gemfile.mysql2 +10 -0
  13. data/gemfiles/activerecord-5.2/Gemfile.postgresql +10 -0
  14. data/gemfiles/activerecord-5.2/Gemfile.sqlite3 +10 -0
  15. data/gemfiles/activerecord-6.0/Gemfile.base +4 -0
  16. data/gemfiles/activerecord-6.0/Gemfile.mysql2 +10 -0
  17. data/gemfiles/activerecord-6.0/Gemfile.postgresql +10 -0
  18. data/gemfiles/activerecord-6.0/Gemfile.sqlite3 +10 -0
  19. data/gemfiles/activerecord-6.1/Gemfile.base +4 -0
  20. data/gemfiles/activerecord-6.1/Gemfile.mysql2 +10 -0
  21. data/gemfiles/activerecord-6.1/Gemfile.postgresql +10 -0
  22. data/gemfiles/activerecord-6.1/Gemfile.sqlite3 +10 -0
  23. data/gemfiles/activerecord-7.0/Gemfile.base +4 -0
  24. data/gemfiles/activerecord-7.0/Gemfile.mysql2 +10 -0
  25. data/gemfiles/activerecord-7.0/Gemfile.postgresql +10 -0
  26. data/gemfiles/activerecord-7.0/Gemfile.sqlite3 +11 -0
  27. data/lib/transaction_isolation/active_record/base.rb +13 -0
  28. data/lib/transaction_isolation/active_record/connection_adapters/abstract_adapter.rb +32 -0
  29. data/lib/transaction_isolation/active_record/connection_adapters/mysql2_adapter.rb +83 -0
  30. data/lib/transaction_isolation/active_record/connection_adapters/postgresql_adapter.rb +81 -0
  31. data/lib/transaction_isolation/active_record/connection_adapters/sqlite3_adapter.rb +80 -0
  32. data/lib/transaction_isolation/active_record/errors.rb +10 -0
  33. data/lib/transaction_isolation/configuration.rb +19 -0
  34. data/lib/transaction_isolation/version.rb +3 -0
  35. data/lib/transaction_isolation.rb +51 -0
  36. data/test/db/all.rb +4 -0
  37. data/test/db/db.rb +37 -0
  38. data/test/db/migrations.rb +20 -0
  39. data/test/db/queued_job.rb +2 -0
  40. data/test/integration/active_record/base/isolation_level_test.rb +23 -0
  41. data/test/integration/active_record/connection_adapters/any_adapter/current_isolation_level_test.rb +33 -0
  42. data/test/integration/active_record/connection_adapters/any_adapter/current_vendor_isolation_level_test.rb +33 -0
  43. data/test/integration/active_record/connection_adapters/any_adapter/isolation_level_test.rb +69 -0
  44. data/test/integration/active_record/connection_adapters/any_adapter/supports_isolation_levels_test.rb +23 -0
  45. data/test/integration/active_record/connection_adapters/any_adapter/translate_exception_test.rb +46 -0
  46. data/test/library_setup.rb +25 -0
  47. data/test/log/.gitkeep +0 -0
  48. data/test/test_console.rb +11 -0
  49. data/test/test_helper.rb +12 -0
  50. data/test/test_runner.rb +4 -0
  51. data/tests +6 -0
  52. data/transaction_isolation_continued.gemspec +25 -0
  53. metadata +154 -0
metadata ADDED
@@ -0,0 +1,154 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: transaction_isolation_continued
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.5
5
+ platform: ruby
6
+ authors:
7
+ - Piotr 'Qertoip' Włodarek
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-05-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '13.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '13.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '='
32
+ - !ruby/object:Gem::Version
33
+ version: 5.3.4
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '='
39
+ - !ruby/object:Gem::Version
40
+ version: 5.3.4
41
+ - !ruby/object:Gem::Dependency
42
+ name: activerecord
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '5.2'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '5.2'
55
+ description: |-
56
+ Set transaction isolation level in the ActiveRecord in a database agnostic way.
57
+ Works with MySQL, PostgreSQL and SQLite as long as you are using new adapters mysql2, pg or sqlite3.
58
+ Supports all ANSI SQL isolation levels: :serializable, :repeatable_read, :read_committed, :read_uncommitted.
59
+ email:
60
+ - qertoip@gmail.com
61
+ executables: []
62
+ extensions: []
63
+ extra_rdoc_files: []
64
+ files:
65
+ - ".github/workflows/main.yml"
66
+ - ".gitignore"
67
+ - Gemfile
68
+ - Gemfile.local
69
+ - LICENSE
70
+ - README.md
71
+ - Rakefile
72
+ - d
73
+ - gemfiles/Gemfile.base
74
+ - gemfiles/activerecord-5.2/Gemfile.base
75
+ - gemfiles/activerecord-5.2/Gemfile.mysql2
76
+ - gemfiles/activerecord-5.2/Gemfile.postgresql
77
+ - gemfiles/activerecord-5.2/Gemfile.sqlite3
78
+ - gemfiles/activerecord-6.0/Gemfile.base
79
+ - gemfiles/activerecord-6.0/Gemfile.mysql2
80
+ - gemfiles/activerecord-6.0/Gemfile.postgresql
81
+ - gemfiles/activerecord-6.0/Gemfile.sqlite3
82
+ - gemfiles/activerecord-6.1/Gemfile.base
83
+ - gemfiles/activerecord-6.1/Gemfile.mysql2
84
+ - gemfiles/activerecord-6.1/Gemfile.postgresql
85
+ - gemfiles/activerecord-6.1/Gemfile.sqlite3
86
+ - gemfiles/activerecord-7.0/Gemfile.base
87
+ - gemfiles/activerecord-7.0/Gemfile.mysql2
88
+ - gemfiles/activerecord-7.0/Gemfile.postgresql
89
+ - gemfiles/activerecord-7.0/Gemfile.sqlite3
90
+ - lib/transaction_isolation.rb
91
+ - lib/transaction_isolation/active_record/base.rb
92
+ - lib/transaction_isolation/active_record/connection_adapters/abstract_adapter.rb
93
+ - lib/transaction_isolation/active_record/connection_adapters/mysql2_adapter.rb
94
+ - lib/transaction_isolation/active_record/connection_adapters/postgresql_adapter.rb
95
+ - lib/transaction_isolation/active_record/connection_adapters/sqlite3_adapter.rb
96
+ - lib/transaction_isolation/active_record/errors.rb
97
+ - lib/transaction_isolation/configuration.rb
98
+ - lib/transaction_isolation/version.rb
99
+ - test/db/all.rb
100
+ - test/db/db.rb
101
+ - test/db/migrations.rb
102
+ - test/db/queued_job.rb
103
+ - test/integration/active_record/base/isolation_level_test.rb
104
+ - test/integration/active_record/connection_adapters/any_adapter/current_isolation_level_test.rb
105
+ - test/integration/active_record/connection_adapters/any_adapter/current_vendor_isolation_level_test.rb
106
+ - test/integration/active_record/connection_adapters/any_adapter/isolation_level_test.rb
107
+ - test/integration/active_record/connection_adapters/any_adapter/supports_isolation_levels_test.rb
108
+ - test/integration/active_record/connection_adapters/any_adapter/translate_exception_test.rb
109
+ - test/library_setup.rb
110
+ - test/log/.gitkeep
111
+ - test/test_console.rb
112
+ - test/test_helper.rb
113
+ - test/test_runner.rb
114
+ - tests
115
+ - transaction_isolation_continued.gemspec
116
+ homepage: https://github.com/qertoip/transaction_isolation
117
+ licenses: []
118
+ metadata: {}
119
+ post_install_message:
120
+ rdoc_options: []
121
+ require_paths:
122
+ - lib
123
+ required_ruby_version: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ version: 1.9.2
128
+ required_rubygems_version: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ requirements: []
134
+ rubygems_version: 3.4.13
135
+ signing_key:
136
+ specification_version: 4
137
+ summary: Set transaction isolation level in the ActiveRecord in a database agnostic
138
+ way.
139
+ test_files:
140
+ - test/db/all.rb
141
+ - test/db/db.rb
142
+ - test/db/migrations.rb
143
+ - test/db/queued_job.rb
144
+ - test/integration/active_record/base/isolation_level_test.rb
145
+ - test/integration/active_record/connection_adapters/any_adapter/current_isolation_level_test.rb
146
+ - test/integration/active_record/connection_adapters/any_adapter/current_vendor_isolation_level_test.rb
147
+ - test/integration/active_record/connection_adapters/any_adapter/isolation_level_test.rb
148
+ - test/integration/active_record/connection_adapters/any_adapter/supports_isolation_levels_test.rb
149
+ - test/integration/active_record/connection_adapters/any_adapter/translate_exception_test.rb
150
+ - test/library_setup.rb
151
+ - test/log/.gitkeep
152
+ - test/test_console.rb
153
+ - test/test_helper.rb
154
+ - test/test_runner.rb