From: nobu@... Date: 2018-01-07T05:55:46+00:00 Subject: [ruby-core:84681] [Ruby trunk Bug#14324] Should Exception#full_message include escape sequences? Issue #14324 has been updated by nobu (Nobuyoshi Nakada). Description updated Since `Exception#full_message` is expected the message printed to stderr, escape sequences are intentional. But I think it's wrong that there is no way to disable them now. https://github.com/nobu/ruby/tree/bug/14324-full_message-options ---------------------------------------- Bug #14324: Should Exception#full_message include escape sequences? https://bugs.ruby-lang.org/issues/14324#change-69395 * Author: Eregon (Benoit Daloze) * Status: Open * Priority: Normal * Assignee: sorah (Sorah Fukumori) * Target version: 2.6 * ruby -v: ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-linux] * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- ``` $ ruby -e 'p RuntimeError.new("foo").full_message' "\e[1mTraceback \e[m(most recent call last):\n-e:1:in `full_message': \e[1mfoo (\e[4;1mRuntimeError\e[m\e[1m)\n\e[m" ``` That is probably not intended. ``` $ ruby -e 'p RuntimeError.new("foo").full_message' |& cat "-e:1:in `full_message': foo (RuntimeError)\n" ``` So `Exception#full_message` depends if stderr is a tty which seems wrong. I think it should be the second result, i.e., no escape sequences. -- https://bugs.ruby-lang.org/ Unsubscribe: