@Rotonen please take a look at those changes, especially the unit tests: https://github.com/snowblossomcoin/snowblossom/blob/master/node/test/ForBenefitOfUtilTest.java ``` package node.test; import snowblossom.node.ForBenefitOfUtil; import org.junit.Assert; import org.junit.Test; public class ForBenefitOfUtilTest { @Test public void testBasic() { Assert.assertEquals(ForBenefitOfUtil.normalize("Fräd"), ForBenefitOfUtil.normalize("frad")); Assert.assertEquals(ForBenefitOfUtil.normalize("FRAD"), ForBenefitOfUtil.normalize("frad")); Assert.assertEquals("some ape", ForBenefitOfUtil.normalize("🦧"), ForBenefitOfUtil.normalize("🦧")); Assert.assertEquals("fireduck", ForBenefitOfUtil.normalize("fireduck"), ForBenefitOfUtil.normalize("𝓕ire𝐃uc𝐤")); Assert.assertEquals("fireduck1", ForBenefitOfUtil.normalize("fireduck1"), ForBenefitOfUtil.normalize("fireduck𝟏")); Assert.assertNotEquals("different hearts", ForBenefitOfUtil.normalize("♥"), ForBenefitOfUtil.normalize("💚")); Assert.assertNotEquals("Brown v. Board of Education", ForBenefitOfUtil.normalize("🧑🏾"),ForBenefitOfUtil.normalize("🧑")); Assert.assertNotEquals("fireduck_", ForBenefitOfUtil.normalize("fireduck-"), ForBenefitOfUtil.normalize("fireduck_")); Assert.assertNotEquals("fire.duck", ForBenefitOfUtil.normalize("fireduck"), ForBenefitOfUtil.normalize("fire.duck")); Assert.assertNotEquals("fire♥duck", ForBenefitOfUtil.normalize("fireduck"), ForBenefitOfUtil.normalize("fire♥duck")); Assert.assertNotEquals("fireduck1", ForBenefitOfUtil.normalize("fireduck1"), ForBenefitOfUtil.normalize("fireduck➊")); Assert.assertNotEquals("火鸭", ForBenefitOfUtil.normalize("火鸭"), ForBenefitOfUtil.normalize("鸭火")); Assert.assertNotEquals("simplified vs traditional", ForBenefitOfUtil.normalize("火鸭"), ForBenefitOfUtil.normalize("火鴨")); } } ```
not before sometime next week, fully booked until at least tuesday
cool
preliminarily i still don't get why you need to break this one, if you support all of that other stuff below - most european languages will be impacted by that https://github.com/snowblossomcoin/snowblossom/blob/b030174b3bf20d1b895f8342816236637b33656e/node/test/ForBenefitOfUtilTest.java#L12 ``` Assert.assertEquals(ForBenefitOfUtil.normalize("Fräd"), ForBenefitOfUtil.normalize("frad")); ```
I don't think it will break anyone, people can register and use whatever markings they want, they just end up reserving the letter collection that it collapses to. So in that case a user could take Fräd (and it would show up in chat/comments like that). It would just prevent someone later from registering frad.
The collapsed form is never shown to anyone or used by anything other than this index map.
that'll still annoy people a lot where those things collide across languages
yeah...that may be