legion-crypt 1.5.12 → 1.5.13

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: a4af81549d8e946acfc92ec4036496fce4af3d1be6fc10cba534298434f0c94a
4
- data.tar.gz: 7e70028fa24e9760ff791f49f88817b37c9ee009b21fdc7dae9382a49306e8ca
3
+ metadata.gz: 52409be9c9bdc3144775c70117e99a6d205bfe6df9485654ccaf86766d1705a8
4
+ data.tar.gz: e050109245c71fb138170689e0a7f94e0df734d260f24b484261b8c92b432527
5
5
  SHA512:
6
- metadata.gz: 96269db0a9859015418df236468d0eff5b08490e1eb7bc55c7507199dda579924273979405d9e724b3d1237b7855ecc7b949fabdbc15dc378994ad19930112c9
7
- data.tar.gz: b112f3eb47b538549e842eaa8a766e15c1934650f010082ec892a4b05fa995746dcff25ffeed90a2e625e09ee4d38d21a9d399d9787c6fd6dd1598f6895fc28f
6
+ metadata.gz: a00f255f040dcdd2bc22fa78f73a7a0dc0609648133ce068e9a1d899d700ac3bfa932d884c8ec41392cf9e3767a76e58a13ea8c88eda0597b7cf81be6d3fcb46
7
+ data.tar.gz: 0aaa59d763953050f416aea1891c3d95f5019a42c627b47270d243c35b50414d6a93e2cba85a0ae7e5f73ee27c3f0049a4ec94463543e13e66da850c66e429c3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # Legion::Crypt
2
2
 
3
- ## [Unreleased]
3
+ ## [1.5.13] - 2026-05-09
4
+
5
+ ### Removed
6
+ - Logging compat shims (`lib/legion/logging.rb` and `lib/legion/logging/helper.rb`) that redefined `Legion::Logging::Helper#log` with a `CompatLogger`, preventing TaggedLogger segment tags from rendering in log output for all modules loaded after crypt
7
+
8
+ ### Added
9
+ - `legion-json` gemspec dependency (was used but undeclared)
4
10
 
5
11
  ## [1.5.12] - 2026-04-27
6
12
 
data/legion-crypt.gemspec CHANGED
@@ -28,6 +28,7 @@ Gem::Specification.new do |spec|
28
28
  spec.add_dependency 'concurrent-ruby', '~> 1.3'
29
29
  spec.add_dependency 'ed25519', '~> 1.3'
30
30
  spec.add_dependency 'jwt', '>= 2.7'
31
+ spec.add_dependency 'legion-json', '>= 1.2.0'
31
32
  spec.add_dependency 'legion-logging', '>= 1.5.0'
32
33
  spec.add_dependency 'vault', '>= 0.17'
33
34
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Legion
4
4
  module Crypt
5
- VERSION = '1.5.12'
5
+ VERSION = '1.5.13'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: legion-crypt
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.12
4
+ version: 1.5.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity
@@ -51,6 +51,20 @@ dependencies:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: '2.7'
54
+ - !ruby/object:Gem::Dependency
55
+ name: legion-json
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 1.2.0
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 1.2.0
54
68
  - !ruby/object:Gem::Dependency
55
69
  name: legion-logging
56
70
  requirement: !ruby/object:Gem::Requirement
@@ -133,8 +147,6 @@ files:
133
147
  - lib/legion/crypt/vault_kerberos_auth.rb
134
148
  - lib/legion/crypt/vault_renewer.rb
135
149
  - lib/legion/crypt/version.rb
136
- - lib/legion/logging.rb
137
- - lib/legion/logging/helper.rb
138
150
  - scripts/pre-commit-rubocop.sh
139
151
  - sonar-project.properties
140
152
  homepage: https://github.com/LegionIO/legion-crypt
