[#107430] [Ruby master Feature#18566] Merge `io-wait` gem into core IO — "byroot (Jean Boussier)" <noreply@...>
Issue #18566 has been reported by byroot (Jean Boussier).
22 messages
2022/02/02
[ruby-core:107735] [Ruby master Bug#18590] String#downcase and CAPITAL LETTER I WITH DOT ABOVE
From:
"mame (Yusuke Endoh)" <noreply@...>
Date:
2022-02-24 03:05:31 UTC
List:
ruby-core #107735
Issue #18590 has been updated by mame (Yusuke Endoh). Status changed from Closed to Open @duerst Let me confirm. The rdoc of 3.1 and master refers to https://www.unicode.org/charts/case/. > Default Case Mapping > By default, all of these methods use full Unicode case mapping, which is suitable for most languages. See [Unicode Latin Case Chart](https://www.unicode.org/charts/case/). It is not clear to me that the document says "0069 0307 for 'İ'.downcase". Is it okay? Should it be replaced with https://www.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt ? ---------------------------------------- Bug #18590: String#downcase and CAPITAL LETTER I WITH DOT ABOVE https://bugs.ruby-lang.org/issues/18590#change-96661 * Author: andrykonchin (Andrew Konchin) * Status: Open * Priority: Normal * Assignee: duerst (Martin Dürst) * ruby -v: 3.1.0p0 * Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- Downcasing for "İ" character works in an unexpected way: ```ruby 'İ'.downcase => "i̇" ``` Expected result - downcasing should return "i". Instead, it returns small "i" and additional "dot" character: ```ruby 'İ'.downcase.chars => ["i", "̇"] ``` According to the standard Unicode case mapping character 'İ'(0130) maps to lowercased 'i' (0069). ``` 0130;LATIN CAPITAL LETTER I WITH DOT ABOVE;Lu;0;L;0049 0307;;;;N;LATIN CAPITAL LETTER I DOT;;;0069; ``` https://www.unicode.org/Public/UCD/latest/ucd/UnicodeData.txt -- 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>