packwerk 3.2.0 → 3.2.1

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 (126) hide show
  1. checksums.yaml +4 -4
  2. data/lib/packwerk/checker.rb +3 -3
  3. data/lib/packwerk/offenses_formatter.rb +3 -3
  4. data/lib/packwerk/package_todo.rb +1 -4
  5. data/lib/packwerk/parsers/factory.rb +3 -3
  6. data/lib/packwerk/parsers/ruby.rb +7 -0
  7. data/lib/packwerk/reference_offense.rb +1 -1
  8. data/lib/packwerk/validator.rb +3 -3
  9. data/lib/packwerk/version.rb +1 -1
  10. data/sorbet/rbi/gems/actionpack@7.0.3.1.rbi +3280 -3450
  11. data/sorbet/rbi/gems/actionview@7.0.3.1.rbi +2322 -1782
  12. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +2654 -3268
  13. data/sorbet/rbi/gems/ast@2.4.2.rbi +535 -6
  14. data/sorbet/rbi/gems/better_html@2.0.1.rbi +529 -0
  15. data/sorbet/rbi/gems/builder@3.2.4.rbi +4 -4
  16. data/sorbet/rbi/gems/byebug@11.1.3.rbi +32 -4
  17. data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +1750 -1840
  18. data/sorbet/rbi/gems/constant_resolver@0.2.0.rbi +15 -15
  19. data/sorbet/rbi/gems/crass@1.0.6.rbi +489 -5
  20. data/sorbet/rbi/gems/erubi@1.11.0.rbi +24 -21
  21. data/sorbet/rbi/gems/i18n@1.12.0.rbi +395 -395
  22. data/sorbet/rbi/gems/json@2.6.2.rbi +70 -77
  23. data/sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi +1 -1
  24. data/sorbet/rbi/gems/loofah@2.18.0.rbi +134 -134
  25. data/sorbet/rbi/gems/m@1.6.0.rbi +60 -60
  26. data/sorbet/rbi/gems/method_source@1.1.0.rbi +303 -0
  27. data/sorbet/rbi/gems/minitest-focus@1.3.1.rbi +22 -28
  28. data/sorbet/rbi/gems/minitest@5.16.2.rbi +384 -396
  29. data/sorbet/rbi/gems/mocha@1.14.0.rbi +589 -589
  30. data/sorbet/rbi/gems/netrc@0.11.0.rbi +37 -32
  31. data/sorbet/rbi/gems/nokogiri@1.15.3.rbi +962 -946
  32. data/sorbet/rbi/gems/{parallel@1.22.1.rbi → parallel@1.24.0.rbi} +85 -82
  33. data/sorbet/rbi/gems/{parser@3.2.2.0.rbi → parser@3.3.1.0.rbi} +1679 -1609
  34. data/sorbet/rbi/gems/prettier_print@0.1.0.rbi +1 -1
  35. data/sorbet/rbi/gems/{prism@0.24.0.rbi → prism@0.27.0.rbi} +13473 -6472
  36. data/sorbet/rbi/gems/{racc@1.6.0.rbi → racc@1.7.1.rbi} +42 -33
  37. data/sorbet/rbi/gems/rack-test@2.0.2.rbi +148 -338
  38. data/sorbet/rbi/gems/rack@2.2.4.rbi +1079 -1130
  39. data/sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi +354 -22
  40. data/sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi +113 -259
  41. data/sorbet/rbi/gems/railties@7.0.3.1.rbi +642 -638
  42. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +109 -99
  43. data/sorbet/rbi/gems/rake@13.0.6.rbi +714 -599
  44. data/sorbet/rbi/gems/{rbi@0.0.15.rbi → rbi@0.1.12.rbi} +865 -801
  45. data/sorbet/rbi/gems/regexp_parser@2.5.0.rbi +853 -870
  46. data/sorbet/rbi/gems/rexml@3.2.5.rbi +480 -477
  47. data/sorbet/rbi/gems/rubocop-ast@1.21.0.rbi +1621 -1622
  48. data/sorbet/rbi/gems/rubocop-performance@1.14.3.rbi +507 -526
  49. data/sorbet/rbi/gems/rubocop-shopify@2.9.0.rbi +1 -1
  50. data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +186 -203
  51. data/sorbet/rbi/gems/rubocop@1.34.1.rbi +8126 -8367
  52. data/sorbet/rbi/gems/{ruby-lsp@0.2.1.rbi → ruby-lsp@0.2.3.rbi} +2 -2
  53. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +1235 -4
  54. data/sorbet/rbi/gems/smart_properties@1.17.0.rbi +90 -90
  55. data/sorbet/rbi/gems/spoom@1.3.2.rbi +4420 -0
  56. data/sorbet/rbi/gems/spring@4.0.0.rbi +104 -104
  57. data/sorbet/rbi/gems/syntax_tree@3.3.0.rbi +1 -1
  58. data/sorbet/rbi/gems/{tapioca@0.9.2.rbi → tapioca@0.13.3.rbi} +1596 -1253
  59. data/sorbet/rbi/gems/{thor@1.2.1.rbi → thor@1.3.1.rbi} +1047 -652
  60. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +531 -513
  61. data/sorbet/rbi/gems/unicode-display_width@2.2.0.rbi +13 -13
  62. data/sorbet/rbi/gems/{yard-sorbet@0.6.1.rbi → yard-sorbet@0.8.1.rbi} +132 -92
  63. data/sorbet/rbi/gems/{yard@0.9.28.rbi → yard@0.9.36.rbi} +3158 -3067
  64. data/sorbet/rbi/gems/zeitwerk@2.6.4.rbi +149 -145
  65. metadata +18 -76
  66. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -27
  67. data/.github/pull_request_template.md +0 -28
  68. data/.github/workflows/ci.yml +0 -93
  69. data/.github/workflows/cla.yml +0 -22
  70. data/.gitignore +0 -13
  71. data/.rubocop.yml +0 -75
  72. data/.ruby-version +0 -1
  73. data/CODEOWNERS +0 -1
  74. data/CODE_OF_CONDUCT.md +0 -76
  75. data/CONTRIBUTING.md +0 -17
  76. data/Gemfile +0 -27
  77. data/Gemfile.lock +0 -206
  78. data/RESOLVING_VIOLATIONS.md +0 -76
  79. data/Rakefile +0 -22
  80. data/TROUBLESHOOT.md +0 -44
  81. data/UPGRADING.md +0 -66
  82. data/USAGE.md +0 -364
  83. data/bin/console +0 -15
  84. data/bin/m +0 -29
  85. data/bin/rake +0 -29
  86. data/bin/rubocop +0 -29
  87. data/bin/setup +0 -8
  88. data/bin/srb +0 -29
  89. data/bin/tapioca +0 -29
  90. data/dev.yml +0 -32
  91. data/docs/cohesion.png +0 -0
  92. data/gemfiles/Gemfile-rails-6-0 +0 -22
  93. data/gemfiles/Gemfile-rails-6-1 +0 -22
  94. data/packwerk.gemspec +0 -59
  95. data/shipit.rubygems.yml +0 -5
  96. data/sorbet/rbi/gems/actioncable@7.0.3.1.rbi +0 -2754
  97. data/sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi +0 -1496
  98. data/sorbet/rbi/gems/actionmailer@7.0.3.1.rbi +0 -2362
  99. data/sorbet/rbi/gems/actiontext@7.0.3.1.rbi +0 -1569
  100. data/sorbet/rbi/gems/activejob@7.0.3.1.rbi +0 -2553
  101. data/sorbet/rbi/gems/activemodel@7.0.3.1.rbi +0 -5999
  102. data/sorbet/rbi/gems/activerecord@7.0.3.1.rbi +0 -37832
  103. data/sorbet/rbi/gems/activestorage@7.0.3.1.rbi +0 -2321
  104. data/sorbet/rbi/gems/better_html@1.0.16.rbi +0 -317
  105. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -8
  106. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +0 -1079
  107. data/sorbet/rbi/gems/digest@3.1.0.rbi +0 -189
  108. data/sorbet/rbi/gems/globalid@1.0.0.rbi +0 -572
  109. data/sorbet/rbi/gems/mail@2.7.1.rbi +0 -2490
  110. data/sorbet/rbi/gems/marcel@1.0.2.rbi +0 -220
  111. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -76
  112. data/sorbet/rbi/gems/mini_mime@1.1.2.rbi +0 -170
  113. data/sorbet/rbi/gems/net-imap@0.2.3.rbi +0 -2147
  114. data/sorbet/rbi/gems/net-pop@0.1.1.rbi +0 -926
  115. data/sorbet/rbi/gems/net-protocol@0.1.3.rbi +0 -11
  116. data/sorbet/rbi/gems/net-smtp@0.3.1.rbi +0 -1108
  117. data/sorbet/rbi/gems/nio4r@2.5.8.rbi +0 -292
  118. data/sorbet/rbi/gems/pry@0.14.1.rbi +0 -8
  119. data/sorbet/rbi/gems/rails@7.0.3.1.rbi +0 -8
  120. data/sorbet/rbi/gems/spoom@1.1.11.rbi +0 -2181
  121. data/sorbet/rbi/gems/strscan@3.0.4.rbi +0 -8
  122. data/sorbet/rbi/gems/timeout@0.3.0.rbi +0 -142
  123. data/sorbet/rbi/gems/unparser@0.6.5.rbi +0 -4529
  124. data/sorbet/rbi/gems/webrick@1.7.0.rbi +0 -2582
  125. data/sorbet/rbi/gems/websocket-driver@0.7.5.rbi +0 -993
  126. data/sorbet/rbi/gems/websocket-extensions@0.1.5.rbi +0 -71
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.2.0
4
+ version: 3.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shopify Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-02-16 00:00:00.000000000 Z
11
+ date: 2024-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: 0.24.0
131
+ version: 0.25.0
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
- version: 0.24.0
138
+ version: 0.25.0
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: better_html
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -174,38 +174,10 @@ executables:
174
174
  extensions: []
175
175
  extra_rdoc_files: []
176
176
  files:
177
- - ".github/ISSUE_TEMPLATE/bug_report.md"
178
- - ".github/pull_request_template.md"
179
- - ".github/workflows/ci.yml"
180
- - ".github/workflows/cla.yml"
181
- - ".gitignore"
182
- - ".rubocop.yml"
183
- - ".ruby-version"
184
177
  - CHANGELOG.md
185
- - CODEOWNERS
186
- - CODE_OF_CONDUCT.md
187
- - CONTRIBUTING.md
188
- - Gemfile
189
- - Gemfile.lock
190
178
  - LICENSE.md
191
179
  - README.md
192
- - RESOLVING_VIOLATIONS.md
193
- - Rakefile
194
- - TROUBLESHOOT.md
195
- - UPGRADING.md
196
- - USAGE.md
197
- - bin/console
198
- - bin/m
199
- - bin/rake
200
- - bin/rubocop
201
- - bin/setup
202
- - bin/srb
203
- - bin/tapioca
204
- - dev.yml
205
- - docs/cohesion.png
206
180
  - exe/packwerk
207
- - gemfiles/Gemfile-rails-6-0
208
- - gemfiles/Gemfile-rails-6-1
209
181
  - lib/packwerk.rb
210
182
  - lib/packwerk/application_validator.rb
