julewire-rails_support 1.0.0 → 1.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: 68f0648998106bae9707f2cfe34910223ae1cf3825656fd9bc49a9ab2f11508e
4
- data.tar.gz: 84a635009586818dc89491298b30749f8f57832165057839a4308f7ec9d45fe0
3
+ metadata.gz: 8f591b479266f8c929a30d5b9d8c3b1ae85b63864abdb6824e496f02838fc3ac
4
+ data.tar.gz: 9ed2f3052e3de4a08505c245bd6260dc2fe11a1d6fb9271b57bcb9e9c77a7780
5
5
  SHA512:
6
- metadata.gz: 9d2ebd7fbd7e53e4c7e3b69db9fe5968ccf0e49de9e5f3f60f665ccb38e59ef5f3ee856fbb1a5b307d27be2f65b0e2c50a885d893f50d4c7c04bf829512160e5
7
- data.tar.gz: e814a3dd62213fb1e2097db0301298aed89a8b8b53ae96a713444594e90e4133b4de393b45ec46aa0a0a869a77cb9a5a9b9cd8fffce4f1074b30a1abc49735d9
6
+ metadata.gz: 9942306d0964a8fc99a71e80acafaa7c7084eebfd68679a3a51b457f10d9376b4c6e93888693f2ba01fef6cf97067897f3786a367d33d456283a8dda8cc21c6b
7
+ data.tar.gz: 5773e559357b4c6dae462c730a96f3e174dfb9c9a30e6641f142dbd0d54b473c175bcfcd1519dd1244f8da31b504221e55390bb473930aa02b493f017fbc9207
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  ## Unreleased
2
2
 
3
+ ## 1.1.0 - 2026-07-20
4
+
5
+ - Resolve Rails-family event reporters from top-level framework namespaces and
6
+ safely detach matching log subscribers.
7
+ - Require julewire-core 1.1.0.
8
+
9
+ ## 1.0.1 - 2026-06-25
10
+
11
+ - Require julewire-core 1.0.1.
12
+
3
13
  ## 1.0.0 - 2026-06-21
4
14
 
5
15
  - Initial release: shared Rails-family EventReporter helpers for Rails and
@@ -31,6 +31,6 @@ Gem::Specification.new do |spec|
31
31
  spec.executables = []
32
32
  spec.require_paths = ["lib"]
33
33
 
34
- spec.add_dependency "julewire-core", ">= 1.0"
34
+ spec.add_dependency "julewire-core", ">= 1.1.0"
35
35
  spec.add_dependency "zeitwerk", ">= 2.8.1"
36
36
  end
@@ -5,10 +5,10 @@ module Julewire
5
5
  module EventReporter
6
6
  class << self
7
7
  def default
8
- rails = top_level_constant(:Rails)
8
+ rails = LogSubscribers.constantize(:Rails)
9
9
  return rails.event if rails.respond_to?(:event)
10
10
 
11
- active_support = top_level_constant(:ActiveSupport)
11
+ active_support = LogSubscribers.constantize(:ActiveSupport)
12
12
  return unless active_support.respond_to?(:event_reporter)
13
13
 
14
14
  active_support.event_reporter
@@ -39,18 +39,12 @@ module Julewire
39
39
  private
40
40
 
41
41
  def log_subscriber?(subscriber_class)
42
- active_support = top_level_constant(:ActiveSupport)
42
+ active_support = LogSubscribers.constantize(:ActiveSupport)
43
43
  event_reporter = active_support.const_get(:EventReporter, false)
44
44
  subscriber_class < event_reporter.const_get(:LogSubscriber, false)
45
45
  rescue StandardError
46
46
  false
47
47
  end
48
-
49
- def top_level_constant(name)
50
- Object.const_get(name, false)
51
- rescue NameError
52
- nil
53
- end
54
48
  end
55
49
  end
56
50
  end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Julewire
4
+ module RailsSupport
5
+ module LogSubscribers
6
+ class << self
7
+ def detach(subscriber_class, namespace)
8
+ subscriber_class.detach_from(namespace) if subscriber_class.respond_to?(:detach_from)
9
+ EventReporter.unsubscribe_log_subscriber(subscriber_class)
10
+ end
11
+
12
+ def constantize(name)
13
+ Object.const_get(name, false)
14
+ rescue NameError
15
+ nil
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Julewire
4
4
  module RailsSupport
5
- VERSION = "1.0.0"
5
+ VERSION = "1.1.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: julewire-rails_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Grebennik
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '1.0'
18
+ version: 1.1.0
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ">="
24
24
  - !ruby/object:Gem::Version
25
- version: '1.0'
25
+ version: 1.1.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: zeitwerk
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -53,6 +53,7 @@ files:
53
53
  - lib/julewire-rails_support.rb
54
54
  - lib/julewire/rails_support.rb
55
55
  - lib/julewire/rails_support/event_reporter.rb
56
+ - lib/julewire/rails_support/log_subscribers.rb
56
57
  - lib/julewire/rails_support/version.rb
57
58
  homepage: https://github.com/slbug/julewire
58
59
  licenses:
@@ -76,7 +77,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
76
77
  - !ruby/object:Gem::Version
77
78
  version: '0'
78
79
  requirements: []
79
- rubygems_version: 4.0.14
80
+ rubygems_version: 4.0.16
80
81
  specification_version: 4
81
82
  summary: Shared Rails-family support helpers for Julewire integrations.
82
83
  test_files: []