packwerk 1.1.0 → 1.2.0
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/.github/workflows/ci.yml +14 -5
- data/.ruby-version +1 -1
- data/Gemfile +1 -1
- data/Gemfile.lock +129 -111
- data/README.md +8 -1
- data/USAGE.md +17 -16
- data/dev.yml +1 -1
- data/exe/packwerk +1 -1
- data/gemfiles/Gemfile-rails-6-0 +22 -0
- data/lib/packwerk/application_load_paths.rb +3 -2
- data/lib/packwerk/application_validator.rb +83 -67
- data/lib/packwerk/association_inspector.rb +23 -11
- data/lib/packwerk/checker.rb +4 -7
- data/lib/packwerk/cli.rb +32 -100
- data/lib/packwerk/configuration.rb +10 -2
- data/lib/packwerk/const_node_inspector.rb +13 -14
- data/lib/packwerk/constant_discovery.rb +2 -0
- data/lib/packwerk/constant_name_inspector.rb +0 -1
- data/lib/packwerk/dependency_checker.rb +12 -17
- data/lib/packwerk/deprecated_references.rb +7 -9
- data/lib/packwerk/file_processor.rb +0 -4
- data/lib/packwerk/formatters/offenses_formatter.rb +43 -0
- data/lib/packwerk/formatters/progress_formatter.rb +9 -4
- data/lib/packwerk/generators/configuration_file.rb +0 -1
- data/lib/packwerk/inflector.rb +0 -2
- data/lib/packwerk/node.rb +9 -2
- data/lib/packwerk/node_processor.rb +15 -32
- data/lib/packwerk/node_processor_factory.rb +0 -5
- data/lib/packwerk/node_visitor.rb +1 -4
- data/lib/packwerk/offense.rb +2 -8
- data/lib/packwerk/offense_collection.rb +84 -0
- data/lib/packwerk/offenses_formatter.rb +15 -0
- data/lib/packwerk/output_style.rb +20 -0
- data/lib/packwerk/output_styles/coloured.rb +29 -0
- data/lib/packwerk/output_styles/plain.rb +26 -0
- data/lib/packwerk/package.rb +8 -0
- data/lib/packwerk/package_set.rb +2 -3
- data/lib/packwerk/parse_run.rb +104 -0
- data/lib/packwerk/parsed_constant_definitions.rb +2 -4
- data/lib/packwerk/parsers/erb.rb +0 -2
- data/lib/packwerk/parsers/factory.rb +1 -3
- data/lib/packwerk/parsers.rb +0 -2
- data/lib/packwerk/privacy_checker.rb +22 -17
- data/lib/packwerk/reference_extractor.rb +0 -8
- data/lib/packwerk/reference_offense.rb +49 -0
- data/lib/packwerk/result.rb +9 -0
- data/lib/packwerk/run_context.rb +4 -21
- data/lib/packwerk/sanity_checker.rb +1 -3
- data/lib/packwerk/spring_command.rb +1 -1
- data/lib/packwerk/version.rb +1 -1
- data/lib/packwerk/violation_type.rb +0 -2
- data/lib/packwerk.rb +73 -34
- data/library.yml +1 -1
- data/packwerk.gemspec +1 -0
- data/service.yml +1 -4
- data/shipit.rubygems.yml +5 -1
- data/sorbet/rbi/gems/{actioncable@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actioncable@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +56 -36
- data/sorbet/rbi/gems/{actionmailbox@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionmailbox@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +25 -28
- data/sorbet/rbi/gems/{actionmailer@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionmailer@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +43 -24
- data/sorbet/rbi/gems/{actionpack@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionpack@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +382 -284
- data/sorbet/rbi/gems/{actiontext@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actiontext@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +76 -40
- data/sorbet/rbi/gems/{actionview@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → actionview@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +206 -195
- data/sorbet/rbi/gems/{activejob@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activejob@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +64 -75
- data/sorbet/rbi/gems/{activemodel@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activemodel@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +103 -56
- data/sorbet/rbi/gems/{activerecord@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activerecord@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +1250 -898
- data/sorbet/rbi/gems/{activestorage@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activestorage@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +92 -120
- data/sorbet/rbi/gems/{activesupport@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → activesupport@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +292 -193
- data/sorbet/rbi/gems/{ast@2.4.1.rbi → ast@2.4.2.rbi} +2 -1
- data/sorbet/rbi/gems/{better_html@1.0.15.rbi → better_html@1.0.16.rbi} +2 -2
- data/sorbet/rbi/gems/{concurrent-ruby@1.1.6.rbi → concurrent-ruby@1.1.8.rbi} +12 -9
- data/sorbet/rbi/gems/{erubi@1.9.0.rbi → erubi@1.10.0.rbi} +3 -1
- data/sorbet/rbi/gems/{i18n@1.8.2.rbi → i18n@1.8.10.rbi} +19 -52
- data/sorbet/rbi/gems/{loofah@2.5.0.rbi → loofah@2.9.0.rbi} +3 -1
- data/sorbet/rbi/gems/marcel@1.0.0.rbi +70 -0
- data/sorbet/rbi/gems/{mini_mime@1.0.2.rbi → mini_mime@1.0.3.rbi} +6 -6
- data/sorbet/rbi/gems/{mini_portile2@2.4.0.rbi → minitest-focus@1.2.1.rbi} +2 -2
- data/sorbet/rbi/gems/{minitest@5.14.0.rbi → minitest@5.14.4.rbi} +31 -29
- data/sorbet/rbi/gems/{mocha@1.11.2.rbi → mocha@1.12.0.rbi} +25 -36
- data/sorbet/rbi/gems/{nio4r@2.5.2.rbi → nio4r@2.5.7.rbi} +21 -20
- data/sorbet/rbi/gems/{nokogiri@1.10.9.rbi → nokogiri@1.11.2.rbi} +193 -154
- data/sorbet/rbi/gems/parallel@1.20.1.rbi +117 -0
- data/sorbet/rbi/gems/parlour@6.0.0.rbi +1272 -0
- data/sorbet/rbi/gems/{parser@2.7.1.4.rbi → parser@3.0.0.0.rbi} +287 -174
- data/sorbet/rbi/gems/{pry@0.13.1.rbi → pry@0.14.0.rbi} +1 -1
- data/sorbet/rbi/gems/racc@1.5.2.rbi +57 -0
- data/sorbet/rbi/gems/{rack@2.2.2.rbi → rack@2.2.3.rbi} +23 -35
- data/sorbet/rbi/gems/{rails@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → rails@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +1 -1
- data/sorbet/rbi/gems/{railties@6.1.0.alpha-d80c18a391e33552ae2d943e68af56946f883f65.rbi → railties@7.0.0.alpha-d612542336d9a61381311c95a27d801bb4094779.rbi} +132 -121
- data/sorbet/rbi/gems/{rake@13.0.1.rbi → rake@13.0.3.rbi} +16 -20
- data/sorbet/rbi/gems/{parallel@1.19.1.rbi → regexp_parser@2.1.1.rbi} +2 -2
- data/sorbet/rbi/gems/rubocop-ast@1.4.1.rbi +8 -0
- data/sorbet/rbi/gems/{rubocop-performance@1.5.2.rbi → rubocop-performance@1.10.2.rbi} +1 -1
- data/sorbet/rbi/gems/{rubocop-shopify@1.0.2.rbi → rubocop-shopify@2.0.1.rbi} +1 -1
- data/sorbet/rbi/gems/{rubocop-sorbet@0.3.7.rbi → rubocop-sorbet@0.6.1.rbi} +1 -1
- data/sorbet/rbi/gems/{rubocop@0.82.0.rbi → rubocop@1.12.0.rbi} +1 -1
- data/sorbet/rbi/gems/{ruby-progressbar@1.10.1.rbi → ruby-progressbar@1.11.0.rbi} +1 -1
- data/sorbet/rbi/gems/spoom@1.1.0.rbi +1061 -0
- data/sorbet/rbi/gems/{spring@2.1.0.rbi → spring@2.1.1.rbi} +7 -7
- data/sorbet/rbi/gems/{sprockets-rails@3.2.1.rbi → sprockets-rails@3.2.2.rbi} +88 -68
- data/sorbet/rbi/gems/{sprockets@4.0.0.rbi → sprockets@4.0.2.rbi} +8 -7
- data/sorbet/rbi/gems/{tapioca@0.4.5.rbi → tapioca@0.4.19.rbi} +109 -24
- data/sorbet/rbi/gems/{thor@1.0.1.rbi → thor@1.1.0.rbi} +16 -15
- data/sorbet/rbi/gems/{tzinfo@2.0.2.rbi → tzinfo@2.0.4.rbi} +21 -2
- data/sorbet/rbi/gems/{unicode-display_width@1.7.0.rbi → unicode-display_width@2.0.0.rbi} +1 -1
- data/sorbet/rbi/gems/{websocket-driver@0.7.1.rbi → websocket-driver@0.7.3.rbi} +29 -29
- data/sorbet/rbi/gems/{websocket-extensions@0.1.4.rbi → websocket-extensions@0.1.5.rbi} +2 -2
- data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +177 -0
- data/sorbet/tapioca/require.rb +1 -0
- metadata +78 -61
- data/lib/packwerk/cache_deprecated_references.rb +0 -47
- data/lib/packwerk/checking_deprecated_references.rb +0 -40
- data/lib/packwerk/commands/detect_stale_violations_command.rb +0 -63
- data/lib/packwerk/commands/offense_progress_marker.rb +0 -24
- data/lib/packwerk/detect_stale_deprecated_references.rb +0 -14
- data/lib/packwerk/output_styles.rb +0 -41
- data/lib/packwerk/reference_lister.rb +0 -23
- data/lib/packwerk/updating_deprecated_references.rb +0 -14
- data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +0 -8
- data/sorbet/rbi/gems/marcel@0.3.3.rbi +0 -30
- data/sorbet/rbi/gems/mimemagic@0.3.5.rbi +0 -47
- data/sorbet/rbi/gems/parlour@4.0.1.rbi +0 -561
- data/sorbet/rbi/gems/spoom@1.0.4.rbi +0 -418
- data/sorbet/rbi/gems/zeitwerk@2.3.0.rbi +0 -8
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# DO NOT EDIT MANUALLY
|
|
2
2
|
# This is an autogenerated file for types exported from the `rake` gem.
|
|
3
|
-
# Please instead update this file by running `
|
|
3
|
+
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
4
|
|
|
5
5
|
# typed: true
|
|
6
6
|
|
|
@@ -104,7 +104,7 @@ class Rake::Application
|
|
|
104
104
|
def standard_rake_options; end
|
|
105
105
|
def system_dir; end
|
|
106
106
|
def terminal_columns; end
|
|
107
|
-
def terminal_columns=(
|
|
107
|
+
def terminal_columns=(_arg0); end
|
|
108
108
|
def terminal_width; end
|
|
109
109
|
def thread_pool; end
|
|
110
110
|
def top_level; end
|
|
@@ -112,7 +112,7 @@ class Rake::Application
|
|
|
112
112
|
def trace(*strings); end
|
|
113
113
|
def truncate(string, width); end
|
|
114
114
|
def truncate_output?; end
|
|
115
|
-
def tty_output=(
|
|
115
|
+
def tty_output=(_arg0); end
|
|
116
116
|
def tty_output?; end
|
|
117
117
|
def unix?; end
|
|
118
118
|
def windows?; end
|
|
@@ -198,10 +198,6 @@ class Rake::EarlyTime
|
|
|
198
198
|
|
|
199
199
|
def <=>(other); end
|
|
200
200
|
def to_s; end
|
|
201
|
-
|
|
202
|
-
class << self
|
|
203
|
-
def instance; end
|
|
204
|
-
end
|
|
205
201
|
end
|
|
206
202
|
|
|
207
203
|
class Rake::FileCreationTask < ::Rake::FileTask
|
|
@@ -245,6 +241,7 @@ class Rake::FileList
|
|
|
245
241
|
def concat(*args, &block); end
|
|
246
242
|
def count(*args, &block); end
|
|
247
243
|
def cycle(*args, &block); end
|
|
244
|
+
def deconstruct(*args, &block); end
|
|
248
245
|
def delete(*args, &block); end
|
|
249
246
|
def delete_at(*args, &block); end
|
|
250
247
|
def delete_if(*args, &block); end
|
|
@@ -272,6 +269,7 @@ class Rake::FileList
|
|
|
272
269
|
def fill(*args, &block); end
|
|
273
270
|
def filter(*args, &block); end
|
|
274
271
|
def filter!(*args, &block); end
|
|
272
|
+
def filter_map(*args, &block); end
|
|
275
273
|
def find(*args, &block); end
|
|
276
274
|
def find_all(*args, &block); end
|
|
277
275
|
def find_index(*args, &block); end
|
|
@@ -291,6 +289,7 @@ class Rake::FileList
|
|
|
291
289
|
def inject(*args, &block); end
|
|
292
290
|
def insert(*args, &block); end
|
|
293
291
|
def inspect(*args, &block); end
|
|
292
|
+
def intersection(*args, &block); end
|
|
294
293
|
def is_a?(klass); end
|
|
295
294
|
def join(*args, &block); end
|
|
296
295
|
def keep_if(*args, &block); end
|
|
@@ -353,6 +352,7 @@ class Rake::FileList
|
|
|
353
352
|
def sum(*args, &block); end
|
|
354
353
|
def take(*args, &block); end
|
|
355
354
|
def take_while(*args, &block); end
|
|
355
|
+
def tally(*args, &block); end
|
|
356
356
|
def to_a; end
|
|
357
357
|
def to_ary; end
|
|
358
358
|
def to_h(*args, &block); end
|
|
@@ -454,9 +454,9 @@ module Rake::FileUtilsExt
|
|
|
454
454
|
|
|
455
455
|
class << self
|
|
456
456
|
def nowrite_flag; end
|
|
457
|
-
def nowrite_flag=(
|
|
457
|
+
def nowrite_flag=(_arg0); end
|
|
458
458
|
def verbose_flag; end
|
|
459
|
-
def verbose_flag=(
|
|
459
|
+
def verbose_flag=(_arg0); end
|
|
460
460
|
end
|
|
461
461
|
end
|
|
462
462
|
|
|
@@ -498,10 +498,6 @@ class Rake::LateTime
|
|
|
498
498
|
|
|
499
499
|
def <=>(other); end
|
|
500
500
|
def to_s; end
|
|
501
|
-
|
|
502
|
-
class << self
|
|
503
|
-
def instance; end
|
|
504
|
-
end
|
|
505
501
|
end
|
|
506
502
|
|
|
507
503
|
class Rake::LinkedList
|
|
@@ -568,7 +564,7 @@ class Rake::Promise
|
|
|
568
564
|
def initialize(args, &block); end
|
|
569
565
|
|
|
570
566
|
def recorder; end
|
|
571
|
-
def recorder=(
|
|
567
|
+
def recorder=(_arg0); end
|
|
572
568
|
def value; end
|
|
573
569
|
def work; end
|
|
574
570
|
|
|
@@ -622,7 +618,7 @@ class Rake::Task
|
|
|
622
618
|
def all_prerequisite_tasks; end
|
|
623
619
|
def already_invoked; end
|
|
624
620
|
def application; end
|
|
625
|
-
def application=(
|
|
621
|
+
def application=(_arg0); end
|
|
626
622
|
def arg_description; end
|
|
627
623
|
def arg_names; end
|
|
628
624
|
def clear; end
|
|
@@ -653,7 +649,7 @@ class Rake::Task
|
|
|
653
649
|
def set_arg_names(args); end
|
|
654
650
|
def source; end
|
|
655
651
|
def sources; end
|
|
656
|
-
def sources=(
|
|
652
|
+
def sources=(_arg0); end
|
|
657
653
|
def timestamp; end
|
|
658
654
|
def to_s; end
|
|
659
655
|
def |(deps); end
|
|
@@ -727,7 +723,7 @@ module Rake::TaskManager
|
|
|
727
723
|
def in_namespace(name); end
|
|
728
724
|
def intern(task_class, task_name); end
|
|
729
725
|
def last_description; end
|
|
730
|
-
def last_description=(
|
|
726
|
+
def last_description=(_arg0); end
|
|
731
727
|
def lookup(task_name, initial_scope = T.unsafe(nil)); end
|
|
732
728
|
def resolve_args(args); end
|
|
733
729
|
def synthesize_file_task(task_name); end
|
|
@@ -749,7 +745,7 @@ module Rake::TaskManager
|
|
|
749
745
|
|
|
750
746
|
class << self
|
|
751
747
|
def record_task_metadata; end
|
|
752
|
-
def record_task_metadata=(
|
|
748
|
+
def record_task_metadata=(_arg0); end
|
|
753
749
|
end
|
|
754
750
|
end
|
|
755
751
|
|
|
@@ -821,10 +817,10 @@ RakeFileUtils = Rake::FileUtilsExt
|
|
|
821
817
|
|
|
822
818
|
class String
|
|
823
819
|
include(::Comparable)
|
|
824
|
-
include(::Colorize::InstanceMethods)
|
|
825
820
|
include(::JSON::Ext::Generator::GeneratorMethods::String)
|
|
826
|
-
|
|
821
|
+
include(::Colorize::InstanceMethods)
|
|
827
822
|
extend(::JSON::Ext::Generator::GeneratorMethods::String::Extend)
|
|
823
|
+
extend(::Colorize::ClassMethods)
|
|
828
824
|
|
|
829
825
|
def ext(newext = T.unsafe(nil)); end
|
|
830
826
|
def pathmap(spec = T.unsafe(nil), &block); end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# DO NOT EDIT MANUALLY
|
|
2
|
-
# This is an autogenerated file for types exported from the `
|
|
3
|
-
# Please instead update this file by running `
|
|
2
|
+
# This is an autogenerated file for types exported from the `regexp_parser` gem.
|
|
3
|
+
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
4
|
|
|
5
5
|
# typed: true
|
|
6
6
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# DO NOT EDIT MANUALLY
|
|
2
|
+
# This is an autogenerated file for types exported from the `rubocop-ast` gem.
|
|
3
|
+
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
|
+
|
|
5
|
+
# typed: true
|
|
6
|
+
|
|
7
|
+
# THIS IS AN EMPTY RBI FILE.
|
|
8
|
+
# see https://github.com/Shopify/tapioca/blob/master/README.md#manual-gem-requires
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# DO NOT EDIT MANUALLY
|
|
2
2
|
# This is an autogenerated file for types exported from the `rubocop-performance` gem.
|
|
3
|
-
# Please instead update this file by running `
|
|
3
|
+
# Please instead update this file by running `bin/tapioca sync`.
|
|
4
4
|
|
|
5
5
|
# typed: true
|
|
6
6
|
|