Re: First idea for I18N_Punycode
| From: | David Rech | Date: | Sun, 09 May 2004 20:40:02 +0000 |
| Subject: | Re: First idea for I18N_Punycode | ||
| References: | 1 2 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-29049@lists.php.net to get a copy of this message | ||
Stefan Neufeind wrote:
Hi folks, as mentioned in a previous email I already had a fully working Punycode-implementation. However, it needed some cleaning up and heavy commenting. Let's see how, together with David, we can get a proposal for that package ready soon. After doing all the commenting, adding extensive tests etc. I tried wrapping up an installable package. To be honest: It took me a while. And currently it's only working with the mbstring-extension (no libiconv yet). Libiconv has problems e.g. converting ISO-8859-1 into UCS-4 ... haven't yet figured out why :-(( Anyway, if you want to have a look grab a copy from my current work grab your copy from http://pear.speedpartner.de/packages/I18N_Punycode-0.0.1.tgz On that site you also find autogenerated apidoc (though the API is quite small). The package comes phpdoc-commented and with full unit-tests. Feedback appreciated. StefanHi Stefan, First to note, I ran into some trouble while trying to improve my punycode implementation a little less... *gna* I guess it will take a while to figure out what went wrong. ;-( After taking a look on the code you provided, I think we should go on with improving and extending your code, because you have most of the documentation ready and you're the one who don't need to mess with bigger bugs ;-) A little comment due to correctness: I saw the ACE-label prefix, xn--, in the I18N_Punycode_ASCII class. It's not that important, but the ACE and "put en-/decoding together" code is *not* subject of punycode. Maybe you already have an extra piece of code for the man IDN stuff? As mentioned before, it's not really important, but maybe we should add something like I18N_IDN as the package, and I18N_IDN_Punycode as a class of the package. It's not subject of punycode to do label splitting and such stuff, that *is* subject of IDNA with the functions referred as idna_to_* e.g. in libidn. To avoid too big discussion on that, yes I know... most users talking about internationalized domains think "uh, idn? isn't that the punycode thing?" So we *could* go the way I suggested above but it's no must. -- David Rech