> There's been a lot of discussion about it which I unfortunately couldn't > follow. Now it's up to 0.04 and seems to have a lot of functionality, and > I really don't see the point of all of it. And even worse, it's gotten > _more_ intimate the with DT::TZ internals, instead of less.
There was a lot of discussion. :) If it doesn't show up in the archives I can paste a thread together for you. DT::TZ::LINKS is still the only internal structure that is modified. > Why do we need something like is_timezone()? And if it's needed, it So you can tell the difference between US/Hawaii and Pacific/Honolulu. Which may seem perfectly clear to you but unless you look at the internal data structure is probably not to most people. > almost certainly does not belong in a module called Alias! Why does it Probably not - but what ever module handles the aliasing should have a complete interface as it's all related functionality. This was missing elsewhere. Maybe we should talk about moving this into the DT::TZ dist. > have the timezones() method which completely duplicates the functionality > of DateTime::TimeZone::all_names()! Because all_names() returns a direct reference to the data structure and I was worried about protecting the internals. And as I stated above it's all related functionality. > All of the stuff about dying if an alias is defined and so on seems like > total overkill. The purpose of this module, AFAIC, is for individual > end-users to be able to define some useful _local_ aliases, in an This is related to comments made about using this module under mod_perl. I think it's clear that a lot of people will use this to handle localization of timezones (like what EST is defined as). > environment _they_ control. No one should ever be distributing a CPAN > module that uses this, and distributing an app that does this by default > would almost certainly be a bad thing too. But they will... And why shouldn't someone be able to define what timezone X means to them in a distributed app? I this passes the 'is it useful' test. -J --
