packwerk 3.0.0 → 3.2.2

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.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -2
  3. data/exe/packwerk +4 -1
  4. data/lib/packwerk/application_validator.rb +3 -0
  5. data/lib/packwerk/association_inspector.rb +17 -4
  6. data/lib/packwerk/checker.rb +16 -7
  7. data/lib/packwerk/cli.rb +14 -177
  8. data/lib/packwerk/commands/base_command.rb +69 -0
  9. data/lib/packwerk/commands/check_command.rb +62 -0
  10. data/lib/packwerk/commands/help_command.rb +33 -0
  11. data/lib/packwerk/commands/init_command.rb +42 -0
  12. data/lib/packwerk/commands/lazy_loaded_entry.rb +37 -0
  13. data/lib/packwerk/commands/update_todo_command.rb +60 -0
  14. data/lib/packwerk/commands/uses_parse_run.rb +92 -0
  15. data/lib/packwerk/commands/validate_command.rb +46 -0
  16. data/lib/packwerk/commands/version_command.rb +18 -0
  17. data/lib/packwerk/commands.rb +54 -0
  18. data/lib/packwerk/configuration.rb +8 -1
  19. data/lib/packwerk/const_node_inspector.rb +2 -2
  20. data/lib/packwerk/constant_name_inspector.rb +2 -2
  21. data/lib/packwerk/file_processor.rb +12 -1
  22. data/lib/packwerk/formatters/default_offenses_formatter.rb +3 -3
  23. data/lib/packwerk/formatters/progress_formatter.rb +11 -0
  24. data/lib/packwerk/generators/templates/package.yml +2 -2
  25. data/lib/packwerk/generators/templates/packwerk.yml.erb +1 -1
  26. data/lib/packwerk/offense_collection.rb +32 -12
  27. data/lib/packwerk/offenses_formatter.rb +14 -5
  28. data/lib/packwerk/package.rb +1 -1
  29. data/lib/packwerk/package_todo.rb +86 -69
  30. data/lib/packwerk/parse_run.rb +42 -82
  31. data/lib/packwerk/parsers/factory.rb +3 -3
  32. data/lib/packwerk/parsers/ruby.rb +9 -2
  33. data/lib/packwerk/reference_checking/checkers/dependency_checker.rb +3 -3
  34. data/lib/packwerk/reference_extractor.rb +29 -1
  35. data/lib/packwerk/reference_offense.rb +1 -1
  36. data/lib/packwerk/run_context.rb +15 -4
  37. data/lib/packwerk/spring_command.rb +0 -2
  38. data/lib/packwerk/validator.rb +19 -5
  39. data/lib/packwerk/version.rb +1 -1
  40. data/lib/packwerk.rb +5 -28
  41. data/sorbet/config +1 -0
  42. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +3280 -3450
  43. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +2322 -1782
  44. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +2654 -3268
  45. data/sorbet/rbi/gems/ast@2.4.2.rbi +535 -6
  46. data/sorbet/rbi/gems/better_html@2.0.1.rbi +529 -0
  47. data/sorbet/rbi/gems/builder@3.2.4.rbi +4 -4
  48. data/sorbet/rbi/gems/byebug@11.1.3.rbi +32 -4
  49. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +1750 -1840
  50. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +15 -15
  51. data/sorbet/rbi/gems/crass@1.0.6.rbi +489 -5
  52. data/sorbet/rbi/gems/erubi@1.11.0.rbi +24 -21
  53. data/sorbet/rbi/gems/i18n@1.12.0.rbi +395 -395
  54. data/sorbet/rbi/gems/json@2.6.2.rbi +70 -77
  55. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +1 -1
  56. data/sorbet/rbi/gems/loofah@2.18.0.rbi +134 -134
  57. data/sorbet/rbi/gems/m@1.6.0.rbi +60 -60
  58. data/sorbet/rbi/gems/method_source@1.1.0.rbi +303 -0
  59. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +22 -28
  60. data/sorbet/rbi/gems/minitest@5.16.2.rbi +384 -396
  61. data/sorbet/rbi/gems/mocha@1.14.0.rbi +589 -589
  62. data/sorbet/rbi/gems/netrc@0.11.0.rbi +37 -32
  63. data/sorbet/rbi/gems/{nokogiri@1.13.8.rbi → nokogiri@1.15.3.rbi} +1869 -1030
  64. data/sorbet/rbi/gems/{parallel@1.22.1.rbi → parallel@1.24.0.rbi} +85 -82
  65. data/sorbet/rbi/gems/parser@3.3.1.0.rbi +7320 -0
  66. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +1 -1
  67. data/sorbet/rbi/gems/prism@0.27.0.rbi +36983 -0
  68. data/sorbet/rbi/gems/{racc@1.6.0.rbi → racc@1.7.1.rbi} +42 -33
  69. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +148 -338
  70. data/sorbet/rbi/gems/rack@2.2.4.rbi +1079 -1130
  71. data/sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi +354 -22
  72. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +113 -259
  73. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +642 -638
  74. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +109 -99
  75. data/sorbet/rbi/gems/rake@13.0.6.rbi +714 -599
  76. data/sorbet/rbi/gems/{rbi@0.0.15.rbi → rbi@0.1.12.rbi} +865 -801
  77. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +853 -870
  78. data/sorbet/rbi/gems/rexml@3.2.5.rbi +480 -477
  79. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +1621 -1622
  80. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +507 -526
  81. data/sorbet/rbi/gems/rubocop-shopify@2.9.0.rbi +1 -1
  82. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +186 -203
  83. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +8126 -8367
  84. data/sorbet/rbi/gems/{ruby-lsp@0.2.1.rbi → ruby-lsp@0.2.3.rbi} +2 -2
  85. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +1235 -4
  86. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +90 -90
  87. data/sorbet/rbi/gems/spoom@1.3.2.rbi +4420 -0
  88. data/sorbet/rbi/gems/spring@4.0.0.rbi +104 -104
  89. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +1 -1
  90. data/sorbet/rbi/gems/{tapioca@0.9.2.rbi → tapioca@0.13.3.rbi} +1596 -1253
  91. data/sorbet/rbi/gems/{thor@1.2.1.rbi → thor@1.3.1.rbi} +1047 -652
  92. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +531 -513
  93. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +13 -13
  94. data/sorbet/rbi/gems/{yard-sorbet@0.6.1.rbi → yard-sorbet@0.8.1.rbi} +132 -92
  95. data/sorbet/rbi/gems/{yard@0.9.28.rbi → yard@0.9.36.rbi} +3158 -3067
  96. data/sorbet/rbi/gems/zeitwerk@2.6.4.rbi +149 -145
  97. metadata +36 -84
  98. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -27
  99. data/.github/pull_request_template.md +0 -28
  100. data/.github/workflows/ci.yml +0 -65
  101. data/.github/workflows/cla.yml +0 -22
  102. data/.gitignore +0 -13
  103. data/.rubocop.yml +0 -75
  104. data/.ruby-version +0 -1
  105. data/CODEOWNERS +0 -1
  106. data/CODE_OF_CONDUCT.md +0 -76
  107. data/CONTRIBUTING.md +0 -17
  108. data/Gemfile +0 -27
  109. data/Gemfile.lock +0 -201
  110. data/RESOLVING_VIOLATIONS.md +0 -81
  111. data/Rakefile +0 -13
  112. data/TROUBLESHOOT.md +0 -45
  113. data/UPGRADING.md +0 -54
  114. data/USAGE.md +0 -367
  115. data/bin/console +0 -15
  116. data/bin/m +0 -29
  117. data/bin/rake +0 -29
  118. data/bin/rubocop +0 -29
  119. data/bin/setup +0 -8
  120. data/bin/srb +0 -29
  121. data/bin/tapioca +0 -29
  122. data/dev.yml +0 -32
  123. data/docs/cohesion.png +0 -0
  124. data/gemfiles/Gemfile-rails-6-0 +0 -22
  125. data/gemfiles/Gemfile-rails-6-1 +0 -22
  126. data/lib/packwerk/cli/result.rb +0 -11
  127. data/packwerk.gemspec +0 -58
  128. data/shipit.rubygems.yml +0 -5
  129. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +0 -2754
  130. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +0 -1496
  131. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +0 -2362
  132. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +0 -1569
  133. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +0 -2553
  134. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +0 -5999
  135. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +0 -37832
  136. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +0 -2321
  137. data/sorbet/rbi/gems/better_html@1.0.16.rbi +0 -317
  138. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -8
  139. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +0 -1079
  140. data/sorbet/rbi/gems/digest@3.1.0.rbi +0 -189
  141. data/sorbet/rbi/gems/globalid@1.0.0.rbi +0 -572
  142. data/sorbet/rbi/gems/mail@2.7.1.rbi +0 -2490
  143. data/sorbet/rbi/gems/marcel@1.0.2.rbi +0 -220
  144. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -76
  145. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +0 -170
  146. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +0 -2147
  147. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +0 -926
  148. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +0 -11
  149. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +0 -1108
  150. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +0 -292
  151. data/sorbet/rbi/gems/parser@3.1.2.1.rbi +0 -9029
  152. data/sorbet/rbi/gems/pry@0.14.1.rbi +0 -8
  153. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +0 -8
  154. data/sorbet/rbi/gems/spoom@1.1.11.rbi +0 -2181
  155. data/sorbet/rbi/gems/strscan@3.0.4.rbi +0 -8
  156. data/sorbet/rbi/gems/timeout@0.3.0.rbi +0 -142
  157. data/sorbet/rbi/gems/unparser@0.6.5.rbi +0 -4529
  158. data/sorbet/rbi/gems/webrick@1.7.0.rbi +0 -2582
  159. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +0 -993
  160. data/sorbet/rbi/gems/websocket-extensions@0.1.5.rbi +0 -71
