From: "Eregon (Benoit Daloze)" Date: 2022-09-27T18:25:47+00:00 Subject: [ruby-core:110111] [Ruby master Bug#19016] syntax_suggest is not working with Ruby 3.2.0-preview2 Issue #19016 has been updated by Eregon (Benoit Daloze). The current shutdown order in TruffleRuby is: 1. execute main script (and save exception if any) 2. run at_exit hooks 3. print main script's exception with `.full_message` 4. kill and wait all threads (which still runs some Ruby code in `ensure`) 5. internal cleanups which do not need to run Ruby code Which seems already the order with your change. I think we shouldn't run any Ruby code after "kill and wait all threads" (because the kill might have caused inconsistent state and triggered in the middle of an `ensure`, etc), so I think this change makes a lot of sense. ---------------------------------------- Bug #19016: syntax_suggest is not working with Ruby 3.2.0-preview2 https://bugs.ruby-lang.org/issues/19016#change-99369 * Author: hsbt (Hiroshi SHIBATA) * Status: Assigned * Priority: Normal * Assignee: hsbt (Hiroshi SHIBATA) * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- `syntax_suggest` is merged as default gems in Ruby 3.2.0-preview2. But it's not working yet. ``` $ cat bar.rb def foo def bar end $ ruby -v bar.rb ruby 3.2.0dev (2022-09-22T05:37:56Z master f07e651a90) +YJIT [arm64-darwin22] bar.rb:3: warning: mismatched indentations at 'end' with 'def' at 2 bar.rb:3: syntax error, unexpected end-of-input, expecting `end' ``` and gem version is also not working now. ``` $ cat foo.rb require "bundler/inline" gemfile do source "https://rubygems.org" gem "syntax_suggest" end require_relative "bar" ``` ``` $ ruby -v foo.rb ruby 3.2.0dev (2022-09-22T05:37:56Z master f07e651a90) +YJIT [arm64-darwin22] /path/to/bar.rb:3: warning: mismatched indentations at 'end' with 'def' at 2 foo.rb:8:in `require_relative': /path/to/bar.rb:3: syntax error, unexpected end-of-input, expecting `end' (SyntaxError) from foo.rb:8:in `
' ``` But Ruby 3.1 is works. ``` $ ruby -v foo.rb ruby 3.1.3p51 (2022-09-10 revision 9581248c4a) [arm64-darwin22] /path/to/bar.rb:3: warning: mismatched indentations at 'end' with 'def' at 2 --> /path/to/bar.rb Unmatched keyword, missing `end' ? 1 def foo ��� 2 def bar 3 end /Users/hsbt/.local/share/gem/gems/syntax_suggest-0.0.1/lib/syntax_suggest/core_ext.rb:93:in `require': /path/to/bar.rb:3: syntax error, unexpected end-of-input, expecting `end' (SyntaxError) from /Users/hsbt/.local/share/gem/gems/syntax_suggest-0.0.1/lib/syntax_suggest/core_ext.rb:93:in `require_relative' from foo.rb:8:in `
' ``` -- https://bugs.ruby-lang.org/ Unsubscribe: