[#118346] [Ruby master Bug#20586] Some filesystem calls in dir.c are missing error handling and can return incorrect results if interrupted — "ivoanjo (Ivo Anjo) via ruby-core" <ruby-core@...>
Issue #20586 has been reported by ivoanjo (Ivo Anjo).
13 messages
2024/06/19
[ruby-core:118286] [Ruby master Bug#20573] Warning.warn shouldn't be called for disabled warnings
From:
"byroot (Jean Boussier) via ruby-core" <ruby-core@...>
Date:
2024-06-11 06:56:03 UTC
List:
ruby-core #118286
Issue #20573 has been updated by byroot (Jean Boussier).
In [Feature #16345] it was stated:
> We chose Warning.disable(:deprecated) instead of
re-defining Warning.warn in order to avoid string object generation.
The intent was clearly for `Warning.warn` not to be called.
----------------------------------------
Bug #20573: Warning.warn shouldn't be called for disabled warnings
https://bugs.ruby-lang.org/issues/20573#change-108787
* Author: tenderlovemaking (Aaron Patterson)
* Status: Open
* Backport: 3.1: UNKNOWN, 3.2: UNKNOWN, 3.3: UNKNOWN
----------------------------------------
Currently `Warning.warn` will be called for all warnings, even if that particular category is disabled.
For example
```ruby
module Warning
def warn(message, category:)
p message => category
end
end
def get_var
$=
end
p Warning[:deprecated]
get_var
```
I think that internally we should _not_ call `Warning.warn` unless the category is enabled.
I've sent a PR here: https://github.com/ruby/ruby/pull/10960
--
https://bugs.ruby-lang.org/