211
183
  - lib/packwerk/association_inspector.rb
@@ -272,66 +244,42 @@ files:
272
244
  - lib/packwerk/validator/result.rb
273
245
  - lib/packwerk/validators/dependency_validator.rb
274
246
  - lib/packwerk/version.rb
275
- - packwerk.gemspec
276
- - shipit.rubygems.yml
277
247
  - sorbet/config
278
- - sorbet/rbi/gems/actioncable@7.0.3.1.rbi
279
- - sorbet/rbi/gems/actionmailbox@7.0.3.1.rbi
280
- - sorbet/rbi/gems/actionmailer@7.0.3.1.rbi
281
248
  - sorbet/rbi/gems/actionpack@7.0.3.1.rbi
282
- - sorbet/rbi/gems/actiontext@7.0.3.1.rbi
283
249
  - sorbet/rbi/gems/actionview@7.0.3.1.rbi
284
- - sorbet/rbi/gems/activejob@7.0.3.1.rbi
285
- - sorbet/rbi/gems/activemodel@7.0.3.1.rbi
286
- - sorbet/rbi/gems/activerecord@7.0.3.1.rbi
287
- - sorbet/rbi/gems/activestorage@7.0.3.1.rbi
288
250
  - sorbet/rbi/gems/activesupport@7.0.3.1.rbi
