nexus_semantic_logger 1.15.1 → 1.17.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: 2b9cf03c2806f6595ff9cb04ecb4f88a9620b9e15c20746002709072b8cf0894
4
- data.tar.gz: cbc68257de855d66b007a6487690b9c0df86a3d2e5d2ef6cb9282eaa26098cac
3
+ metadata.gz: 3868c4fe94f7eca85f77a015f5cf2d8e9b6ed2ef97667de52ee2fc194999421b
4
+ data.tar.gz: dd16b36754be0d34c5b705a2771677d127984712ddf7adb01d960073204057e6
5
5
  SHA512:
6
- metadata.gz: f4194bbbf2ec1ca3e74d92600718fb94ae074ecb22a34484bdaac19ffe1a77707248cb6cbad661eb3c4b8599ea8917499f8ea6863d8d6dad7eef836c78d65b84
7
- data.tar.gz: 1137a7fae2357987524ecc2d955d1ac182bf2fbe36f76d64b8aed3704127da641df304f1e53e291f2c7f8ffe8af64841423b37d4af94a737bf994b0764a4c14a
6
+ metadata.gz: 8ac8fd1cb30a5ff48caf5ab7e049c652507ba58e1596b60a79279934ceaf7e95c8e4d4cdebba8f65bdb0bab3e9830c9443cc9e09cd0d5fac7be53e631d75a1c1
7
+ data.tar.gz: ac48fb7f2a1bed19cc6d05ef22cd4c5e9d193cf4d02e700bf00f48d2df8ce2c44d9e2fca48c2a6c088b6fb0889d02b960af17fc8448cc70841cb092a597e4485
@@ -12,7 +12,7 @@ jobs:
12
12
  strategy:
13
13
  fail-fast: false
14
14
  matrix:
15
- gemfile: [rails_7_1, rails_7_2, rails_8_0]
15
+ gemfile: [rails_7_1, rails_7_2, rails_8_0, rails_8_1]
16
16
  env:
17
17
  BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
18
18
  steps:
data/Appraisals CHANGED
@@ -11,3 +11,10 @@ end
11
11
  appraise "rails-8-0" do
12
12
  gem "railties", "~> 8.0.0"
13
13
  end
14
+
15
+ appraise "rails-8-1" do
16
+ gem "railties", "~> 8.1.0"
17
+ # No 4.x release of rails_semantic_logger works on Rails 8.1, and bundler will not upgrade past
18
+ # 4.x on its own when an older lockfile exists.
19
+ gem "rails_semantic_logger", "~> 5.1"
20
+ end
@@ -0,0 +1,12 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "appraisal"
6
+ gem "rubocop"
7
+ gem "rubocop-shopify", "~> 1.0.4", require: false
8
+ gem "rspec"
9
+ gem "railties", "~> 8.1.0"
10
+ gem "rails_semantic_logger", "~> 5.1"
11
+
12
+ gemspec path: "../"
@@ -46,6 +46,7 @@ module NexusSemanticLogger
46
46
  config.after_initialize do
47
47
  require("nexus_semantic_logger/extensions/action_dispatch/debug_exceptions") if defined?(
48
48
  ::ActionDispatch::DebugExceptions)
49
+ warn_on_incompatible_rails_semantic_logger
49
50
  end
50
51
  end
51
52
 
@@ -85,5 +86,29 @@ module NexusSemanticLogger
85
86
  # Ensure logging is immediately flushed.
86
87
  $stdout.sync = true
87
88
  end
89
+
90
+ # Rails 8.1 needs rails_semantic_logger 5.x and no gemspec can express that, so detect the
91
+ # broken pairing at boot.
92
+ def self.warn_on_incompatible_rails_semantic_logger
93
+ return unless incompatible_rails_semantic_logger?
94
+
95
+ logger.warn(
96
+ 'rails_semantic_logger 4.x cannot log ActiveRecord events on this Rails version, every ' \
97
+ 'sql.active_record event will log a NoMethodError instead of the query. Add ' \
98
+ '`gem "rails_semantic_logger", ">= 5.1"` to your Gemfile so bundler refuses this ' \
99
+ 'pairing, then `bundle update rails_semantic_logger semantic_logger`.'
100
+ )
101
+ end
102
+
103
+ # Rails 8.1 moved ActiveRecord::RuntimeRegistry.sql_runtime onto a stats object, which
104
+ # rails_semantic_logger only handles from 5.0. Apps carrying their own shim restore
105
+ # sql_runtime and so read as compatible here.
106
+ def self.incompatible_rails_semantic_logger?
107
+ defined?(::ActiveRecord::RuntimeRegistry) &&
108
+ !::ActiveRecord::RuntimeRegistry.respond_to?(:sql_runtime) &&
109
+ Gem::Version.new(RailsSemanticLogger::VERSION) < Gem::Version.new('5.0')
110
+ end
111
+
112
+ private_class_method :warn_on_incompatible_rails_semantic_logger, :incompatible_rails_semantic_logger?
88
113
  end
89
114
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
  module NexusSemanticLogger
