Changes for DateTime::Set
0.14 2003-11-02
- duration() should not set $@ for sets with infinity duration.
Reported by Dan Kubb.
0.13
0.1205 2003-10-16
- requires Set::Infinite 0.54 (it is the "published" version of 0.5307)
- DateTime::Set add_duration mutates the set. This is more compatible
with the way the DateTime.pm API works.
- new DateTime::SpanSet methods:
as_list( $span_spec ), next( $dt|$span ), previous( $dt|$span )
0.1204 2003-10-10
- DateTime::SpanSet and DateTime::Span inherit DateTime::Set $VERSION
- Trying to subtract infinity from a datetime is not fatal in duration()
Bug report by Dan Kubb.
- new method 'iterate'
- requires Set::Infinite 0.5307 (pass new backtracking tests)
- added more tests for add_duration, subtract_duration
- added set( locale => .. ) to DateTime::Set
0.1203 2003-09-26
- Added docs to Set::Infinite::_recurrence;
split into a separate file such that it doesn't mix the pods
- refactored union / intersection
- _is_recurrence test prevents error when programming subroutine methods
0.1202 2003-09-24
- fixed set_time_zone and add_duration:
was not clearing 'next' upon return, when arg was a recurrence.
0.1201 2003-09-24
- optimized contains() and intersects() when arg is a datetime
- recurrence constructor always adds '->clone' to recurrence function
- refactored _recurrence method;
first/last of recurrences are calculated 'on demand'
- requires Set::Infinite 0.5305
0.12 2003-09-22
- implement previous() in DT::SpanSet.pm
- Fixed: set_time_zone would mutate a clone.
0.11 2003-09-19
- Fixed callback return value on set_time_zone.
This caused the start date to be equal to the end date.
Bug found by Dan Kubb.
0.10 2003-09-02
- DateTime::Span->duration now uses the new subtract_datetime_absolute
method, which means that the duration is always given in seconds.
- supports _huge_ recurrence sets (not infinite) with "virtual" elements.
these sets have 'undef' count.
Experimental - mostly untested !
this adds support for sets like 'all seconds in 2003'
- faster recurrence intersection
- count returns 'undef' for infinite sets.
0.09 2003-08-18
- added DT::Set count()
- fixed DT::SpanSet duration()
- methods that accepted a DT object, now accept a list of DT objects.
Suggested by Ben Bennet, I think.
- added _callback_next - "previous-only recurrences"
- optimizes intersection of recurrence with span
- internal 'S::I' recurrence class
- small fix in DT::Set clone()
- DateTime::Set uses DateTime infinity constants;
max and min now return DateTime::Infinite::Future/Past objects.
- DateTime::Span uses DateTime infinity constants;
max and min now return DateTime::Infinite::Future/Past objects.
Docs update to explain 'max()' value when a span is built using 'before'.
- added method set_time_zone()
- clone() is documented
0.08 2003-05-30
- recurrence set intersection uses 'current'
- fixed a number of methods in DateTime::Span, including intersection,
intersects, contains, union, and complement, all of which called the
non-existent DateTime::Set->new method. Dave Rolsky.
0.07 2003-05-23
- some tweaking on intersection, union, and in the recurrence generator.
- more tests
0.06 2003-05-14
- added 'use warnings' in some tests, added DateTime 0.12 prereq.
0.04 2003-05-12
- change "closest" code to avoid duration comparison
0.03 2003-04-27
- fixes in Set.pm as_list, span.
- iterator accepts 'span' parameters. Ben Bennett
- remove deprecated DateTime::Set->new and DateTime::SpanSet->new. Dave Rolsky
- requires Set::Infinite 0.49
0.02 2003-04-20
- removed some calls to 'new'
- added many methods from DT::Event::Recurrence
- add 'span' parameter to as_list
- from_recurrence now accepts next + previous
0.01 2003-04-19
- first "official" release.
- implemented DateTime::SpanSet->from_sets and
DateTime::SpanSet->from_set_and_duration
- Many doc tweaks. Dave Rolsky
- DateTime::Span->duration and DateTime::SpanSet->duration now return
infinity instead of undef for infinite spans. Dave Rolsky
- Added DateTime::SpanSet->empty_set. Dave Rolsky
0.00_20 2003-04-10
- Docs for DateTime::SpanSet API
(not implemented)
- DateTime::Span API:
from_datetime_and_duration, from_datetimes
0.00_18 2003-03-25
- changes docs, changed API
from_recurrence, from_datetimes, new()
- as_list
- previous() method (quite untested)
- small API changes
- revised docs, from Dave Rolsky
- small bugfix in creating open spans
- added DateTime::Span and DateTime::SpanSet
- put "..." to mark where we need more docs
- DateTime::Set and DateTime::Span API look ok.
0.00_13 2003-03-19
- added tests for set operations with recurrences/add
- iterator passes all tests
- the API is complete, as described in SYNOPSIS
- small fix in add() syntax; accepts a duration=> parameter
- iterator, next
0.00_10 2003-03-14
- union, intersection
- experimental code to generate recurrence from a simple callback
0.00_07 2003-02-28
- added experimental method create_recurrence()
- added experimental method add_duration()
- improved SYNOPSIS
- added 'immutability' tests
- new() will not try to clone non-DateTime parameters (such as the
Infinity value)
- The program will die with an error message,
if one tries to use offset() or quantize() methods
These methods might come back in a later version.
- new() clones its parameters.
This means the parameters don't have to be immutable
- new() will give an error message if we try to use a scalar parameter
instead of a DateTime
- Uses Set::Infinite as base class, instead of Date::Set::Timezone
This means some methods just disappeared, like event() and exclude().
RFC2445 support might come back in a later revision.
- Removed experimental Autoload code
- Added 'Changes' and 'README'
- moved POD to end of source file.