parse_packwerk 0.11.0 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/parse_packwerk.rb +12 -2
- 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: 573bc6231b6506545fa220a99d6ed0abf08362a72e44cabae50a333c209bcbb9
|
4
|
+
data.tar.gz: df64a2831b7d4cebc67597cebcfc2b71ee8cd0d33b1d124f8b6d152eb5e8f6a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6cc08b66c764699ee9110f800fd13dd41deeacefeba958f5769b4d15d6dd1ed186612d846813d3d69670127036d24de51ec4a7dd599a435187b686dcc3693e0d
|
7
|
+
data.tar.gz: 64aacb8e7b976545a5974db6e480e5b0f4e01c164517ac8434f8e8f66dc6bf966f2cdb60aff357fc0dbb96af49f7aaa787e46af8868816f4fcc775209081e1f6
|
data/lib/parse_packwerk.rb
CHANGED
@@ -26,7 +26,7 @@ module ParsePackwerk
|
|
26
26
|
returns(T::Array[Package])
|
27
27
|
end
|
28
28
|
def self.all
|
29
|
-
|
29
|
+
packages_by_name.values
|
30
30
|
end
|
31
31
|
|
32
32
|
sig { params(name: String).returns(T.nilable(Package)) }
|
@@ -93,9 +93,19 @@ module ParsePackwerk
|
|
93
93
|
def self.packages_by_name
|
94
94
|
@packages_by_name = T.let(@packages_by_name, T.nilable(T::Hash[String, Package]))
|
95
95
|
@packages_by_name ||= begin
|
96
|
-
|
96
|
+
all_packages = PackageSet.from(package_pathspec: yml.package_paths, exclude_pathspec: yml.exclude)
|
97
|
+
# We want to match more specific paths first
|
98
|
+
# Packwerk does this too and is necessary for package_from_path to work correctly.
|
99
|
+
sorted_packages = all_packages.sort_by { |package| -package.name.length }
|
100
|
+
sorted_packages.map{|p| [p.name, p]}.to_h
|
97
101
|
end
|
98
102
|
end
|
99
103
|
|
104
|
+
sig { void }
|
105
|
+
def self.bust_cache!
|
106
|
+
@packages_by_name = nil
|
107
|
+
@package_from_path = nil
|
108
|
+
end
|
109
|
+
|
100
110
|
private_class_method :packages_by_name
|
101
111
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: parse_packwerk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gusto Engineers
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sorbet-runtime
|