289
251
  - sorbet/rbi/gems/ast@2.4.2.rbi
290
- - sorbet/rbi/gems/better_html@1.0.16.rbi
252
+ - sorbet/rbi/gems/better_html@2.0.1.rbi
291
253
  - sorbet/rbi/gems/builder@3.2.4.rbi
292
254
  - sorbet/rbi/gems/byebug@11.1.3.rbi
293
- - sorbet/rbi/gems/coderay@1.1.3.rbi
294
255
  - sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi
295
256
  - sorbet/rbi/gems/constant_resolver@0.2.0.rbi
296
257
  - sorbet/rbi/gems/crass@1.0.6.rbi
297
- - sorbet/rbi/gems/diff-lcs@1.5.0.rbi
298
- - sorbet/rbi/gems/digest@3.1.0.rbi
299
258
  - sorbet/rbi/gems/erubi@1.11.0.rbi
300
- - sorbet/rbi/gems/globalid@1.0.0.rbi
301
259
  - sorbet/rbi/gems/i18n@1.12.0.rbi
302
260
  - sorbet/rbi/gems/json@2.6.2.rbi
303
261
  - sorbet/rbi/gems/language_server-protocol@3.16.0.3.rbi
304
262
  - sorbet/rbi/gems/loofah@2.18.0.rbi
305
263
  - sorbet/rbi/gems/m@1.6.0.rbi
306
- - sorbet/rbi/gems/mail@2.7.1.rbi
307
- - sorbet/rbi/gems/marcel@1.0.2.rbi
308
- - sorbet/rbi/gems/method_source@1.0.0.rbi
309
- - sorbet/rbi/gems/mini_mime@1.1.2.rbi
264
+ - sorbet/rbi/gems/method_source@1.1.0.rbi
310
265
  - sorbet/rbi/gems/minitest-focus@1.3.1.rbi
311
266
  - sorbet/rbi/gems/minitest@5.16.2.rbi
312
267
  - sorbet/rbi/gems/mocha@1.14.0.rbi
313
- - sorbet/rbi/gems/net-imap@0.2.3.rbi
314
- - sorbet/rbi/gems/net-pop@0.1.1.rbi
315
- - sorbet/rbi/gems/net-protocol@0.1.3.rbi
316
- - sorbet/rbi/gems/net-smtp@0.3.1.rbi
317
268
  - sorbet/rbi/gems/netrc@0.11.0.rbi
318
- - sorbet/rbi/gems/nio4r@2.5.8.rbi
319
269
  - sorbet/rbi/gems/nokogiri@1.15.3.rbi
320
- - sorbet/rbi/gems/parallel@1.22.1.rbi
321
- - sorbet/rbi/gems/parser@3.2.2.0.rbi
270
+ - sorbet/rbi/gems/parallel@1.24.0.rbi
271
+ - sorbet/rbi/gems/parser@3.3.1.0.rbi
322
272
  - sorbet/rbi/gems/prettier_print@0.1.0.rbi
323
- - sorbet/rbi/gems/prism@0.24.0.rbi
324
- - sorbet/rbi/gems/pry@0.14.1.rbi
325
- - sorbet/rbi/gems/racc@1.6.0.rbi
273
+ - sorbet/rbi/gems/prism@0.27.0.rbi
274
+ - sorbet/rbi/gems/racc@1.7.1.rbi
326
275
  - sorbet/rbi/gems/rack-test@2.0.2.rbi
327
276
  - sorbet/rbi/gems/rack@2.2.4.rbi
328
277
  - sorbet/rbi/gems/rails-dom-testing@2.0.3.rbi
329
278
  - sorbet/rbi/gems/rails-html-sanitizer@1.4.3.rbi
330
- - sorbet/rbi/gems/rails@7.0.3.1.rbi
331
279
  - sorbet/rbi/gems/railties@7.0.3.1.rbi
332
280
  - sorbet/rbi/gems/rainbow@3.1.1.rbi
333
281
  - sorbet/rbi/gems/rake@13.0.6.rbi
334
- - sorbet/rbi/gems/rbi@0.0.15.rbi
282
+ - sorbet/rbi/gems/rbi@0.1.12.rbi
335
283
  - sorbet/rbi/gems/regexp_parser@2.5.0.rbi
336
284
  - sorbet/rbi/gems/rexml@3.2.5.rbi
337
285
  - sorbet/rbi/gems/rubocop-ast@1.21.0.rbi
@@ -339,24 +287,18 @@ files:
339
287
  - sorbet/rbi/gems/rubocop-shopify@2.9.0.rbi
340
288
  - sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi
341
289
  - sorbet/rbi/gems/rubocop@1.34.1.rbi
342
- - sorbet/rbi/gems/ruby-lsp@0.2.1.rbi
290
+ - sorbet/rbi/gems/ruby-lsp@0.2.3.rbi
343
291
  - sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi
344
292
  - sorbet/rbi/gems/smart_properties@1.17.0.rbi
345
- - sorbet/rbi/gems/spoom@1.1.11.rbi
293
+ - sorbet/rbi/gems/spoom@1.3.2.rbi
346
294
  - sorbet/rbi/gems/spring@4.0.0.rbi
347
- - sorbet/rbi/gems/strscan@3.0.4.rbi
348
295
  - sorbet/rbi/gems/syntax_tree@3.3.0.rbi
349
- - sorbet/rbi/gems/tapioca@0.9.2.rbi
350
- - sorbet/rbi/gems/thor@1.2.1.rbi
351
- - sorbet/rbi/gems/timeout@0.3.0.rbi
296
+ - sorbet/rbi/gems/tapioca@0.13.3.rbi
297
+ - sorbet/rbi/gems/thor@1.3.1.rbi
352
298
  - sorbet/rbi/gems/tzinfo@2.0.5.rbi
353
299
  - sorbet/rbi/gems/unicode-display_width@2.2.0.rbi
354
- - sorbet/rbi/gems/unparser@0.6.5.rbi
355
- - sorbet/rbi/gems/webrick@1.7.0.rbi
356
- - sorbet/rbi/gems/websocket-driver@0.7.5.rbi
357
- - sorbet/rbi/gems/websocket-extensions@0.1.5.rbi
358
- - sorbet/rbi/gems/yard-sorbet@0.6.1.rbi
359
- - sorbet/rbi/gems/yard@0.9.28.rbi
300
+ - sorbet/rbi/gems/yard-sorbet@0.8.1.rbi
301
+ - sorbet/rbi/gems/yard@0.9.36.rbi
360
302
  - sorbet/rbi/gems/zeitwerk@2.6.4.rbi
361
303
  - sorbet/rbi/shims/minitest/test.rb
362
304
  - sorbet/rbi/shims/packwerk/reference.rbi
@@ -387,7 +329,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
387
329
  - !ruby/object:Gem::Version
388
330
  version: '0'
389
331
  requirements: []
390
- rubygems_version: 3.5.6
332
+ rubygems_version: 3.5.9
391
333
  signing_key:
392
334
  specification_version: 4
393
335
  summary: Packages for applications based on the zeitwerk autoloader
