Repository navigation
bundler-cache feature breaks ruby-lsp and other default gem behavior #55
Description
Activity
Yes I've also experienced this... I think
My feeling was that it was some kind of timing issue with ruby-lsp being run before cache was built at devcontainer build
I played around with creating this cache using the devcontainer lifecycle hooks with... not 100% results... sometimes would work sometimes wouldn't :)
Hi, sorry you are experiencing this issue. I am going to be away for a couple weeks starting tonight and I don't think I will have time to fix this today. @patriciomacadden maybe you can take a look? Probably we do need to do something with the bin path after all.
Hey everyone, thanks for the feedback! I haven't experienced this unfortunately.
I just created a new rails app by running
rails-new devtest --devcontainer, and right before opening up vscode and building the container added the bundler-cache feature. Then I opened vscode and everything went as expected:024-10-04 18:48:50.542 [info] (devtest) Checking if chruby is available on the path with command: /bin/bash -i -c 'chruby --version' 2024-10-04 18:48:50.564 [info] (devtest) Checking if rbenv is available on the path with command: /bin/bash -i -c 'rbenv --version' 2024-10-04 18:48:50.586 [info] (devtest) Discovered version manager rbenv 2024-10-04 18:48:50.586 [info] (devtest) Running command: `rbenv exec ruby -W0 -rjson -e 'STDERR.print("RUBY_LSP_ACTIVATION_SEPARATOR" + { env: ENV.to_h, yjit: !!defined?(RubyVM:: YJIT), version: RUBY_VERSION }.to_json + "RUBY_LSP_ACTIVATION_SEPARATOR")'` in /workspaces/devtest using shell: /bin/bash 2024-10-04 18:49:22.440 [info] (devtest) Ruby LSP> Running bundle install for the custom bundle. This may take a while... Ruby LSP> Command: (bundle check || bundle install) 1>&2 2024-10-04 18:49:22.580 [info] (devtest) Bundler can't satisfy your Gemfile's dependencies. Install missing gems with `bundle install`. 2024-10-04 18:49:24.018 [info] (devtest) Fetching gem metadata from https://rubygems.org/ 2024-10-04 18:49:24.018 [info] (devtest) . 2024-10-04 18:49:24.187 [info] (devtest) . 2024-10-04 18:49:24.393 [info] (devtest) . 2024-10-04 18:49:24.445 [info] (devtest) . 2024-10-04 18:49:24.492 [info] (devtest) . 2024-10-04 18:49:24.505 [info] (devtest) . 2024-10-04 18:49:24.514 [info] (devtest) . 2024-10-04 18:49:24.516 [info] (devtest) . 2024-10-04 18:49:24.518 [info] (devtest) . 2024-10-04 18:49:24.956 [info] (devtest) 2024-10-04 18:49:24.979 [info] (devtest) Resolving dependencies... 2024-10-04 18:49:25.512 [info] (devtest) Fetching prism 1.1.0 2024-10-04 18:49:25.513 [info] (devtest) Fetching sorbet-runtime 0.5.11595 Fetching rbs 3.6.1 2024-10-04 18:49:25.998 [info] (devtest) Installing prism 1.1.0 with native extensions 2024-10-04 18:49:26.622 [info] (devtest) Installing sorbet-runtime 0.5.11595 2024-10-04 18:49:26.645 [info] (devtest) Installing rbs 3.6.1 with native extensions 2024-10-04 18:49:38.389 [info] (devtest) Fetching ruby-lsp 0.19.0 2024-10-04 18:49:38.542 [info] (devtest) Installing ruby-lsp 0.19.0 2024-10-04 18:49:38.553 [info] (devtest) Fetching ruby-lsp-rails 0.3.17 2024-10-04 18:49:38.578 [info] (devtest) Installing ruby-lsp-rails 0.3.17 2024-10-04 18:49:38.586 [info] (devtest) Bundle complete! 18 Gemfile dependencies, 103 gems now installed. 2024-10-04 18:49:38.587 [info] (devtest) Bundled gems are installed into `/bundle/vendor` 2024-10-04 18:49:39.392 [info] (devtest) Initializing Ruby LSP v0.19.0... 2024-10-04 18:49:39.400 [info] (devtest) Using formatter specified by user: standard 2024-10-04 18:49:39.400 [info] (devtest) Auto detected linters: rubocop 2024-10-04 18:49:39.400 [info] (devtest) Detected test library: rails 2024-10-04 18:49:39.400 [info] (devtest) Finished initializing Ruby LSP! 2024-10-04 18:49:39.421 [info] (devtest) Activating Ruby LSP Rails add-on v0.3.17 2024-10-04 18:49:39.431 [info] (devtest) Ruby LSP Rails booting server 2024-10-04 18:49:39.760 [info] (devtest) Checking if chruby is available on the path with command: /bin/bash -i -c 'chruby --version' 2024-10-04 18:49:39.789 [info] (devtest) [Error - 6:49:39 PM] Server process exited with code 0. 2024-10-04 18:49:39.790 [info] (devtest) Checking if rbenv is available on the path with command: /bin/bash -i -c 'rbenv --version' 2024-10-04 18:49:39.814 [info] (devtest) Discovered version manager rbenv 2024-10-04 18:49:39.814 [info] (devtest) Running command: `rbenv exec ruby -W0 -rjson -e 'STDERR.print("RUBY_LSP_ACTIVATION_SEPARATOR" + { env: ENV.to_h, yjit: !!defined?(RubyVM:: YJIT), version: RUBY_VERSION }.to_json + "RUBY_LSP_ACTIVATION_SEPARATOR")'` in /workspaces/devtest using shell: /bin/bash 2024-10-04 18:49:40.121 [info] (devtest) Ruby LSP> Skipping custom bundle setup since /workspaces/devtest/.ruby-lsp/Gemfile.lock already exists and is up to date 2024-10-04 18:49:40.126 [info] (devtest) Ruby LSP> Running bundle install for the custom bundle. This may take a while... Ruby LSP> Command: ((bundle check && bundle update ruby-lsp ruby-lsp-rails) || bundle install) 1>&2 2024-10-04 18:49:40.253 [info] (devtest) The Gemfile's dependencies are satisfied 2024-10-04 18:49:40.948 [info] (devtest) Fetching gem metadata from https://rubygems.org/ 2024-10-04 18:49:40.949 [info] (devtest) . 2024-10-04 18:49:41.063 [info] (devtest) . 2024-10-04 18:49:41.101 [info] (devtest) . 2024-10-04 18:49:41.125 [info] (devtest) . 2024-10-04 18:49:41.145 [info] (devtest) . 2024-10-04 18:49:41.158 [info] (devtest) . 2024-10-04 18:49:41.165 [info] (devtest) . 2024-10-04 18:49:41.168 [info] (devtest) . 2024-10-04 18:49:41.170 [info] (devtest) . 2024-10-04 18:49:41.646 [info] (devtest) 2024-10-04 18:49:41.664 [info] (devtest) Resolving dependencies... 2024-10-04 18:49:41.939 [info] (devtest) Resolving dependencies... 2024-10-04 18:49:42.206 [info] (devtest) Bundler attempted to update ruby-lsp but its version stayed the same Bundler attempted to update ruby-lsp-rails but its version stayed the same 2024-10-04 18:49:42.206 [info] (devtest) Bundle updated! 2024-10-04 18:49:42.979 [info] (devtest) Initializing Ruby LSP v0.19.0... 2024-10-04 18:49:42.981 [info] (devtest) Using formatter specified by user: standard 2024-10-04 18:49:42.981 [info] (devtest) Auto detected linters: rubocop 2024-10-04 18:49:42.981 [info] (devtest) Detected test library: rails 2024-10-04 18:49:42.981 [info] (devtest) Finished initializing Ruby LSP! 2024-10-04 18:49:43.027 [info] (devtest) Activating Ruby LSP Rails add-on v0.3.17 2024-10-04 18:49:43.038 [info] (devtest) Ruby LSP Rails booting server 2024-10-04 18:49:43.747 [info] (devtest) Finished booting Ruby LSP Rails serverHowever, I did experience this right after adding it to an existing image, meaning that I had to run
bundle installto install the gems in the new volume, but then it just worked too.@JeremiahChurch have you run
bundle installafter adding the feature?btw, as @andrewn617 and I discussed in #48 ,
railsis no longer in the$PATHbecause gems are now installed in/bundle/vendor/ruby/COMPATIBILITY_VERSION/bin, which is not in the$PATH. Adding this directory to the$PATHis a bit tricky because we can't tell what's the compatibility version of the current ruby (or at least, I haven't tried enough). There is a way you can add it back by changing theBUNDLE_BINto somewhere like/bundle/binand then add/bundle/binto your$PATH, but we decided to leave this out of the scope of this feature.Can you share your
devcontainer.jsonfile?bundle installhas been run - I'm able to dev without issue except having to dobundle exec rails sinstead ofrails sand similarThe best application I can demo this on is a bullettrain copy app
using effectively the dockerfile, compose.yaml & devcontainer.json from this PR https://github.com/bullet-train-co/bullet_train/pull/1620/files
the devcontainer postCreateCommand runs some scripts that run bundle install along with some other 'prep' actions.
while testing when the app is booting and running through installing the bundled gems without the bundle-cache feature enabled ruby-lsp starts and indexes before bundle install even completes.
uncommenting the bundle-cache feature and hitting rebuild on the devcontainer - the app boots without doing a bundle install as it's already cached but immediately pops the "Ruby LSP client: couldn't create connection to server" popup in the IDE. opening a terminal, running
bundle installshows that everything is already installed correctly in the bundle. a 'retry' in the ruby LSP popup fails immediately afterwards.my complete devcontainer.json
devcontainer.json // For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/ruby { "name": "demo", "dockerComposeFile": "compose.yaml", "service": "rails-app", "workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}", // Features to add to the dev container. More info: https://containers.dev/features. "features": { "ghcr.io/devcontainers/features/github-cli:1": {}, "ghcr.io/devcontainers/features/node:1": {}, "ghcr.io/rails/devcontainer/features/activestorage": {}, "ghcr.io/rails/devcontainer/features/postgres-client": {}, "ghcr.io/rails/devcontainer/features/bundler-cache:1": {} }, "containerEnv": { "REDIS_URL": "redis://redis:6379/1", "PGHOST": "postgres", "PGUSER": "postgres", "PGPASSWORD": "postgres", "CAPYBARA_SERVER_PORT": "45678", "SELENIUM_HOST": "selenium" // "MEMCACHE_SERVERS": "memcached:11211" }, // Use 'forwardPorts' to make a list of ports inside the container available locally. "forwardPorts": [3000, 5432, 6379], // Configure tool-specific properties. // "customizations": {}, // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. // "remoteUser": "root", // Use 'postCreateCommand' to run commands after the container is created. "postCreateCommand": "corepack enable && yarn set version 4.2.2 && bin/setup-devcontainer", "customizations": { "vscode": { "extensions": [ "GitHub.copilot", "GitHub.copilot-chat", "marcoroth.stimulus-lsp", "bradlc.vscode-tailwindcss", "Shopify.ruby-lsp", "eamodio.gitlens", "karunamurti.haml" // "manuelpuyol.erb-linter", // "setobiralo.erb-commenter", // "streetsidesoftware.code-spell-checker", // "donjayamanne.githistory", // "esbenp.prettier-vscode", // "jemmyw.rails-fast-nav", // "tmikoss.rails-latest-migration" ] } } }
Dockerfile
# Make sure RUBY_VERSION matches the Ruby version in .ruby-version ARG RUBY_VERSION=3.3.5 FROM ghcr.io/rails/devcontainer/images/ruby:$RUBY_VERSIONcompose.yaml
name: "demo" services: rails-app: build: context: .. dockerfile: .devcontainer/Dockerfile volumes: - ../..:/workspaces:cached # Overrides default command so things don't shut down after the process ends. command: sleep infinity # Uncomment the next line to use a non-root user for all processes. # user: vscode # Use "forwardPorts" in **devcontainer.json** to forward an app port locally. # (Adding the "ports" property to this file will not forward from a Codespace.) depends_on: - redis - postgres - selenium # Use "forwardPorts" in **devcontainer.json** to forward an app port locally. # (Adding the "ports" property to this file will not forward from a Codespace.) ports: - 45678:45678 environment: COREPACK_ENABLE_DOWNLOAD_PROMPT: 0 # prevent yarn install y/n prompt selenium: image: seleniarm/standalone-chromium restart: unless-stopped redis: image: redis:7.2 restart: unless-stopped volumes: - redis-data:/data postgres: image: postgres:17rc1 restart: unless-stopped networks: - default volumes: - postgres-data:/var/lib/postgresql/data environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres # memcached: # image: memcached:latest # restart: unless-stopped # command: ["-m", "1024"] volumes: redis-data: postgres-data:
Please let me know if I can provide anything else!
Hmm, interesting.
So, I've tried a couple of things:
- create a new project, add the bundler-cache feature and then build/open the container => ruby-lsp works
- with the new project above, remove the bundler-cache feature and then rebuild/open the container => ruby-lsp also works
- create a new project, build/open the container => works (of course lol)
- with the new project above, add the bundler-cache feature and then rebuild/open the container => ruby-lsp also works
I also removed the volumes a bunch of times. can you try that as well?
It's working in all scenarios for me, so makes me wonder if I'm reproducing the issue the way you're doing it 🤔 . Please let me know if I misinterpreted anything.
bundle install has been run - I'm able to dev without issue except having to do bundle exec rails s instead of rails s and similar
this is because
/bundle/vendor/ruby/3.3.0/binis not in the path, so either you need to usebundle execor the executables inbin. See one of my comments in #48 . you can fix it but it's not optimus imo.@JeremiahChurch can you share the output of RubyLSP? (cmd-j -> output tab -> select ruby lsp in the right hand side). Hopefully we can see what's going on in there.
Also, can you see what's in
$PATH? And do you have any custom command in the ruby lsp extension?I'm on a different machine but it has a very similar dev environment - experiencing the same issue.
as requested here's a copy of ruby lsp output and PATH for without feature (working) and with feature (not working)
I'll attempt adding/removing volumes to see if the behavior is any different.
The common pattern for me certainly has been existing app and beginning to use devcontainer - not starting fresh.
Please let me know if anything looks interesting or if you need anything else, really appreciate the help!
path shows the same for both situations
vscode -> workspaces/myapp (ad6c9fe7) $ echo $PATH /home/vscode/.rbenv/shims:/vscode/vscode-server/bin/linux-x64/d78a74bcdfad14d5d3b1b782f87255d802b57511/bin/remote-cli:/home/vscode/.rbenv/shims:/usr/local/share/nvm/versions/node/v20.17.0/bin:/usr/local/share/rbenv/bin:/usr/local/share/nvm/versions/node/v20.17.0/bin:/usr/local/share/rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/vscode/.local/binWITHOUT FEATURE
ruby-lsp2024-10-05 00:59:26.763 [info] (app) Checking if chruby is available on the path with command: /bin/bash -i -c 'chruby --version' 2024-10-05 00:59:26.966 [info] (app) Checking if rbenv is available on the path with command: /bin/bash -i -c 'rbenv --version' 2024-10-05 00:59:27.160 [info] (app) Discovered version manager rbenv 2024-10-05 00:59:27.160 [info] (app) Running command: `rbenv exec ruby -W0 -rjson -e 'STDERR.print("RUBY_LSP_ACTIVATION_SEPARATOR" + { env: ENV.to_h, yjit: !!defined?(RubyVM:: YJIT), version: RUBY_VERSION }.to_json + "RUBY_LSP_ACTIVATION_SEPARATOR")'` in /workspaces/myapp using shell: /bin/bash 2024-10-05 00:59:49.184 [info] (app) Ruby LSP> Skipping custom bundle setup since /workspaces/myapp/.ruby-lsp/Gemfile.lock already exists and is up to date 2024-10-05 00:59:49.191 [info] (app) Ruby LSP> Running bundle install for the custom bundle. This may take a while... Ruby LSP> Command: (bundle check || bundle install) 1>&2 2024-10-05 00:59:49.549 [info] (app) Bundler can't satisfy your Gemfile's dependencies. Install missing gems with `bundle install`. 2024-10-05 00:59:50.522 [info] (app) Fetching gem metadata from https://rubygems.org/ 2024-10-05 00:59:50.523 [info] (app) . 2024-10-05 00:59:51.028 [info] (app) . 2024-10-05 00:59:51.221 [info] (app) . 2024-10-05 00:59:51.381 [info] (app) . 2024-10-05 00:59:51.505 [info] (app) . 2024-10-05 00:59:51.535 [info] (app) . 2024-10-05 00:59:51.549 [info] (app) . 2024-10-05 00:59:51.551 [info] (app) . 2024-10-05 00:59:52.689 [info] (app) 2024-10-05 00:59:52.791 [info] (app) Resolving dependencies... 2024-10-05 00:59:53.929 [info] (app) Using rake 13.2.1 2024-10-05 00:59:53.937 [info] (app) Using mutex_m 0.2.0 2024-10-05 00:59:53.939 [info] (app) Using timeout 0.4.1 Using base64 0.2.0 Using bigdecimal 3.1.8 Using concurrent-ruby 1.3.4 Using connection_pool 2.4.1 Using drb 2.2.1 Using minitest 5.25.1 Using builder 3.3.0 2024-10-05 00:59:53.945 [info] (app) Using erubi 1.13.0 Using racc 1.8.1 Using crass 1.0.6 Using rack 2.2.9 Using nio4r 2.7.3 Using websocket-extensions 0.1.5 Using zeitwerk 2.6.18 Using marcel 1.0.4 2024-10-05 00:59:53.986 [info] (app) Using mini_mime 1.1.5 Using date 3.3.4 2024-10-05 00:59:53.995 [info] (app) Using public_suffix 6.0.1 2024-10-05 00:59:54.000 [info] (app) Using ansi 1.5.0 2024-10-05 00:59:54.005 [info] (app) Using ast 2.4.2 2024-10-05 00:59:54.011 [info] (app) Using docile 1.4.1 2024-10-05 00:59:54.016 [info] (app) Using dry-initializer 3.1.1 2024-10-05 00:59:54.024 [info] (app) Using csv 3.3.0 2024-10-05 00:59:54.032 [info] (app) Using pagy 6.5.0 Using stringio 3.1.1 2024-10-05 00:59:54.042 [info] (app) Using io-console 0.7.2 2024-10-05 00:59:54.046 [info] (app) Using webrick 1.8.2 2024-10-05 00:59:54.050 [info] (app) Using thor 1.3.2 2024-10-05 00:59:54.054 [info] (app) Using method_source 1.1.0 2024-10-05 00:59:54.059 [info] (app) Using awesome_print 1.9.2 2024-10-05 00:59:54.063 [info] (app) Using aws-eventstream 1.3.0 2024-10-05 00:59:54.067 [info] (app) Using aws-partitions 1.976.0 2024-10-05 00:59:54.071 [info] (app) Using jmespath 1.6.2 2024-10-05 00:59:54.075 [info] (app) Using bcrypt 3.1.20 2024-10-05 00:59:54.079 [info] (app) Using bindex 0.8.1 2024-10-05 00:59:54.083 [info] (app) Using debug_inspector 1.2.0 2024-10-05 00:59:54.089 [info] (app) Using msgpack 1.7.2 Using bundler 2.4.10 2024-10-05 00:59:54.096 [info] (app) Using cancancan 3.6.1 2024-10-05 00:59:54.102 [info] (app) Using chronic 0.10.2 Using uri 0.13.1 2024-10-05 00:59:54.110 [info] (app) Using json 2.7.2 2024-10-05 00:59:54.114 [info] (app) Using logger 1.6.1 2024-10-05 00:59:54.118 [info] (app) Using multipart-post 2.4.1 Using ostruct 0.6.0 2024-10-05 00:59:54.126 [info] (app) Using phonelib 0.9.2 Using observer 0.1.2 2024-10-05 00:59:54.133 [info] (app) Using thread-local 1.1.0 2024-10-05 00:59:54.138 [info] (app) Using colorizer 0.0.2 2024-10-05 00:59:54.144 [info] (app) Using commonmarker 1.1.5 (x86_64-linux) 2024-10-05 00:59:54.148 [info] (app) Using orm_adapter 0.5.0 2024-10-05 00:59:54.152 [info] (app) Using pwned 2.4.1 2024-10-05 00:59:54.156 [info] (app) Using charlock_holmes 0.7.9 2024-10-05 00:59:54.160 [info] (app) Using email_reply_parser 0.5.11 2024-10-05 00:59:54.163 [info] (app) Using fastimage 2.3.1 2024-10-05 00:59:54.168 [info] (app) Using hiredis 0.6.3 2024-10-05 00:59:54.172 [info] (app) Using http_accept_language 2.1.1 2024-10-05 00:59:54.177 [info] (app) Using mini_magick 4.13.2 2024-10-05 00:59:54.182 [info] (app) Using ffi 1.17.0 (x86_64-linux-gnu) 2024-10-05 00:59:54.188 [info] (app) Using hashie 5.0.0 2024-10-05 00:59:54.195 [info] (app) Using possessive 1.0.1 2024-10-05 00:59:54.204 [info] (app) Using htmlentities 4.3.4 2024-10-05 00:59:54.209 [info] (app) Using event_stream_parser 1.0.0 2024-10-05 00:59:54.214 [info] (app) Using unicode-version 1.4.0 2024-10-05 00:59:54.219 [info] (app) Using simpleidn 0.2.3 2024-10-05 00:59:54.223 [info] (app) Using xxhash 0.5.0 2024-10-05 00:59:54.228 [info] (app) Using prism 1.0.0 2024-10-05 00:59:54.232 [info] (app) Using jwt 2.1.0 2024-10-05 00:59:54.237 [info] (app) Using version_gem 1.1.4 2024-10-05 00:59:54.242 [info] (app) Using stripe 13.0.0 2024-10-05 00:59:54.247 [info] (app) Using hashids 1.0.6 2024-10-05 00:59:54.252 [info] (app) Using matrix 0.4.2 2024-10-05 00:59:54.258 [info] (app) Using regexp_parser 2.9.2 Using ruby2_keywords 0.0.5 2024-10-05 00:59:54.266 [info] (app) Using rexml 3.3.7 2024-10-05 00:59:54.270 [info] (app) Using rubyzip 2.3.2 2024-10-05 00:59:54.275 [info] (app) Using websocket 1.2.11 2024-10-05 00:59:54.280 [info] (app) Using choice 0.2.0 2024-10-05 00:59:54.285 [info] (app) Using chunky_png 1.4.0 2024-10-05 00:59:54.293 [info] (app) Using sexp_processor 4.17.2 2024-10-05 00:59:54.297 [info] (app) Using coderay 1.1.3 2024-10-05 00:59:54.301 [info] (app) Using colorize 1.1.0 2024-10-05 00:59:54.306 [info] (app) Using rotp 6.3.0 2024-10-05 00:59:54.312 [info] (app) Using erubis 2.7.0 2024-10-05 00:59:54.318 [info] (app) Using execjs 2.9.1 2024-10-05 00:59:54.322 [info] (app) Using foreman 0.88.1 2024-10-05 00:59:54.327 [info] (app) Using temple 0.10.3 2024-10-05 00:59:54.331 [info] (app) Using tilt 2.4.0 2024-10-05 00:59:54.334 [info] (app) Using honeybadger 5.15.6 2024-10-05 00:59:54.339 [info] (app) Using mini_portile2 2.8.7 2024-10-05 00:59:54.342 [info] (app) Using knapsack_pro 7.8.0 2024-10-05 00:59:54.347 [info] (app) Using language_server-protocol 3.17.0.3 2024-10-05 00:59:54.351 [info] (app) Using lint_roller 1.1.0 2024-10-05 00:59:54.356 [info] (app) Using ruby-progressbar 1.13.0 2024-10-05 00:59:54.360 [info] (app) Using parallel 1.26.3 2024-10-05 00:59:54.364 [info] (app) Using pg 1.5.8 2024-10-05 00:59:54.368 [info] (app) Using rails_autoscale_agent 0.12.0 2024-10-05 00:59:54.373 [info] (app) Using require_all 3.0.0 2024-10-05 00:59:54.377 [info] (app) Using rainbow 3.1.1 2024-10-05 00:59:54.381 [info] (app) Using rqrcode_core 1.2.0 2024-10-05 00:59:54.386 [info] (app) Using unicode-display_width 2.6.0 2024-10-05 00:59:54.390 [info] (app) Using sorbet-runtime 0.5.11595 2024-10-05 00:59:54.394 [info] (app) Using simplecov-html 0.13.1 2024-10-05 00:59:54.398 [info] (app) Using simplecov_json_formatter 0.1.4 2024-10-05 00:59:54.408 [info] (app) Using i18n 1.14.6 2024-10-05 00:59:54.411 [info] (app) Using tzinfo 2.0.6 2024-10-05 00:59:54.415 [info] (app) Using redis-client 0.22.2 2024-10-05 00:59:54.421 [info] (app) Using minitest-retry 0.2.3 2024-10-05 00:59:54.425 [info] (app) Using nokogiri 1.16.7 (x86_64-linux) 2024-10-05 00:59:54.429 [info] (app) Using brakeman 6.2.1 Using psych 5.1.2 2024-10-05 00:59:54.443 [info] (app) Using puma 6.4.3 2024-10-05 00:59:54.447 [info] (app) Using websocket-driver 0.7.6 Using net-protocol 0.2.2 2024-10-05 00:59:54.457 [info] (app) Using multi_xml 0.7.1 2024-10-05 00:59:54.470 [info] (app) Using sentry-ruby 5.19.0 2024-10-05 00:59:54.475 [info] (app) Using addressable 2.8.7 2024-10-05 00:59:54.478 [info] (app) Using parser 3.3.5.0 2024-10-05 00:59:54.482 [info] (app) Using rack-session 1.0.2 2024-10-05 00:59:54.487 [info] (app) Using rack-test 2.1.0 2024-10-05 00:59:54.491 [info] (app) Using warden 1.2.9 2024-10-05 00:59:54.497 [info] (app) Using rack-cors 2.0.2 2024-10-05 00:59:54.502 [info] (app) Using roda 3.84.0 2024-10-05 00:59:54.506 [info] (app) Using rack-mini-profiler 3.3.1 2024-10-05 00:59:54.510 [info] (app) Using sprockets 4.2.1 Using net-http 0.4.1 2024-10-05 00:59:54.518 [info] (app) Using rackup 1.0.0 2024-10-05 00:59:54.524 [info] (app) Using figaro 1.2.0 2024-10-05 00:59:54.528 [info] (app) Using bundler-audit 0.9.2 2024-10-05 00:59:54.532 [info] (app) Using aws-sigv4 1.10.0 2024-10-05 00:59:54.538 [info] (app) Using binding_of_caller 1.0.1 2024-10-05 00:59:54.542 [info] (app) Using bootsnap 1.18.4 2024-10-05 00:59:54.546 [info] (app) Using reline 0.5.10 2024-10-05 00:59:54.550 [info] (app) Using postmark 1.25.1 2024-10-05 00:59:54.555 [info] (app) Using childprocess 5.1.0 2024-10-05 00:59:54.563 [info] (app) Fetching rbs 3.6.1 Using faraday-multipart 1.0.4 2024-10-05 00:59:54.567 [info] (app) Using omniauth 1.9.2 2024-10-05 00:59:54.572 [info] (app) Using unicode-emoji 3.5.0 2024-10-05 00:59:54.577 [info] (app) Using snaky_hash 2.0.1 2024-10-05 00:59:54.581 [info] (app) Using ruby-vips 2.2.2 2024-10-05 00:59:54.585 [info] (app) Using ruby-graphviz 1.2.5 2024-10-05 00:59:54.589 [info] (app) Using selenium-webdriver 4.24.0 2024-10-05 00:59:54.593 [info] (app) Using code_analyzer 0.5.5 2024-10-05 00:59:54.597 [info] (app) Using pry 0.14.2 2024-10-05 00:59:54.601 [info] (app) Using terser 1.2.3 2024-10-05 00:59:54.605 [info] (app) Using haml 6.3.0 2024-10-05 00:59:54.609 [info] (app) Using karafka-rdkafka 0.17.6 2024-10-05 00:59:54.613 [info] (app) Using minitest-reporters 1.7.1 2024-10-05 00:59:54.617 [info] (app) Using loofah 2.22.0 2024-10-05 00:59:54.622 [info] (app) Using xpath 3.2.0 2024-10-05 00:59:54.629 [info] (app) Using rdoc 6.7.0 2024-10-05 00:59:54.634 [info] (app) Using net-imap 0.4.16 2024-10-05 00:59:54.640 [info] (app) Using net-pop 0.1.2 2024-10-05 00:59:54.644 [info] (app) Using net-smtp 0.5.0 2024-10-05 00:59:54.649 [info] (app) Using rqrcode 2.2.0 2024-10-05 00:59:54.654 [info] (app) Using simplecov 0.22.0 2024-10-05 00:59:54.658 [info] (app) Using activesupport 7.1.4 2024-10-05 00:59:54.663 [info] (app) Using sidekiq 7.3.2 2024-10-05 00:59:54.670 [info] (app) Using redis 5.3.0 2024-10-05 00:59:54.675 [info] (app) Using faraday-net_http 3.3.0 2024-10-05 00:59:54.679 [info] (app) Using httparty 0.22.0 2024-10-05 00:59:54.683 [info] (app) Using css_parser 1.19.0 2024-10-05 00:59:54.688 [info] (app) Using rubocop-ast 1.32.3 2024-10-05 00:59:54.693 [info] (app) Using aws-sdk-core 3.206.0 2024-10-05 00:59:54.697 [info] (app) Using launchy 3.0.1 2024-10-05 00:59:54.719 [info] (app) Using image_processing 1.13.0 2024-10-05 00:59:54.726 [info] (app) Using pry-stack_explorer 0.6.1 2024-10-05 00:59:54.730 [info] (app) Using karafka-core 2.4.4 2024-10-05 00:59:54.735 [info] (app) Using rails-html-sanitizer 1.6.0 2024-10-05 00:59:54.740 [info] (app) Using capybara 3.40.0 2024-10-05 00:59:54.744 [info] (app) Using irb 1.14.0 2024-10-05 00:59:54.750 [info] (app) Using mail 2.8.1 2024-10-05 00:59:54.754 [info] (app) Using rails-dom-testing 2.2.0 2024-10-05 00:59:54.759 [info] (app) Using globalid 1.2.1 2024-10-05 00:59:54.764 [info] (app) Using activemodel 7.1.4 2024-10-05 00:59:54.768 [info] (app) Using active_hash 3.3.1 2024-10-05 00:59:54.775 [info] (app) Using inline_svg 1.10.0 2024-10-05 00:59:54.780 [info] (app) Using view_component 3.14.0 2024-10-05 00:59:54.788 [info] (app) Using indefinite_article 0.2.5 2024-10-05 00:59:54.796 [info] (app) Using masamune-ast 2.0.2 2024-10-05 00:59:54.805 [info] (app) Using factory_bot 6.5.0 2024-10-05 00:59:54.816 [info] (app) Using rails_best_practices 1.23.2 2024-10-05 00:59:54.822 [info] (app) Using sentry-sidekiq 5.19.0 2024-10-05 00:59:54.827 [info] (app) Using faraday 2.12.0 2024-10-05 00:59:54.831 [info] (app) Using premailer 1.27.0 2024-10-05 00:59:54.839 [info] (app) Using rubocop 1.65.1 2024-10-05 00:59:54.844 [info] (app) Using aws-sdk-kms 1.91.0 2024-10-05 00:59:54.851 [info] (app) Using letter_opener 1.10.0 2024-10-05 00:59:54.960 [info] (app) Using waterdrop 2.8.0 2024-10-05 00:59:54.963 [info] (app) Using capybara-lockstep 2.2.2 2024-10-05 00:59:54.967 [info] (app) Using debug 1.9.2 2024-10-05 00:59:54.975 [info] (app) Using extended_email_reply_parser 0.5.1 2024-10-05 00:59:54.980 [info] (app) Using capybara-email 3.0.2 2024-10-05 00:59:54.983 [info] (app) Using actionview 7.1.4 2024-10-05 00:59:54.987 [info] (app) Using activejob 7.1.4 2024-10-05 00:59:54.990 [info] (app) Using activerecord 7.1.4 2024-10-05 00:59:54.994 [info] (app) Using valid_email 0.2.1 2024-10-05 00:59:54.998 [info] (app) Using bullet_train-roles 1.7.22 2024-10-05 00:59:55.005 [info] (app) Using faraday-follow_redirects 0.3.0 Using ruby-openai 7.1.0 2024-10-05 00:59:55.009 [info] (app) Using oauth2 2.0.9 2024-10-05 00:59:55.013 [info] (app) Using rubocop-performance 1.21.1 2024-10-05 00:59:55.016 [info] (app) Using standard-custom 1.0.2 2024-10-05 00:59:55.020 [info] (app) Using aws-sdk-s3 1.162.0 2024-10-05 00:59:55.023 [info] (app) Using karafka 2.4.12 2024-10-05 00:59:55.043 [info] (app) Using actionpack 7.1.4 Using nice_partials 0.10.1 Using jbuilder 2.13.0 2024-10-05 00:59:55.050 [info] (app) Using microscope 1.1.1 Using pagy_cursor 0.8.0 Using rails-erd 1.7.2 2024-10-05 00:59:55.059 [info] (app) Using cloudinary 2.2.0 2024-10-05 00:59:55.066 [info] (app) Using omniauth-oauth2 1.7.3 2024-10-05 00:59:55.071 [info] (app) Using standard-performance 1.4.0 2024-10-05 00:59:55.081 [info] (app) Using karafka-web 0.10.3 2024-10-05 00:59:55.085 [info] (app) Using actioncable 7.1.4 Using activestorage 7.1.4 Using actionmailer 7.1.4 Using active_link_to 1.0.5 Using meta-tags 2.22.0 Using railties 7.1.4 Using omniauth-rails_csrf_protection 0.1.2 2024-10-05 00:59:55.088 [info] (app) Using sprockets-rails 3.5.2 2024-10-05 00:59:55.108 [info] (app) Using omniauth-stripe-connect 2.10.1 Using omniauth-google-oauth2 0.8.0 Using omniauth-microsoft_graph 0.3.3 2024-10-05 00:59:55.110 [info] (app) Using standard 1.40.0 2024-10-05 00:59:55.118 [info] (app) Using actionmailbox 7.1.4 Using actiontext 7.1.4 2024-10-05 00:59:55.121 [info] (app) Using premailer-rails 1.12.0 Using postmark-rails 0.22.1 2024-10-05 00:59:55.128 [info] (app) Using turbo-rails 2.0.7 Using cable_ready 5.0.5 Using responders 3.1.1 Using doorkeeper 5.7.1 Using cssbundling-rails 1.4.1 Using factory_bot_rails 6.4.3 2024-10-05 00:59:55.130 [info] (app) Using haml-rails 2.1.0 2024-10-05 00:59:55.132 [info] (app) Using jsbundling-rails 1.3.1 2024-10-05 00:59:55.135 [info] (app) Using sentry-rails 5.19.0 2024-10-05 00:59:55.138 [info] (app) Using stimulus-rails 1.3.4 2024-10-05 00:59:55.142 [info] (app) Using web-console 4.2.1 2024-10-05 00:59:55.146 [info] (app) Using rails 7.1.4 2024-10-05 00:59:55.152 [info] (app) Using turbo_power 0.6.2 2024-10-05 00:59:55.155 [info] (app) Using devise 4.9.4 2024-10-05 00:59:55.175 [info] (app) Using bullet_train-has_uuid 1.7.22 Using bullet_train-routes 1.0.0 Using bullet_train-scope_validator 1.7.22 Using bullet_train-super_load_and_authorize_resource 1.7.22 Using bullet_train-fields 1.7.22 Using showcase-rails 0.4.6 Using bullet_train-super_scaffolding 1.7.22 Using jbuilder-schema 2.6.9 Using bullet_train-integrations 1.7.22 Using bullet_train-integrations-stripe 1.7.22 Using bullet_train-obfuscates_id 1.7.22 Using bullet_train-outgoing_webhooks 1.7.22 Using bullet_train-scope_questions 1.7.22 Using bullet_train-sortable 1.7.22 2024-10-05 00:59:55.176 [info] (app) Using magic_test 0.1.0 2024-10-05 00:59:55.177 [info] (app) Using avo 3.4.1 2024-10-05 00:59:55.178 [info] (app) Using devise-pwned_password 0.1.12 2024-10-05 00:59:55.179 [info] (app) Using devise-two-factor 6.0.0 2024-10-05 00:59:55.182 [info] (app) Using bullet_train-themes 1.7.22 2024-10-05 00:59:55.195 [info] (app) Using bullet_train 1.7.22 2024-10-05 00:59:55.195 [info] (app) Using bullet_train-themes-tailwind_css 1.7.22 2024-10-05 00:59:55.197 [info] (app) Using bullet_train-api 1.7.22 2024-10-05 00:59:55.198 [info] (app) Using bullet_train-themes-light 1.7.22 2024-10-05 00:59:55.201 [info] (app) Using bullet_train-incoming_webhooks 1.7.22 2024-10-05 00:59:55.227 [info] (app) Installing rbs 3.6.1 with native extensions 2024-10-05 00:59:58.488 [info] (app) Fetching ruby-lsp 0.18.4 2024-10-05 00:59:58.602 [info] (app) Installing ruby-lsp 0.18.4 2024-10-05 00:59:58.620 [info] (app) Fetching ruby-lsp-rails 0.3.16 2024-10-05 00:59:58.690 [info] (app) Installing ruby-lsp-rails 0.3.16 2024-10-05 00:59:58.726 [info] (app) Bundle complete! 77 Gemfile dependencies, 275 gems now installed. 2024-10-05 00:59:58.726 [info] (app) Use `bundle info [gemname]` to see where a bundled gem is installed. 2024-10-05 00:59:58.726 [info] (app) 2 installed gems you directly depend on are looking for funding. Run `bundle fund` for details 2024-10-05 01:00:00.506 [info] (app) Initializing Ruby LSP v0.18.4... 2024-10-05 01:00:00.529 [info] (app) Auto detected formatter: none 2024-10-05 01:00:00.529 [info] (app) Auto detected linters: 2024-10-05 01:00:00.529 [info] (app) Detected test library: rails 2024-10-05 01:00:00.529 [info] (app) Finished initializing Ruby LSP! 2024-10-05 01:00:00.572 [info] (app) [Standard Ruby] Activating Standard Ruby LSP addon v1.40.0 2024-10-05 01:00:01.068 [info] (app) [Standard Ruby] Initialized Standard Ruby LSP addon 1.40.0 2024-10-05 01:00:01.068 [info] (app) Activating Ruby LSP Rails addon v0.3.16 2024-10-05 01:00:01.100 [info] (app) Ruby LSP Rails booting server 2024-10-05 01:00:06.679 [info] (app) Finished booting Ruby LSP Rails server 2024-10-05 01:00:24.064 [info] (app) Fetching search index for Rails documentation 2024-10-05 01:00:24.364 [info] (app) Finished fetching search index for Rails documentationWITH FEATURE
ruby-lsp output2024-10-05 01:04:10.757 [info] (app) Checking if chruby is available on the path with command: /bin/bash -i -c 'chruby --version' 2024-10-05 01:04:10.964 [info] (app) Checking if rbenv is available on the path with command: /bin/bash -i -c 'rbenv --version' 2024-10-05 01:04:11.159 [info] (app) Discovered version manager rbenv 2024-10-05 01:04:11.159 [info] (app) Running command: `rbenv exec ruby -W0 -rjson -e 'STDERR.print("RUBY_LSP_ACTIVATION_SEPARATOR" + { env: ENV.to_h, yjit: !!defined?(RubyVM:: YJIT), version: RUBY_VERSION }.to_json + "RUBY_LSP_ACTIVATION_SEPARATOR")'` in /workspaces/myapp using shell: /bin/bash 2024-10-05 01:04:33.653 [info] (app) Ruby LSP> Skipping custom bundle setup since /workspaces/myapp/.ruby-lsp/Gemfile.lock already exists and is up to date 2024-10-05 01:04:33.666 [info] (app) Ruby LSP> Running bundle install for the custom bundle. This may take a while... Ruby LSP> Command: ((bundle check && bundle update ruby-lsp ruby-lsp-rails) || bundle install) 1>&2 2024-10-05 01:04:33.962 [info] (app) The Gemfile's dependencies are satisfied 2024-10-05 01:04:34.223 [info] (app) Could not find gem 'ruby-lsp'. 2024-10-05 01:04:34.625 [info] (app) Using rake 13.2.1 2024-10-05 01:04:34.625 [info] (app) Using base64 0.2.0 Using bigdecimal 3.1.8 2024-10-05 01:04:34.626 [info] (app) Using concurrent-ruby 1.3.4 2024-10-05 01:04:34.626 [info] (app) Using connection_pool 2.4.1 2024-10-05 01:04:34.626 [info] (app) Using drb 2.2.1 2024-10-05 01:04:34.627 [info] (app) Using i18n 1.14.6 2024-10-05 01:04:34.627 [info] (app) Using minitest 5.25.1 2024-10-05 01:04:34.627 [info] (app) Using mutex_m 0.2.0 2024-10-05 01:04:34.627 [info] (app) Using tzinfo 2.0.6 2024-10-05 01:04:34.628 [info] (app) Using activesupport 7.1.4 2024-10-05 01:04:34.628 [info] (app) Using builder 3.3.0 2024-10-05 01:04:34.628 [info] (app) Using erubi 1.13.0 2024-10-05 01:04:34.628 [info] (app) Using racc 1.8.1 2024-10-05 01:04:34.629 [info] (app) Using nokogiri 1.16.7 (x86_64-linux) 2024-10-05 01:04:34.629 [info] (app) Using rails-dom-testing 2.2.0 2024-10-05 01:04:34.629 [info] (app) Using crass 1.0.6 2024-10-05 01:04:34.630 [info] (app) Using loofah 2.22.0 2024-10-05 01:04:34.630 [info] (app) Using rails-html-sanitizer 1.6.0 2024-10-05 01:04:34.631 [info] (app) Using actionview 7.1.4 2024-10-05 01:04:34.631 [info] (app) Using rack 2.2.9 2024-10-05 01:04:34.631 [info] (app) Using rack-session 1.0.2 2024-10-05 01:04:34.632 [info] (app) Using rack-test 2.1.0 2024-10-05 01:04:34.632 [info] (app) Using actionpack 7.1.4 2024-10-05 01:04:34.632 [info] (app) Using nio4r 2.7.3 2024-10-05 01:04:34.633 [info] (app) Using websocket-extensions 0.1.5 2024-10-05 01:04:34.633 [info] (app) Using websocket-driver 0.7.6 2024-10-05 01:04:34.634 [info] (app) Using zeitwerk 2.6.18 2024-10-05 01:04:34.634 [info] (app) Using actioncable 7.1.4 2024-10-05 01:04:34.634 [info] (app) Using globalid 1.2.1 2024-10-05 01:04:34.635 [info] (app) Using activejob 7.1.4 2024-10-05 01:04:34.635 [info] (app) Using activemodel 7.1.4 2024-10-05 01:04:34.635 [info] (app) Using timeout 0.4.1 2024-10-05 01:04:34.635 [info] (app) Using activerecord 7.1.4 2024-10-05 01:04:34.636 [info] (app) Using marcel 1.0.4 2024-10-05 01:04:34.636 [info] (app) Using activestorage 7.1.4 2024-10-05 01:04:34.636 [info] (app) Using mini_mime 1.1.5 2024-10-05 01:04:34.636 [info] (app) Using date 3.3.4 2024-10-05 01:04:34.636 [info] (app) Using net-protocol 0.2.2 2024-10-05 01:04:34.637 [info] (app) Using net-imap 0.4.16 2024-10-05 01:04:34.637 [info] (app) Using net-pop 0.1.2 2024-10-05 01:04:34.637 [info] (app) Using net-smtp 0.5.0 2024-10-05 01:04:34.637 [info] (app) Using mail 2.8.1 2024-10-05 01:04:34.638 [info] (app) Using actionmailbox 7.1.4 2024-10-05 01:04:34.638 [info] (app) Using actionmailer 7.1.4 2024-10-05 01:04:34.638 [info] (app) Using actiontext 7.1.4 2024-10-05 01:04:34.638 [info] (app) Using active_hash 3.3.1 2024-10-05 01:04:34.639 [info] (app) Using public_suffix 6.0.1 2024-10-05 01:04:34.639 [info] (app) Using addressable 2.8.7 2024-10-05 01:04:34.639 [info] (app) Using active_link_to 1.0.5 2024-10-05 01:04:34.639 [info] (app) Using ansi 1.5.0 2024-10-05 01:04:34.640 [info] (app) Using ast 2.4.2 2024-10-05 01:04:34.640 [info] (app) Using docile 1.4.1 2024-10-05 01:04:34.640 [info] (app) Using dry-initializer 3.1.1 2024-10-05 01:04:34.640 [info] (app) Using csv 3.3.0 2024-10-05 01:04:34.641 [info] (app) Using multi_xml 0.7.1 2024-10-05 01:04:34.641 [info] (app) Using httparty 0.22.0 2024-10-05 01:04:34.641 [info] (app) Using inline_svg 1.10.0 2024-10-05 01:04:34.641 [info] (app) Using meta-tags 2.22.0 2024-10-05 01:04:34.642 [info] (app) Using pagy 6.5.0 2024-10-05 01:04:34.642 [info] (app) Using stringio 3.1.1 2024-10-05 01:04:34.642 [info] (app) Using psych 5.1.2 2024-10-05 01:04:34.642 [info] (app) Using rdoc 6.7.0 2024-10-05 01:04:34.642 [info] (app) Using io-console 0.7.2 2024-10-05 01:04:34.643 [info] (app) Using reline 0.5.10 2024-10-05 01:04:34.643 [info] (app) Using irb 1.14.0 2024-10-05 01:04:34.643 [info] (app) Using webrick 1.8.2 2024-10-05 01:04:34.643 [info] (app) Using rackup 1.0.0 2024-10-05 01:04:34.644 [info] (app) Using thor 1.3.2 2024-10-05 01:04:34.644 [info] (app) Using railties 7.1.4 2024-10-05 01:04:34.644 [info] (app) Using turbo-rails 2.0.7 2024-10-05 01:04:34.644 [info] (app) Using turbo_power 0.6.2 2024-10-05 01:04:34.645 [info] (app) Using method_source 1.1.0 2024-10-05 01:04:34.646 [info] (app) Using view_component 3.14.0 2024-10-05 01:04:34.646 [info] (app) Using avo 3.4.1 2024-10-05 01:04:34.646 [info] (app) Using awesome_print 1.9.2 2024-10-05 01:04:34.646 [info] (app) Using aws-eventstream 1.3.0 2024-10-05 01:04:34.647 [info] (app) Using aws-partitions 1.976.0 2024-10-05 01:04:34.647 [info] (app) Using aws-sigv4 1.10.0 2024-10-05 01:04:34.647 [info] (app) Using jmespath 1.6.2 2024-10-05 01:04:34.648 [info] (app) Using aws-sdk-core 3.206.0 2024-10-05 01:04:34.648 [info] (app) Using aws-sdk-kms 1.91.0 2024-10-05 01:04:34.648 [info] (app) Using aws-sdk-s3 1.162.0 2024-10-05 01:04:34.648 [info] (app) Using bcrypt 3.1.20 2024-10-05 01:04:34.648 [info] (app) Using bindex 0.8.1 2024-10-05 01:04:34.648 [info] (app) Using debug_inspector 1.2.0 2024-10-05 01:04:34.649 [info] (app) Using binding_of_caller 1.0.1 2024-10-05 01:04:34.649 [info] (app) Using msgpack 1.7.2 2024-10-05 01:04:34.649 [info] (app) Using bootsnap 1.18.4 2024-10-05 01:04:34.649 [info] (app) Using brakeman 6.2.1 2024-10-05 01:04:34.649 [info] (app) Using bundler 2.4.10 2024-10-05 01:04:34.649 [info] (app) Using rails 7.1.4 2024-10-05 01:04:34.650 [info] (app) Using bullet_train-has_uuid 1.7.22 2024-10-05 01:04:34.650 [info] (app) Using cancancan 3.6.1 2024-10-05 01:04:34.650 [info] (app) Using bullet_train-roles 1.7.22 2024-10-05 01:04:34.650 [info] (app) Using bullet_train-routes 1.0.0 2024-10-05 01:04:34.651 [info] (app) Using bullet_train-scope_validator 1.7.22 2024-10-05 01:04:34.651 [info] (app) Using bullet_train-super_load_and_authorize_resource 1.7.22 2024-10-05 01:04:34.651 [info] (app) Using chronic 0.10.2 2024-10-05 01:04:34.651 [info] (app) Using uri 0.13.1 2024-10-05 01:04:34.651 [info] (app) Using net-http 0.4.1 2024-10-05 01:04:34.651 [info] (app) Using faraday-net_http 3.3.0 2024-10-05 01:04:34.652 [info] (app) Using json 2.7.2 2024-10-05 01:04:34.652 [info] (app) Using logger 1.6.1 2024-10-05 01:04:34.652 [info] (app) Using faraday 2.12.0 2024-10-05 01:04:34.652 [info] (app) Using faraday-follow_redirects 0.3.0 2024-10-05 01:04:34.653 [info] (app) Using multipart-post 2.4.1 2024-10-05 01:04:34.653 [info] (app) Using faraday-multipart 1.0.4 2024-10-05 01:04:34.653 [info] (app) Using ostruct 0.6.0 2024-10-05 01:04:34.654 [info] (app) Using cloudinary 2.2.0 2024-10-05 01:04:34.654 [info] (app) Using phonelib 0.9.2 2024-10-05 01:04:34.654 [info] (app) Using bullet_train-fields 1.7.22 2024-10-05 01:04:34.654 [info] (app) Using nice_partials 0.10.1 2024-10-05 01:04:34.655 [info] (app) Using bullet_train-themes 1.7.22 2024-10-05 01:04:34.655 [info] (app) Using observer 0.1.2 2024-10-05 01:04:34.655 [info] (app) Using thread-local 1.1.0 2024-10-05 01:04:34.655 [info] (app) Using cable_ready 5.0.5 2024-10-05 01:04:34.656 [info] (app) Using colorizer 0.0.2 2024-10-05 01:04:34.657 [info] (app) Using commonmarker 1.1.5 (x86_64-linux) 2024-10-05 01:04:34.657 [info] (app) Using orm_adapter 0.5.0 2024-10-05 01:04:34.657 [info] (app) Using responders 3.1.1 2024-10-05 01:04:34.658 [info] (app) Using warden 1.2.9 2024-10-05 01:04:34.658 [info] (app) Using devise 4.9.4 2024-10-05 01:04:34.658 [info] (app) Using pwned 2.4.1 2024-10-05 01:04:34.658 [info] (app) Using devise-pwned_password 0.1.12 2024-10-05 01:04:34.658 [info] (app) Using charlock_holmes 0.7.9 2024-10-05 01:04:34.659 [info] (app) Using email_reply_parser 0.5.11 2024-10-05 01:04:34.659 [info] (app) Using extended_email_reply_parser 0.5.1 2024-10-05 01:04:34.659 [info] (app) Using fastimage 2.3.1 2024-10-05 01:04:34.659 [info] (app) Using figaro 1.2.0 2024-10-05 01:04:34.659 [info] (app) Using hiredis 0.6.3 2024-10-05 01:04:34.660 [info] (app) Using http_accept_language 2.1.1 2024-10-05 01:04:34.660 [info] (app) Using mini_magick 4.13.2 2024-10-05 01:04:34.660 [info] (app) Using ffi 1.17.0 (x86_64-linux-gnu) 2024-10-05 01:04:34.661 [info] (app) Using ruby-vips 2.2.2 2024-10-05 01:04:34.661 [info] (app) Using image_processing 1.13.0 2024-10-05 01:04:34.662 [info] (app) Using microscope 1.1.1 Using hashie 5.0.0 Using omniauth 1.9.2 Using possessive 1.0.1 Using css_parser 1.19.0 Using htmlentities 4.3.4 Using premailer 1.27.0 2024-10-05 01:04:34.663 [info] (app) Using premailer-rails 1.12.0 2024-10-05 01:04:34.663 [info] (app) Using event_stream_parser 1.0.0 2024-10-05 01:04:34.664 [info] (app) Using ruby-openai 7.1.0 2024-10-05 01:04:34.664 [info] (app) Using showcase-rails 0.4.6 2024-10-05 01:04:34.664 [info] (app) Using redis-client 0.22.2 2024-10-05 01:04:34.665 [info] (app) Using sidekiq 7.3.2 2024-10-05 01:04:34.665 [info] (app) Using unicode-version 1.4.0 2024-10-05 01:04:34.665 [info] (app) Using unicode-emoji 3.5.0 2024-10-05 01:04:34.665 [info] (app) Using simpleidn 0.2.3 2024-10-05 01:04:34.666 [info] (app) Using valid_email 0.2.1 2024-10-05 01:04:34.666 [info] (app) Using xxhash 0.5.0 2024-10-05 01:04:34.667 [info] (app) Using bullet_train 1.7.22 2024-10-05 01:04:34.667 [info] (app) Using indefinite_article 0.2.5 2024-10-05 01:04:34.667 [info] (app) Using prism 1.0.0 2024-10-05 01:04:34.667 [info] (app) Using masamune-ast 2.0.2 2024-10-05 01:04:34.668 [info] (app) Using bullet_train-super_scaffolding 1.7.22 2024-10-05 01:04:34.668 [info] (app) Using doorkeeper 5.7.1 2024-10-05 01:04:34.668 [info] (app) Using factory_bot 6.5.0 2024-10-05 01:04:34.669 [info] (app) Using jbuilder 2.13.0 2024-10-05 01:04:34.669 [info] (app) Using jbuilder-schema 2.6.9 2024-10-05 01:04:34.669 [info] (app) Using pagy_cursor 0.8.0 2024-10-05 01:04:34.669 [info] (app) Using rack-cors 2.0.2 2024-10-05 01:04:34.670 [info] (app) Using bullet_train-api 1.7.22 2024-10-05 01:04:34.670 [info] (app) Using bullet_train-incoming_webhooks 1.7.22 2024-10-05 01:04:34.670 [info] (app) Using bullet_train-integrations 1.7.22 2024-10-05 01:04:34.670 [info] (app) Using omniauth-rails_csrf_protection 0.1.2 2024-10-05 01:04:34.671 [info] (app) Using jwt 2.1.0 2024-10-05 01:04:34.671 [info] (app) Using version_gem 1.1.4 2024-10-05 01:04:34.673 [info] (app) Using snaky_hash 2.0.1 2024-10-05 01:04:34.674 [info] (app) Using oauth2 2.0.9 2024-10-05 01:04:34.675 [info] (app) Using omniauth-oauth2 1.7.3 2024-10-05 01:04:34.675 [info] (app) Using omniauth-stripe-connect 2.10.1 2024-10-05 01:04:34.676 [info] (app) Using stripe 13.0.0 2024-10-05 01:04:34.676 [info] (app) Using bullet_train-integrations-stripe 1.7.22 2024-10-05 01:04:34.678 [info] (app) Using hashids 1.0.6 2024-10-05 01:04:34.678 [info] (app) Using bullet_train-obfuscates_id 1.7.22 2024-10-05 01:04:34.679 [info] (app) Using bullet_train-outgoing_webhooks 1.7.22 2024-10-05 01:04:34.680 [info] (app) Using bullet_train-scope_questions 1.7.22 2024-10-05 01:04:34.681 [info] (app) Using bullet_train-sortable 1.7.22 2024-10-05 01:04:34.681 [info] (app) Using bullet_train-themes-tailwind_css 1.7.22 2024-10-05 01:04:34.682 [info] (app) Using bullet_train-themes-light 1.7.22 2024-10-05 01:04:34.682 [info] (app) Using bundler-audit 0.9.2 2024-10-05 01:04:34.683 [info] (app) Using matrix 0.4.2 2024-10-05 01:04:34.683 [info] (app) Using regexp_parser 2.9.2 2024-10-05 01:04:34.683 [info] (app) Using xpath 3.2.0 2024-10-05 01:04:34.684 [info] (app) Using capybara 3.40.0 2024-10-05 01:04:34.684 [info] (app) Using capybara-email 3.0.2 2024-10-05 01:04:34.685 [info] (app) Using ruby2_keywords 0.0.5 2024-10-05 01:04:34.685 [info] (app) Using rexml 3.3.7 2024-10-05 01:04:34.685 [info] (app) Using rubyzip 2.3.2 2024-10-05 01:04:34.686 [info] (app) Using websocket 1.2.11 2024-10-05 01:04:34.686 [info] (app) Using selenium-webdriver 4.24.0 2024-10-05 01:04:34.686 [info] (app) Using capybara-lockstep 2.2.2 2024-10-05 01:04:34.687 [info] (app) Using childprocess 5.1.0 2024-10-05 01:04:34.687 [info] (app) Using choice 0.2.0 2024-10-05 01:04:34.687 [info] (app) Using chunky_png 1.4.0 2024-10-05 01:04:34.688 [info] (app) Using sexp_processor 4.17.2 2024-10-05 01:04:34.688 [info] (app) Using code_analyzer 0.5.5 2024-10-05 01:04:34.688 [info] (app) Using coderay 1.1.3 2024-10-05 01:04:34.688 [info] (app) Using colorize 1.1.0 2024-10-05 01:04:34.689 [info] (app) Using cssbundling-rails 1.4.1 2024-10-05 01:04:34.689 [info] (app) Using debug 1.9.2 2024-10-05 01:04:34.689 [info] (app) Using rotp 6.3.0 2024-10-05 01:04:34.689 [info] (app) Using devise-two-factor 6.0.0 2024-10-05 01:04:34.689 [info] (app) Using erubis 2.7.0 2024-10-05 01:04:34.690 [info] (app) Using execjs 2.9.1 2024-10-05 01:04:34.690 [info] (app) Using factory_bot_rails 6.4.3 2024-10-05 01:04:34.690 [info] (app) Using foreman 0.88.1 2024-10-05 01:04:34.690 [info] (app) Using temple 0.10.3 2024-10-05 01:04:34.691 [info] (app) Using tilt 2.4.0 2024-10-05 01:04:34.691 [info] (app) Using haml 6.3.0 2024-10-05 01:04:34.692 [info] (app) Using haml-rails 2.1.0 2024-10-05 01:04:34.692 [info] (app) Using honeybadger 5.15.6 2024-10-05 01:04:34.692 [info] (app) Using jsbundling-rails 1.3.1 2024-10-05 01:04:34.693 [info] (app) Using mini_portile2 2.8.7 2024-10-05 01:04:34.693 [info] (app) Using karafka-rdkafka 0.17.6 2024-10-05 01:04:34.693 [info] (app) Using karafka-core 2.4.4 2024-10-05 01:04:34.694 [info] (app) Using waterdrop 2.8.0 2024-10-05 01:04:34.694 [info] (app) Using karafka 2.4.12 2024-10-05 01:04:34.694 [info] (app) Using roda 3.84.0 2024-10-05 01:04:34.695 [info] (app) Using karafka-web 0.10.3 2024-10-05 01:04:34.695 [info] (app) Using knapsack_pro 7.8.0 2024-10-05 01:04:34.695 [info] (app) Using language_server-protocol 3.17.0.3 2024-10-05 01:04:34.696 [info] (app) Using launchy 3.0.1 2024-10-05 01:04:34.696 [info] (app) Using letter_opener 1.10.0 2024-10-05 01:04:34.696 [info] (app) Using lint_roller 1.1.0 2024-10-05 01:04:34.697 [info] (app) Using pry 0.14.2 2024-10-05 01:04:34.697 [info] (app) Using pry-stack_explorer 0.6.1 2024-10-05 01:04:34.697 [info] (app) Using magic_test 0.1.0 2024-10-05 01:04:34.698 [info] (app) Using ruby-progressbar 1.13.0 2024-10-05 01:04:34.699 [info] (app) Using minitest-reporters 1.7.1 2024-10-05 01:04:34.699 [info] (app) Using minitest-retry 0.2.3 2024-10-05 01:04:34.699 [info] (app) Using omniauth-google-oauth2 0.8.0 2024-10-05 01:04:34.700 [info] (app) Using omniauth-microsoft_graph 0.3.3 2024-10-05 01:04:34.700 [info] (app) Using parallel 1.26.3 2024-10-05 01:04:34.700 [info] (app) Using parser 3.3.5.0 2024-10-05 01:04:34.700 [info] (app) Using pg 1.5.8 2024-10-05 01:04:34.701 [info] (app) Using postmark 1.25.1 2024-10-05 01:04:34.701 [info] (app) Using postmark-rails 0.22.1 2024-10-05 01:04:34.701 [info] (app) Using puma 6.4.3 2024-10-05 01:04:34.702 [info] (app) Using rack-mini-profiler 3.3.1 2024-10-05 01:04:34.702 [info] (app) Using ruby-graphviz 1.2.5 2024-10-05 01:04:34.702 [info] (app) Using rails-erd 1.7.2 2024-10-05 01:04:34.703 [info] (app) Using rails_autoscale_agent 0.12.0 2024-10-05 01:04:34.703 [info] (app) Using require_all 3.0.0 2024-10-05 01:04:34.703 [info] (app) Using rails_best_practices 1.23.2 2024-10-05 01:04:34.704 [info] (app) Using rainbow 3.1.1 2024-10-05 01:04:34.704 [info] (app) Using redis 5.3.0 2024-10-05 01:04:34.704 [info] (app) Using rqrcode_core 1.2.0 2024-10-05 01:04:34.705 [info] (app) Using rqrcode 2.2.0 2024-10-05 01:04:34.705 [info] (app) Using rubocop-ast 1.32.3 2024-10-05 01:04:34.705 [info] (app) Using unicode-display_width 2.6.0 2024-10-05 01:04:34.706 [info] (app) Using rubocop 1.65.1 2024-10-05 01:04:34.706 [info] (app) Using rubocop-performance 1.21.1 2024-10-05 01:04:34.706 [info] (app) Using sentry-ruby 5.19.0 2024-10-05 01:04:34.706 [info] (app) Using sentry-rails 5.19.0 2024-10-05 01:04:34.707 [info] (app) Using sentry-sidekiq 5.19.0 2024-10-05 01:04:34.707 [info] (app) Using simplecov-html 0.13.1 2024-10-05 01:04:34.707 [info] (app) Using simplecov_json_formatter 0.1.4 2024-10-05 01:04:34.707 [info] (app) Using simplecov 0.22.0 2024-10-05 01:04:34.709 [info] (app) Using sprockets 4.2.1 2024-10-05 01:04:34.709 [info] (app) Using sprockets-rails 3.5.2 2024-10-05 01:04:34.709 [info] (app) Using standard-custom 1.0.2 2024-10-05 01:04:34.710 [info] (app) Using standard-performance 1.4.0 2024-10-05 01:04:34.710 [info] (app) Using standard 1.40.0 2024-10-05 01:04:34.710 [info] (app) Using stimulus-rails 1.3.4 2024-10-05 01:04:34.711 [info] (app) Using terser 1.2.3 2024-10-05 01:04:34.711 [info] (app) Using web-console 4.2.1 2024-10-05 01:04:34.731 [info] (app) Bundle complete! 75 Gemfile dependencies, 271 gems now installed. 2024-10-05 01:04:34.731 [info] (app) Bundled gems are installed into `/bundle/vendor` 2024-10-05 01:04:34.733 [info] (app) 2 installed gems you directly depend on are looking for funding. Run `bundle fund` for details 2024-10-05 01:04:35.081 [info] (app) bundler: failed to load command: ruby-lsp (/home/vscode/.rbenv/versions/3.3.5/bin/ruby-lsp) 2024-10-05 01:04:35.081 [info] (app) /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/rubygems_integration.rb:308:in `block in replace_bin_path': can't find executable ruby-lsp for gem ruby-lsp. ruby-lsp is not currently included in the bundle, perhaps you meant to add it to your Gemfile? (Gem::Exception) from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/rubygems_integration.rb:336:in `block in replace_bin_path' from /home/vscode/.rbenv/versions/3.3.5/bin/ruby-lsp:25:in `<top (required)>' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/cli/exec.rb:58:in `load' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/cli/exec.rb:58:in `kernel_load' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/cli/exec.rb:23:in `run' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/cli.rb:492:in `exec' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/cli.rb:34:in `dispatch' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/cli.rb:28:in `start' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/exe/bundle:45:in `block in <top (required)>' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.4.10/exe/bundle:33:in `<top (required)>' from /home/vscode/.rbenv/versions/3.3.5/bin/bundle:25:in `load' from /home/vscode/.rbenv/versions/3.3.5/bin/bundle:25:in `<main>' 2024-10-05 01:04:35.085 [info] (app) [Error - 1:04:35 AM] Server initialization failed. 2024-10-05 01:04:35.085 [info] (app) Message: Pending response rejected since connection got disposed Code: -32097 2024-10-05 01:04:35.085 [info] (app) [Error - 1:04:35 AM] Ruby LSP client: couldn't create connection to server. 2024-10-05 01:04:35.085 [info] (app) Message: Pending response rejected since connection got disposed Code: -32097 2024-10-05 01:04:35.085 [error] (app) Error starting the server: Pending response rejected since connection got disposed 2024-10-05 01:04:35.086 [info] (app) [Error - 1:04:35 AM] Server process exited with code 1. 2024-10-05 01:04:45.840 [info] (app) [Error - 1:04:45 AM] Connection to server got closed. Server will not be restarted.The common pattern for me certainly has been existing app and beginning to use devcontainer - not starting fresh.
I didn't think this had anything to do with it because I have couple of projects running with devcontainer (added with
rails g devcontainer) and this feature and I thought they were working just fine... until I tried again.I can now reproduce the error. Unfortunately, it seems to be something to do with ruby-lsp. See Shopify/ruby-lsp#2607. Apparently setting
BUNDLE_PATHbreaks it.So, removed the volume and tried again, and this is what I found:
ruby-lsp's initialization creates a
.ruby-lspfolder with a Gemfile requiring ruby-lsp and ruby-lsp-rails. Then it should install it.On a newly created container, the
bundle installcommand succeeds and ruby-lsp fails to start. Then inside the container, ruby-lsp is installed:$ which ruby-lsp /home/vscode/.rbenv/shims/ruby-lsp
but then when you run it, it fails:
$ ruby-lsp Ruby LSP> Skipping custom bundle setup since /workspaces/timetracker/.ruby-lsp/Gemfile.lock already exists and is up to date Ruby LSP> Running bundle install for the custom bundle. This may take a while... Ruby LSP> Command: (bundle check || bundle install) 1>&2 The Gemfile's dependencies are satisfied bundler: failed to load command: ruby-lsp (/bundle/vendor/ruby/3.3.0/bin/ruby-lsp) /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/rubygems_integration.rb:265:in `block in replace_bin_path': can't find executable ruby-lsp for gem ruby-lsp. ruby-lsp is not currently included in the bundle, perhaps you meant to add it to your Gemfile? (Gem::Exception) from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/rubygems_integration.rb:293:in `block in replace_bin_path' from /bundle/vendor/ruby/3.3.0/bin/ruby-lsp:25:in `<top (required)>' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/cli/exec.rb:58:in `load' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/cli/exec.rb:58:in `kernel_load' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/cli/exec.rb:23:in `run' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/cli.rb:451:in `exec' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/vendor/thor/lib/thor/command.rb:28:in `run' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/vendor/thor/lib/thor.rb:527:in `dispatch' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/cli.rb:34:in `dispatch' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/vendor/thor/lib/thor/base.rb:584:in `start' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/cli.rb:28:in `start' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/exe/bundle:28:in `block in <top (required)>' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/friendly_errors.rb:117:in `with_friendly_errors' from /bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/exe/bundle:20:in `<top (required)>' from /home/vscode/.rbenv/versions/3.3.4/bin/bundle:25:in `load' from /home/vscode/.rbenv/versions/3.3.4/bin/bundle:25:in `<main>'
if you try to run the exe directly, you'll notice that
/bundle/vendor/ruby/3.3.0/bin/ruby-lspis missing. if you go to the.ruby-lspfolder and rubybundle installyou can see the gems are now installed.If you run
ruby-lspwithin the.ruby-lspfolder, it works:$ ruby-lsp Ruby LSP> Skipping custom bundle setup since LSP dependencies are already in /workspaces/timetracker/.ruby-lsp/Gemfile Ruby LSP> Running bundle install for the custom bundle. This may take a while... Ruby LSP> Command: (bundle check || bundle install) 1>&2 The Gemfile's dependencies are satisfied
if you run outside (in your project's root folder), it doesn't work (same output as the error above).
If you run using the absolute path to the bin directory (
/bundle/vendor/ruby/3.3.0/bin/ruby-lsp), it doesn't work either.If you run using the absolute path to the gem directory (
/bundle/vendor/ruby/3.3.0/gems/ruby-lsp-0.19.1/exe/ruby-lsp), it doesn't work either.Prepending
bundle execdoesn't do anything either.I now don't understand what's the difference between a newly created project vs an existing one - at some point, both scenarios build the image/container from scratch.
I'm still trying to understand what's the difference between a newly created rails project vs an existing one with new devcontainer config. Both have pretty much the same setup: same
$BUNDLE_PATH, same$PATH, sameruby-lspversion (0.19.1).With the existing project with new devcontainer config, however, it seems to break when the rubygems bin (
/bundle/vendor/ruby/3.3.0/bin/ruby-lsp) tries to activate the gem bin path. In both cases it resolves correctly to/home/vscode/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/ruby-lsp-0.19.1/exe/ruby-lsp(though it's not in theBUNDLE_PATH), but in the existing project it fails to execute./bundle/vendor/ruby/3.3.0/gems/bundler-2.5.6/lib/bundler/rubygems_integration.rb:265:in `block in replace_bin_path': can't find executable ruby-lsp for gem ruby-lsp. ruby-lsp is not currently included in the bundle, perhaps you meant to add it to your Gemfile? (Gem::Exception)Question for @andrewn617. Off-topic and out of curiosity, why are we using rbenv in the devcontainer? If we stick to just one ruby version (for example using ruby's official docker images as our base image), it would be easier to just set up
/usr/local/bundleras a volume and we wouldn't be messing around with env vars at all (no rbenv in the path, no separate bundle_path), etc.@patriciomacadden a hacky fix for this is to add another
containerEnvof"GEM_HOME": "/bundle/vendor/ruby/3.3.0/"This restores
railsand other gems because they are now all installed in the same folder that bundler is using. ruby-lsp and other system gems all go back to working.This feels more right because it restores the functionality to 'base' before installing the feature while still having the persisted gem storage for faster boots.
I'm not sure of the downfalls of this.
I'm sure it could also be handled as a script to better match multiple ruby versions. Since that ruby version folder is a moving target. Something like
"postCreateCommand": "sudo chown -R ${USER} /bundle && export GEM_HOME=$BUNDLE_PATH/ruby/$(ruby -e 'puts RbConfig::CONFIG["ruby_version"]')"Pulling the script back to an install.sh with some in-line comments would probably be the clearest way to communicate intent of all the implementation details.
If you think that all sounds workable let me know and I'll pull together a PR
hey @JeremiahChurch , that indeed solves it. But I feel like it's a bit hacky to export the env var in the
postCreateCommandinstead of thecontainerEnvsection of thedevcontainer-feature.json. Unfortunately it wouldn't work because it won't do command substitutions (it's what I wanted to do before changing theBUNDLE_PATH).I'm still trying to figure out why this feature works for newly created projects but not for an existing one - I think that is key.
running into the same issue. following up 🙏
Hey all,
could you please check, if my change in rails/rails#53161 would solve your issues?
Thanks a lot.

Love the boot time saves provided by bundler-cache but it breaks most default external gem behavior.
railsand other gems are not available on the command line after enabling bundler-cache as a featurethis prevents ruby-lsp and other common IDE add-ons from running correctly.
without bundler-cache feature:
with bundler-cache feature:
I'm not enough of a smarty to know the right fix for this. I'm assuming a modification of the gem paths needs to be done but I'm unsure of the best way to implement that change within this feature bundle.
Would love if anyone has and ideas or pointers on the right direction of a fix. Thank you all <3
environment: unchanged Dockerfile for ruby 3.3.5, activestorage, postgres-client, github-cli & node devcontainer features