Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed .DS_Store
Binary file not shown.
29 changes: 13 additions & 16 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
inherit_from: .rubocop_todo.yml

inherit_mode:
merge:
- Exclude
- Include

inherit_gem:
rubocop-gusto:
- config/default.yml

# The behavior of RuboCop can be controlled via the .rubocop.yml
# configuration file. It makes it possible to enable/disable
# certain cops (checks) and to alter their behavior if they accept
Expand All @@ -14,7 +25,8 @@ AllCops:
Exclude:
- vendor/bundle/**/**

plugins: rubocop-sorbet
plugins:
- rubocop-gusto

Sorbet/StrictSigil:
Enabled: true
Expand Down Expand Up @@ -57,9 +69,6 @@ Style/GuardClause:
Metrics/ModuleLength:
Enabled: false

Layout/LineLength:
Enabled: false

Metrics/BlockLength:
Enabled: false

Expand Down Expand Up @@ -100,10 +109,6 @@ Style/EmptyElse:
Style/RedundantCondition:
Enabled: false

# This leads to code that is not very readable at times (very long lines)
Layout/MultilineMethodCallIndentation:
Enabled: false

# Blocks across lines are okay sometimes
Style/BlockDelimiters:
Enabled: false
Expand All @@ -112,14 +117,6 @@ Style/BlockDelimiters:
Naming/AccessorMethodName:
Enabled: false

# This leads to code that is not very readable at times (very long lines)
Layout/FirstArgumentIndentation:
Enabled: false

# This leads to code that is not very readable at times (very long lines)
Layout/ArgumentAlignment:
Enabled: false

Style/AccessorGrouping:
Enabled: false

Expand Down
38 changes: 38 additions & 0 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# This configuration was generated by
# `rubocop --auto-gen-config`
# on 2026-03-05 21:23:51 UTC using RuboCop version 1.85.1.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.

# Offense count: 8
# Configuration parameters: EnforcedStyle, AllowedGems.
# SupportedStyles: Gemfile, gems.rb, gemspec
Gemspec/DevelopmentDependencies:
Exclude:
- 'rubocop-packs.gemspec'

# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, BlockForwardingName.
# SupportedStyles: anonymous, explicit
Naming/BlockForwarding:
Exclude:
- 'lib/rubocop/packs.rb'

# Offense count: 38
# Configuration parameters: Prefixes, AllowedPatterns.
# Prefixes: when, with, without
RSpec/ContextWording:
Exclude:
- 'spec/rubocop/cop/packs/documented_public_apis_spec.rb'
- 'spec/rubocop/cop/packs/root_namespace_is_pack_name_spec.rb'
- 'spec/rubocop/cop/packs/typed_public_apis_spec.rb'
- 'spec/rubocop/cop/packwerk_lite/dependency_checker_spec.rb'
- 'spec/rubocop/cop/packwerk_lite/privacy_checker_spec.rb'