3
- # Leave this as 1.15.1 in order for CI process to replace with the tagged version.
4
- VERSION = '1.15.1'
3
+ # Leave this as 1.17.0 in order for CI process to replace with the tagged version.
4
+ VERSION = '1.17.0'
5
5
  end
@@ -16,9 +16,12 @@ Gem::Specification.new do |spec|
16
16
  spec.add_dependency('amazing_print', '~> 1.4.0')
17
17
  spec.add_dependency('datadog', '~> 2.24') # For datadog tracing/profiling.
18
18
  spec.add_dependency('dogstatsd-ruby', '~> 5.7') # For custom application metrics.
19
- spec.add_dependency('google-protobuf', '~> 3.25.5')
19
+ spec.add_dependency('google-protobuf', '>= 3.25.5') # 3.25.x doesn't support ruby >= 3.4; allow 4.x too.
20
20
  spec.add_dependency('net_tcp_client', '~> 2.2.0') # For TCP logging.
21
- spec.add_dependency('rails_semantic_logger', '~> 4.17.0')
22
- spec.add_dependency('semantic_logger', '~> 4.16.1')
21
+ # Widened so bundler can resolve per app. Rails 8.1 needs rails_semantic_logger >= 5.1 (no 4.x
22
+ # release supports it), and 5.x requires railties >= 7.2 plus semantic_logger >= 5.1, so apps on
23
+ # Rails 7.1 still resolve 4.x and newer apps take 5.x.
24
+ spec.add_dependency('rails_semantic_logger', '>= 4.17', '< 6')
25
+ spec.add_dependency('semantic_logger', '>= 4.16.1', '< 6')
23
26
  spec.required_ruby_version = Gem::Requirement.new('>= 2.7.0')
24
27
  end
data/renovate.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
+ "extends": [
4
+ "config:recommended"
5
+ ],
6
+ "vulnerabilityAlerts": {
7
+ "dependencyDashboardApproval": false,
8
+ "labels": ["security"]
9
+ },
10
+ "osvVulnerabilityAlerts": true,
11
+ "reviewers": ["team:platform-engineering"],
12
+ "assignees": ["team:platform-engineering"],
13
+ "packageRules": [
14
+ {
15
+ "matchManagers": ["github-actions"],
16
+ "groupName": "GitHub Actions",
17
+ "dependencyDashboardApproval": false
18
+ }
19
+ ]
20
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nexus_semantic_logger
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.1
4
+ version: 1.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johnathon Harris
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-21 00:00:00.000000000 Z
11
+ date: 2026-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: amazing_print
@@ -56,14 +56,14 @@ dependencies:
56
56
  name: google-protobuf
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: 3.25.5
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: 3.25.5
69
69
  - !ruby/object:Gem::Dependency
@@ -84,30 +84,42 @@ dependencies:
84
84
  name: rails_semantic_logger
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: 4.17.0
89
+ version: '4.17'
90
+ - - "<"
91
+ - !ruby/object:Gem::Version
92
+ version: '6'
90
93
  type: :runtime
91
94
  prerelease: false
92
95
  version_requirements: !ruby/object:Gem::Requirement
93
96
  requirements:
94
- - - "~>"
97
+ - - ">="
95
98
  - !ruby/object:Gem::Version
96
- version: 4.17.0
99
+ version: '4.17'
100
+ - - "<"
101
+ - !ruby/object:Gem::Version
102
+ version: '6'
97
103
  - !ruby/object:Gem::Dependency
98
104
  name: semantic_logger
99
105
  requirement: !ruby/object:Gem::Requirement
100
106
  requirements:
101
- - - "~>"
107
+ - - ">="
102
108
  - !ruby/object:Gem::Version
103
109
  version: 4.16.1
110
+ - - "<"
111
+ - !ruby/object:Gem::Version
112
+ version: '6'
104
113
  type: :runtime
105
114
  prerelease: false
106
115
  version_requirements: !ruby/object:Gem::Requirement
107
116
  requirements:
108
- - - "~>"
117
+ - - ">="
109
118
  - !ruby/object:Gem::Version
110
119
  version: 4.16.1
120
+ - - "<"
121
+ - !ruby/object:Gem::Version
122
+ version: '6'
111
123
  description:
112
124
  email: john.harris@nexusmods.com
113
125
  executables: []
@@ -124,6 +136,7 @@ files:
124
136
  - gemfiles/rails_7_1.gemfile
125
137
  - gemfiles/rails_7_2.gemfile
126
138
  - gemfiles/rails_8_0.gemfile
139
+ - gemfiles/rails_8_1.gemfile
127
140
  - lib/nexus_semantic_logger.rb
128
141
  - lib/nexus_semantic_logger/appender_filter.rb
129
142
  - lib/nexus_semantic_logger/application.rb
@@ -138,6 +151,7 @@ files:
138
151
  - lib/puma/plugin/README.md
139
152
  - lib/puma/plugin/nexus_puma_statsd.rb
140
153
  - nexus_semantic_logger.gemspec
154
+ - renovate.json
141
155
  homepage:
142
156
  licenses: []
143
157
  metadata: {}