From: takashikkbn@... Date: 2017-12-17T11:07:41+00:00 Subject: [ruby-core:84310] [Ruby trunk Bug#14193][Feedback] --enable-frozen-string-literal and rubygems, erb, & rdoc Issue #14193 has been updated by k0kubun (Takashi Kokubun). Status changed from Open to Feedback > frozen_erb.patch Thank you for your work to fix it, but I'm strongly against silently suppressing all StandardError exceptions. That makes very hard to find bugs other than ones you expected. Also, note that frozen_string_literal is already enabled in erb.rb https://github.com/ruby/ruby/blob/70d07d7a85ee13ba9bc2d7881910898cab59aed7/lib/erb.rb#L2. While it's hard to understand the actual cause of the failure from this report (it should be "ruby --enable-frozen-string-literal test/erb/xxx_test.rb" fails), it's very likely that a template given to ERB is wrong and ERB shouldn't be modified. ---------------------------------------- Bug #14193: --enable-frozen-string-literal and rubygems, erb, & rdoc https://bugs.ruby-lang.org/issues/14193#change-68467 * Author: MSP-Greg (Greg L) * Status: Feedback * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.5.0dev (2017-12-16 trunk 61295) [x64-mingw32] * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- A popular gem that I use for my doc site doesn���t currently test against MinGW trunk, but I���ve got a PR there for that. Noticed that the current CI���s were failing, and took a look. One could debate the practicality of doing so, but for 2.4 and trunk, `--enable-frozen-string-literal` was set in `RUBYOPT`. The builds were failing in RubyGems while setting up the test environment. That took me to my fork of rubygems/rubygems, which led me back to trunk. Attached are three patch files that are required for ���runner.rb��� testing to pass on rdoc & rubygems folders when `--enable-frozen-string-literal` is used. Notes: RubyGems - I believe its tests run against the files in the src directory, but it needs the other patches in the app directory to pass. RDoc - I used `������.dup` for an unfrozen string, not sure if `String.new` is preferred or better. ERB - I haven���t worked with or debugged bindings that much, but I started looking at the bindings passed from RDoc, and when I added a begin/rescue to look at the string variables in them, all the tests for RDoc passed. Seems odd... Thanks, Greg PS - I use markdown a lot, may look odd in email. Don't know how many people use email vs browser... ---Files-------------------------------- frozen_rdoc.patch (815 Bytes) frozen_erb.patch (610 Bytes) frozen_rubygems.patch (462 Bytes) -- https://bugs.ruby-lang.org/ Unsubscribe: