packwerk 3.0.1 → 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +36 -8
  3. data/.ruby-version +1 -1
  4. data/Gemfile.lock +12 -7
  5. data/README.md +4 -2
  6. data/Rakefile +10 -1
  7. data/USAGE.md +8 -3
  8. data/dev.yml +1 -1
  9. data/lib/packwerk/application_validator.rb +3 -0
  10. data/lib/packwerk/checker.rb +15 -6
  11. data/lib/packwerk/cli.rb +14 -177
  12. data/lib/packwerk/commands/base_command.rb +69 -0
  13. data/lib/packwerk/commands/check_command.rb +62 -0
  14. data/lib/packwerk/commands/help_command.rb +33 -0
  15. data/lib/packwerk/commands/init_command.rb +42 -0
  16. data/lib/packwerk/commands/lazy_loaded_entry.rb +37 -0
  17. data/lib/packwerk/commands/update_todo_command.rb +60 -0
  18. data/lib/packwerk/commands/uses_parse_run.rb +92 -0
  19. data/lib/packwerk/commands/validate_command.rb +46 -0
  20. data/lib/packwerk/commands/version_command.rb +18 -0
  21. data/lib/packwerk/commands.rb +54 -0
  22. data/lib/packwerk/configuration.rb +4 -1
  23. data/lib/packwerk/file_processor.rb +12 -1
  24. data/lib/packwerk/formatters/default_offenses_formatter.rb +3 -3
  25. data/lib/packwerk/formatters/progress_formatter.rb +11 -0
  26. data/lib/packwerk/generators/templates/package.yml +2 -2
  27. data/lib/packwerk/generators/templates/packwerk.yml.erb +1 -1
  28. data/lib/packwerk/offense_collection.rb +32 -12
  29. data/lib/packwerk/offenses_formatter.rb +13 -4
  30. data/lib/packwerk/package_todo.rb +87 -60
  31. data/lib/packwerk/parse_run.rb +42 -82
  32. data/lib/packwerk/parsers/ruby.rb +2 -2
  33. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +3 -3
  34. data/lib/packwerk/validator.rb +18 -4
  35. data/lib/packwerk/version.rb +1 -1
  36. data/lib/packwerk.rb +4 -28
  37. data/packwerk.gemspec +1 -0
  38. data/sorbet/rbi/gems/{nokogiri@1.13.8.rbi → nokogiri@1.15.3.rbi} +1854 -1031
  39. data/sorbet/rbi/gems/parser@3.2.2.0.rbi +7250 -0
  40. data/sorbet/rbi/gems/prism@0.24.0.rbi +29982 -0
  41. metadata +30 -6
  42. data/lib/packwerk/cli/result.rb +0 -11
  43. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +0 -9029
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: packwerk
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shopify Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-03-09 00:00:00.000000000 Z
11
+ date: 2024-02-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -122,6 +122,20 @@ dependencies:
122
122
  - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: prism
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: 0.24.0
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: 0.24.0
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: better_html
127
141
  requirement: !ruby/object:Gem::Requirement
@@ -198,7 +212,16 @@ files:
198
212
  - lib/packwerk/cache.rb
199
213
  - lib/packwerk/checker.rb
200
214
  - lib/packwerk/cli.rb
201
- - lib/packwerk/cli/result.rb
215
+ - lib/packwerk/commands.rb
216
+ - lib/packwerk/commands/base_command.rb
217
+ - lib/packwerk/commands/check_command.rb
218
+ - lib/packwerk/commands/help_command.rb
219
+ - lib/packwerk/commands/init_command.rb
220
+ - lib/packwerk/commands/lazy_loaded_entry.rb
221
+ - lib/packwerk/commands/update_todo_command.rb
222
+ - lib/packwerk/commands/uses_parse_run.rb
223
+ - lib/packwerk/commands/validate_command.rb
224
+ - lib/packwerk/commands/version_command.rb
202
225
  - lib/packwerk/configuration.rb
203
226
  - lib/packwerk/const_node_inspector.rb
204
227
  - lib/packwerk/constant_context.rb
@@ -293,10 +316,11 @@ files:
293
316
  - sorbet/rbi/gems/net-smtp@0.3.1.rbi
294
317
  - sorbet/rbi/gems/netrc@0.11.0.rbi
295
318
  - sorbet/rbi/gems/nio4r@2.5.8.rbi
296
- - sorbet/rbi/gems/nokogiri@1.13.8.rbi
319
+ - sorbet/rbi/gems/nokogiri@1.15.3.rbi
297
320
  - sorbet/rbi/gems/parallel@1.22.1.rbi
298
- - sorbet/rbi/gems/parser@3.1.2.1.rbi
321
+ - sorbet/rbi/gems/parser@3.2.2.0.rbi
299
322
  - sorbet/rbi/gems/prettier_print@0.1.0.rbi
323
+ - sorbet/rbi/gems/prism@0.24.0.rbi
300
324
  - sorbet/rbi/gems/pry@0.14.1.rbi
301
325
  - sorbet/rbi/gems/racc@1.6.0.rbi
302
326
  - sorbet/rbi/gems/rack-test@2.0.2.rbi
@@ -363,7 +387,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
363
387
  - !ruby/object:Gem::Version
364
388
  version: '0'
365
389
  requirements: []
366
- rubygems_version: 3.3.3
390
+ rubygems_version: 3.5.6
367
391
  signing_key:
368
392
  specification_version: 4
369
393
  summary: Packages for applications based on the zeitwerk autoloader
@@ -1,11 +0,0 @@
1
- # typed: strict
2
- # frozen_string_literal: true
3
-
4
- module Packwerk
5
- class Cli
6
- class Result < T::Struct
7
- const :message, String
8
- const :status, T::Boolean
9
- end
10
- end
11
- end