bin/rails aborted! with stacktrace involving prism and bundled_gems.rb
未關閉
還沒有人認領這個 Issue。
- 主要語言
- HTML
- 星號
- 32
- 分支
- 5
- 平均合併
- 14 小時 17 分鐘
- 30 天內合併 PR
- 1
描述
When using the snap on Ubuntu 24.04.3, then installing rails, then creating a new rails project causes crash/error stacktrace (see below).
Steps to reproduce the problem
- Install ruby with
sudo snap install ruby --classic gem install rails, which by default goes into~/.gem- Running
rails new storewill displaybin/rails aborted!and a stacktrace that I'll paste below - The project does get created, but running any of the following will crash with a similar stacktrace:
bin/rails serverbin/rails db:create
Expected behavior
No stacktrace.
Actual behavior
The commands do no succeed and produce the following:
/snap/ruby/438/lib/ruby/3.4.0/prism.rb:83: warning: already initialized constant Prism::BACKEND
/snap/ruby/438/lib/ruby/3.4.0/prism.rb:83: warning: previous definition of BACKEND was here
/snap/ruby/438/lib/ruby/3.4.0/prism.rb:83: warning: already initialized constant Prism::BACKEND
/snap/ruby/438/lib/ruby/3.4.0/prism.rb:83: warning: previous definition of BACKEND was here
/snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require': NameError
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
from /snap/ruby/438/lib/ruby/3.4.0/prism.rb:85:in '<top (required)>'
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
from ~/.gem/gems/rubocop-ast-1.47.1/lib/rubocop/ast.rb:4:in '<top (required)>'
from ~/.gem/gems/rubocop-ast-1.47.1/lib/rubocop-ast.rb:3:in 'Kernel#require_relative'
from ~/.gem/gems/rubocop-ast-1.47.1/lib/rubocop-ast.rb:3:in '<top (required)>'
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
from ~/.gem/gems/rubocop-1.81.7/lib/rubocop.rb:19:in '<top (required)>'
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'
from /snap/ruby/438/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'
from ~/.gem/gems/rubocop-1.81.7/exe/rubocop:14:in '<top (required)>'
from ~/.gem/bin/rubocop:25:in 'Kernel#load'
from ~/.gem/bin/rubocop:25:in '<main>'
Ubuntu version
Ubuntu 24.04.3 LTS
Kernel version
Linux 6.14.0-34-generic
Ruby version
ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +PRISM [x86_64-linux]
Rails version
Rails 8.1.1
貢獻指南
這個儲存庫沒有索引到貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
研究方向
在 Ubuntu 24.04.3 上使用列出的 snap、gem install 和 Rails 指令重現此故障,然後將 prism.rb 和 bundled_gems.rb 中的 stacktrace 路徑與 rubocop-ast 的載入路徑進行比較。當 rails new、bin/rails server 和 bin/rails db:create 能夠在沒有 Prism 警告或 NameError 的情況下執行時,工作即完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- rails, ruby, ubuntu
- 領域
- devops, operating-systems
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100