[#98098] [Ruby master Feature#16824] Follow RubyGems naming conventions for the stdlib — shannonskipper@...

Issue #16824 has been reported by shan (Shannon Skipper).

14 messages 2020/05/01

[#98147] [Ruby master Feature#16832] Use #name rather than #inspect to build "uninitialized constant" error messages — jean.boussier@...

Issue #16832 has been reported by byroot (Jean Boussier).

20 messages 2020/05/06

[#98174] [Ruby master Bug#16837] Can we make Ruby 3.0 as fast as Ruby 2.7 with the new assertions? — takashikkbn@...

Issue #16837 has been reported by k0kubun (Takashi Kokubun).

10 messages 2020/05/07

[#98241] [Ruby master Bug#16845] Building Ruby with old existing system Ruby results in make error with ./tool/file2lastrev.rb — erik@...

Issue #16845 has been reported by ErikSwan (Erik Swan).

7 messages 2020/05/09

[#98256] [Ruby master Feature#16847] Cache instruction sequences by default — jean.boussier@...

Issue #16847 has been reported by byroot (Jean Boussier).

16 messages 2020/05/11

[#98257] [Ruby master Feature#16848] Allow callables in $LOAD_PATH — jean.boussier@...

Issue #16848 has been reported by byroot (Jean Boussier).

27 messages 2020/05/11

[#98318] [Ruby master Bug#16853] calling bla(hash, **kw) with a string-based hash passes the strings into **kw (worked < 2.7) — sylvain.joyeux@...4x.org

Issue #16853 has been reported by sylvain.joyeux (Sylvain Joyeux).

12 messages 2020/05/13

[#98355] [Ruby master Bug#16889] TracePoint.enable { ... } also activates the TracePoint for other threads, even outside the block — eregontp@...

Issue #16889 has been reported by Eregon (Benoit Daloze).

16 messages 2020/05/14

[#98363] [Ruby master Feature#16891] Restore Positional Argument to Keyword Conversion — merch-redmine@...

Issue #16891 has been reported by jeremyevans0 (Jeremy Evans).

23 messages 2020/05/14

[#98371] [Ruby master Feature#16894] Integer division for Ruby 3 — andrew@...

Issue #16894 has been reported by ankane (Andrew Kane).

18 messages 2020/05/15

[#98391] [Ruby master Bug#16896] MakeMakefile methods should be private — eregontp@...

Issue #16896 has been reported by Eregon (Benoit Daloze).

10 messages 2020/05/15

[#98396] [Ruby master Feature#16897] Can a Ruby 3.0 compatible general purpose memoizer be written in such a way that it matches Ruby 2 performance? — sam.saffron@...

Issue #16897 has been reported by sam.saffron (Sam Saffron).

25 messages 2020/05/16

[#98453] [Ruby master Bug#16904] rubygems: psych: superclass mismatch for class Mark (TypeError) — jaruga@...

Issue #16904 has been reported by jaruga (Jun Aruga).

18 messages 2020/05/20

[#98486] [Ruby master Bug#16908] Strange behaviour of Hash#shift when used with `default_proc`. — samuel@...

Issue #16908 has been reported by ioquatix (Samuel Williams).

14 messages 2020/05/23

[#98569] [Ruby master Bug#16921] s390x: ramdom test failures for timeout or segmentation fault — jaruga@...

Issue #16921 has been reported by jaruga (Jun Aruga).

9 messages 2020/05/29

[#98599] [Ruby master Bug#16926] Kernel#require does not load a feature twice when $LOAD_PATH has been modified spec fails only on 2.7 — eregontp@...

Issue #16926 has been reported by Eregon (Benoit Daloze).

12 messages 2020/05/31

[ruby-core:98600] [Ruby master Bug#16927] String.tr won't return the expected result for some sign with diacritics

From: psychoslave@...
Date: 2020-05-31 16:00:08 UTC
List: ruby-core #98600
Issue #16927 has been reported by psychoslave (mathieu lovato stumpf guntz).

----------------------------------------
Bug #16927: String.tr won't return the expected result for some sign with diacritics
https://bugs.ruby-lang.org/issues/16927

* Author: psychoslave (mathieu lovato stumpf guntz)
* Status: Open
* Priority: Normal
* ruby -v: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
# Context

Not much interest for the bug here, but I always appreciate to be given more context. So, as part of a larger project, I came with the need to be able to utter every number from zero to 255 with a single syllable written as a consonnant-vowel-consonnant (CVC) in IPA. To avoid any ambiguity, the nomenclature also had to avoid collision with existing numerical terms, like six and ten, but for all languages for which documentation was found. As it was not enough nerdy, I came with the idea to mark  with diacritics primes and congruence with 2, 8, 12, 16 (optional and without intended phonological alteration though). If you are curious about it, you can look at [the algorithm](https://gitlab.com/psychoslave/isotopy/-/blob/master/tool/combinations/trigrams.rb) I used to build the nomenclature matching [the specification](https://gitlab.com/psychoslave/isotopy/-/issues/4).  

# Code to reproduce the bug 

``` ruby
#!/bin/env ruby
translated = 'aeiou'.tr('aeiou', 'ą̂ę̂į̂ǫ̂ų̂')
substitued = 'aeiou'.sub(/aeiou/, 'ą̂ę̂į̂ǫ̂ų̂')
puts `ruby -v`, translated == substitued, translated, substitued

# Actual result

```

On my box this outputs:

```
ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
false
ą̂ę̂į
ą̂ę̂į̂ǫ̂ų̂
```

# Expected result


`tr` should return a congruent result: either it should fail for all signs with similar diacritics, or (preferably) return the specified Unicode glyph. That is, in the code above `translated == substitued` should be true.

# Remarks

I am not a Unicode Guru: maybe the missing signs generating the difference comes from the way they are encoded. I am aware that some glyphs come in duplicates, as solo code points vs. combining code point sequences. However I'm not able to precise if the above code use a mixture of both.



-- 
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>

In This Thread

Prev Next