@@ -4,71 +4,71 @@
4
4
  # This is an autogenerated file for types exported from the `netrc` gem.
5
5
  # Please instead update this file by running `bin/tapioca gem netrc`.
6
6
 
7
- # source://netrc-0.11.0/lib/netrc.rb:3
7
+ # source://netrc//lib/netrc.rb#3
8
8
  class Netrc
9
9
  # @return [Netrc] a new instance of Netrc
10
10
  #
11
- # source://netrc-0.11.0/lib/netrc.rb:166
11
+ # source://netrc//lib/netrc.rb#166
12
12
  def initialize(path, data); end
13
13
 
14
- # source://netrc-0.11.0/lib/netrc.rb:180
14
+ # source://netrc//lib/netrc.rb#180
15
15
  def [](k); end
16
16
 
17
- # source://netrc-0.11.0/lib/netrc.rb:188
17
+ # source://netrc//lib/netrc.rb#188
18
18
  def []=(k, info); end
19
19
 
20
- # source://netrc-0.11.0/lib/netrc.rb:200
20
+ # source://netrc//lib/netrc.rb#200
21
21
  def delete(key); end
22
22
 
23
- # source://netrc-0.11.0/lib/netrc.rb:211
23
+ # source://netrc//lib/netrc.rb#211
24
24
  def each(&block); end
25
25
 
26
- # source://netrc-0.11.0/lib/netrc.rb:196
26
+ # source://netrc//lib/netrc.rb#196
27
27
  def length; end
28
28
 
29
- # source://netrc-0.11.0/lib/netrc.rb:215
29
+ # source://netrc//lib/netrc.rb#215
30
30
  def new_item(m, l, p); end
31
31
 
32
32
  # Returns the value of attribute new_item_prefix.
33
33
  #
34
- # source://netrc-0.11.0/lib/netrc.rb:178
34
+ # source://netrc//lib/netrc.rb#178
35
35
  def new_item_prefix; end
36
36
 
37
37
  # Sets the attribute new_item_prefix
38
38
  #
39
39
  # @param value the value to set the attribute new_item_prefix to.
40
40
  #
41
- # source://netrc-0.11.0/lib/netrc.rb:178
41
+ # source://netrc//lib/netrc.rb#178
42
42
  def new_item_prefix=(_arg0); end
43
43
 
44
- # source://netrc-0.11.0/lib/netrc.rb:219
44
+ # source://netrc//lib/netrc.rb#219
45
45
  def save; end
46
46
 
47
- # source://netrc-0.11.0/lib/netrc.rb:233
47
+ # source://netrc//lib/netrc.rb#233
48
48
  def unparse; end
49
49
 
50
50
  class << self
51
- # source://netrc-0.11.0/lib/netrc.rb:42
51
+ # source://netrc//lib/netrc.rb#42
52
52
  def check_permissions(path); end
53
53
 
54
- # source://netrc-0.11.0/lib/netrc.rb:33
54
+ # source://netrc//lib/netrc.rb#33
55
55
  def config; end
56
56
 
57
57
  # @yield [self.config]
58
58
  #
59
- # source://netrc-0.11.0/lib/netrc.rb:37
59
+ # source://netrc//lib/netrc.rb#37
60
60
  def configure; end
61
61
 
62
- # source://netrc-0.11.0/lib/netrc.rb:10
62
+ # source://netrc//lib/netrc.rb#10
63
63
  def default_path; end
64
64
 
65
- # source://netrc-0.11.0/lib/netrc.rb:14
65
+ # source://netrc//lib/netrc.rb#14
66
66
  def home_path; end
67
67
 
68
- # source://netrc-0.11.0/lib/netrc.rb:85
68
+ # source://netrc//lib/netrc.rb#85
69
69
  def lex(lines); end
70
70
 
71
- # source://netrc-0.11.0/lib/netrc.rb:29
71
+ # source://netrc//lib/netrc.rb#29
72
72
  def netrc_filename; end
73
73
 
74
74
  # Returns two values, a header and a list of items.
@@ -83,23 +83,26 @@ class Netrc
83
83
  # This lets us change individual fields, then write out the file
84
84
  # with all its original formatting.
85
85
  #
86
- # source://netrc-0.11.0/lib/netrc.rb:129
86
+ # source://netrc//lib/netrc.rb#129
87
87
  def parse(ts); end
88
88
 
89
89
  # Reads path and parses it as a .netrc file. If path doesn't
90
90
  # exist, returns an empty object. Decrypt paths ending in .gpg.
91
91
  #
92
- # source://netrc-0.11.0/lib/netrc.rb:51
92
+ # source://netrc//lib/netrc.rb#51
93
93
  def read(path = T.unsafe(nil)); end
94
94
 
95
95
  # @return [Boolean]
96
96
  #
97
- # source://netrc-0.11.0/lib/netrc.rb:112
97
+ # source://netrc//lib/netrc.rb#112
98
98
  def skip?(s); end
99
99
  end
100
100
  end
101
101
 
102
- # source://netrc-0.11.0/lib/netrc.rb:244
102
+ # source://netrc//lib/netrc.rb#8
103
+ Netrc::CYGWIN = T.let(T.unsafe(nil), T.untyped)
104
+
105
+ # source://netrc//lib/netrc.rb#244
103
106
  class Netrc::Entry < ::Struct
104
107
  # Returns the value of attribute login
105
108
  #
@@ -110,8 +113,6 @@ class Netrc::Entry < ::Struct
110
113
  #
111
114
  # @param value [Object] the value to set the attribute login to.
112
115
  # @return [Object] the newly set value
113
- #
114
- # source://netrc-0.11.0/lib/netrc.rb:244
115
116
  def login=(_); end
116
117
 
117
118
  # Returns the value of attribute password
@@ -123,8 +124,6 @@ class Netrc::Entry < ::Struct
123
124
  #
124
125
  # @param value [Object] the value to set the attribute password to.
125
126
  # @return [Object] the newly set value
126
- #
127
- # source://netrc-0.11.0/lib/netrc.rb:244
128
127
  def password=(_); end
129
128
 
130
129
  def to_ary; end
@@ -132,22 +131,28 @@ class Netrc::Entry < ::Struct
132
131
  class << self
133
132
  def [](*_arg0); end
134
133
  def inspect; end
134
+ def keyword_init?; end
135
135
  def members; end
136
136
  def new(*_arg0); end
137
137
  end
138
138
  end
139
139
 
140
- # source://netrc-0.11.0/lib/netrc.rb:250
140
+ # source://netrc//lib/netrc.rb#250
141
141
  class Netrc::Error < ::StandardError; end
142
142
 
143
- # source://netrc-0.11.0/lib/netrc.rb:68
143
+ # source://netrc//lib/netrc.rb#68
144
144
  class Netrc::TokenArray < ::Array
145
- # source://netrc-0.11.0/lib/netrc.rb:76
145
+ # source://netrc//lib/netrc.rb#76
146
146
  def readto; end
147
147
 
148
- # source://netrc-0.11.0/lib/netrc.rb:69
148
+ # source://netrc//lib/netrc.rb#69
149
149
  def take; end
150
150
  end
151
151
 
152
- # source://netrc-0.11.0/lib/netrc.rb:4
152
+ # source://netrc//lib/netrc.rb#4
153
153
  Netrc::VERSION = T.let(T.unsafe(nil), String)
154
+
155
+ # see http://stackoverflow.com/questions/4871309/what-is-the-correct-way-to-detect-if-ruby-is-running-on-windows
156
+ #
157
+ # source://netrc//lib/netrc.rb#7
158
+ Netrc::WINDOWS = T.let(T.unsafe(nil), T.untyped)