# Offense count: 1
Style/Send:
Exclude:
- 'lib/rubocop/packs/inject.rb'
175 changes: 116 additions & 59 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -15,104 +15,160 @@ PATH
GEM
remote: https://rubygems.org/
specs:
activesupport (7.0.4)
concurrent-ruby (~> 1.0, >= 1.0.2)
activesupport (8.1.2)
base64
bigdecimal
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
json
logger (>= 1.4.2)
minitest (>= 5.1)
tzinfo (~> 2.0)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.9)
public_suffix (>= 2.0.2, < 8.0)
ast (2.4.3)
base64 (0.2.0)
bigdecimal (3.1.8)
concurrent-ruby (1.1.10)
diff-lcs (1.5.1)
erubi (1.13.0)
i18n (1.12.0)
base64 (0.3.0)
benchmark (0.5.0)
bigdecimal (4.0.1)
concurrent-ruby (1.3.6)
connection_pool (3.0.2)
diff-lcs (1.6.2)
drb (2.2.3)
erubi (1.13.1)
i18n (1.14.8)
concurrent-ruby (~> 1.0)
json (2.10.2)
language_server-protocol (3.17.0.4)
json (2.18.1)
json-schema (6.1.0)
addressable (~> 2.8)
bigdecimal (>= 3.1, < 5)
language_server-protocol (3.17.0.5)
lint_roller (1.1.0)
minitest (5.16.3)
logger (1.7.0)
mcp (0.8.0)
json-schema (>= 4.1)
minitest (6.0.2)
drb (~> 2.0)
prism (~> 1.5)
netrc (0.11.0)
packs-specification (0.0.10)
packs-specification (0.0.11)
sorbet-runtime
parallel (1.26.3)
parse_packwerk (0.26.0)
parallel (1.27.0)
parse_packwerk (0.27.0)
bigdecimal
sorbet-runtime
parser (3.3.7.2)
parser (3.3.10.2)
ast (~> 2.4.1)
racc
prism (0.30.0)
prism (1.9.0)
public_suffix (7.0.5)
racc (1.8.1)
rainbow (3.1.1)
rake (13.0.6)
rbi (0.1.14)
prism (>= 0.18.0, < 1.0.0)
sorbet-runtime (>= 0.5.9204)
regexp_parser (2.10.0)
rspec (3.11.0)
rspec-core (~> 3.11.0)
rspec-expectations (~> 3.11.0)
rspec-mocks (~> 3.11.0)
rspec-core (3.11.0)
rspec-support (~> 3.11.0)
rspec-expectations (3.11.1)
rake (13.3.1)
rbi (0.3.9)
prism (~> 1.0)
rbs (>= 3.4.4)
rbs (4.0.0.dev.5)
logger
prism (>= 1.3.0)
tsort
regexp_parser (2.11.3)
require-hooks (0.2.3)
rexml (3.4.4)
rspec (3.13.2)
rspec-core (~> 3.13.0)
rspec-expectations (~> 3.13.0)
rspec-mocks (~> 3.13.0)
rspec-core (3.13.6)
rspec-support (~> 3.13.0)
rspec-expectations (3.13.5)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.11.0)
rspec-mocks (3.11.1)
rspec-support (~> 3.13.0)
rspec-mocks (3.13.8)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.11.0)
rspec-support (3.11.1)
rubocop (1.74.0)
rspec-support (~> 3.13.0)
rspec-support (3.13.7)
rubocop (1.85.1)
json (~> 2.3)
language_server-protocol (~> 3.17.0.2)
lint_roller (~> 1.1.0)
mcp (~> 0.6)
parallel (~> 1.10)
parser (>= 3.3.0.2)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 2.9.3, < 3.0)
rubocop-ast (>= 1.38.0, < 2.0)
rubocop-ast (>= 1.49.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 4.0)
rubocop-ast (1.41.0)
rubocop-ast (1.49.0)
parser (>= 3.3.7.2)
rubocop-extension-generator (0.5.1)
prism (~> 1.7)
rubocop-extension-generator (0.6.2)
activesupport
bundler
rubocop (>= 1.22.0)
rubocop-sorbet (0.9.0)
rubocop (>= 1.72.2)
rubocop-gusto (10.6.0)
lint_roller
rubocop (>= 1.76)
rubocop-performance
rubocop-rake
rubocop-rspec
rubocop-sorbet
thor
rubocop-performance (1.26.1)
lint_roller (~> 1.1)
rubocop (>= 1.75.0, < 2.0)
rubocop-ast (>= 1.47.1, < 2.0)
rubocop-rake (0.7.1)
lint_roller (~> 1.1)
rubocop (>= 1.72.1)
rubocop-rspec (3.9.0)
lint_roller (~> 1.1)
rubocop (>= 1)
rubocop (~> 1.81)
rubocop-sorbet (0.12.0)
lint_roller
rubocop (>= 1.75.2)
ruby-progressbar (1.13.0)
sorbet (0.5.11492)
sorbet-static (= 0.5.11492)
sorbet-runtime (0.5.11492)
sorbet-static (0.5.11492-universal-darwin)
sorbet-static (0.5.11492-x86_64-linux)
sorbet-static-and-runtime (0.5.11492)
sorbet (= 0.5.11492)
sorbet-runtime (= 0.5.11492)
spoom (1.3.3)
securerandom (0.4.1)
sorbet (0.6.12992)
sorbet-static (= 0.6.12992)
sorbet-runtime (0.6.12992)
sorbet-static (0.6.12992-universal-darwin)
sorbet-static (0.6.12992-x86_64-linux)
sorbet-static-and-runtime (0.6.12992)
sorbet (= 0.6.12992)
sorbet-runtime (= 0.6.12992)
spoom (1.7.11)
erubi (>= 1.10.0)
prism (>= 0.28.0)
rbi (>= 0.3.3)
rbs (>= 4.0.0.dev.4)
rexml (>= 3.2.6)
sorbet-static-and-runtime (>= 0.5.10187)
thor (>= 0.19.2)
tapioca (0.15.1)
tapioca (0.17.10)
benchmark
bundler (>= 2.2.25)
netrc (>= 0.11.0)
parallel (>= 1.21.0)
rbi (>= 0.1.4, < 0.2)
rbi (>= 0.3.7)
require-hooks (>= 0.2.2)
sorbet-static-and-runtime (>= 0.5.11087)
spoom (>= 1.2.0)
spoom (>= 1.7.9)
thor (>= 1.2.0)
yard-sorbet
thor (1.3.1)
tzinfo (2.0.5)
thor (1.5.0)
tsort (0.2.0)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (3.1.4)
unicode-emoji (~> 4.0, >= 4.0.4)
unicode-emoji (4.0.4)
yard (0.9.36)
unicode-display_width (3.2.0)
unicode-emoji (~> 4.1)
unicode-emoji (4.2.0)
uri (1.1.1)
yard (0.9.38)
yard-sorbet (0.9.0)
sorbet-runtime
yard
Expand All @@ -122,11 +178,12 @@ PLATFORMS
x86_64-linux

