packwerk 3.2.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 (135) hide show
  1. checksums.yaml +4 -4
  2. data/lib/packwerk/association_inspector.rb +17 -4
  3. data/lib/packwerk/checker.rb +3 -3
  4. data/lib/packwerk/configuration.rb +4 -0
  5. data/lib/packwerk/const_node_inspector.rb +2 -2
  6. data/lib/packwerk/constant_name_inspector.rb +2 -2
  7. data/lib/packwerk/offenses_formatter.rb +3 -3
  8. data/lib/packwerk/package.rb +1 -1
  9. data/lib/packwerk/package_todo.rb +1 -4
  10. data/lib/packwerk/parsers/factory.rb +3 -3
  11. data/lib/packwerk/parsers/ruby.rb +7 -0
  12. data/lib/packwerk/reference_extractor.rb +29 -1
  13. data/lib/packwerk/reference_offense.rb +1 -1
  14. data/lib/packwerk/run_context.rb +15 -4
  15. data/lib/packwerk/validator.rb +3 -3
  16. data/lib/packwerk/version.rb +1 -1
  17. data/lib/packwerk.rb +1 -0
  18. data/sorbet/config +1 -0
  19. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +3280 -3450
  20. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +2322 -1782
  21. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +2654 -3268
  22. data/sorbet/rbi/gems/ast@2.4.2.rbi +535 -6
  23. data/sorbet/rbi/gems/better_html@2.0.1.rbi +529 -0
  24. data/sorbet/rbi/gems/builder@3.2.4.rbi +4 -4
  25. data/sorbet/rbi/gems/byebug@11.1.3.rbi +32 -4
  26. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +1750 -1840
  27. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +15 -15
  28. data/sorbet/rbi/gems/crass@1.0.6.rbi +489 -5
  29. data/sorbet/rbi/gems/erubi@1.11.0.rbi +24 -21
  30. data/sorbet/rbi/gems/i18n@1.12.0.rbi +395 -395
  31. data/sorbet/rbi/gems/json@2.6.2.rbi +70 -77
  32. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +1 -1
  33. data/sorbet/rbi/gems/loofah@2.18.0.rbi +134 -134
  34. data/sorbet/rbi/gems/m@1.6.0.rbi +60 -60
  35. data/sorbet/rbi/gems/method_source@1.1.0.rbi +303 -0
  36. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +22 -28
  37. data/sorbet/rbi/gems/minitest@5.16.2.rbi +384 -396
  38. data/sorbet/rbi/gems/mocha@1.14.0.rbi +589 -589
  39. data/sorbet/rbi/gems/netrc@0.11.0.rbi +37 -32
  40. data/sorbet/rbi/gems/nokogiri@1.15.3.rbi +962 -946
  41. data/sorbet/rbi/gems/{parallel@1.22.1.rbi → parallel@1.24.0.rbi} +85 -82
  42. data/sorbet/rbi/gems/{parser@3.2.2.0.rbi → parser@3.3.1.0.rbi} +1679 -1609
  43. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +1 -1
  44. data/sorbet/rbi/gems/{prism@0.24.0.rbi → prism@0.27.0.rbi} +13473 -6472
  45. data/sorbet/rbi/gems/{racc@1.6.0.rbi → racc@1.7.1.rbi} +42 -33
  46. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +148 -338
  47. data/sorbet/rbi/gems/rack@2.2.4.rbi +1079 -1130
  48. data/sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi +354 -22
  49. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +113 -259
  50. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +642 -638
  51. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +109 -99
  52. data/sorbet/rbi/gems/rake@13.0.6.rbi +714 -599
  53. data/sorbet/rbi/gems/{rbi@0.0.15.rbi → rbi@0.1.12.rbi} +865 -801
  54. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +853 -870
  55. data/sorbet/rbi/gems/rexml@3.2.5.rbi +480 -477
  56. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +1621 -1622
  57. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +507 -526
  58. data/sorbet/rbi/gems/rubocop-shopify@2.9.0.rbi +1 -1
  59. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +186 -203
  60. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +8126 -8367
  61. data/sorbet/rbi/gems/{ruby-lsp@0.2.1.rbi → ruby-lsp@0.2.3.rbi} +2 -2
  62. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +1235 -4
  63. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +90 -90
  64. data/sorbet/rbi/gems/spoom@1.3.2.rbi +4420 -0
  65. data/sorbet/rbi/gems/spring@4.0.0.rbi +104 -104
  66. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +1 -1
  67. data/sorbet/rbi/gems/{tapioca@0.9.2.rbi → tapioca@0.13.3.rbi} +1596 -1253
  68. data/sorbet/rbi/gems/{thor@1.2.1.rbi → thor@1.3.1.rbi} +1047 -652
  69. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +531 -513
  70. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +13 -13
  71. data/sorbet/rbi/gems/{yard-sorbet@0.6.1.rbi → yard-sorbet@0.8.1.rbi} +132 -92
  72. data/sorbet/rbi/gems/{yard@0.9.28.rbi → yard@0.9.36.rbi} +3158 -3067
  73. data/sorbet/rbi/gems/zeitwerk@2.6.4.rbi +149 -145
  74. metadata +22 -94
  75. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -27
  76. data/.github/pull_request_template.md +0 -28
  77. data/.github/workflows/ci.yml +0 -93
  78. data/.github/workflows/cla.yml +0 -22
  79. data/.gitignore +0 -13
  80. data/.rubocop.yml +0 -75
  81. data/.ruby-version +0 -1
  82. data/CODEOWNERS +0 -1
  83. data/CODE_OF_CONDUCT.md +0 -76
  84. data/CONTRIBUTING.md +0 -17
  85. data/Gemfile +0 -27
  86. data/Gemfile.lock +0 -206
  87. data/RESOLVING_VIOLATIONS.md +0 -76
  88. data/Rakefile +0 -22
  89. data/TROUBLESHOOT.md +0 -44
  90. data/UPGRADING.md +0 -66
  91. data/USAGE.md +0 -364
  92. data/bin/console +0 -15
  93. data/bin/m +0 -29
  94. data/bin/rake +0 -29
  95. data/bin/rubocop +0 -29
  96. data/bin/setup +0 -8
  97. data/bin/srb +0 -29
  98. data/bin/tapioca +0 -29
  99. data/dev.yml +0 -32
  100. data/docs/cohesion.png +0 -0
  101. data/gemfiles/Gemfile-rails-6-0 +0 -22
  102. data/gemfiles/Gemfile-rails-6-1 +0 -22
  103. data/packwerk.gemspec +0 -59
  104. data/shipit.rubygems.yml +0 -5
  105. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +0 -2754
  106. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +0 -1496
  107. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +0 -2362
  108. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +0 -1569
  109. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +0 -2553
  110. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +0 -5999
  111. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +0 -37832
  112. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +0 -2321
  113. data/sorbet/rbi/gems/better_html@1.0.16.rbi +0 -317
  114. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -8
  115. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +0 -1079
  116. data/sorbet/rbi/gems/digest@3.1.0.rbi +0 -189
  117. data/sorbet/rbi/gems/globalid@1.0.0.rbi +0 -572
  118. data/sorbet/rbi/gems/mail@2.7.1.rbi +0 -2490
  119. data/sorbet/rbi/gems/marcel@1.0.2.rbi +0 -220
  120. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -76
  121. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +0 -170
  122. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +0 -2147
  123. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +0 -926
  124. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +0 -11
  125. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +0 -1108
  126. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +0 -292
  127. data/sorbet/rbi/gems/pry@0.14.1.rbi +0 -8
  128. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +0 -8
  129. data/sorbet/rbi/gems/spoom@1.1.11.rbi +0 -2181
  130. data/sorbet/rbi/gems/strscan@3.0.4.rbi +0 -8
  131. data/sorbet/rbi/gems/timeout@0.3.0.rbi +0 -142
  132. data/sorbet/rbi/gems/unparser@0.6.5.rbi +0 -4529
  133. data/sorbet/rbi/gems/webrick@1.7.0.rbi +0 -2582
  134. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +0 -993
  135. data/sorbet/rbi/gems/websocket-extensions@0.1.5.rbi +0 -71
@@ -1,292 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `nio4r` gem.
5
- # Please instead update this file by running `bin/tapioca gem nio4r`.
6
-
7
- # New I/O for Ruby
8
- #
9
- # source://nio4r-2.5.8/lib/nio/version.rb:3
10
- module NIO
11
- class << self
12
- # NIO implementation, one of the following (as a string):
13
- # * select: in pure Ruby using Kernel.select
14
- # * libev: as a C extension using libev
15
- # * java: using Java NIO
16
- #
17
- # source://nio4r-2.5.8/lib/nio.rb:12
18
- def engine; end
19
-
20
- # @return [Boolean]
21
- #
22
- # source://nio4r-2.5.8/lib/nio.rb:16
23
- def pure?(env = T.unsafe(nil)); end
24
- end
25
- end
26
-
27
- # Efficient byte buffers for performant I/O operations
28
- class NIO::ByteBuffer
29
- include ::Enumerable
30
-
31
- # Create a new ByteBuffer, either with a specified capacity or populating
32
- # it from a given string
33
- #
34
- # @param capacity [Integer] size of buffer in bytes
35
- # @raise [TypeError]
36
- # @return [NIO::ByteBuffer]
37
- def initialize(_arg0); end
38
-
39
- # Add a String to the buffer
40
- #
41
- # @param str [#to_str] data to add to the buffer
42
- # @raise [TypeError] given a non-string type
43
- # @raise [NIO::ByteBuffer::OverflowError] buffer is full
44
- # @return [self]
45
- def <<(_arg0); end
46
-
47
- # Obtain the byte at a given index in the buffer as an Integer
48
- #
49
- # @raise [ArgumentError] index is invalid (either negative or larger than limit)
50
- # @return [Integer] byte at the given index
51
- def [](_arg0); end
52
-
53
- # Returns the value of attribute capacity.
54
- def capacity; end
55
-
56
- # Clear the buffer, resetting it to the default state
57
- def clear; end
58
-
59
- # Move data between the position and limit to the beginning of the buffer
60
- # Sets the position to the end of the moved data, and the limit to the capacity
61
- def compact; end
62
-
63
- # Iterate over the bytes in the buffer (as Integers)
64
- #
65
- # @return [self]
66
- def each; end
67
-
68
- # Set the buffer's current position as the limit and set the position to 0
69
- def flip; end
70
-
71
- # Does the ByteBuffer have any space remaining?
72
- #
73
- # @return [true, false]
74
- def full?; end
75
-
76
- # Obtain the requested number of bytes from the buffer, advancing the position.
77
- # If no length is given, all remaining bytes are consumed.
78
- #
79
- # @raise [NIO::ByteBuffer::UnderflowError] not enough data remaining in buffer
80
- # @return [String] bytes read from buffer
81
- def get(*_arg0); end
82
-
83
- # Inspect the state of the buffer
84
- #
85
- # @return [String] string describing the state of the buffer
86
- def inspect; end
87
-
88
- # Returns the value of attribute limit.
89
- def limit; end
90
-
91
- # Set the limit to the given value. New limit must be less than capacity.
92
- # Preserves limit and mark if they're less than the new limit, otherwise
93
- # sets position to the new limit and clears the mark.
94
- #
95
- # @param new_limit [Integer] position in the buffer
96
- # @raise [ArgumentError] new limit was invalid
97
- def limit=(_arg0); end
98
-
99
- # Mark a position to return to using the `#reset` method
100
- def mark; end
101
-
102
- # Returns the value of attribute position.
103
- def position; end
104
-
105
- # Set the position to the given value. New position must be less than limit.
106
- # Preserves mark if it's less than the new position, otherwise clears it.
107
- #
108
- # @param new_position [Integer] position in the buffer
109
- # @raise [ArgumentError] new position was invalid
110
- def position=(_arg0); end
111
-
112
- # Perform a non-blocking read from the given IO object into the buffer
113
- # Reads as much data as is immediately available and returns
114
- #
115
- # @param Ruby [IO] IO object to read from
116
- # @raise [OverflowError]
117
- # @return [Integer] number of bytes read (0 if none were available)
118
- def read_from(_arg0); end
119
-
120
- # Number of bytes remaining in the buffer before the limit
121
- #
122
- # @return [Integer] number of bytes remaining
123
- def remaining; end
124
-
125
- # Reset position to the previously marked location
126
- #
127
- # @raise [NIO::ByteBuffer::MarkUnsetError] mark has not been set (call `#mark` first)
128
- def reset; end
129
-
130
- # Set the buffer's current position to 0, leaving the limit unchanged
131
- def rewind; end
132
-
133
- def size; end
134
-
135
- # Perform a non-blocking write of the buffer's contents to the given I/O object
136
- # Writes as much data as is immediately possible and returns
137
- #
138
- # @param Ruby [IO] IO object to write to
139
- # @raise [UnderflowError]
140
- # @return [Integer] number of bytes written (0 if the write would block)
141
- def write_to(_arg0); end
142
- end
143
-
144
- # Mark has not been set
145
- class NIO::ByteBuffer::MarkUnsetError < ::IOError; end
146
-
147
- # Insufficient capacity in buffer
148
- class NIO::ByteBuffer::OverflowError < ::IOError; end
149
-
150
- # Not enough data remaining in buffer
151
- class NIO::ByteBuffer::UnderflowError < ::IOError; end
152
-
153
- # source://nio4r-2.5.8/lib/nio.rb:50
154
- NIO::ENGINE = T.let(T.unsafe(nil), String)
155
-
156
- # Monitors watch IO objects for specific events
157
- class NIO::Monitor
158
- # @return [Monitor] a new instance of Monitor
159
- def initialize(_arg0, _arg1, _arg2); end
160
-
161
- # Add new interests to the existing interest set
162
- #
163
- # @param interests [:r, :w, :rw] new I/O interests (read/write/readwrite)
164
- # @return [self]
165
- def add_interest(_arg0); end
166
-
167
- # Deactivate this monitor
168
- def close(*_arg0); end
169
-
170
- # Is this monitor closed?
171
- #
172
- # @return [Boolean]
173
- def closed?; end
174
-
175
- # Returns the value of attribute interests.
176
- def interests; end
177
-
178
- # Replace the existing interest set with a new one
179
- #
180
- # @param interests [:r, :w, :rw, nil] I/O readiness we're interested in (read/write/readwrite)
181
- # @raise [EOFError]
182
- # @return [Symbol] new interests
183
- def interests=(_arg0); end
184
-
185
- # Returns the value of attribute io.
186
- def io; end
187
-
188
- # Is the IO object readable?
189
- #
190
- # @return [Boolean]
191
- def readable?; end
192
-
193
- # Returns the value of attribute readiness.
194
- def readiness; end
195
-
196
- # Remove interests from the existing interest set
197
- #
198
- # @param interests [:r, :w, :rw] I/O interests to remove (read/write/readwrite)
199
- # @return [self]
200
- def remove_interest(_arg0); end
201
-
202
- # Returns the value of attribute selector.
203
- def selector; end
204
-
205
- # Returns the value of attribute value.
206
- def value; end
207
-
208
- # Sets the attribute value
209
- #
210
- # @param value the value to set the attribute value to.
211
- def value=(_arg0); end
212
-
213
- # Is the IO object writable?
214
- #
215
- # @return [Boolean]
216
- def writable?; end
217
-
218
- # Is the IO object writable?
219
- #
220
- # @return [Boolean]
221
- def writeable?; end
222
- end
223
-
224
- # Selectors monitor IO objects for events of interest
225
- class NIO::Selector
226
- # Create a new NIO::Selector
227
- #
228
- # @raise [ArgumentError]
229
- # @return [Selector] a new instance of Selector
230
- def initialize(*_arg0); end
231
-
232
- # Return a symbol representing the backend I/O multiplexing mechanism used.
233
- # Supported backends are:
234
- # * :ruby - pure Ruby (i.e IO.select)
235
- # * :java - Java NIO on JRuby
236
- # * :epoll - libev w\ Linux epoll
237
- # * :poll - libev w\ POSIX poll
238
- # * :kqueue - libev w\ BSD kqueue
239
- # * :select - libev w\ SysV select
240
- # * :port - libev w\ I/O completion ports
241
- # * :linuxaio - libev w\ Linux AIO io_submit (experimental)
242
- # * :io_uring - libev w\ Linux io_uring (experimental)
243
- # * :unknown - libev w\ unknown backend
244
- def backend; end
245
-
246
- # Close this selector and free its resources
247
- def close; end
248
-
249
- # Is this selector closed?
250
- #
251
- # @return [Boolean]
252
- def closed?; end
253
-
254
- # Deregister the given IO object from the selector
255
- def deregister(_arg0); end
256
-
257
- # @return [Boolean]
258
- def empty?; end
259
-
260
- # Register interest in an IO object with the selector for the given types
261
- # of events. Valid event types for interest are:
262
- # * :r - is the IO readable?
263
- # * :w - is the IO writeable?
264
- # * :rw - is the IO either readable or writeable?
265
- def register(_arg0, _arg1); end
266
-
267
- # Is the given IO object registered with the selector?
268
- #
269
- # @return [Boolean]
270
- def registered?(_arg0); end
271
-
272
- # Select which monitors are ready
273
- def select(*_arg0); end
274
-
275
- # Wake up a thread that's in the middle of selecting on this selector, if
276
- # any such thread exists.
277
- #
278
- # Invoking this method more than once between two successive select calls
279
- # has the same effect as invoking it just once. In other words, it provides
280
- # level-triggered behavior.
281
- def wakeup; end
282
-
283
- class << self
284
- # Return supported backends as symbols
285
- #
286
- # See `#backend` method definition for all possible backends
287
- def backends; end
288
- end
289
- end
290
-
291
- # source://nio4r-2.5.8/lib/nio/version.rb:4
292
- NIO::VERSION = T.let(T.unsafe(nil), String)
@@ -1,8 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `pry` gem.
5
- # Please instead update this file by running `bin/tapioca gem pry`.
6
-
7
- # THIS IS AN EMPTY RBI FILE.
8
- # see https://github.com/Shopify/tapioca/wiki/Manual-Gem-Requires
@@ -1,8 +0,0 @@
1
- # typed: true
2
-
3
- # DO NOT EDIT MANUALLY
4
- # This is an autogenerated file for types exported from the `rails` gem.
5
- # Please instead update this file by running `bin/tapioca gem rails`.
6
-
7
- # THIS IS AN EMPTY RBI FILE.
8
- # see https://github.com/Shopify/tapioca/wiki/Manual-Gem-Requires