2.0.2 Wed Mar 17 12:21:00 PDT 2010
Build Fixes
* Ensure non META.yml savy CPAN shells see the configure_requires
for Module::Build.
* Forgot to require indirect.pm, JSON and YAML::Any
Test Fixes
* Don't run the v1 and v0 sanity tests unless Time::y2038 is installed.
* autobox 2.60 changed how isa() works and broke 42->isa("UNIVERSAL").
Will fix for real later.
2.0.1 Wed Mar 17 11:10:54 PDT 2010
Fixes
* Quick fix to handle not always having Time::y2038.
2.0.0 Tue Mar 16 23:34:22 PDT 2010
Incompatible Changes
* In general, methods which return a list return an array in
list context and an array ref in scalar context. This enables
chaining of autoboxed methods.
* $module->load() is now $module->require() with simpler semantics.
[github 107] [schwern]
* Indirect object syntax (ie. $obj = new Class) is now a compile time
syntax error.
* $thing->mo now always returns a meta instance object. This allows
the meta object to DWIM on plain strings which previously would be
treated as classes and return the meta class object.
* The guaranteed range of gm/localtime() has been reduced to avoid
depending on Time::y2038 if possible.
* $thing->perl is now $thing->mo->perl and works on everything.
New Features
* $thing->mo->is_equal($other) universal equality method. [brunov]
* $thing->mc has been added to always return a meta class object.
This allows disambiguation when $thing could be considered a
class name.
* new autoboxed methods: %hash->diff() and %hash->intersect() [brunov]
* Added $thing->mo->dump to dump objects in multiple formats
including YAML and JSON.
Fixes
* Update dep on autovivification to one that works on 5.11 [schwern]
* Update autobox::Core dep to clarify scalar vs list context returns.
* Fix taint test failing with Test::More 0.95_01. [schwern]
* Fix time compat test failing because of unknown time zones. [schwern]
* Time::y2038 is only required if the built in time functions
are not up to task. [schwern]
Optimizations
* Optimize @array->intersect() and @array->diff() when @array contains no refs.
[brunov]
1.1.0 Tue Mar 2 19:09:49 PST 2010
New Features
* print() and say() now work on hashes, time(), localtime() and gmtime().
* $obj->mo->checksum will return a checksum for the contents of any object.
* Added $path->path2module and $module->module2path
Bugs
* alias() was still being exported.
* Work around DateTime::TimeZone not being able to determine the local
time zone on FreeBSD and possibly others.
* localtime() is less suseptable to the DateTime distant year DOS attack.
Docs
* Document that carp() and croak() are exported.
1.0.0 Thu Feb 25 21:56:47 PST 2010
New Features
* @array->first() now takes a regex like @array->grep() [github 93] (brunov)
* All autoboxed objects now respond to is_number() and friends. They
always return false. [github 100] (brunov)
* All applicable array and hash methods now return arrays in list context
and array refs in scalar context. (brunov)
* diff() now works on nested data structures and honors overloaded objects
(brunov)
* Add a basic $number->round() [github 95]
* Added @array->intersect() (brunov)
Docs
* Wrote perl5ifaq for all your frequently asked questions.
* Document the perl5i command line utility. [github 31]
Bug Fixes
* Ensure the DateTime objects coming from time(), gmtime() and localtime()
compare with eq and ==
0.2.2 Fri Feb 19 14:56:36 PST 2010
Other
* Some modules got the wrong version.
0.2.1 Fri Feb 19 04:23:58 PST 2010
Bug Fixes
* round_up() and round_down() didn't work
0.2.0 Fri Feb 19 03:48:36 PST 2010
Incompatible Changes
* "use perl5i" no longer works. You must instead "use perl5i::0" to
protect against future incompatibilities. "use perl5i::latest" for
the adventurous.
* We no longer export rreturn() or lnoreturn() from Want.
This can wait if we tackle lvalue subroutines.
* load() is now a scalar method, so its $module->load not load($module)
* alias() is now an autoboxed method rather than a function.
New Features
* try/catch support via Try::Tiny (brunov)
* caller() now returns an object via Perl6::Caller (schwern, Timothy Totten)
* Everything has a Meta object (perl5i::Meta) accessable via $thing->mo
* Added meta object methods to handle tainting.
mo->is_tainted(), mo->taint(), mo->untaint().
* Added mo->reftype to get the bare reference type of anything.
* Added mo->class to get the class of anything.
* Added mo->ISA to return @ISA.
* Added mo->super to call a method in a super class.
* Added mo->linear_isa to get the object's inheritance path.
* Introduced perl5i::latest to use the latest version.
* Added %hash->flip() and %hash->merge() (brunov)
* @array->grep now takes a regex
* Select methods from List::MoreUtils added as ARRAY methods.
all, any, none, true, false, uniq, minmax, mesh.
* Added @array->diff() (brunov)
* "use utf8" is on by default.
* STDOUT, STDIN, STDERR and all opened filehandles have utf8 encoding on.
* @ARGV is encoded as UTF8
* Added methods to determine if a scalar is a number and what kind it
is.
* Added ceil()/floor() and round_up()/round_down() synonyms.
Docs
* Various POD fixes (chromatic, Richard Soderberg)
* Collected together the autoboxed methods
Other
* Look, a changes document!
* Added a patching policy. See the PATCHING file.
* We have a mailing list now. http://groups.google.com/group/perl5i
0.1.0 Sat Jan 23 14:55:52 2010 -0800
* Return to CPAN after deleting 20090424
* New versioning scheme so we can declare incompatibilities, see
semver.org for details. If you have perl5i installed you must
force an upgrade.
* Thanks to the Open Source Bridge perl5i Hackathon!
Incompatible Changes
* Switched to DateTime from Time::Piece
New Features
* List::Util now autoboxed (Chas)
* time() returns a DateTime object (schwern)
* Added alias() (schwern)
* Now y2038 safe (schwern)
* die always returns 255 regardless of $! or $? (Chas)
* Added a perl5i command line program (dap)
* Add $CWD for localized chdir'ing via File::chdir (schwern)
* Add $scalar->center() (chromatic, benh)
* Add $scalar->ltrim(), ->rtrim() and trim() (benh)
* Add $scalar->wrap() via Text::Wrap (brunov)
* Automatic "use English" (schwern)
* Automatic "use IO::Handle" so things like autoflush are available (schwern)
* Automatic "use Want" (Jeff Lavallee)
* Automatic "no autovivification" (schwern)
Bug Fixes
* stat() works in list context (schwern)
20090424 Fri Apr 24 11:38:24 2009 -0700
* First release