forked from castwide/solargraph
-
Notifications
You must be signed in to change notification settings - Fork 0
Parallel rspec #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
apiology
wants to merge
207
commits into
2026-01-31
Choose a base branch
from
parallel_rspec
base: 2026-01-31
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+1,218
−532
Open
Parallel rspec #27
Changes from all commits
Commits
Show all changes
207 commits
Select commit
Hold shift + click to select a range
29fbd34
Spec performance fixes
apiology 70ea4bb
Add rbs collection in undercover run
apiology 8c049fb
Add rbs collection in undercover run
apiology e428f80
Fix copy-and-paste-o
apiology ffc25d6
Perform specific caching
apiology 79d9efb
Merge remote-tracking branch 'castwide/v0.59' into speed_up_specs
apiology f9319c6
Pre-release branch 2026-01-12 (#1152)
apiology 861a899
Ensure api_map catalogs new pins
apiology 9216d73
Avoid cache_doc_map_gems if possible
apiology 7741fca
Avoid load_with_cache if possible
apiology 80e0c94
Avoid load_with_cache if possible
apiology c0596ad
Use library with fewer dependencies to cache
apiology 55612e7
Simulate yardoc run
apiology c5d5843
Add bundle cache
apiology 9d725f3
Add empty lines
apiology a6df0bf
Cache bundles
apiology f4ad280
Split up regression cases
apiology 98851f4
Run specs in parallel
apiology 5749c42
Add gem
apiology 2888594
Finish Rakefile changes
apiology afb3fe0
Fix issue revealed by more aggressive setting of DEBUG log level
apiology 310408e
Use valid values for parameters in tests
apiology 750b371
Add missing step in spec
apiology f8da41c
Add .envrc to set number of parallel jobs
apiology d4a21e6
Add debug logging
apiology 2e94d97
Merge branch 'better_logging_testing' into parallel_rspec
apiology 70f0c5f
Rely on bundler installed by ruby/setup-ruby
apiology 96ef0c5
Merge branch 'speed_up_specs' into parallel_rspec
apiology 7a05bb2
Swap to name that prspec triggers on
apiology c26e6d6
Set PARALLEL throughout based on number of physical cores
apiology f2b16af
Debug
apiology 0adb139
Bump prspec version
apiology 13eda65
Flag individual sub-contexts for parallel_rspec
apiology a1629b5
Try ApiMap.new
apiology e46e6b3
More prspec updates
apiology dba7d29
Fix nil violation found in tests
apiology 8a4d722
Debug
apiology f8260b4
Another nil fix
apiology 2dabf64
Avoid direct reference to current directory
apiology 4949ce1
Drop @sg-ignore
apiology 51f34ce
Add PROJECT_DIRECTORY to avoid chdir issues
apiology dee9fb6
Try using main api_map
apiology d671728
Try excluding
apiology 0b8bbce
Use bundler cache more
apiology cb976e2
Include psych in compilation
apiology 9c92f57
Fix nil gemspecs list
apiology d39049e
Debug
apiology 8dc1f38
Debug
apiology cf3dfb3
Debug
apiology d67378e
Mark fixed
apiology 7edf8b8
More things run serially
apiology 1965e63
More things run serially
apiology 0cdb4ef
Fix typo
apiology 0eaf53d
Deal with another filesystem conflict
apiology 12b2f30
Deal with another filesystem conflict
apiology 1c5c969
Set spec timeout
apiology bcbf9a9
Avoid race conditions caching/uncaching backport
apiology 936d3b4
Remove lint issue, reduce race condition
apiology 59a0bd6
Don't use same filename in multiple parallel specs
apiology 38d4a96
Merge branch 'repro_rbs' into parallel_rspec
apiology 535f21d
Apply suggestion from @apiology
apiology 1818382
rubocop -a
apiology 9adce4c
rubocop -A
apiology 07a8940
Merge branch '2026-01-27' into parallel_rspec
apiology d3cc536
Fix rubocop todo issues
apiology 6dc4f94
Debug
apiology 99f55d3
Revert some changes
apiology ee07001
Overwrite api_map in context
apiology 99c8241
Try another caching approach
apiology 5a86947
Try another caching approach
apiology 9eb3a6a
Fix merge issue
apiology 74c7970
Add before :context
apiology c6702c9
More after :context
apiology 6bc40d6
Add more before :contexts
apiology 96daa5d
Fix merge issue
apiology e8a33a5
Fix merge
apiology 6ba49d0
Fix merge
apiology 4568e8d
Log gem caching to $stderr to help see where test time is going
apiology 00c19e3
Add another before :context
apiology cbc9d09
Fix expectation
apiology b5ae43f
Stop bundle installing with every example in shell_spec
apiology 94f1229
Move function
apiology 9138a73
Debug
apiology 75fd252
Simplify version spec
apiology 056c3ca
Debug
apiology d866dc0
Debug
apiology 203a4f8
Debug
apiology 854e916
Debug
apiology 4ae10a5
Debug
apiology 3014abe
Debug
apiology c0c340e
Speed up bundle install
apiology c210441
Debug
apiology 83d8da9
Debug
apiology 819bf43
Debug
apiology 8a220c4
Debug Gemfile.lock
apiology 547276b
Debug slowness
apiology 27a171c
Bump time limit
apiology 3dd98b0
Debug
apiology be64b85
Debug
apiology 83ce3d3
Debug
apiology 6c80bae
Debug
apiology 07db6a3
Debug
apiology b6ee022
Debug
apiology ea94901
Debug
apiology a6a4678
Debug
apiology a61c785
Fix
apiology 1be808f
Debug
apiology 215c23e
Use default config if none provided for require paths
apiology 3b4f3d2
Fix incorrect spec config
apiology 525c1b3
Debug
apiology e912db6
Debug
apiology 56bb7c5
Debug
apiology 40fe7fd
Debug
apiology 102d357
Revert debugging
apiology 8089dd5
Another before :context case
apiology a5e2bde
Avoid actually uncaching things if not needed
apiology a4dfc52
Debug
apiology a07be09
Move to PARALLEL=3
apiology 9953848
Move to WORKERS=3
apiology 2291d71
Try 2 workers
apiology 1b0ad59
Try 1 worker
apiology 6a6efe1
Set WORKERS=5
apiology 6943b50
Set WORKERS=6
apiology 2adc097
Try 7 workers
apiology b6d8eb6
Disable coverage checking
apiology 474a29f
7 workers
apiology 0e885ff
Avoid uncaching core
apiology 642edef
8 workers
apiology 9a863a3
Drop simplecov
apiology a6926e6
1 worker
apiology fd86a5e
4 workers
apiology da9e506
Debug
apiology a64e773
Debug
apiology be93692
Debug
apiology a82b6fd
Reduce background syncs
apiology cc37729
Try again
apiology fd69799
Run specs in unbundled env
apiology b2d8fb6
Try again
apiology 38a93e2
Debug
apiology fc6e874
Try again
apiology 849747e
Debug
apiology 1669309
Debug
apiology 5e72ef4
Debug
apiology de8d4ac
Drop dead before block
apiology 9f7cd02
Fix expectations in now-working spec
apiology d801cf1
Fix only-failures issues
apiology 7704c91
Switch to gem with fewer depenencies to speed up spec
apiology 8fee670
Update expectations in other specs
apiology 0fa1c00
Debug
apiology 68cf467
Debug
apiology 3e3be1a
Add caching of default gems
apiology c4c1e8f
Revert
apiology 96482b8
Avoid unneeded gem caching for perf
apiology b4556c0
Debug
apiology 5c235dc
Debug
apiology df0c205
Debug
apiology b34c3d0
Debug
apiology eb79d3b
Debug
apiology e981123
Debug
apiology 31648e3
Debug
apiology a55b54a
Debug
apiology 0e08bf8
Debug
apiology 2af160d
Debug
apiology 53676c5
Drop extra /
apiology 59b460d
Debug
apiology b5bcd4b
Debug
apiology dda8322
Debug
apiology a82ab1a
Debug
apiology f7b84a1
Debug
apiology c5d86e3
Debug
apiology 25d01ef
Debug
apiology 73de5c5
Drop workers experimentation
apiology 25457a8
Consistency fixes
apiology 3e85551
Drop @param
apiology d10e029
Docs
apiology a4bd2bd
Drop debugging
apiology 16fb502
Drop debugging
apiology d707e04
Revert debugging
apiology b8b18c4
Drop unneeded Config.new
apiology aa8979c
Revert updates
apiology fefdeba
Fix annotation
apiology 792e857
Revert
apiology 23ccc34
Fix log message
apiology 6e06cd2
Cache workspace gems in parallel
apiology a1aeac2
Cache workspace gems in parallel
apiology 81b3ae0
Cache docmap gems in parallel
apiology 91b8852
Add --workspace flag, default to docmap caching
apiology 013deaf
Fix API break
apiology 98953f7
Fix nil issue
apiology e0b28e0
Fix spec
apiology c6d7ea9
Cache more up front in rspec_specs
apiology 1f599e9
Drop unneeded nil case
apiology 17d3a2b
Avoid chdir issues
apiology 093bd2a
Cache more gems
apiology 48b4540
Cache more gems
apiology b1bdc91
Add speedups
apiology a4341d1
Speed up gem caching
apiology 5283a52
Spec perf fixes
apiology cb06aea
Fix expectations
apiology a5d028d
Speed up
apiology 5cd2d83
Try empty dir load
apiology 07acb5c
Precache less in spec
apiology 1e3f1a4
Fix precache
apiology 30812e7
Speed up specs
apiology 7246007
?
apiology 940fc3f
Simplify spec
apiology 055281f
Run specs in order
apiology File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,10 @@ | ||
| #!/bin/bash | ||
|
|
||
| if [[ "$(uname)" == "Darwin" ]]; then | ||
| WORKERS=$(sysctl -n hw.physicalcpu) | ||
| export WORKERS | ||
| fi | ||
|
|
||
| # current git branch | ||
| SOLARGRAPH_FORCE_VERSION=0.0.1.dev-$(git rev-parse --abbrev-ref HEAD | tr -d '\n' | tr -d '/' | tr -d '-'| tr -d '_') | ||
| export SOLARGRAPH_FORCE_VERSION |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -15,7 +15,7 @@ permissions: | |
| contents: read | ||
|
|
||
| jobs: | ||
| regression: | ||
| rails_and_rspec_typechecking: | ||
|
Owner
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm breaking these steps into parallel items for time savings and also clearing up the names a bit |
||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
|
|
@@ -44,9 +44,52 @@ jobs: | |
| run: bundle exec rbs collection update | ||
| - name: Ensure typechecking still works | ||
| run: bundle exec solargraph typecheck --level strong | ||
| rails_and_rspec_specs: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v3 | ||
| - name: Set up Ruby | ||
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: 3.4 | ||
| bundler-cache: true | ||
| - uses: awalsh128/cache-apt-pkgs-action@latest | ||
| with: | ||
| packages: yq | ||
| version: 1.0 | ||
| - name: Install gems | ||
| run: | | ||
| echo 'gem "solargraph-rails"' > .Gemfile | ||
| echo 'gem "solargraph-rspec"' >> .Gemfile | ||
| bundle install | ||
| bundle update --pre rbs | ||
| - name: Configure to use plugins | ||
| run: | | ||
| bundle exec solargraph config | ||
| yq -yi '.plugins += ["solargraph-rails"]' .solargraph.yml | ||
| yq -yi '.plugins += ["solargraph-rspec"]' .solargraph.yml | ||
| - name: Install gem types | ||
| run: | | ||
| bundle exec rbs collection update | ||
| # avoid trying to do this in parallel during the specs | ||
| time bundle exec solargraph gems core stdlib default | ||
| - name: Ensure specs still run | ||
| run: bundle exec rake spec | ||
| rails: | ||
| run: | | ||
| # Speed up some of the bundle installs we run inside the tests | ||
| # as well when we're testing different solargraph usage | ||
| # scenarios. This is already set in the local bundle config by | ||
| # the setup-ruby action. | ||
| # | ||
| # See | ||
| # https://github.com/ruby/setup-ruby?tab=readme-ov-file#caching-bundle-install-automatically | ||
| bundle config path $PWD/vendor/bundle | ||
| WORKERS=$(nproc --all) | ||
| export WORKERS | ||
| SIMPLECOV_DISABLED=true | ||
| export SIMPLECOV_DISABLED | ||
| bundle exec prspec spec/ | ||
| rails_typechecking: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
|
|
@@ -57,7 +100,7 @@ jobs: | |
| ruby-version: 3.4 # keep same as typecheck.yml | ||
| # See https://github.com/castwide/solargraph/actions/runs/19000135777/job/54265647107?pr=1119 | ||
| rubygems: latest | ||
| bundler-cache: false | ||
| bundler-cache: true | ||
| - uses: awalsh128/cache-apt-pkgs-action@latest | ||
| with: | ||
| packages: yq | ||
|
|
@@ -75,9 +118,49 @@ jobs: | |
| run: bundle exec rbs collection update | ||
| - name: Ensure typechecking still works | ||
| run: bundle exec solargraph typecheck --level strong | ||
| rails_specs: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v3 | ||
| - name: Set up Ruby | ||
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: 3.4 | ||
| rubygems: latest | ||
| bundler-cache: true | ||
| - uses: awalsh128/cache-apt-pkgs-action@latest | ||
| with: | ||
| packages: yq | ||
| version: 1.0 | ||
| - name: Install gems | ||
| run: | | ||
| echo 'gem "solargraph-rails"' > .Gemfile | ||
| bundle install | ||
| bundle update --pre rbs | ||
| - name: Configure to use plugins | ||
| run: | | ||
| bundle exec solargraph config | ||
| yq -yi '.plugins += ["solargraph-rails"]' .solargraph.yml | ||
| - name: Install gem types | ||
| run: | | ||
| bundle exec rbs collection update | ||
| # avoid trying to do this in parallel during the specs | ||
| bundle exec solargraph gems core stdlib | ||
| - name: Ensure specs still run | ||
| run: bundle exec rake spec | ||
| rspec: | ||
| run: | | ||
| # Speed up some of the bundle installs we run inside the tests | ||
| # as well when we're testing different solargraph usage | ||
| # scenarios. This is already set in the local bundle config by | ||
| # the setup-ruby action. | ||
| # | ||
| # See | ||
| # https://github.com/ruby/setup-ruby?tab=readme-ov-file#caching-bundle-install-automatically | ||
| bundle config path $PWD/vendor/bundle | ||
| WORKERS=$(nproc --all) | ||
| export WORKERS | ||
| bundle exec rake full_spec | ||
| rspec_typechecking: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
|
|
@@ -86,7 +169,7 @@ jobs: | |
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: 3.4 # keep same as typecheck.yml | ||
| bundler-cache: false | ||
| bundler-cache: true | ||
| - uses: awalsh128/cache-apt-pkgs-action@latest | ||
| with: | ||
| packages: yq | ||
|
|
@@ -104,9 +187,52 @@ jobs: | |
| run: bundle exec rbs collection update | ||
| - name: Ensure typechecking still works | ||
| run: bundle exec solargraph typecheck --level strong | ||
| rspec_specs: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v3 | ||
| - name: Set up Ruby | ||
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: 3.4 # keep same as typecheck.yml | ||
| bundler-cache: true | ||
| - uses: awalsh128/cache-apt-pkgs-action@latest | ||
| with: | ||
| packages: yq | ||
| version: 1.0 | ||
| - name: Install gems | ||
| run: | | ||
| echo 'gem "solargraph-rspec"' >> .Gemfile | ||
| bundle install | ||
| bundle update --pre rbs | ||
| - name: Configure to use plugins | ||
| run: | | ||
| bundle exec solargraph config | ||
| yq -yi '.plugins += ["solargraph-rspec"]' .solargraph.yml | ||
| - name: Install gem types | ||
| run: | | ||
| set -x | ||
|
|
||
| bundle exec rbs collection update | ||
|
|
||
| rspec_gems=$(bundle exec ruby -r 'solargraph-rspec' -e 'puts Solargraph::Rspec::Gems.gem_names.join(" ")' 2>/dev/null | tail -n1) | ||
| # avoid trying to do this in parallel during the specs | ||
| bundle exec solargraph gems core stdlib $rspec_gems diff-lcs addressable ast rexml crack hashdiff rspec-support bigdecimal public_suffix | ||
| - name: Ensure specs still run | ||
| run: bundle exec rake spec | ||
| run: | | ||
| # Speed up some of the bundle installs we run inside the tests | ||
| # as well when we're testing different solargraph usage | ||
| # scenarios. This is already set in the local bundle config by | ||
| # the setup-ruby action. | ||
| # | ||
| # See | ||
| # https://github.com/ruby/setup-ruby?tab=readme-ov-file#caching-bundle-install-automatically | ||
| bundle config path $PWD/vendor/bundle | ||
| WORKERS=$(nproc --all) | ||
| export WORKERS | ||
|
|
||
| bundle exec rake full_spec | ||
| run_solargraph_rspec_specs: | ||
| # check out solargraph-rspec as well as this project, and point the former to use the latter as a local gem | ||
| runs-on: ubuntu-latest | ||
|
|
@@ -129,7 +255,7 @@ jobs: | |
| with: | ||
| ruby-version: 3.4 | ||
| rubygems: latest | ||
| bundler-cache: false | ||
| bundler-cache: true | ||
| - name: Install gems | ||
| run: | | ||
| set -x | ||
|
|
@@ -166,7 +292,20 @@ jobs: | |
| bundle exec appraisal solargraph gems $rspec_gems | ||
| - name: Run specs | ||
| run: | | ||
| # Speed up some of the bundle installs we run inside the tests | ||
| # as well when we're testing different solargraph usage | ||
| # scenarios. This is already set in the local bundle config by | ||
| # the setup-ruby action. | ||
| # | ||
| # See | ||
| # https://github.com/ruby/setup-ruby?tab=readme-ov-file#caching-bundle-install-automatically | ||
| bundle config path $PWD/vendor/bundle | ||
| cd ../solargraph-rspec | ||
| WORKERS=$(nproc --all) | ||
| export WORKERS | ||
|
|
||
| # avoid trying to do this in parallel during the specs | ||
| bundle exec solargraph gems core stdlib | ||
| bundle exec appraisal rspec --format progress | ||
|
|
||
| run_solargraph_rails_specs: | ||
|
|
@@ -184,42 +323,51 @@ jobs: | |
| with: | ||
| # solargraph-rails supports Ruby 3.0+ | ||
| ruby-version: '3.0' | ||
| bundler-cache: false | ||
| bundler-cache: true | ||
| # https://github.com/apiology/solargraph/actions/runs/19400815835/job/55508092473?pr=17 | ||
| rubygems: latest | ||
| bundler: latest | ||
| env: | ||
| MATRIX_RAILS_VERSION: "7.0" | ||
| - name: Install gems | ||
| run: | | ||
| set -x | ||
| BUNDLE_PATH="${GITHUB_WORKSPACE:?}/vendor/bundle" | ||
| export BUNDLE_PATH | ||
| cd ../solargraph-rails | ||
| echo "gem 'solargraph', path: '${GITHUB_WORKSPACE:?}'" >> Gemfile | ||
| bundle install | ||
| bundle update --pre rbs | ||
| RAILS_DIR="$(pwd)/spec/rails7" | ||
| export RAILS_DIR | ||
| cd ${RAILS_DIR} | ||
| bundle install | ||
| bundle exec --gemfile ../../Gemfile rbs --version | ||
| bundle exec --gemfile ../../Gemfile rbs collection install | ||
| cd ../../ | ||
| # bundle exec rbs collection init | ||
| # bundle exec rbs collection install | ||
| set -x | ||
| # Share caches to speed up bundle install | ||
| # | ||
| # See | ||
| # https://github.com/ruby/setup-ruby?tab=readme-ov-file#caching-bundle-install-automatically | ||
| cd ../solargraph-rails | ||
| echo "gem 'solargraph', path: '${GITHUB_WORKSPACE:?}'" >> Gemfile | ||
| bundle install | ||
| bundle update --pre rbs | ||
| RAILS_DIR="$(pwd)/spec/rails7" | ||
| export RAILS_DIR | ||
| cd ${RAILS_DIR} | ||
| bundle install | ||
| bundle exec --gemfile ../../Gemfile rbs --version | ||
| bundle exec --gemfile ../../Gemfile rbs collection install | ||
| cd ../../ | ||
| # bundle exec rbs collection init | ||
| # bundle exec rbs collection install | ||
| env: | ||
| MATRIX_RAILS_VERSION: "7.0" | ||
| MATRIX_RAILS_MAJOR_VERSION: '7' | ||
| - name: Run specs | ||
| run: | | ||
| BUNDLE_PATH="${GITHUB_WORKSPACE:?}/vendor/bundle" | ||
| export BUNDLE_PATH | ||
| # Share caches to speed up bundle install | ||
| # | ||
| # See | ||
| # https://github.com/ruby/setup-ruby?tab=readme-ov-file#caching-bundle-install-automatically | ||
| bundle config path $PWD/vendor/bundle | ||
| cd ../solargraph-rails | ||
| bundle exec solargraph --version | ||
| bundle info solargraph | ||
| bundle info rbs | ||
| bundle info yard | ||
| WORKERS=$(nproc --all) | ||
| export WORKERS | ||
| # avoid trying to do this in parallel during the specs | ||
| bundle exec solargraph gems core stdlib | ||
| ALLOW_IMPROVEMENTS=true bundle exec rake spec | ||
| env: | ||
| MATRIX_RAILS_VERSION: "7.0" | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a pretty big speedup. If having the very latest version of a dependency is vital, we can add a bundle update statement later on.