@@ -1,27 +0,0 @@
1
- ---
2
- name: Bug / Issue Report
3
- about: Create a report to help us improve
4
- title: '[Bug Report]'
5
- labels: bug
6
- assignees: ''
7
-
8
- ---
9
-
10
- **Description**
11
- A clear and concise description of what the bug/issue is.
12
-
13
- **To Reproduce**
14
- Steps to reproduce the behavior.
15
-
16
- **Expected Behaviour**
17
- A clear and concise description of what you expected to happen.
18
-
19
- **Screenshots**
20
- If applicable, add screenshots to help explain your problem.
21
-
22
- **Version Information**
23
- - Packwerk: [e.g. v0.1.7]
24
- - Ruby [e.g. v1.7]
25
-
26
- **Additional Context**
27
- How have you tried to solve the issue? Add any other context about the problem here.
@@ -1,28 +0,0 @@
1
- ## What are you trying to accomplish?
2
-
3
-
4
- ## What approach did you choose and why?
5
-
6
-
7
- ## What should reviewers focus on?
8
-
9
-
10
- ## Type of Change
11
-
12
- - [ ] Bugfix
13
- - [ ] New feature
14
- - [ ] Non-breaking change (a change that doesn't alter functionality - i.e., code refactor, configs, etc.)
15
-
16
- ### Additional Release Notes
17
-
18
- - [ ] Breaking change (fix or feature that would cause existing functionality to change)
19
-
20
- Include any notes here to include in the release description. For example, if you selected "breaking change" above, leave notes on how users can transition to this version.
21
-
22
- If no additional notes are necessary, delete this section or leave it unchanged.
23
-
24
- ## Checklist
25
-
26
- - [ ] I have updated the documentation accordingly.
27
- - [ ] I have added tests to cover my changes.
28
- - [ ] It is safe to rollback this change.
@@ -1,93 +0,0 @@
1
- name: CI
2
-
3
- on:
4
- push:
5
- branches:
6
- - main
7
- - '*-stable'
8
- pull_request:
9
-
10
- jobs:
11
- tests:
12
- runs-on: ubuntu-latest
13
- strategy:
14
- matrix:
15
- gemfile:
16
- - Gemfile
17
- - gemfiles/Gemfile-rails-6-0
18
- - gemfiles/Gemfile-rails-6-1
19
- ruby:
20
- - "2.7"
21
- - "3.0"
22
- - "3.1"
23
- - "3.2"
24
- env:
25
- BUNDLE_GEMFILE: ${{ matrix.gemfile }}
26
- name: "Tests: Ruby ${{ matrix.ruby }} ${{ matrix.gemfile }}"
27
- steps:
28
- - uses: actions/checkout@v2
29
- - name: Set up Ruby ${{ matrix.ruby }}
30
- uses: ruby/setup-ruby@v1
31
- with:
32
- ruby-version: ${{ matrix.ruby }}
33
- bundler-cache: true
34
- - name: Run tests
35
- run: bin/rake test
36
- loading-tests:
37
- runs-on: ubuntu-latest
38
- strategy:
39
- matrix:
40
- gemfile:
41
- - Gemfile
42
- ruby:
43
- - "2.7"
44
- - "3.0"
45
- - "3.1"
46
- - "3.2"
47
- env:
48
- BUNDLE_GEMFILE: ${{ matrix.gemfile }}
49
- name: "Loading Tests: Ruby ${{ matrix.ruby }} ${{ matrix.gemfile }}"
50
- steps:
51
- - uses: actions/checkout@v2
52
- - name: Set up Ruby ${{ matrix.ruby }}
53
- uses: ruby/setup-ruby@v1
54
- with:
55
- ruby-version: ${{ matrix.ruby }}
56
- bundler-cache: true
57
- - name: Run tests
58
- run: bin/rake test:loading
59
- lint:
60
- runs-on: ubuntu-latest
61
- name: Lint
62
- steps:
63
- - uses: actions/checkout@v2
64
- - name: Set up Ruby
65
- uses: ruby/setup-ruby@v1
66
- with:
67
- ruby-version: "3.1"
68
- bundler-cache: true
69
- - name: Run style checks
70
- run: bin/rubocop
71
- static_type_checking:
72
- runs-on: ubuntu-latest
73
- name: Type Checking
74
- steps:
75
- - uses: actions/checkout@v2
76
- - name: Set up Ruby
77
- uses: ruby/setup-ruby@v1
78
- with:
79
- ruby-version: "3.1"
80
- # bundler-cache: true
81
- - name: Run static type checks
82
- run: |
83
- bundle install --jobs 4 --retry 3
84
- bin/srb tc
85
- buildall:
86
- if: ${{ always() }}
87
- runs-on: ubuntu-latest
88
- name: Build (matrix)
89
- needs: [lint, tests, static_type_checking]
90
- steps:
91
- - name: Check build matrix status
92
- if: ${{ needs.tests.result != 'success' || needs.lint.result != 'success' || needs.static_type_checking.result != 'success' }}
93
- run: exit 1
@@ -1,22 +0,0 @@
1
- name: Contributor License Agreement (CLA)
2
-
3
- on:
4
- pull_request_target:
5
- types: [opened, synchronize]
6
- issue_comment:
7
- types: [created]
8
-
9
- jobs:
10
- cla:
11
- runs-on: ubuntu-latest
12
- if: |
13
- (github.event.issue.pull_request
14
- && !github.event.issue.pull_request.merged_at
15
- && contains(github.event.comment.body, 'signed')
16
- )
17
- || (github.event.pull_request && !github.event.pull_request.merged)
18
- steps:
19
- - uses: Shopify/shopify-cla-action@v1
20
- with:
21
- github-token: ${{ secrets.GITHUB_TOKEN }}
22
- cla-token: ${{ secrets.CLA_TOKEN }}
data/.gitignore DELETED
@@ -1,13 +0,0 @@
1
- /.bundle/
2
- /.yardoc
3
- /_yardoc/
4
- /coverage/
5
- /doc/
6
- /pkg/
7
- /spec/reports/
8
- /tmp/
9
- /.bundle/
10
- /tmp/
11
- .rubocop-*
12
- .byebug_history
13
- sorbet/rbi/hidden-definitions/errors.txt
data/.rubocop.yml DELETED
@@ -1,75 +0,0 @@
1
- inherit_gem:
2
- rubocop-shopify: rubocop.yml
3
-
4
- require:
5
- - rubocop-performance
6
- - rubocop-sorbet
7
-
8
- AllCops:
9
- TargetRubyVersion: 2.7
10
- NewCops: disable
11
- UseCache: true
12
- SuggestExtensions: false
13
- CacheRootDirectory: tmp
14
- Exclude:
15
- - 'test/fixtures/**/*'
16
-
17
- Sorbet/ConstantsFromStrings:
18
- Enabled: true
19
-
20
- Sorbet/ForbidIncludeConstLiteral:
21
- Enabled: true
22
-
23
- Sorbet/SignatureBuildOrder:
24
- Enabled: true
25
-
26
- Sorbet/KeywordArgumentOrdering:
27
- Enabled: true
28
-
29
- Sorbet/ValidSigil:
30
- Enabled: true
31
-
32
- Performance/AncestorsInclude: # new in 1.7
33
- Enabled: true
34
-
35
- Performance/BigDecimalWithNumericArgument: # new in 1.7
36
- Enabled: true
37
-
38
- Performance/BlockGivenWithExplicitBlock: # new in 1.9
39
- Enabled: true
40
-
41
- Performance/CollectionLiteralInLoop: # new in 1.8
42
- Enabled: true
43
-
44
- Performance/ConstantRegexp: # new in 1.9
45
- Enabled: true
46
-
47
- Performance/MethodObjectAsBlock: # new in 1.9
48
- Enabled: true
49
-
50
- Performance/RedundantEqualityComparisonBlock: # new in 1.10
51
- Enabled: true
52
-
53
- Performance/RedundantSortBlock: # new in 1.7
54
- Enabled: true
55
-
56
- Performance/RedundantSplitRegexpArgument: # new in 1.10
57
- Enabled: true
58
-
59
- Performance/RedundantStringChars: # new in 1.7
60
- Enabled: true
61
-
62
- Performance/ReverseFirst: # new in 1.7
63
- Enabled: true
64
-
65
- Performance/SortReverse: # new in 1.7
66
- Enabled: true
67
-
68
- Performance/Squeeze: # new in 1.7
69
- Enabled: true
70
-
71
- Performance/StringInclude: # new in 1.7
72
- Enabled: true
73
-
74
- Performance/Sum: # new in 1.8
75
- Enabled: true
data/.ruby-version DELETED
@@ -1 +0,0 @@
1
- 3.2.2
data/CODEOWNERS DELETED
@@ -1 +0,0 @@
1
- * @Shopify/packwerk
data/CODE_OF_CONDUCT.md DELETED
@@ -1,76 +0,0 @@
1
- # Contributor Covenant Code of Conduct
2
-
3
- ## Our Pledge
4
-
5
- In the interest of fostering an open and welcoming environment, we as
6
- contributors and maintainers pledge to make participation in our project and
7
- our community a harassment-free experience for everyone, regardless of age, body
8
- size, disability, ethnicity, sex characteristics, gender identity and expression,
9
- level of experience, education, socio-economic status, nationality, personal
10
- appearance, race, religion, or sexual identity and orientation.
11
-
12
- ## Our Standards
13
-
14
- Examples of behavior that contributes to creating a positive environment
15
- include:
16
-
17
- * Using welcoming and inclusive language
18
- * Being respectful of differing viewpoints and experiences
19
- * Gracefully accepting constructive criticism
20
- * Focusing on what is best for the community
21
- * Showing empathy towards other community members
22
-
23
- Examples of unacceptable behavior by participants include:
24
-
25
- * The use of sexualized language or imagery and unwelcome sexual attention or
26
- advances
27
- * Trolling, insulting/derogatory comments, and personal or political attacks
28
- * Public or private harassment
29
- * Publishing others' private information, such as a physical or electronic
30
- address, without explicit permission
31
- * Other conduct which could reasonably be considered inappropriate in a
32
- professional setting
33
-
34
- ## Our Responsibilities
35
-
36
- Project maintainers are responsible for clarifying the standards of acceptable
37
- behavior and are expected to take appropriate and fair corrective action in
38
- response to any instances of unacceptable behavior.
39
-
40
- Project maintainers have the right and responsibility to remove, edit, or
41
- reject comments, commits, code, wiki edits, issues, and other contributions
42
- that are not aligned to this Code of Conduct, or to ban temporarily or
43
- permanently any contributor for other behaviors that they deem inappropriate,
44
- threatening, offensive, or harmful.
45
-
46
- ## Scope
47
-
48
- This Code of Conduct applies within all project spaces, and it also applies when
49
- an individual is representing the project or its community in public spaces.
50
- Examples of representing a project or community include using an official
51
- project e-mail address, posting via an official social media account, or acting
52
- as an appointed representative at an online or offline event. Representation of
53
- a project may be further defined and clarified by project maintainers.
54
-
55
- ## Enforcement
56
-
57
- Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
- reported by contacting the project team at opensource@shopify.com. All
59
- complaints will be reviewed and investigated and will result in a response that
60
- is deemed necessary and appropriate to the circumstances. The project team is
61
- obligated to maintain confidentiality with regard to the reporter of an incident.
62
- Further details of specific enforcement policies may be posted separately.
63
-
64
- Project maintainers who do not follow or enforce the Code of Conduct in good
65
- faith may face temporary or permanent repercussions as determined by other
66
- members of the project's leadership.
67
-
68
- ## Attribution
69
-
70
- This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
- available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72
-
73
- [homepage]: https://www.contributor-covenant.org
74
-
75
- For answers to common questions about this code of conduct, see
76
- https://www.contributor-covenant.org/faq
data/CONTRIBUTING.md DELETED
@@ -1,17 +0,0 @@
1
- # Contributing
2
-
3
- ## Issue reporting
4
- * Check to make sure the same issue has not already been reported or fixed
5
- * Open an issue with a descriptive title and summary
6
- * Be clear and concise and provide as many details as possible (e.g. Ruby version, Packwerk version, etc.)
7
- * Include relevant code, where necessary
8
-
9
- ## Pull requests
10
- * Read and understand our [Code of Conduct](https://github.com/Shopify/packwerk/blob/main/CODE_OF_CONDUCT.md)
11
- * Make sure tests are added for any changes to the code
12
- * [Squash related commits together](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)
13
- * If the change includes any new keys to `packwerk.yml`, make sure that the [application validator](https://github.com/Shopify/packwerk/blob/1c711748b4a28b65220e2cefba764ffd8eb1a101/lib/packwerk/application_validator.rb#L116) is aligned with that change
14
- * Open a pull request once the change is ready to be reviewed
15
- * Be descriptive about the problem and reason about the proposed solution
16
- * Include release notes describing the potential impact of the change in the pull request
17
- * Make sure there has been at least one approval from Shopify before merging
data/Gemfile DELETED
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source("https://rubygems.org")
4
- git_source(:github) { |repo_name| "https://github.com/#{repo_name}.git" }
5
-
6
- gemspec
7
-
8
- # Specify the same dependency sources as the application Gemfile
9
-
10
- gem("spring")
11
- gem("constant_resolver", require: false)
12
- gem("rubocop-performance", require: false)
13
- gem("rubocop-sorbet", require: false)
14
- gem("mocha", require: false)
15
- gem("rubocop-shopify", require: false)
16
- gem("tapioca", require: false)
17
-
18
- group :development do
19
- gem("byebug", require: false)
20
- gem("minitest-focus", require: false)
21
- gem("ruby-lsp", "~> 0.2.1")
22
-
23
- gem("m")
24
- gem("rake")
25
- gem("sorbet-static-and-runtime")
26
- gem("zeitwerk")
27
- end