https://pharo.fogbugz.com/f/cases/19383/IDNA-punycode-for-Zinc
After loading Name: Punycode-dTriangle.8 Author: dTriangle Time: 26 August 2013, 10:19:11.728 am UUID: 6493a3ee-43bb-44f0-86a8-5aa47a9b42ff Ancestors: Punycode-dTriangle.7 I can do the following 'http://üni.ch' asUrl. "http://xn--ni-wka.ch/" 'http://üni.ch' asUrl retrieveContents includesSubstring: 'Üni'. "true" Done ;-) Thank you, https://twitter.com/osashimitabenai, well done ! Sven > On 23 Nov 2016, at 15:43, Sven Van Caekenberghe <[email protected]> wrote: > > >> On 23 Nov 2016, at 15:36, Max Leske <[email protected]> wrote: >> >> Great! >> >> There’s a punycode implementation on smalltalkhub >> (http://smalltalkhub.com/#!/~dTriangle/Punycode) but it needs some polishing. > > Wow, that looks good, it even has ZnUrl integration, so we're done ;-) > > There are no tests though. > > How come we never heard of this ? > > Last commit was in 2013, hopefully the author is still around. > >> Should I open an issue on FogBugz so we don’t forget? > > Yes, OK. > >> Max >> >>> On 23 Nov 2016, at 15:00, Sven Van Caekenberghe <[email protected]> wrote: >>> >>> Max, >>> >>>> On 23 Nov 2016, at 14:34, Max Leske <[email protected]> wrote: >>>> >>>> Hi (Sven), >>>> >>>> Zinc can’t currently handle unicode domain names (e.g. http://üni.ch). Are >>>> there any plans to implement punycode / IDNA conversion for Zinc? Or is >>>> there an explicit reason not to support it? I see that #parseHostPort: >>>> expects the host portion to be percent escaped, what is the use case for >>>> this? I have never seen a percent escaped host portion. Usually the host >>>> portion is either pure ASCII, unicode or punycode (in my experience at >>>> least). >>>> >>>> Just curious, as I just added IDNA conversion to one of our applications >>>> (I just let python perform the conversion: >>>> https://docs.python.org/2/library/codecs.html#module-encodings.idna). >>>> >>>> Cheers, >>>> Max >>> >>> Yes, that would be nice to have. >>> >>> Just for future reference, we are talking about the following (IDN(A)): >>> >>> https://en.wikipedia.org/wiki/Internationalized_domain_name >>> https://en.wikipedia.org/wiki/Punycode >>> https://tools.ietf.org/html/rfc3490 >>> https://www.charset.org/punycode >>> >>> Normal DNS hostnames are ASCII only (or used to be like that anyway), that >>> is why it is (currently) implemented like that. >>> >>> Sven >>> >>> >> >
