2004-06-26 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.04.
* This is a small code bug fix release. No POD or API changes were made.
* Updated KeyedText.pm (now v0.04) to fix Message.as_string() and
Translator.translate_message() so that each outputs interpolated message
key values of zero as '0' and not ''. Also updated 4 tests in
Locale_KeyedText.t to confirm that the bugs were fixed.
* Note that KeyedText 0.03 would fail 2 of the current 98 tests.
2004-03-05 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.03.
* This is a small but incompatible maintenance release. Or more
specifically, it is only incompatible if your use of it involves reading
the package names, such as with "UNIVERSAL::isa" (and the tests do); if you
don't do that, then it is backwards compatible.
* Updated lib/Locale/KeyedText.pm (now v0.03) to reorganize and more
properly document its component class/package set.
Locale::KeyedText::_::Message was renamed to Locale::KeyedText::Message and
Locale::KeyedText::_::Translator was renamed to
Locale::KeyedText::Translator. The stateless new_message() and
new_translator() functions were each moved into the packages of the objects
that they create, and each was renamed to new(), and each now uses its
first argument as the package name to bless into as is usual with Perl
classes, and unlike the hard-coded bless it had before; two new functions
having the old names now exist in their place and simply call the moved
functions, so you can still invoke them like you did before.
* Added new POD documentation section CLASSES IN THIS MODULE to
KeyedText.pm which outlines the reality of the multiple package/classes in
the single module, and their relation. It also says that you should never
make your own modules with any of the same package or module names.
* The multiple package declarations in KeyedText.pm are no longer
obfuscated (split over 2 lines each) to prevent PAUSE from indexing them.
* Updated t/Locale_KeyedText.t so the correct class names are tested for.
* No other files were changed.
2004-01-18 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.02.
* This is a small bug fix release.
* Added 2 more tests to Locale_KeyedText.t (for 98 total) that check for
correct behaviour when Message Variables are given undefined hash values;
the tests would produce warnings when run against release 0.01.
* Made a couple small code updates to Locale::KeyedText, and incremented
its version from 0.01 to 0.02. Updated the methods Message->as_string()
and Translator->translate_message() to substitute "" for any undefined
Message variable values when building their output strings; now the 2 new
tests will not throw warnings.
* Fixed a few small mistakes in, and made small changes to,
Locale::KeyedText's POD. SYNOPSIS had bug fixes. DESCRIPTION and SEE ALSO
had some small additions. Other areas had indenting fixes.
2004-01-15 Darren Duncan <perl@DarrenDuncan.net>
* Release 0.01.
* This is the initial release of Locale::KeyedText. The module is feature
complete and has complete POD documentation and a complete test suite. The
module is officially in beta development status, but should move quickly to
Released status once it starts getting used in production. The module is
licensed under the GNU Lesser General Public License Version 2.1.
* This distribution is the first one that I am creating with MakeMaker's
"make dist" command; previously I used "tar -cz ..." to make distros.
2003-09-29 Darren Duncan <perl@DarrenDuncan.net>
* Began active code development on the prophecied Locale::KeyedText module.
* Module based on a template created by h2xs 1.18.
2000-05-17 thru 2003-09-26
* Worked on precursor to, and CPAN release versions of, modules such as
'Rosetta' and 'SQL::SyntaxModel', which as part of their functioning may
generate human-readable messages, such as for error conditions. While
working on these, it was intended to create a proper separation of the
human-readable text from the code, and that text would go in one or more of
its own files, with a separate version for each human language (such as
with Mac OS X localized resource files). A module dedicated to making this
task easy was to be developed and called 'Locale::KeyedText'. Some design
details were thought up and included in the 'Rosetta' distribution file
'Rosetta::Framework'. It will be released independantly, due to its
expected usefulness outside of the aforementioned database modules.