code_ownership 1.32.2 → 1.32.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/code_ownership/private.rb +4 -4
- data/lib/code_ownership.rb +5 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3bf52f1bcb70650a93514852fec13bc3e1f4f275643ed712bad37f8439b6ae17
|
4
|
+
data.tar.gz: ca47603f68d95683c4b948318532170a7156651ab24c2f0adcce292975b6076f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 037e1119a49812006add87fcef7c7a3d6de0505523c36dd7811e0583fbd654ccce450b79a7a6a4b298ef90e511a269ed11d076d823cd4025ceb693e3101c4316
|
7
|
+
data.tar.gz: 5c6ef23bf3554f1531bcebeb6daf49353503a251ee8e3a51ff0223375d3fbb7d4abb1d2f4b0ed99e9368e5279d9c0f623f58906f84b2bc09ed0fb8fecc7d5e33
|
@@ -58,10 +58,10 @@ module CodeOwnership
|
|
58
58
|
|
59
59
|
# Returns a string version of the relative path to a Rails constant,
|
60
60
|
# or nil if it can't find something
|
61
|
-
sig { params(
|
62
|
-
def self.
|
63
|
-
if
|
64
|
-
path = Object.const_source_location(
|
61
|
+
sig { params(klass: T.nilable(T.any(Class, Module))).returns(T.nilable(String)) }
|
62
|
+
def self.path_from_klass(klass)
|
63
|
+
if klass
|
64
|
+
path = Object.const_source_location(klass.to_s)&.first
|
65
65
|
(path && Pathname.new(path).relative_path_from(Pathname.pwd).to_s) || nil
|
66
66
|
else
|
67
67
|
nil
|
data/lib/code_ownership.rb
CHANGED
@@ -149,23 +149,20 @@ module CodeOwnership
|
|
149
149
|
end
|
150
150
|
private_class_method(:backtrace_with_ownership)
|
151
151
|
|
152
|
-
sig { params(klass: T.nilable(T.any(Class, Module
|
152
|
+
sig { params(klass: T.nilable(T.any(Class, Module))).returns(T.nilable(::CodeTeams::Team)) }
|
153
153
|
def for_class(klass)
|
154
154
|
@memoized_values ||= T.let(@memoized_values, T.nilable(T::Hash[String, T.nilable(::CodeTeams::Team)]))
|
155
155
|
@memoized_values ||= {}
|
156
|
-
|
157
|
-
klass_string = klass.to_s
|
158
|
-
|
159
156
|
# We use key because the memoized value could be `nil`
|
160
|
-
if !@memoized_values.key?(
|
161
|
-
path = Private.
|
157
|
+
if !@memoized_values.key?(klass.to_s)
|
158
|
+
path = Private.path_from_klass(klass)
|
162
159
|
return nil if path.nil?
|
163
160
|
|
164
161
|
value_to_memoize = for_file(path)
|
165
|
-
@memoized_values[
|
162
|
+
@memoized_values[klass.to_s] = value_to_memoize
|
166
163
|
value_to_memoize
|
167
164
|
else
|
168
|
-
@memoized_values[
|
165
|
+
@memoized_values[klass.to_s]
|
169
166
|
end
|
170
167
|
end
|
171
168
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: code_ownership
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.32.
|
4
|
+
version: 1.32.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gusto Engineers
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: code_teams
|