use_packs 0.0.19 → 0.0.20

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: 6c91cf31b0f2e560b5ea797df175fc15d5480057d622c93a26a6b6dd6dc470f8
4
- data.tar.gz: cd7ff3e14cc6a67df490ece991ae2779fef0b88493c9f1bebe67b539c90e4da4
3
+ metadata.gz: 1e5ff298c66cd0240894575bbcd27229d27370a946f59578c21f650de6fbb699
4
+ data.tar.gz: 8863e9d1fd26bbbe3fa512b06f3338e05d0de0d552febd207989d229f07f76c6
5
5
  SHA512:
6
- metadata.gz: 5be0a6fb61d223c991afd30b55baaaf74035cf7d0e66953dd4d10732fd7a8e2cfc4cadc2b4a6bdc6fee88440e041e53c89f478c3005b0701c6915760d2d2f95b
7
- data.tar.gz: 251134796f9054ab9ed1b1d3ebab9c6c33ec74302510c1cbd81f7628cb427e3e88be321e130d44ae3f0aa85a37f1cb252d3edbabee12c0b9803c834e1c907ff9
6
+ metadata.gz: aa284550c2ffe844c552568ec06985b5d8bf95ebab863b7ceafbad9b28b84604eec045fc9ea56c9c0c73608507406c20eed4c1d1cd932b3c05855eb963eb7359
7
+ data.tar.gz: 8a186d4871ea6860535dba32a427d9a62c09b0bb92597d168a009d8c49def298877ac5437d7b979f9818b671ffa31dee806c738f7c7afe759734eb5d96347d44
@@ -366,7 +366,7 @@ module UsePacks
366
366
 
367
367
  existing_package = ParsePackwerk.all.find { |p| p.name == pack_name }
368
368
  if existing_package.nil?
369
- should_enforce_dependenceies = enforce_dependencies.nil? ? UsePacks.config.enforce_dependencies : enforce_dependencies
369
+ should_enforce_dependencies = enforce_dependencies.nil? ? UsePacks.config.enforce_dependencies : enforce_dependencies
370
370
 
371
371
  # TODO: This should probably be `if defined?(CodeOwnership) && CodeOwnership.configured?`
372
372
  # but we'll need to add an API to CodeOwnership to do this
@@ -379,7 +379,7 @@ module UsePacks
379
379
  end
380
380
 
381
381
  package = ParsePackwerk::Package.new(
382
- enforce_dependencies: should_enforce_dependenceies,
382
+ enforce_dependencies: should_enforce_dependencies || false,
383
383
  enforce_privacy: enforce_privacy,
384
384
  dependencies: [],
385
385
  metadata: {},
@@ -557,6 +557,39 @@ module UsePacks
557
557
  end
558
558
  end
559
559
 
560
+ sig { params(packs: T::Array[Packs::Pack]).void }
561
+ def self.lint_package_yml_files!(packs)
562
+ packs.each do |p|
563
+ packwerk_package = ParsePackwerk.find(p.name)
564
+ next if packwerk_package.nil?
565
+
566
+ new_metadata = packwerk_package.metadata
567
+ new_config = packwerk_package.config
568
+
569
+ # Move metadata owner key to top-level
570
+ existing_owner = new_config['owner'] || new_metadata.delete('owner')
571
+ new_config['owner'] = existing_owner if !existing_owner.nil?
572
+
573
+ if new_metadata.empty?
574
+ new_config.delete('metadata')
575
+ end
576
+
577
+ new_package = packwerk_package.with(
578
+ config: new_config,
579
+ metadata: new_metadata,
580
+ dependencies: packwerk_package.dependencies.uniq.sort
581
+ )
582
+
583
+ ParsePackwerk.write_package_yml!(new_package)
584
+ end
585
+ end
586
+
587
+ sig { params(config: T::Hash[T.anything, T.anything]).returns(T::Hash[T.anything, T.anything]) }
588
+ def self.sort_keys(config)
589
+ sort_order = ParsePackwerk.key_sort_order
590
+ config.to_a.sort_by { |key, _value| T.unsafe(sort_order).index(key) }.to_h
591
+ end
592
+
560
593
  sig { params(packs: T::Array[Packs::Pack]).void }
561
594
  def self.visualize(packs: Packs.all)
562
595
  packwerk_packages = packs.map do |pack|
data/lib/use_packs.rb CHANGED
@@ -253,19 +253,6 @@ module UsePacks
253
253
 
254
254
  sig { params(packs: T::Array[Packs::Pack]).void }
255
255
  def self.lint_package_yml_files!(packs)
256
- packs.each do |p|
257
- packwerk_package = ParsePackwerk.find(p.name)
258
- next if packwerk_package.nil?
259
-
260
- new_package = ParsePackwerk::Package.new(
261
- name: packwerk_package.name,
262
- enforce_privacy: packwerk_package.enforce_privacy,
263
- enforce_dependencies: packwerk_package.enforce_dependencies,
264
- dependencies: packwerk_package.dependencies.uniq.sort,
265
- metadata: packwerk_package.metadata,
266
- config: packwerk_package.config
267
- )
268
- ParsePackwerk.write_package_yml!(new_package)
269
- end
256
+ Private.lint_package_yml_files!(packs)
270
257
  end
271
258
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: use_packs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.19
4
+ version: 0.0.20
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-05-15 00:00:00.000000000 Z
11
+ date: 2023-05-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: code_ownership