DEPENDENCIES
bundler (~> 2.2.16)
bundler
parser
rake
rspec (~> 3.0)
rubocop-extension-generator
rubocop-gusto
rubocop-packs!
sorbet
tapioca
Expand Down
2 changes: 1 addition & 1 deletion Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ if ENV['VERIFYING_DOCUMENTATION']
Dir['tasks/**/*.rake'].each { |t| load t }
end

task(default: %i[documentation_syntax_check generate_cops_documentation spec])
task(default: %i(documentation_syntax_check generate_cops_documentation spec))

RSpec::Core::RakeTask.new(:spec) do |spec|
spec.pattern = FileList['spec/**/*_spec.rb']
Expand Down
21 changes: 4 additions & 17 deletions bin/rubocop
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,9 @@
# this file is here to facilitate running it.
#

require 'pathname'
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
Pathname.new(__FILE__).realpath)
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)

bundle_binstub = File.expand_path('bundle', __dir__)
require "rubygems"
require "bundler/setup"

if File.file?(bundle_binstub)
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
load(bundle_binstub)
else
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
end
end

require 'rubygems'
require 'bundler/setup'

load Gem.bin_path('rubocop', 'rubocop')
load Gem.bin_path("rubocop", "rubocop")
21 changes: 4 additions & 17 deletions bin/tapioca
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,9 @@
# this file is here to facilitate running it.
#

require 'pathname'
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
Pathname.new(__FILE__).realpath)
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)

bundle_binstub = File.expand_path('bundle', __dir__)
require "rubygems"
require "bundler/setup"

if File.file?(bundle_binstub)
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
load(bundle_binstub)
else
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
end
end

require 'rubygems'
require 'bundler/setup'

load Gem.bin_path('tapioca', 'tapioca')
load Gem.bin_path("tapioca", "tapioca")
Loading
Loading