@@ -1,101 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- begin
4
- helper_path = File.join(
5
- Gem::Specification.find_by_name('legion-logging').full_gem_path,
6
- 'lib/legion/logging/helper.rb'
7
- )
8
- require helper_path if File.exist?(helper_path)
9
- rescue Gem::LoadError => e
10
- require 'legion/logging'
11
- Legion::Logging.warn("legion-crypt logging helper fallback active: #{e.message}")
12
- end
13
-
14
- require 'legion/logging'
15
-
16
- module Legion
17
- module Logging
18
- module Helper
19
- unless const_defined?(:CompatLogger, false)
20
- CompatLogger = Class.new do
21
- %i[debug info warn error fatal unknown].each do |level|
22
- define_method(level) do |message = nil, &block|
23
- payload = block ? block.call : message
24
- return if payload.nil?
25
-
26
- if logging_supports?(level)
27
- Legion::Logging.public_send(level, payload)
28
- elsif %i[error fatal warn].include?(level)
29
- ::Kernel.warn(payload)
30
- else
31
- $stdout.puts(payload)
32
- end
33
- end
34
- end
35
-
36
- private
37
-
38
- def logging_supports?(level)
39
- return false unless Legion.const_defined?('Logging')
40
-
41
- Legion::Logging.respond_to?(level)
42
- rescue StandardError => e
43
- Legion::Logging.warn("legion-crypt logging support check failed: #{e.message}")
44
- false
45
- end
46
- end
47
- end
48
-
49
- def log
50
- @log ||= CompatLogger.new
51
- end
52
-
53
- def handle_exception(exception, task_id: nil, level: :error, handled: true, **opts) # rubocop:disable Lint/UnusedMethodArgument,Style/ArgumentsForwarding
54
- message = exception_log_message(exception, level: level, **opts) # rubocop:disable Style/ArgumentsForwarding
55
-
56
- if logging_supports?(:log_exception)
57
- Legion::Logging.log_exception(exception, level: level, lex: 'crypt', component_type: :helper)
58
- return
59
- end
60
- if logging_supports?(level)
61
- Legion::Logging.public_send(level, message)
62
- return
63
- end
64
- if logging_supports?(:error)
65
- Legion::Logging.error(message)
66
- return
67
- end
68
- if logging_supports?(:warn)
69
- Legion::Logging.warn(message)
70
- return
71
- end
72
-
73
- ::Kernel.warn(message)
74
- end
75
-
76
- private
77
-
78
- def logging_supports?(level)
79
- return false unless Legion.const_defined?('Logging')
80
-
81
- Legion::Logging.respond_to?(level)
82
- rescue StandardError => e
83
- Legion::Logging.warn("legion-crypt logging support check failed: #{e.message}")
84
- false
85
- end
86
-
87
- def exception_log_message(exception, level:, **opts)
88
- operation = opts[:operation] || opts['operation']
89
- prefix = operation ? "#{operation} failed: " : ''
90
- details = opts.reject { |key, _value| key.to_s == 'operation' }.map { |key, value| "#{key}=#{value}" }
91
- detail_suffix = details.empty? ? '' : " (#{details.join(' ')})"
92
- backtrace = Array(exception.backtrace).join("\n")
93
- base = "#{prefix}#{exception.class}: #{exception.message}#{detail_suffix}"
94
- return base if backtrace.empty? || level == :debug
95
- return base if backtrace.empty?
96
-
97
- "#{base}\n#{backtrace}"
98
- end
99
- end
100
- end
101
- end
@@ -1,58 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'logger'
4
-
5
- begin
6
- gem_root = Gem::Specification.find_by_name('legion-logging').full_gem_path
7
- upstream_logging = File.join(gem_root, 'lib/legion/logging.rb')
8
- require upstream_logging if File.exist?(upstream_logging)
9
- rescue Gem::LoadError
10
- nil
11
- end
12
-
13
- module Legion
14
- module Logging
15
- class << self
16
- unless method_defined?(:setup)
17
- def setup(level: 'info', **_opts)
18
- logger.level = normalize_level(level)
19
- self
20
- end
21
-
22
- def logger
23
- @logger ||= Logger.new($stdout).tap do |instance|
24
- instance.progname = 'legion-crypt'
25
- end
26
- end
27
-
28
- def log_exception(exception, lex: nil, component_type: nil, **_opts)
29
- prefix = [lex, component_type].compact.join('.')
30
- payload = prefix.empty? ? exception.message : "#{prefix}: #{exception.message}"
31
- error(payload)
32
- end
33
-
34
- %i[debug info warn error fatal unknown].each do |level_name|
35
- define_method(level_name) do |message = nil, &block|
36
- payload = block ? block.call : message
37
- return if payload.nil?
38
-
39
- logger.public_send(level_name, payload)
40
- end
41
- end
42
-
43
- private
44
-
45
- def normalize_level(level)
46
- case level.to_s.downcase
47
- when 'debug' then Logger::DEBUG
48
- when 'info' then Logger::INFO
49
- when 'warn' then Logger::WARN
50
- when 'error' then Logger::ERROR
51
- when 'fatal' then Logger::FATAL
52
- else Logger::UNKNOWN
53
- end
54
- end
55
- end
56
- end
57
- end
58
- end