[#82706] [Ruby trunk Bug#13851] getting "can't modify string; temporarily locked" on non-frozen instances — cardoso_tiago@...
Issue #13851 has been updated by chucke (Tiago Cardoso).
3 messages
2017/09/07
[#82853] [Ruby trunk Bug#13916] Race condition when sending a signal to a new fork — russell.davis@...
Issue #13916 has been reported by russelldavis (Russell Davis).
3 messages
2017/09/19
[#82892] [Ruby trunk Bug#13921] buffered read_nonblock doesn't work as expected using SSLSocket — cardoso_tiago@...
Issue #13921 has been updated by chucke (Tiago Cardoso).
3 messages
2017/09/20
[ruby-core:82671] [Ruby trunk Feature#13770] Can't create valid Cyrillic-named class/module
From:
duerst@...
Date:
2017-09-06 09:45:54 UTC
List:
ruby-core #82671
Issue #13770 has been updated by duerst (Martin Dürst).
I have checked for upper-case letters without corresponding lower-case letters, with the following short script:
```
ruby -n -e 'l=$_.split(/;/); if l[2]=="Lu" && l[13]=="" then puts l[1];end' <UnicodeData.txt
```
Somewhat contrary to my expectations, this turned up quite a number of characters (471 of them). Most are MATHEMATICAL symbols in the range U+1D400 to U+1D7FF. My understanding is that they don't have mappings because mathematicians use upper-case and lower-case symbols with different meanings.
There are some other upper-case characters without defined lower-case equivalents, but most of the correspond to empty slots in the MATHEMATICAL symbols charts.
The above patch would treat all identifiers starting with upper-case, even MATHEMATICAL symbols, as class names. Unless we want to forbid such characters in identifiers, I think that's the right thing to do.
What's more important for the above patch is that there are no title-case characters without lower-case mappings, so
```
+ if (r > 0 && (r != len || memcmp(fold, name, r)))
+ return TRUE;
+ }
```
in the patch will work correctly.
What is more important for the above patch is whether
----------------------------------------
Feature #13770: Can't create valid Cyrillic-named class/module
https://bugs.ruby-lang.org/issues/13770#change-66501
* Author: sb (Sergey Borodanov)
* Status: Assigned
* Priority: Normal
* Assignee: matz (Yukihiro Matsumoto)
* Target version:
----------------------------------------
Can't create a valid Cyrillic-named class. If I have a file **мир.rb**:
~~~ ruby
# Content of мир.rb:
class Мир
def приветствовать
"Привет, Мир!"
end
end
~~~
and do in **bash**:
~~~
ruby мир.rb
~~~
I get the error (**SyntaxError**):
~~~
мир.rb:1: class/module name must be CONSTANT
~~~
Same error with module creating and same behavior in **irb** (please, see attachment). At the same time Cyrillic-named constants and methods work fine.
It is expected that creating Cyrillic-named class/modules should work without error.
---Files--------------------------------
Screenshot from 2017-07-26 19-08-14.png (64.2 KB)
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>