debug_logging 4.0.4 → 4.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 920b074fcb5c684da25a5affb6d6a06241641692bb5d4d6fa2b41f0bd0a2d5a1
4
- data.tar.gz: 86ad7dd19faf96c4e784f3b51cdd4e4ed1ba4c3bc7510eb2d986e7499b88dc31
3
+ metadata.gz: 07a1d4c942b3a784a80ee0b72882b3c3c1d098a16e1e789963051e92c9ad4ae0
4
+ data.tar.gz: 9cd8ebc10d446eb9bb25088180a3f078dea600248a2a4144c7d1f4c6a719f32d
5
5
  SHA512:
6
- metadata.gz: e0e5fcb7ccc408ade17ca9a44b461b106e0b54afb6e2a0fe1b6bb72c86b22bee12e1649afd4d0734b2b6a3c1d2691a00352d3d720ad2701f4916559997bae962
7
- data.tar.gz: 2694f693e352f54565e1628bd9e4258a8bedec5f4e829fb07f019bfe33e8c07b1c484aeeb54d935843cecf5922f0953dae24d88127846abd4f2cd3a657b24215
6
+ metadata.gz: 4534e3a8bba1767e856e3ac60f855d8ab4100cfa2d1fc23102ee657592ada1473ceac57826fd730e5e9c9b0072f35a869134e5755db7fecde6b1a7e922505ffe
7
+ data.tar.gz: b651325b49c4cfbcf475b100a64f9858eed735a0c9087d24b1bbdcff999e4b2ce20dd8c571e6a454ba5b95231e33c7c98cd8c5f73c50c66926ff9f9fc537a1ff
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -30,6 +30,42 @@ Please file a bug if you notice a violation of semantic versioning.
30
30
 
31
31
  ### Security
32
32
 
33
+ ## [4.1.0] - 2026-07-02
34
+
35
+ - TAG: [v4.1.0][4.1.0t]
36
+ - COVERAGE: 97.46% -- 730/749 lines in 28 files
37
+ - BRANCH COVERAGE: 86.34% -- 177/205 branches in 28 files
38
+ - 20.94% documented
39
+
40
+ ### Added
41
+
42
+ - Ruby keyword option support for `logged`, `notified`, `i_logged`, and
43
+ `i_notified`, while preserving legacy last-hash configuration and payload
44
+ handling.
45
+
46
+ ## [4.0.5] - 2026-07-02
47
+
48
+ - TAG: [v4.0.5][4.0.5t]
49
+ - COVERAGE: 97.45% -- 726/745 lines in 28 files
50
+ - BRANCH COVERAGE: 86.07% -- 173/201 branches in 28 files
51
+ - 20.94% documented
52
+
53
+ ### Added
54
+
55
+ - Added support for JRuby 10.1 and TruffleRuby 34.0.
56
+
57
+ ### Changed
58
+
59
+ - Retemplated project metadata and CI/development automation with `kettle-jem` v7.0.0.
60
+
61
+ ### Fixed
62
+
63
+ - Package configured license files in gem release file lists.
64
+
65
+ - Avoid runtime warnings from ActiveSupport loading, method decoration, and
66
+ invocation ID formatting, and update the SimpleCov test setup for the current
67
+ filtering API.
68
+
33
69
  ## [4.0.4] - 2026-06-14
34
70
 
35
71
  - TAG: [v4.0.4][4.0.4t]
@@ -289,7 +325,11 @@ Please file a bug if you notice a violation of semantic versioning.
289
325
 
290
326
  - Initial release
291
327
 
292
- [Unreleased]: https://github.com/galtzo-floss/debug_logging/compare/v4.0.4...HEAD
328
+ [Unreleased]: https://github.com/galtzo-floss/debug_logging/compare/v4.1.0...HEAD
329
+ [4.1.0]: https://github.com/galtzo-floss/debug_logging/compare/v4.0.5...v4.1.0
330
+ [4.1.0t]: https://github.com/galtzo-floss/debug_logging/releases/tag/v4.1.0
331
+ [4.0.5]: https://github.com/galtzo-floss/debug_logging/compare/v4.0.4...v4.0.5
332
+ [4.0.5t]: https://github.com/galtzo-floss/debug_logging/releases/tag/v4.0.5
293
333
  [4.0.4]: https://github.com/galtzo-floss/debug_logging/compare/v4.0.3...v4.0.4
294
334
  [4.0.4t]: https://github.com/galtzo-floss/debug_logging/releases/tag/v4.0.4
295
335
  [4.0.3]: https://github.com/galtzo-floss/debug_logging/compare/v4.0.2...v4.0.3
data/CONTRIBUTING.md CHANGED
@@ -109,14 +109,14 @@ Git diff driver setup
109
109
  - Git hosting forges generally ignore external diff drivers, so pull request views may still show raw textual diffs even when local `git diff` uses semantic drivers.
110
110
 
111
111
  ```console
112
- K_JEM_TEMPLATING=true bundle exec kettle-jem install
112
+ K_JEM_TEMPLATING=true kettle-jem install
113
113
  ```
114
114
 
115
115
  Troubleshooting Git diffs
116
116
  - Use `git diff --no-ext-diff` to compare against Git's built-in diff output.
117
117
  - Use `git diff --no-textconv` when a textconv projection obscures the raw file bytes you need to inspect.
118
118
  - If Git reports a missing `smorg-*` executable, rerun `bundle install` and the setup command above, then check `git config --local --get-regexp '^diff\.smorg-'`.
119
- - To remove managed local entries, run `K_JEM_TEMPLATING=true bundle exec kettle-jem install --undo`; remove global command registrations with `git config --global --unset-all diff.smorg-ruby.command`.
119
+ - To remove managed local entries, run `K_JEM_TEMPLATING=true kettle-jem install --undo`; remove global command registrations with `git config --global --unset-all diff.smorg-ruby.command`.
120
120
 
121
121
  For a quick starting point, this repository’s `mise.toml` defines the shared defaults, and `.env.local` can override them locally. Copy `.env.local.example` to `.env.local`, use `KEY=value` lines, and either activate `mise` in your shell or run commands through `mise exec -C /path/to/project -- ...`.
122
122
 
@@ -131,9 +131,12 @@ toolchain, and it may be higher than the gemspec runtime floor.
131
131
  They are created and updated with the commands:
132
132
 
133
133
  ```console
134
- bin/rake appraisal:update
134
+ bin/rake appraisal:generate
135
135
  ```
136
136
 
137
+ Use `bin/rake appraisal:update` when you intentionally need to resolve fresh
138
+ appraisal locks.
139
+
137
140
  If you need to reset all gemfiles/*.gemfile.lock files:
138
141
 
139
142
  ```console
data/FUNDING.md CHANGED
@@ -6,7 +6,7 @@ Many paths lead to being a sponsor or a backer of this project. Are you on such
6
6
 
7
7
  [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal]
8
8
 
9
- [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS efforts using Patreon][🖇patreon-img]][🖇patreon]
9
+ [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
10
10
 
11
11
  [⛳liberapay-img]: https://img.shields.io/liberapay/goal/pboling.svg?logo=liberapay&color=a51611&style=flat
12
12
  [⛳liberapay]: https://liberapay.com/pboling/donate
@@ -16,12 +16,8 @@ Many paths lead to being a sponsor or a backer of this project. Are you on such
16
16
  [🖇osc-sponsors-i]: https://opencollective.com/galtzo-floss/sponsors/badge.svg?style=flat
17
17
  [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
18
18
  [🖇sponsor]: https://github.com/sponsors/pboling
19
- [🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
20
- [🖇polar]: https://polar.sh/pboling
21
19
  [🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
22
20
  [🖇kofi]: https://ko-fi.com/pboling
23
- [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg?style=flat
24
- [🖇patreon]: https://patreon.com/galtzo
25
21
  [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
26
22
  [🖇buyme]: https://www.buymeacoffee.com/pboling
27
23
  [🖇paypal-img]: https://img.shields.io/badge/donate-paypal-a51611.svg?style=flat&logo=paypal
data/MIT.md ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ See [LICENSE.md](LICENSE.md) for the copyright notice.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.md CHANGED
@@ -10,9 +10,9 @@
10
10
 
11
11
  `if ci_badges.map(&:color).all? { it == "green"}` 👇️ send money so I can do more of this. FLOSS maintenance is now my full-time job.
12
12
 
13
- [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
13
+ [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate at ko-fi.com][🖇kofi-img]][🖇kofi]
14
14
 
15
- <details>
15
+ <details markdown="1">
16
16
  <summary>👣 How will this project approach the September 2025 hostile takeover of RubyGems? 🚑️</summary>
17
17
 
18
18
  I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo).
@@ -25,9 +25,9 @@ I've summarized my thoughts in [this blog post](https://dev.to/galtzo/hostile-ta
25
25
 
26
26
  | Tokens to Remember | [![Gem name][⛳️name-img]][⛳️gem-name] [![Gem namespace][⛳️namespace-img]][⛳️gem-namespace] |
27
27
  |-------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
28
- | Works with JRuby | [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎jruby-9.4-wf] [![JRuby current Compat][💎jruby-c-i]][🚎10-j-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf]|
29
- | Works with Truffle Ruby | [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎truby-23.1-wf] <br/> [![Truffle Ruby 24.2 Compat][💎truby-24.2i]][🚎truby-24.2-wf] [![Truffle Ruby 25.0 Compat][💎truby-25.0i]][🚎truby-25.0-wf] [![Truffle Ruby current Compat][💎truby-c-i]][🚎9-t-wf]|
30
- | Works with MRI Ruby 4 | [![Ruby 4.0 Compat][💎ruby-4.0i]][🚎11-c-wf] [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
28
+ | Works with JRuby | [![JRuby 9.4 Compat][💎jruby-9.4i]][🚎jruby-9.4-wf] [![JRuby 10.0 Compat][💎jruby-10.0i]][🚎jruby-10.0-wf] [![JRuby current Compat][💎jruby-c-i]][🚎10-j-wf] [![JRuby HEAD Compat][💎jruby-headi]][🚎3-hd-wf]|
29
+ | Works with Truffle Ruby | [![Truffle Ruby 23.1 Compat][💎truby-23.1i]][🚎truby-23.1-wf] <br/> [![Truffle Ruby 24.2 Compat][💎truby-24.2i]][🚎truby-24.2-wf] [![Truffle Ruby 25.0 Compat][💎truby-25.0i]][🚎truby-25.0-wf] [![Truffle Ruby 33.0 Compat][💎truby-33.0i]][🚎truby-33.0-wf] [![Truffle Ruby current Compat][💎truby-c-i]][🚎9-t-wf] [![Truffle Ruby HEAD Compat][💎truby-headi]][🚎3-hd-wf]|
30
+ | Works with MRI Ruby 4 | [![Ruby current Compat][💎ruby-c-i]][🚎11-c-wf] [![Ruby HEAD Compat][💎ruby-headi]][🚎3-hd-wf]|
31
31
  | Works with MRI Ruby 3 | [![Ruby 3.1 Compat][💎ruby-3.1i]][🚎ruby-3.1-wf] [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎ruby-3.2-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎ruby-3.3-wf] [![Ruby 3.4 Compat][💎ruby-3.4i]][🚎ruby-3.4-wf]|
32
32
  | Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼‍🏫expsup-upwork-img]][👨🏼‍🏫expsup-upwork] [![Get help from me on Codementor][👨🏼‍🏫expsup-codementor-img]][👨🏼‍🏫expsup-codementor] |
33
33
  | Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on Github.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
@@ -45,9 +45,25 @@ This test floor is configured by `ruby.test_minimum` in `.kettle-jem.yml` and
45
45
  may be higher than the gem's runtime compatibility floor when legacy Rubies are
46
46
  not practical for the current toolchain.
47
47
 
48
- | 🚚 _Amazing_ test matrix was brought to you by | 🔎 appraisal2 🔎 and the color 💚 green 💚 |
49
- |------------------------------------------------|--------------------------------------------------------|
50
- | 👟 Check it out! | [github.com/appraisal-rb/appraisal2][💎appraisal2] ✨ |
48
+ <a href="https://github.com/kettle-dev"><img alt="kettle-dev Logo by Aboling0, CC BY-SA 4.0" src="https://logos.galtzo.com/assets/images/kettle-dev/avatar-128px.svg" width="14%" align="right"/></a>
49
+
50
+ The _amazing_ test matrix is powered by the kettle-dev stack.
51
+
52
+ <details markdown="1">
53
+ <summary>How kettle-dev manages complexity in tests</summary>
54
+
55
+ | Gem | Source | Role | Daily download rank |
56
+ |-----|--------|------|---------------------|
57
+ | [appraisal2](https://bestgems.org/gems/appraisal2) | [GitHub](https://github.com/appraisal-rb/appraisal2) | multi-dependency Appraisal matrix generation | [![Daily download rank for appraisal2](https://img.shields.io/gem/rd/appraisal2.svg?style=flat-square)](https://bestgems.org/gems/appraisal2) |
58
+ | [appraisal2-rubocop](https://bestgems.org/gems/appraisal2-rubocop) | [GitHub](https://github.com/appraisal-rb/appraisal2-rubocop) | RuboCop Appraisal generator integration | [![Daily download rank for appraisal2-rubocop](https://img.shields.io/gem/rd/appraisal2-rubocop.svg?style=flat-square)](https://bestgems.org/gems/appraisal2-rubocop) |
59
+ | [kettle-dev](https://bestgems.org/gems/kettle-dev) | [GitHub](https://github.com/kettle-dev/kettle-dev) | development, release, and CI workflow tooling | [![Daily download rank for kettle-dev](https://img.shields.io/gem/rd/kettle-dev.svg?style=flat-square)](https://bestgems.org/gems/kettle-dev) |
60
+ | [kettle-jem](https://bestgems.org/gems/kettle-jem) | [GitHub](https://github.com/kettle-dev/kettle-jem) | Appraisals & CI workflow templates | [![Daily download rank for kettle-jem](https://img.shields.io/gem/rd/kettle-jem.svg?style=flat-square)](https://bestgems.org/gems/kettle-jem) |
61
+ | [kettle-soup-cover](https://bestgems.org/gems/kettle-soup-cover) | [GitHub](https://github.com/kettle-dev/kettle-soup-cover) | SimpleCov coverage policy and reporting | [![Daily download rank for kettle-soup-cover](https://img.shields.io/gem/rd/kettle-soup-cover.svg?style=flat-square)](https://bestgems.org/gems/kettle-soup-cover) |
62
+ | [kettle-test](https://bestgems.org/gems/kettle-test) | [GitHub](https://github.com/kettle-dev/kettle-test) | standard test runner and coverage harness | [![Daily download rank for kettle-test](https://img.shields.io/gem/rd/kettle-test.svg?style=flat-square)](https://bestgems.org/gems/kettle-test) |
63
+ | [rubocop-lts](https://bestgems.org/gems/rubocop-lts) | [GitHub](https://github.com/rubocop-lts/rubocop-lts) | Ruby-version-aware linting | [![Daily download rank for rubocop-lts](https://img.shields.io/gem/rd/rubocop-lts.svg?style=flat-square)](https://bestgems.org/gems/rubocop-lts) |
64
+ | [turbo_tests2](https://bestgems.org/gems/turbo_tests2) | [GitHub](https://github.com/galtzo-floss/turbo_tests2) | parallel test execution | [![Daily download rank for turbo_tests2](https://img.shields.io/gem/rd/turbo_tests2.svg?style=flat-square)](https://bestgems.org/gems/turbo_tests2) |
65
+
66
+ </details>
51
67
 
52
68
  ### Federated DVCS
53
69
 
@@ -475,7 +491,7 @@ NOTE: [kettle-readme-backers][kettle-readme-backers] updates this list every day
475
491
  No sponsors yet. Be the first!
476
492
  <!-- OPENCOLLECTIVE-ORGANIZATIONS:END -->
477
493
 
478
- [kettle-readme-backers]: https://github.com/galtzo-floss/debug_logging/blob/main/exe/kettle-readme-backers
494
+ [kettle-readme-backers]: https://github.com/galtzo-floss/debug_logging/blob/main/bin/kettle-readme-backers
479
495
 
480
496
  ### Another way to support open-source
481
497
 
@@ -487,7 +503,7 @@ I’m developing a new library, [floss_funding][🖇floss-funding-gem], designed
487
503
 
488
504
  **[Floss-Funding.dev][🖇floss-funding.dev]: 👉️ No network calls. 👉️ No tracking. 👉️ No oversight. 👉️ Minimal crypto hashing. 💡 Easily disabled nags**
489
505
 
490
- [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate on Polar][🖇polar-img]][🖇polar] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi] [![Donate to my FLOSS efforts using Patreon][🖇patreon-img]][🖇patreon]
506
+ [![OpenCollective Backers][🖇osc-backers-i]][🖇osc-backers] [![OpenCollective Sponsors][🖇osc-sponsors-i]][🖇osc-sponsors] [![Sponsor Me on Github][🖇sponsor-img]][🖇sponsor] [![Liberapay Goal Progress][⛳liberapay-img]][⛳liberapay] [![Donate on PayPal][🖇paypal-img]][🖇paypal] [![Buy me a coffee][🖇buyme-small-img]][🖇buyme] [![Donate to my FLOSS efforts at ko-fi.com][🖇kofi-img]][🖇kofi]
491
507
 
492
508
  ## 🔐 Security
493
509
 
@@ -533,7 +549,7 @@ Made with [contributors-img][🖐contrib-rocks].
533
549
 
534
550
  Also see GitLab Contributors: [https://gitlab.com/galtzo-floss/debug_logging/-/graphs/main][🚎contributors-gl]
535
551
 
536
- <details>
552
+ <details markdown="1">
537
553
  <summary>⭐️ Star History</summary>
538
554
 
539
555
  <a href="https://star-history.com/galtzo-floss/debug_logging&Date">
@@ -630,12 +646,8 @@ Thanks for RTFM. ☺️
630
646
  [🖇sponsor-img]: https://img.shields.io/badge/Sponsor_Me!-pboling.svg?style=social&logo=github
631
647
  [🖇sponsor-bottom-img]: https://img.shields.io/badge/Sponsor_Me!-pboling-blue?style=for-the-badge&logo=github
632
648
  [🖇sponsor]: https://github.com/sponsors/pboling
633
- [🖇polar-img]: https://img.shields.io/badge/polar-donate-a51611.svg?style=flat
634
- [🖇polar]: https://polar.sh/pboling
635
649
  [🖇kofi-img]: https://img.shields.io/badge/ko--fi-%E2%9C%93-a51611.svg?style=flat
636
650
  [🖇kofi]: https://ko-fi.com/pboling
637
- [🖇patreon-img]: https://img.shields.io/badge/patreon-donate-a51611.svg?style=flat
638
- [🖇patreon]: https://patreon.com/galtzo
639
651
  [🖇buyme-small-img]: https://img.shields.io/badge/buy_me_a_coffee-%E2%9C%93-a51611.svg?style=flat
640
652
  [🖇buyme-img]: https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20latte&emoji=&slug=pboling&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff
641
653
  [🖇buyme]: https://www.buymeacoffee.com/pboling
@@ -718,9 +730,11 @@ Thanks for RTFM. ☺️
718
730
  [🚎ruby-3.3-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/ruby-3.3.yml
719
731
  [🚎ruby-3.4-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/ruby-3.4.yml
720
732
  [🚎jruby-9.4-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/jruby-9.4.yml
733
+ [🚎jruby-10.0-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/jruby-10.0.yml
721
734
  [🚎truby-23.1-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/truffleruby-23.1.yml
722
735
  [🚎truby-24.2-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/truffleruby-24.2.yml
723
736
  [🚎truby-25.0-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/truffleruby-25.0.yml
737
+ [🚎truby-33.0-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/truffleruby-33.0.yml
724
738
  [🚎2-cov-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/coverage.yml
725
739
  [🚎2-cov-wfi]: https://github.com/galtzo-floss/debug_logging/actions/workflows/coverage.yml/badge.svg
726
740
  [🚎3-hd-wf]: https://github.com/galtzo-floss/debug_logging/actions/workflows/heads.yml
@@ -745,14 +759,16 @@ Thanks for RTFM. ☺️
745
759
  [💎ruby-3.2i]: https://img.shields.io/badge/Ruby-3.2-CC342D?style=for-the-badge&logo=ruby&logoColor=white
746
760
  [💎ruby-3.3i]: https://img.shields.io/badge/Ruby-3.3-CC342D?style=for-the-badge&logo=ruby&logoColor=white
747
761
  [💎ruby-3.4i]: https://img.shields.io/badge/Ruby-3.4-CC342D?style=for-the-badge&logo=ruby&logoColor=white
748
- [💎ruby-4.0i]: https://img.shields.io/badge/Ruby-4.0-CC342D?style=for-the-badge&logo=ruby&logoColor=white
749
762
  [💎ruby-c-i]: https://img.shields.io/badge/Ruby-current-CC342D?style=for-the-badge&logo=ruby&logoColor=green
750
763
  [💎ruby-headi]: https://img.shields.io/badge/Ruby-HEAD-CC342D?style=for-the-badge&logo=ruby&logoColor=blue
751
764
  [💎truby-23.1i]: https://img.shields.io/badge/Truffle_Ruby-23.1-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
752
765
  [💎truby-24.2i]: https://img.shields.io/badge/Truffle_Ruby-24.2-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
753
766
  [💎truby-25.0i]: https://img.shields.io/badge/Truffle_Ruby-25.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
767
+ [💎truby-33.0i]: https://img.shields.io/badge/Truffle_Ruby-33.0-34BCB1?style=for-the-badge&logo=ruby&logoColor=pink
754
768
  [💎truby-c-i]: https://img.shields.io/badge/Truffle_Ruby-current-34BCB1?style=for-the-badge&logo=ruby&logoColor=green
769
+ [💎truby-headi]: https://img.shields.io/badge/Truffle_Ruby-HEAD-34BCB1?style=for-the-badge&logo=ruby&logoColor=blue
755
770
  [💎jruby-9.4i]: https://img.shields.io/badge/JRuby-9.4-FBE742?style=for-the-badge&logo=ruby&logoColor=red
771
+ [💎jruby-10.0i]: https://img.shields.io/badge/JRuby-10.0-FBE742?style=for-the-badge&logo=ruby&logoColor=red
756
772
  [💎jruby-c-i]: https://img.shields.io/badge/JRuby-current-FBE742?style=for-the-badge&logo=ruby&logoColor=green
757
773
  [💎jruby-headi]: https://img.shields.io/badge/JRuby-HEAD-FBE742?style=for-the-badge&logo=ruby&logoColor=blue
758
774
  [🤝gh-issues]: https://github.com/galtzo-floss/debug_logging/issues
@@ -781,7 +797,7 @@ Thanks for RTFM. ☺️
781
797
  [📌gitmoji]: https://gitmoji.dev
782
798
  [📌gitmoji-img]: https://img.shields.io/badge/gitmoji_commits-%20%F0%9F%98%9C%20%F0%9F%98%8D-34495e.svg?style=flat-square
783
799
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
784
- [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.735-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
800
+ [🧮kloc-img]: https://img.shields.io/badge/KLOC-0.749-FFDD67.svg?style=for-the-badge&logo=YouTube&logoColor=blue
785
801
  [🔐security]: https://github.com/galtzo-floss/debug_logging/blob/main/SECURITY.md
786
802
  [🔐security-img]: https://img.shields.io/badge/security-policy-259D6C.svg?style=flat
787
803
  [📄copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
@@ -809,7 +825,7 @@ Thanks for RTFM. ☺️
809
825
  | Package | debug_logging |
810
826
  | Description | 🪲 Unobtrusive debug logging for Ruby. NO LITTERING.<br>Automatically log selected methods and their arguments as they are called at runtime! |
811
827
  | Homepage | https://github.com/galtzo-floss/debug_logging |
812
- | Source | https://github.com/galtzo-floss/debug_logging/tree/v4.0.3 |
828
+ | Source | https://github.com/galtzo-floss/debug_logging |
813
829
  | License | `MIT` |
814
- | Funding | https://github.com/sponsors/pboling, https://issuehunt.io/u/pboling, https://ko-fi.com/pboling, https://liberapay.com/pboling/donate, https://opencollective.com/galtzo-floss, https://patreon.com/galtzo, https://polar.sh/pboling, https://thanks.dev/u/gh/pboling, https://tidelift.com/funding/github/rubygems/debug_logging, https://www.buymeacoffee.com/pboling |
830
+ | Funding | https://github.com/sponsors/pboling, https://ko-fi.com/pboling, https://liberapay.com/pboling/donate, https://opencollective.com/galtzo-floss, https://thanks.dev/u/gh/pboling, https://tidelift.com/funding/github/rubygems/debug_logging, https://www.buymeacoffee.com/pboling |
815
831
  <!-- kettle-jem:metadata:end -->
@@ -13,7 +13,7 @@ module DebugLogging
13
13
 
14
14
  if config_proxy.debug_add_invocation_id
15
15
  time = start_at ? Util.debug_time(start_at) : Time.now
16
- unique_id = (time.to_f.to_s % "%#-21a")[4..-4]
16
+ unique_id = time.to_f.to_s[4..-4]
17
17
  invocation = " ~#{args.object_id}|#{kwargs.object_id}@#{unique_id}~"
18
18
  case config_proxy.debug_add_invocation_id
19
19
  when true
@@ -6,11 +6,12 @@ module DebugLogging
6
6
  end
7
7
  end
8
8
 
9
- def logged(*methods_to_log)
9
+ def logged(*methods_to_log, **options)
10
10
  methods_to_log, payload, config_opts = DebugLogging::Util.extract_payload_and_config(
11
11
  method_names: methods_to_log,
12
12
  payload: nil,
13
- config: nil
13
+ config: nil,
14
+ options:
14
15
  )
15
16
  Array(methods_to_log).each do |decorated_method|
16
17
  decorated_method, method_payload, method_config_opts = DebugLogging::Util.extract_payload_and_config(
@@ -19,7 +20,9 @@ module DebugLogging
19
20
  config: config_opts
20
21
  )
21
22
  original_method = method(decorated_method)
22
- (class << self; self; end).class_eval do
23
+ singleton_class = class << self; self; end
24
+ singleton_class.send(:remove_method, decorated_method) if original_method.owner.equal?(singleton_class)
25
+ singleton_class.class_eval do
23
26
  define_method(decorated_method) do |*args, **kwargs, &block|
24
27
  lamb_dart = LambDart::Log.new(
25
28
  klass: self,
@@ -6,11 +6,12 @@ module DebugLogging
6
6
  end
7
7
  end
8
8
 
9
- def notified(*methods_to_notify)
9
+ def notified(*methods_to_notify, **options)
10
10
  methods_to_notify, payload, config_opts = DebugLogging::Util.extract_payload_and_config(
11
11
  method_names: methods_to_notify,
12
12
  payload: nil,
13
- config: nil
13
+ config: nil,
14
+ options:
14
15
  )
15
16
  Array(methods_to_notify).each do |decorated_method|
16
17
  decorated_method, method_payload, method_config_opts = DebugLogging::Util.extract_payload_and_config(
@@ -19,7 +20,9 @@ module DebugLogging
19
20
  config: config_opts
20
21
  )
21
22
  original_method = method(decorated_method)
22
- (class << self; self; end).class_eval do
23
+ singleton_class = class << self; self; end
24
+ singleton_class.send(:remove_method, decorated_method) if original_method.owner.equal?(singleton_class)
25
+ singleton_class.class_eval do
23
26
  define_method(decorated_method) do |*args, **kwargs, &block|
24
27
  lamb_dart = LambDart::Note.new(
25
28
  klass: self,
@@ -17,6 +17,7 @@ module DebugLogging
17
17
  def debug_time_box(time, *names, &blk)
18
18
  names.each do |name|
19
19
  meth = instance_method(name)
20
+ remove_method(name) if meth.owner.equal?(self)
20
21
  define_method(name) do |*args, &block|
21
22
  Timeout.timeout(time) do
22
23
  meth.bind_call(self, *args, &block)
@@ -38,6 +39,7 @@ module DebugLogging
38
39
  end
39
40
  names.each do |name|
40
41
  meth = instance_method(name)
42
+ remove_method(name) if meth.owner.equal?(self)
41
43
  define_method(name) do |*args, &block|
42
44
  meth.bind_call(self, *args, &block)
43
45
  rescue => e
@@ -54,6 +56,7 @@ module DebugLogging
54
56
  end
55
57
  names.each do |name|
56
58
  meth = instance_method(name)
59
+ remove_method(name) if meth.owner.equal?(self)
57
60
  define_method(name) do |*args, &block|
58
61
  instance_exec(name, *args, block, &blk)
59
62
  meth.bind_call(self, *args, &block)
@@ -69,6 +72,7 @@ module DebugLogging
69
72
  end
70
73
  names.each do |name|
71
74
  meth = instance_method(name)
75
+ remove_method(name) if meth.owner.equal?(self)
72
76
  define_method(name) do |*args, &block|
73
77
  result = meth.bind_call(self, *args, &block)
74
78
  instance_exec(result, &blk)
@@ -6,33 +6,33 @@ module DebugLogging
6
6
  end
7
7
  end
8
8
 
9
- # NOTE: These params can be passed in / hidden in a last hash of *args
9
+ # NOTE: These options can also be passed in / hidden in a last hash of *args
10
10
  # NOTE: They can also be passed in discretely for each method, by passing *args as an array of arrays
11
- # TODO: Refactor to use modern Ruby 3 *args, **kwargs instead
12
- # @param logger [Logger] Logger.new($stdout), # probably want to override to be the Rails.logger
13
- # @param log_level [Symbol] default: :debug, at what level do the messages created by this gem sent at?
14
- # @param multiple_last_hashes [true, false] default: false,
15
- # @param last_hash_to_s_proc [nil, Proc] default: nil, e.g. ->(hash) { "keys: #{hash.keys}" }
16
- # @param last_hash_max_length [Integer] default: 1_000,
17
- # @param args_to_s_proc [nil, Proc] default: nil, e.g. ->(*record) { "record id: #{record.first.id}" }
18
- # @param args_max_length [Integer] default: 1_000,
19
- # @param colorized_chain_for_method [false, Proc] default: false, e.g. ->(colorized_string) { colorized_string.red.on_blue.underline }
20
- # @param colorized_chain_for_class [false, Proc] default: false, e.g. ->(colorized_string) { colorized_string.colorize(:light_blue ).colorize( :background => :red) }
21
- # @param add_invocation_id [true, false] default: true, allows unique identification of method call; association of entry and exit log lines
22
- # @param ellipsis [String] default: " ✂️ …".freeze,
23
- # @param mark_scope_exit [true, false] default: false,
24
- # @param add_payload [true, false, Proc] default: true, # Can also be a proc returning a string, which will be called when printing the payload
25
- # @param payload_max_length [Integer] default: 1_000,
26
- # @param error_handler_proc [nil, Proc] default: nil,
27
- # @param time_formatter_proc [nil, Proc] default: DebugLogging::Constants::DEFAULT_TIME_FORMATTER,
28
- # @param add_timestamp [true, false] default: false,
29
- # @param instance_benchmarks [true, false] default: false,
30
- # @param class_benchmarks [true, false] default: false,
31
- def i_logged(*methods_to_log)
11
+ # @option options [Logger] :logger Logger.new($stdout), # probably want to override to be the Rails.logger
12
+ # @option options [Symbol] :log_level default: :debug, at what level do the messages created by this gem sent at?
13
+ # @option options [true, false] :multiple_last_hashes default: false,
14
+ # @option options [nil, Proc] :last_hash_to_s_proc default: nil, e.g. ->(hash) { "keys: #{hash.keys}" }
15
+ # @option options [Integer] :last_hash_max_length default: 1_000,
16
+ # @option options [nil, Proc] :args_to_s_proc default: nil, e.g. ->(*record) { "record id: #{record.first.id}" }
17
+ # @option options [Integer] :args_max_length default: 1_000,
18
+ # @option options [false, Proc] :colorized_chain_for_method default: false, e.g. ->(colorized_string) { colorized_string.red.on_blue.underline }
19
+ # @option options [false, Proc] :colorized_chain_for_class default: false, e.g. ->(colorized_string) { colorized_string.colorize(:light_blue ).colorize( :background => :red) }
20
+ # @option options [true, false] :add_invocation_id default: true, allows unique identification of method call; association of entry and exit log lines
21
+ # @option options [String] :ellipsis default: " ✂️ …".freeze,
22
+ # @option options [true, false] :mark_scope_exit default: false,
23
+ # @option options [true, false, Proc] :add_payload default: true, # Can also be a proc returning a string, which will be called when printing the payload
24
+ # @option options [Integer] :payload_max_length default: 1_000,
25
+ # @option options [nil, Proc] :error_handler_proc default: nil,
26
+ # @option options [nil, Proc] :time_formatter_proc default: DebugLogging::Constants::DEFAULT_TIME_FORMATTER,
27
+ # @option options [true, false] :add_timestamp default: false,
28
+ # @option options [true, false] :instance_benchmarks default: false,
29
+ # @option options [true, false] :class_benchmarks default: false,
30
+ def i_logged(*methods_to_log, **options)
32
31
  methods_to_log, payload, config_opts = DebugLogging::Util.extract_payload_and_config(
33
32
  method_names: methods_to_log,
34
33
  payload: nil,
35
- config: nil
34
+ config: nil,
35
+ options:
36
36
  )
37
37
  instance_method_modules =
38
38
  Array(methods_to_log).map do |decorated_method|
@@ -6,11 +6,12 @@ module DebugLogging
6
6
  end
7
7
  end
8
8
 
9
- def i_notified(*methods_to_log)
9
+ def i_notified(*methods_to_log, **options)
10
10
  method_names, payload, config_opts = DebugLogging::Util.extract_payload_and_config(
11
11
  method_names: methods_to_log,
12
12
  payload: nil,
13
- config: nil
13
+ config: nil,
14
+ options:
14
15
  )
15
16
  instance_method_notifier = DebugLogging::InstanceNotifierModulizer.to_mod(
16
17
  methods_to_notify: Array(method_names),
@@ -1,4 +1,6 @@
1
- require "active_support"
1
+ require "active_support/notifications"
2
+ require "active_support/isolated_execution_state"
3
+ require "active_support/core_ext/hash/except"
2
4
  require "active_support/log_subscriber"
3
5
 
4
6
  module DebugLogging
@@ -25,7 +27,7 @@ module DebugLogging
25
27
  end
26
28
  end
27
29
 
28
- # @param [ActiveSupport::Notifications::Event]
30
+ # @param event [ActiveSupport::Notifications::Event]
29
31
  # @return [Hash]
30
32
  def event_to_format_options(event)
31
33
  args = event.payload[:debug_args]
@@ -18,7 +18,7 @@ module DebugLogging
18
18
 
19
19
  # methods_to_log may be an array of a single method name, followed by config options and payload,
20
20
  # or it could be an array of method names followed by config options and payload to be shared by the whole set.
21
- def extract_payload_and_config(method_names:, payload: nil, config: nil)
21
+ def extract_payload_and_config(method_names:, payload: nil, config: nil, options: nil)
22
22
  # When scoped config is present it will always be a new configuration instance per method
23
23
  # When scoped config is not present it will reuse the class' configuration object
24
24
  scoped_payload = (method_names.is_a?(Array) && method_names.last.is_a?(Hash) && method_names.pop.clone(freeze: false)) || {}
@@ -32,6 +32,11 @@ module DebugLogging
32
32
  unless payload.empty?
33
33
  DebugLogging::Configuration::CONFIG_KEYS.each { |k| config_opts[k] = payload.delete(k) if payload.key?(k) }
34
34
  end
35
+ if options && !options.empty?
36
+ scoped_options = options.clone(freeze: false)
37
+ DebugLogging::Configuration::CONFIG_KEYS.each { |k| config_opts[k] = scoped_options.delete(k) if scoped_options.key?(k) }
38
+ payload.merge!(scoped_options)
39
+ end
35
40
  method_names =
36
41
  case method_names
37
42
  when Symbol
@@ -2,7 +2,7 @@
2
2
 
3
3
  module DebugLogging
4
4
  module Version
5
- VERSION = "4.0.4"
5
+ VERSION = "4.1.0"
6
6
  end
7
7
  VERSION = Version::VERSION # Traditional Constant Location
8
8
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: debug_logging
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.4
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
- - Peter Boling
7
+ - Peter H. Boling
8
8
  - John Gillson
9
- - guckin
9
+ - Aboling0
10
10
  bindir: exe
11
11
  cert_chain:
12
12
  - |
@@ -48,7 +48,7 @@ dependencies:
48
48
  version: '1.1'
49
49
  - - ">="
50
50
  - !ruby/object:Gem::Version
51
- version: 1.1.11
51
+ version: 1.1.13
52
52
  type: :runtime
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,27 +58,27 @@ dependencies:
58
58
  version: '1.1'
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 1.1.11
61
+ version: 1.1.13
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: kettle-dev
64
64
  requirement: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '2.2'
68
+ version: '2.3'
69
69
  - - ">="
70
70
  - !ruby/object:Gem::Version
71
- version: 2.2.9
71
+ version: 2.3.0
72
72
  type: :development
73
73
  prerelease: false
74
74
  version_requirements: !ruby/object:Gem::Requirement
75
75
  requirements:
76
76
  - - "~>"
77
77
  - !ruby/object:Gem::Version
78
- version: '2.2'
78
+ version: '2.3'
79
79
  - - ">="
80
80
  - !ruby/object:Gem::Version
81
- version: 2.2.9
81
+ version: 2.3.0
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: bundler-audit
84
84
  requirement: !ruby/object:Gem::Requirement
@@ -136,7 +136,7 @@ dependencies:
136
136
  version: '3.1'
137
137
  - - ">="
138
138
  - !ruby/object:Gem::Version
139
- version: 3.1.2
139
+ version: 3.1.4
140
140
  type: :development
141
141
  prerelease: false
142
142
  version_requirements: !ruby/object:Gem::Requirement
@@ -146,7 +146,7 @@ dependencies:
146
146
  version: '3.1'
147
147
  - - ">="
148
148
  - !ruby/object:Gem::Version
149
- version: 3.1.2
149
+ version: 3.1.4
150
150
  - !ruby/object:Gem::Dependency
151
151
  name: kettle-test
152
152
  requirement: !ruby/object:Gem::Requirement
@@ -156,7 +156,7 @@ dependencies:
156
156
  version: '2.0'
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: 2.0.5
159
+ version: 2.0.9
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
@@ -166,7 +166,7 @@ dependencies:
166
166
  version: '2.0'
167
167
  - - ">="
168
168
  - !ruby/object:Gem::Version
169
- version: 2.0.5
169
+ version: 2.0.9
170
170
  - !ruby/object:Gem::Dependency
171
171
  name: turbo_tests2
172
172
  requirement: !ruby/object:Gem::Requirement
@@ -176,7 +176,7 @@ dependencies:
176
176
  version: '3.1'
177
177
  - - ">="
178
178
  - !ruby/object:Gem::Version
179
- version: 3.1.3
179
+ version: 3.1.6
180
180
  type: :development
181
181
  prerelease: false
182
182
  version_requirements: !ruby/object:Gem::Requirement
@@ -186,7 +186,7 @@ dependencies:
186
186
  version: '3.1'
187
187
  - - ">="
188
188
  - !ruby/object:Gem::Version
189
- version: 3.1.3
189
+ version: 3.1.6
190
190
  - !ruby/object:Gem::Dependency
191
191
  name: ruby-progressbar
192
192
  requirement: !ruby/object:Gem::Requirement
@@ -210,7 +210,7 @@ dependencies:
210
210
  version: '1.0'
211
211
  - - ">="
212
212
  - !ruby/object:Gem::Version
213
- version: 1.0.3
213
+ version: 1.0.4
214
214
  type: :development
215
215
  prerelease: false
216
216
  version_requirements: !ruby/object:Gem::Requirement
@@ -220,7 +220,7 @@ dependencies:
220
220
  version: '1.0'
221
221
  - - ">="
222
222
  - !ruby/object:Gem::Version
223
- version: 1.0.3
223
+ version: 1.0.4
224
224
  - !ruby/object:Gem::Dependency
225
225
  name: gitmoji-regex
226
226
  requirement: !ruby/object:Gem::Requirement
@@ -230,7 +230,7 @@ dependencies:
230
230
  version: '2.0'
231
231
  - - ">="
232
232
  - !ruby/object:Gem::Version
233
- version: 2.0.2
233
+ version: 2.0.4
234
234
  type: :development
235
235
  prerelease: false
236
236
  version_requirements: !ruby/object:Gem::Requirement
@@ -240,7 +240,7 @@ dependencies:
240
240
  version: '2.0'
241
241
  - - ">="
242
242
  - !ruby/object:Gem::Version
243
- version: 2.0.2
243
+ version: 2.0.4
244
244
  - !ruby/object:Gem::Dependency
245
245
  name: activesupport
246
246
  requirement: !ruby/object:Gem::Requirement
@@ -278,6 +278,7 @@ files:
278
278
  - CONTRIBUTING.md
279
279
  - FUNDING.md
280
280
  - LICENSE.md
281
+ - MIT.md
281
282
  - README.md
282
283
  - RUBOCOP.md
283
284
  - SECURITY.md
@@ -317,10 +318,10 @@ licenses:
317
318
  - MIT
318
319
  metadata:
319
320
  homepage_uri: https://debug-logging.galtzo.com/
320
- source_code_uri: https://github.com/galtzo-floss/debug_logging/tree/v4.0.4
321
- changelog_uri: https://github.com/galtzo-floss/debug_logging/blob/v4.0.4/CHANGELOG.md
321
+ source_code_uri: https://github.com/galtzo-floss/debug_logging/tree/v4.1.0
322
+ changelog_uri: https://github.com/galtzo-floss/debug_logging/blob/v4.1.0/CHANGELOG.md
322
323
  bug_tracker_uri: https://github.com/galtzo-floss/debug_logging/issues
323
- documentation_uri: https://www.rubydoc.info/gems/debug_logging/4.0.4
324
+ documentation_uri: https://www.rubydoc.info/gems/debug_logging/4.1.0
324
325
  funding_uri: https://github.com/sponsors/pboling
325
326
  wiki_uri: https://github.com/galtzo-floss/debug_logging/wiki
326
327
  news_uri: https://www.railsbling.com/tags/debug_logging
metadata.gz.sig CHANGED
Binary file