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 +4 -4
- data/CHANGELOG.md +7 -1
- data/legion-crypt.gemspec +1 -0
- data/lib/legion/crypt/version.rb +1 -1
- metadata +15 -3
- data/lib/legion/logging/helper.rb +0 -101
- data/lib/legion/logging.rb +0 -58
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 52409be9c9bdc3144775c70117e99a6d205bfe6df9485654ccaf86766d1705a8
|
|
4
|
+
data.tar.gz: e050109245c71fb138170689e0a7f94e0df734d260f24b484261b8c92b432527
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a00f255f040dcdd2bc22fa78f73a7a0dc0609648133ce068e9a1d899d700ac3bfa932d884c8ec41392cf9e3767a76e58a13ea8c88eda0597b7cf81be6d3fcb46
|
|
7
|
+
data.tar.gz: 0aaa59d763953050f416aea1891c3d95f5019a42c627b47270d243c35b50414d6a93e2cba85a0ae7e5f73ee27c3f0049a4ec94463543e13e66da850c66e429c3
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
# Legion::Crypt
|
|
2
2
|
|
|
3
|
-
## [
|
|
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
|
data/lib/legion/crypt/version.rb
CHANGED
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.
|
|
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
|
data/lib/legion/logging.rb
DELETED
|
@@ -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
|