activerecord-transactionable 3.0.1 → 3.0.3
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
- checksums.yaml.gz.sig +0 -0
- data/CONTRIBUTING.md +40 -19
- data/{LICENSE → LICENSE.txt} +1 -1
- data/README.md +158 -94
- data/SECURITY.md +9 -7
- data/lib/activerecord/transactionable/result.rb +1 -1
- data/lib/activerecord/transactionable/version.rb +3 -1
- data/lib/activerecord/transactionable.rb +93 -35
- data.tar.gz.sig +0 -0
- metadata +102 -133
- metadata.gz.sig +0 -0
- data/.github/FUNDING.yml +0 -12
- data/.github/dependabot.yml +0 -8
- data/.github/workflows/style.yml +0 -34
- data/.github/workflows/supported.yml +0 -58
- data/.github/workflows/unsupported.yml +0 -37
- data/.gitignore +0 -12
- data/.rspec +0 -3
- data/.rubocop.yml +0 -121
- data/.rubocop_todo.yml +0 -149
- data/.simplecov +0 -37
- data/Gemfile +0 -8
- data/Rakefile +0 -25
- data/activerecord-transactionable.gemspec +0 -62
- data/bin/console +0 -15
- data/bin/setup +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e51681be44857d8712382ad19341412547a6c5ed576389c30fdd3b9972ef6570
|
4
|
+
data.tar.gz: 33923a34222e74d7e1a727f9ef254c4f3f39645d1861bb5ad3ef92df24d046a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e7887778fc6e41dc4c8fa912fc5905973c80e0878dbc0ba1418da7e9ecd4ee5d485e9b50b67101a93199a30ee9f555d7aca13cd6d8443e5ab924f5cc6b7750df
|
7
|
+
data.tar.gz: 983f1379a536d71f34eeaab8a31be4aa3bcd746051332ae890efe2b8465d3129f9fa8de2c38e61e531180ce9818338f0eb64998435cc561f7a0eedeaef1c6f33
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data/CONTRIBUTING.md
CHANGED
@@ -1,26 +1,47 @@
|
|
1
1
|
## Contributing
|
2
2
|
|
3
|
-
Bug reports and pull requests are welcome on GitHub at [https://github.com/pboling/activerecord-transactionable][
|
4
|
-
intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to
|
5
|
-
the [code of conduct][conduct].
|
6
|
-
|
7
|
-
To submit a patch, please fork the project and create a patch with
|
8
|
-
|
3
|
+
Bug reports and pull requests are welcome on GitHub at [https://github.com/pboling/activerecord-transactionable][🚎src-main]
|
4
|
+
. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to
|
5
|
+
the [code of conduct][🤝conduct].
|
6
|
+
|
7
|
+
To submit a patch, please fork the project and create a patch with tests. Once you're happy with it send a pull request
|
8
|
+
and post a message to the [gitter chat][🏘chat].
|
9
|
+
|
10
|
+
## Release
|
11
|
+
|
12
|
+
To release a new version:
|
13
|
+
|
14
|
+
1. Run `bin/setup && bin/rake` as a tests, coverage, & linting sanity check
|
15
|
+
2. Update the version number in `version.rb`
|
16
|
+
3. Run `bin/setup && bin/rake` again as a secondary check, and to update `Gemfile.lock`
|
17
|
+
4. Run `git commit -am "🔖 Prepare release v<VERSION>"` to commit the changes
|
18
|
+
5. Run `git push` to trigger the final CI pipeline before release, & merge PRs
|
19
|
+
a. NOTE: Remember to [check the build][🧪build]!
|
20
|
+
6. Run `git checkout main` (Or whichever branch is considered `trunk`, e.g. `master`)
|
21
|
+
7. Run `git pull origin main` to ensure you will release the latest trunk code.
|
22
|
+
8. Set `SOURCE_DATE_EPOCH` so `rake build` and `rake release` use same timestamp, and generate same checksums
|
23
|
+
a. Run `export SOURCE_DATE_EPOCH=$EPOCHSECONDS`
|
24
|
+
9. Run `bundle exec rake build`
|
25
|
+
10. Run [`bin/checksums`](https://github.com/rubygems/guides/pull/325) to create SHA-256 and SHA-512 checksums
|
26
|
+
a. Checksums will be committed automatically by the script, but not pushed
|
27
|
+
11. Run `bundle exec rake release` which will create a git tag for the version,
|
28
|
+
push git commits and tags, and push the `.gem` file to [rubygems.org][💎rubygems]
|
29
|
+
|
30
|
+
NOTE: You will need to have a public key in `certs/`, and list your cert in the
|
31
|
+
`gemspec`, in order to sign the new release.
|
32
|
+
See: [RubyGems Security Guide][🔒️rubygems-security-guide]
|
9
33
|
|
10
34
|
## Contributors
|
11
35
|
|
12
|
-
[][contributors]
|
13
|
-
|
14
|
-
Made with [contributors-img][contrib-rocks].
|
15
|
-
|
16
|
-
[comment]: <> (Following links are used by README, CONTRIBUTING)
|
17
|
-
|
18
|
-
[conduct]: https://github.com/pboling/activerecord-transactionable/blob/master/CODE_OF_CONDUCT.md
|
19
|
-
|
20
|
-
[contrib-rocks]: https://contrib.rocks
|
21
|
-
|
22
|
-
[contributors]: https://github.com/pboling/activerecord-transactionable/graphs/contributors
|
36
|
+
[][🖐contributors]
|
23
37
|
|
24
|
-
[
|
38
|
+
Made with [contributors-img][🖐contrib-rocks].
|
25
39
|
|
26
|
-
[
|
40
|
+
[🧪build]: https://github.com/pboling/activerecord-transactionable/actions
|
41
|
+
[🏘chat]: https://matrix.to/#/#pboling_activerecord-transactionable:gitter.im
|
42
|
+
[🤝conduct]: https://github.com/pboling/activerecord-transactionable/blob/main/CODE_OF_CONDUCT.md
|
43
|
+
[🖐contrib-rocks]: https://contrib.rocks
|
44
|
+
[🖐contributors]: https://github.com/pboling/activerecord-transactionable/graphs/contributors
|
45
|
+
[💎rubygems]: https://rubygems.org
|
46
|
+
[🔒️rubygems-security-guide]: https://guides.rubygems.org/security/#building-gems
|
47
|
+
[🚎src-main]: https://github.com/pboling/activerecord-transactionable
|
data/{LICENSE → LICENSE.txt}
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
The MIT License (MIT)
|
2
2
|
|
3
|
-
Copyright (c) 2016
|
3
|
+
Copyright (c) 2016-2018, 2021-2022, 2024 Peter H. Boling (railsbling.com)
|
4
4
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
CHANGED
@@ -1,16 +1,69 @@
|
|
1
1
|
# Activerecord::Transactionable
|
2
2
|
|
3
|
+
<div id="badges">
|
4
|
+
|
5
|
+
[![CI Build][🚎dl-cwfi]][🚎dl-cwf]
|
6
|
+
[![Test Coverage][🔑cc-covi]][🔑cc-cov]
|
7
|
+
[![Maintainability][🔑cc-mnti]][🔑cc-mnt]
|
8
|
+
[![Depfu][🔑depfui]][🔑depfu]
|
9
|
+
|
10
|
+
[🚎dl-cwf]: https://github.com/pboling/activerecord-transactionable/actions/workflows/current.yml
|
11
|
+
[🚎dl-cwfi]: https://github.com/pboling/activerecord-transactionable/actions/workflows/current.yml/badge.svg
|
12
|
+
|
13
|
+
[comment]: <> ( 🔑 KEYED LINKS )
|
14
|
+
|
15
|
+
[🔑cc-mnt]: https://codeclimate.com/github/pboling/activerecord-transactionable/maintainability
|
16
|
+
[🔑cc-mnti]: https://api.codeclimate.com/v1/badges/41fa99881cfe6d45e7e5/maintainability
|
17
|
+
[🔑cc-cov]: https://codeclimate.com/github/pboling/activerecord-transactionable/test_coverage
|
18
|
+
[🔑cc-covi]: https://api.codeclimate.com/v1/badges/41fa99881cfe6d45e7e5/test_coverage
|
19
|
+
[🔑depfu]: https://depfu.com/github/pboling/activerecord-transactionable?project_id=2653
|
20
|
+
[🔑depfui]: https://badges.depfu.com/badges/d570491bac0ad3b0b65deb3c82028327/count.svg
|
21
|
+
|
22
|
+
-----
|
23
|
+
|
24
|
+
[![Liberapay Patrons][⛳liberapay-img]][⛳liberapay]
|
25
|
+
[![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor]
|
26
|
+
<span class="badge-buymeacoffee">
|
27
|
+
<a href="https://ko-fi.com/O5O86SNP4" target='_blank' title="Donate to my FLOSS or refugee efforts at ko-fi.com"><img src="https://img.shields.io/badge/buy%20me%20coffee-donate-yellow.svg" alt="Buy me coffee donation button" /></a>
|
28
|
+
</span>
|
29
|
+
<span class="badge-patreon">
|
30
|
+
<a href="https://patreon.com/galtzo" title="Donate to my FLOSS or refugee efforts using Patreon"><img src="https://img.shields.io/badge/patreon-donate-yellow.svg" alt="Patreon donate button" /></a>
|
31
|
+
</span>
|
32
|
+
|
33
|
+
</div>
|
34
|
+
|
35
|
+
[⛳liberapay-img]: https://img.shields.io/liberapay/patrons/pboling.svg?logo=liberapay
|
36
|
+
[⛳liberapay]: https://liberapay.com/pboling/donate
|
37
|
+
[🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
|
38
|
+
[🖇sponsor]: https://github.com/sponsors/pboling
|
39
|
+
|
3
40
|
Provides a method, `transaction_wrapper` at the class and instance levels that can be used instead of `ActiveRecord#transaction`. Enables you to do transactions properly, with custom rescues and retry, including with or without locking.
|
4
41
|
|
5
|
-
| Project
|
6
|
-
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
42
|
+
| Project | Activerecord::Transactionable |
|
43
|
+
|-----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
44
|
+
| install | `bundle add activerecord-transactionable` |
|
45
|
+
| compatibility | Ruby >= 2.5 |
|
46
|
+
| license | [](https://opensource.org/licenses/MIT) |
|
47
|
+
| download rank | [](https://github.com/pboling/activerecord-transactionable) |
|
48
|
+
| version | [](https://rubygems.org/gems/activerecord-transactionable) |
|
49
|
+
| code triage | [](https://www.codetriage.com/pboling/activerecord-transactionable) |
|
50
|
+
| documentation | [on RDoc.info][documentation] |
|
51
|
+
| live chat | [](https://matrix.to/#/#pboling_activerecord-transactionable:gitter.im?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) |
|
52
|
+
| expert support | [](https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github) |
|
53
|
+
| Spread ~♡ⓛⓞⓥⓔ♡~ | [🌏](https://about.me/peter.boling), [👼](https://angel.co/peter-boling), [![Liberapay Patrons][⛳liberapay-img]][⛳liberapay] [![Follow Me on LinkedIn][🖇linkedin-img]][🖇linkedin] [![Find Me on WellFound:][✌️wellfound-img]][✌️wellfound] [![My Blog][🚎blog-img]][🚎blog] [![Follow Me on Twitter][🐦twitter-img]][🐦twitter] |
|
54
|
+
|
55
|
+
[documentation]: https://rubydoc.info/github/pboling/activerecord-transactionable
|
56
|
+
[🖇linkedin]: http://www.linkedin.com/in/peterboling
|
57
|
+
[🖇linkedin-img]: https://img.shields.io/badge/PeterBoling-blue?style=plastic&logo=linkedin
|
58
|
+
[✌️wellfound]: https://angel.co/u/peter-boling
|
59
|
+
[✌️wellfound-img]: https://img.shields.io/badge/peter--boling-orange?style=plastic&logo=angellist
|
60
|
+
[🐦twitter]: http://twitter.com/intent/user?screen_name=galtzo
|
61
|
+
[🐦twitter-img]: https://img.shields.io/twitter/follow/galtzo.svg?style=social&label=Follow%20@galtzo
|
62
|
+
[🚎blog]: http://www.railsbling.com/tags/oauth2/
|
63
|
+
[🚎blog-img]: https://img.shields.io/badge/blog-railsbling-brightgreen.svg?style=flat
|
64
|
+
[my🧪lab]: https://gitlab.com/pboling
|
65
|
+
[my🧊berg]: https://codeberg.org/pboling
|
66
|
+
[my🛖hut]: https://sr.ht/~galtzo/
|
14
67
|
|
15
68
|
Useful as an example of correct behavior for wrapping transactions.
|
16
69
|
|
@@ -20,10 +73,12 @@ NOTE: Rails' transactions are per-database connection, not per-model, nor per-in
|
|
20
73
|
## Upgrading to Version 2
|
21
74
|
|
22
75
|
In version 1 the `transaction_wrapper` returned `true` or `false`. In version 2 it returns an instance of `Activerecord::Transactionable::Result`, which has a `value`, and three methods:
|
76
|
+
|
23
77
|
```ruby
|
78
|
+
|
24
79
|
args = {}
|
25
80
|
result = transaction_wrapper(**args) do
|
26
|
-
|
81
|
+
# some code that might fail here
|
27
82
|
end
|
28
83
|
result.fail?
|
29
84
|
result.success?
|
@@ -60,14 +115,14 @@ Or install it yourself as:
|
|
60
115
|
|
61
116
|
## Compatibility
|
62
117
|
|
63
|
-
Targeted ruby compatibility is non-EOL versions of Ruby, currently 2.6, 2.7,
|
64
|
-
|
118
|
+
Targeted ruby compatibility is non-EOL versions of Ruby, currently 2.6, 2.7, 3.0, 3.1, 3.2, 3.3.
|
119
|
+
Ruby is limited to 2.5+ in the gemspec, and when it changes there will be a major release.
|
65
120
|
The `master` branch currently targets 3.0.x releases.
|
66
121
|
|
67
|
-
| Ruby OAuth Version
|
68
|
-
|
69
|
-
| 3.0.x
|
70
|
-
| 2.0.x
|
122
|
+
| Ruby OAuth Version | Maintenance Branch | Officially Supported Rubies | Unofficially Supported Rubies |
|
123
|
+
|--------------------|--------------------|----------------------------------------|-------------------------------|
|
124
|
+
| 3.0.x | `master` | 2.6, 2.7, 3.0, 3.1, 3.2, 3.3 | 2.5 |
|
125
|
+
| 2.0.x | `v2-maintenance` | 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 3.0 | |
|
71
126
|
|
72
127
|
NOTE: 2.0.5 is anticipated as last release of the 2.x series.
|
73
128
|
|
@@ -124,7 +179,7 @@ If you need to know if the transaction succeeded:
|
|
124
179
|
```ruby
|
125
180
|
car = Car.new(name: nil)
|
126
181
|
result = car.transaction_wrapper(lock: true) do # uses ActiveRecord's with_lock
|
127
|
-
|
182
|
+
car.save!
|
128
183
|
end
|
129
184
|
result # => an instance of Activerecord::Transactionable::Result
|
130
185
|
result.success? # => true or false
|
@@ -135,14 +190,14 @@ result.success? # => true or false
|
|
135
190
|
```ruby
|
136
191
|
@client = Client.find(params[:id])
|
137
192
|
transaction_result = @client.transaction_wrapper(lock: true) do
|
138
|
-
|
139
|
-
|
193
|
+
@client.assign_attributes(client_params)
|
194
|
+
@client.save!
|
140
195
|
end
|
141
196
|
if transaction_result.success?
|
142
|
-
render :show, locals: {
|
197
|
+
render :show, locals: {client: @client}, status: :ok
|
143
198
|
else
|
144
199
|
# Something prevented update, transaction_result.to_h will have all the available details
|
145
|
-
render json: {
|
200
|
+
render json: {record_errors: @client.errors, transaction_result: transaction_result.to_h}, status: :unprocessable_entity
|
146
201
|
end
|
147
202
|
```
|
148
203
|
|
@@ -202,16 +257,12 @@ Activerecord::Transactionable::ClassMethods.class_eval do
|
|
202
257
|
end
|
203
258
|
```
|
204
259
|
|
205
|
-
##
|
260
|
+
## 🪇 Code of Conduct
|
206
261
|
|
207
|
-
|
208
|
-
|
209
|
-
* Live Chat on Gitter: [][chat]
|
210
|
-
* Maintainer's Blog: [][blogpage]
|
262
|
+
Everyone interacting in this project's codebases, issue trackers,
|
263
|
+
chat rooms and mailing lists is expected to follow the [code of conduct][🪇conduct].
|
211
264
|
|
212
|
-
|
213
|
-
|
214
|
-
Everyone interacting with this project's code, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/pboling/activerecord-transactionable/blob/master/CODE_OF_CONDUCT.md).
|
265
|
+
[🪇conduct]: CODE_OF_CONDUCT.md
|
215
266
|
|
216
267
|
## Development
|
217
268
|
|
@@ -219,110 +270,123 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
|
|
219
270
|
|
220
271
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
221
272
|
|
222
|
-
##
|
223
|
-
|
224
|
-
See [CONTRIBUTING.md][contributing]
|
273
|
+
## 🛞 DVCS
|
225
274
|
|
226
|
-
|
275
|
+
This project does not trust any one version control system,
|
276
|
+
so it abides the principles of ["Distributed Version Control Systems"][💎d-in-dvcs]
|
227
277
|
|
228
|
-
|
278
|
+
Find this project on:
|
229
279
|
|
230
|
-
|
280
|
+
| Any | Of | These | DVCS |
|
281
|
+
|----------------|------------------|----------------|----------------|
|
282
|
+
| [🐙hub][🐙hub] | [🧊berg][🧊berg] | [🛖hut][🛖hut] | [🧪lab][🧪lab] |
|
231
283
|
|
232
|
-
|
233
|
-
Violations of this scheme should be reported as bugs. Specifically,
|
234
|
-
if a minor or patch version is released that breaks backward
|
235
|
-
compatibility, a new version should be immediately released that
|
236
|
-
restores compatibility. Breaking changes to the public API will
|
237
|
-
only be introduced with new major versions.
|
284
|
+
[comment]: <> ( DVCS LINKS )
|
238
285
|
|
239
|
-
|
240
|
-
dependency on this gem using the [Pessimistic Version Constraint][pvc] with two digits of precision.
|
286
|
+
[💎d-in-dvcs]: https://railsbling.com/posts/dvcs/put_the_d_in_dvcs/
|
241
287
|
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
```
|
288
|
+
[🧊berg]: https://codeberg.org/pboling/activerecord-transactionable
|
289
|
+
[🐙hub]: https://gitlab.com/pboling/activerecord-transactionable
|
290
|
+
[🛖hut]: https://sr.ht/~galtzo/pboling/activerecord-transactionable
|
291
|
+
[🧪lab]: https://gitlab.com/pboling/activerecord-transactionable
|
247
292
|
|
248
|
-
##
|
293
|
+
## 🤝 Contributing
|
249
294
|
|
250
|
-
|
295
|
+
See [CONTRIBUTING.md][🤝contributing]
|
251
296
|
|
252
|
-
[
|
297
|
+
[🤝contributing]: CONTRIBUTING.md
|
253
298
|
|
254
|
-
|
299
|
+
## 🌈 Contributors
|
255
300
|
|
256
|
-
[
|
301
|
+
[![Contributors][🌈contrib-rocks-img]][🐙hub-contrib]
|
257
302
|
|
258
|
-
[
|
303
|
+
Contributor tiles (GitHub only) made with [contributors-img][🌈contrib-rocks].
|
259
304
|
|
260
|
-
|
305
|
+
Learn more about, or become one of, our 🎖 contributors on:
|
261
306
|
|
262
|
-
|
307
|
+
| Any | Of | These | DVCS |
|
308
|
+
|-------------------------------------|---------------------------------------|-------------------------------------|-------------------------------------|
|
309
|
+
| [🐙hub contributors][🐙hub-contrib] | [🧊berg contributors][🧊berg-contrib] | [🛖hut contributors][🛖hut-contrib] | [🧪lab contributors][🧪lab-contrib] |
|
263
310
|
|
264
|
-
[
|
311
|
+
[comment]: <> ( DVCS CONTRIB LINKS )
|
265
312
|
|
266
|
-
[
|
313
|
+
[🌈contrib-rocks]: https://contrib.rocks
|
314
|
+
[🌈contrib-rocks-img]: https://contrib.rocks/image?repo=pboling/activerecord-transactionable
|
267
315
|
|
268
|
-
[
|
316
|
+
[🧊berg-contrib]: https://codeberg.org/pboling/activerecord-transactionable/activity
|
317
|
+
[🐙hub-contrib]: https://github.com/pboling/activerecord-transactionable/graphs/contributors
|
318
|
+
[🛖hut-contrib]: https://git.sr.ht/~galtzo/activerecord-transactionable/log/
|
319
|
+
[🧪lab-contrib]: https://gitlab.com/pboling/activerecord-transactionable/-/graphs/main?ref_type=heads
|
269
320
|
|
270
|
-
|
321
|
+
## 📌 Versioning
|
271
322
|
|
272
|
-
[
|
323
|
+
This Library adheres to [Semantic Versioning 2.0.0][📌semver].
|
324
|
+
Violations of this scheme should be reported as bugs.
|
325
|
+
Specifically, if a minor or patch version is released that breaks backward compatibility,
|
326
|
+
a new version should be immediately released that restores compatibility.
|
327
|
+
Breaking changes to the public API will only be introduced with new major versions.
|
273
328
|
|
274
|
-
|
329
|
+
To get a better understanding of how SemVer is intended to work over a project's lifetime,
|
330
|
+
read this article from the creator of SemVer:
|
275
331
|
|
276
|
-
[
|
332
|
+
- ["Major Version Numbers are Not Sacred"][📌major-versions-not-sacred]
|
277
333
|
|
278
|
-
|
334
|
+
As a result of this policy, you can (and should) specify a dependency on these libraries using
|
335
|
+
the [Pessimistic Version Constraint][📌pvc] with two digits of precision.
|
279
336
|
|
280
|
-
|
337
|
+
For example:
|
281
338
|
|
282
|
-
|
339
|
+
```ruby
|
340
|
+
spec.add_dependency("activerecord-transactionable", "~> 3.0")
|
341
|
+
```
|
283
342
|
|
284
|
-
[
|
343
|
+
[comment]: <> ( 📌 VERSIONING LINKS )
|
285
344
|
|
286
|
-
[
|
345
|
+
[📌pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
|
346
|
+
[📌semver]: http://semver.org/
|
347
|
+
[📌major-versions-not-sacred]: https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html
|
287
348
|
|
288
|
-
|
349
|
+
## Contact
|
289
350
|
|
290
|
-
[
|
351
|
+
Author and maintainer is Peter Boling ([@pboling][gh_sponsors]).
|
291
352
|
|
292
|
-
[
|
353
|
+
Feedback and questions are welcome on the [GitHub Discussions][gh_discussions] board.
|
293
354
|
|
294
|
-
[
|
355
|
+
For security-related issues see [SECURITY][security].
|
295
356
|
|
357
|
+
[security]: https://github.com/pboling/activerecord-transactionable/blob/master/SECURITY.md
|
296
358
|
[gh_discussions]: https://github.com/pboling/activerecord-transactionable/discussions
|
359
|
+
[gh_sponsors]: https://github.com/sponsors/pboling
|
297
360
|
|
298
|
-
|
299
|
-
|
300
|
-
[license-ref]: https://opensource.org/licenses/MIT
|
301
|
-
|
302
|
-
[codecov_coverage]: https://codecov.io/gh/pboling/activerecord-transactionable
|
303
|
-
|
304
|
-
[liberapay_donate]: https://liberapay.com/pboling/donate
|
305
|
-
|
306
|
-
[aboutme]: https://about.me/peter.boling
|
307
|
-
|
308
|
-
[angelme]: https://angel.co/peter-boling
|
309
|
-
|
310
|
-
[coderme]:http://coderwall.com/pboling
|
361
|
+
## 📄 License
|
311
362
|
|
312
|
-
|
363
|
+
The gem is available as open source under the terms of
|
364
|
+
the [MIT License][📄license] [![License: MIT][📄license-img]][📄license-ref].
|
365
|
+
See [LICENSE.txt][📄license] for the official [Copyright Notice][📄copyright-notice-explainer].
|
313
366
|
|
314
|
-
[
|
367
|
+
[comment]: <> ( 📄 LEGAL LINKS )
|
315
368
|
|
316
|
-
[
|
369
|
+
[📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
|
370
|
+
[📄license]: LICENSE.txt
|
371
|
+
[📄license-ref]: https://opensource.org/licenses/MIT
|
372
|
+
[📄license-img]: https://img.shields.io/badge/License-MIT-green.svg
|
317
373
|
|
318
|
-
|
374
|
+
### © Copyright
|
319
375
|
|
320
|
-
[
|
376
|
+
* Copyright (c) 2016-2018, 2021-2022, 2024 [Peter H. Boling][💁🏼♂️peterboling] of [Rails Bling][💁🏼♂️railsbling]
|
321
377
|
|
322
|
-
[
|
378
|
+
[comment]: <> ( 💁🏼♂️ PERSONAL LINKS )
|
323
379
|
|
324
|
-
[
|
380
|
+
[💁🏼♂️aboutme]: https://about.me/peter.boling
|
381
|
+
[💁🏼♂️angellist]: https://angel.co/peter-boling
|
382
|
+
[💁🏼♂️devto]: https://dev.to/galtzo
|
383
|
+
[💁🏼♂️followme]: https://img.shields.io/twitter/follow/galtzo.svg?style=social&label=Follow
|
384
|
+
[💁🏼♂️twitter]: http://twitter.com/galtzo
|
385
|
+
[💁🏼♂️peterboling]: http://www.peterboling.com
|
386
|
+
[💁🏼♂️railsbling]: http://www.railsbling.com
|
325
387
|
|
326
|
-
[
|
388
|
+
[comment]: <> ( 💼 PROJECT LINKS )
|
327
389
|
|
328
|
-
[
|
390
|
+
[💼blogpage]: http://www.railsbling.com/tags/activerecord-transactionable/
|
391
|
+
[💼documentation]: http://rdoc.info/github/activerecord-transactionable/meta/frames
|
392
|
+
[💼homepage]: https://github.com/pboling/activerecord-transactionable
|
data/SECURITY.md
CHANGED
@@ -2,13 +2,15 @@
|
|
2
2
|
|
3
3
|
## Supported Versions
|
4
4
|
|
5
|
-
| Version | Supported
|
6
|
-
|
7
|
-
| 3.0.x |
|
8
|
-
| 2.0.x |
|
9
|
-
| 1.0.x |
|
10
|
-
| 0.0.x |
|
5
|
+
| Version | Supported |
|
6
|
+
|---------|-----------|
|
7
|
+
| 3.0.x | ✅ |
|
8
|
+
| 2.0.x | ❌ |
|
9
|
+
| 1.0.x | ❌ |
|
10
|
+
| 0.0.x | ❌ |
|
11
11
|
|
12
12
|
## Reporting a Vulnerability
|
13
13
|
|
14
|
-
Peter Boling is the primary maintainer of this gem.
|
14
|
+
Peter Boling is the primary maintainer of this gem. Please find a way
|
15
|
+
to [contact him directly](https://railsbling.com/contact) to report the issue. Include as much relevant information as
|
16
|
+
possible.
|