File: Changes

package info (click to toggle)
libdatetime-set-perl 0.3900-1.1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 360 kB
  • sloc: perl: 3,101; makefile: 2
file content (444 lines) | stat: -rw-r--r-- 13,542 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
Changes for DateTime::Set

0.3900 2016-10-09
- require Params::Validate

0.3800 2016-05-23
- doc patch, by Lucas Kanashiro.

0.3700 2016-05-17
- end() / max() and start() / min() are aliases to the same method in all classes.
  Added docs and tests. Reported by Vincent Berger.

0.3600 2015-11-11
- move t/22intersects.t to DT::Event::Recurrence module

0.3500 2015-11-10
- [rt.cpan.org #108633] Recurrent event does not intersect indefinite future,
  test contributed by Brett Watson.
- documentation - intersects() returns 0 for false, and 'undef' for
  undecidable.

0.3400 2014-02-12
- documentation and packaging fixes - by David Steinbrunner.
- version number using 4 digits - requested by David Marshall.

0.33   2013-09-15
- bugfix in SpanSet->grep. Reported by Andreas Isberg

0.32   2013-08-27
- ignore duration signal in DateTime::Span->from_datetime_and_duration()
  and use the 'end'/'start' parameters as a cue for the time direction,
  suggested by David Pottage
- more tests of intersections with open/closed ended spans

0.30   2011-04-11
- new test file t/21from_recurrence.t 
  Contributed by Olivier Mengue

0.29   2011-04-01 
- new method is_empty_set - bug #50750

0.28   2009-07-19
- optimized DateTime::Set->as_list().
  This works around a segfault reported by Nils Grunwald.

0.27   2009-04-02
- fixed DateTime::Spanset duration() method.
  Reported by Anton Berezin <tobez@tobez.org>

0.26   2008-12-25
- fixed DateTime::Spanset current() and set_time_zone() methods. 
  Report and tests by Elliot Shank.

0.25   2005-10-05
- t/15time_zone.t does it's own time zone "add_duration" handling

0.24   2005-10-03
- _recurrence.pm warned when the recurrence didn't have occurrences before
  a given start date. Reported by Mark D. Anderson. 

0.23   2005-10-03
- _recurrence.pm died when the recurrence didn't have occurrences before
  a given start date. Reported by Mark D. Anderson. 

0.22   2005-05-06
- DateTime::Set 0.21 dies when as_list is asked to produce a list from
  outside the range of the set. Patch contributed by Stephen Gowing.

0.21   2005-04-06
- no hard limit in count() and as_list(); removed the warnings from the docs.

0.20   2005-02-28
- changed tests to use en_US instead of pt_BR (which changes every year) 
  by Dave Rolsky.
- optimized SpanSet methods for special cases:
  start_set()
  end_set()
  contains( $dt )
  intersects( $dt )
- added an example to count(), by David Nicol.
- added a note about how the result of min()/max() is just a copy of the 
  actual set boundary.  Reported by Ron Hill.

0.19    2004-11-29
- added more comments on as_list() and count() behaviour on large sets.
  Reported by Rick Frankel (rt ticket 8611)

0.18    2004-11-25
- ignore "__DIE__" signal while calculating durations.
  Reported by michelle.agnew (rt ticket 5434)

0.17    2004-08-17
- bugfix: it was trying to set the time zone of an "undef" value; 
  this has broken some DT::Event::Recurrence tests - reported by Bill Moseley

0.1603  2004-07-05
- revised documentation, some examples were rewritten.
- deprecate "iterate" method
- Build.PM requires Set::Infinite 0.59 - reported by Tim Muller-Seydlitz

0.1602  2004-07-02
- fixed time zone handling in the methods:
  set_time_zone
  next/previous/closest/current

- removed limitation of duration size in methods:
  add/add_duration
  subtract/subtract_duration

- requires Set::Infinite 0.59 - uses iterate() experimental 
  argument "backtrack_callback"

- the following methods are now mutators:
  set_time_zone( $tz )
  set( locale => $locale )
  add( unit => $n )
  add_duration( $dur )
  subtract( unit => $n )
  subtract_duration( $dur )

- fixed max/min of an infinite SpanSet
- added test for infinite duration

- from_recurrence() code cleanup

- parameter checking: The 'dates' argument to from_datetimes() 
  must be a list of DateTime objects

0.1601  2004-03-30
- more parameter checking;
  Sets should interoperate better with objects of 
  type DateTime::Event::* and DateTime::Incomplete

0.16  2004-03-29
- Makefile.PL skips processing of "Build.PL"
  Reported by Reinhold May

0.15  2004-03-28
  
  [ ENHANCEMENTS from version 0.14 ]

- Both "Makefile.PL" and "Build.PL" are provided.

- New methods:
  DateTime::SpanSet::current
  DateTime::Spanset::closest
  DateTime::Set::map / grep
  DateTime::SpanSet::map / grep
  DateTime::SpanSet::intersected_spans
  DateTime::SpanSet::start_set / end_set 

- Recurrences can be bounded sets.

- Recurrences can be as small as 1 nanosecond.

- DateTime::SpanSet::duration may return an 'infinite' 
  DateTime::Duration (instead of scalar infinity).

  [ *** BACKWARDS INCOMPATIBILITIES from version 0.14 *** ]

- The next/previous functions used in DT::Set->from_recurrence()
  MUST work with DateTime::Infinite::Future
  and DateTime::Infinite::Past parameters. 

  Failing to test for "infinity" values is known
  to cause an infinite loop in some modules.

- DateTime::Set and DateTime::SpanSet methods do not mutate the set.
  This was the behaviour in version 0.13

0.1413  2004-03-28
- detect_bounded => 1 is deprecated.

0.1412  2004-03-28
- DateTime::Set->from_recurrence - Bounded recurrences are "optional".
  use " detect_bounded => 1 " to turn them on.
  This fixes the backwards incompatibilities created by version 0.1402.

0.1411  2004-03-27
- Makefile.PL.  Suggested by Randal L. Schwartz.

0.1410  2004-03-26
- Build.PL

0.1409  2004-03-23
- evaluation of bounded recurrences is "lazier".
  (DateTime::Incomplete tests are twice as fast)

0.1408  2004-03-22
- refactored S::I::_recurrence class:
  it doesn't use "current" anymore; 
  small bugfixes & optimizations. 
  ("current" was not documented in DT::Set)
- new test: t/17quantize.t
  Tests a method to make "quantization" (or "discretization")
  of spansets.

0.1407  2004-03-16
- New methods:
  DateTime::SpanSet::current
  DateTime::Spanset::closest

- "Fixed" DateTime::SpanSet::next / previous 
  no longer "split" the returned spans.

- Added examples and parameter validation to map / grep

- DateTime::SpanSet::duration may return an 'infinite' 
  DateTime::Duration, instead of scalar infinity.

- Bugfix: DateTime::Spanset::union / intersection / ...
  correctly accept DateTime parameters.

0.1406  2004-03-15
- New methods: 
  DateTime::Set::map / grep
  DateTime::SpanSet::map / grep
  From a discussion with Andrew Pimlott and Dave Rolsky
- Cleanup "datetime" code from _recurrence.pm 
- iterate() marked as "internal"

0.1405  2004-03-15
- New method: DateTime::SpanSet::intersected_spans
  Suggested by Reinhold May
  Name suggested by Dave Rolsky

0.1404  2004-03-14
- New methods: DateTime::SpanSet::start_set / end_set 
  These are the inverse of the "from_sets" method.
  Suggested by Reinhold May

0.1403  2004-03-10
- new method DateTime::SpanSet::iterate

[ *** BACKWARDS INCOMPATIBILITIES *** ]

- DateTime::Set and DateTime::SpanSet methods do not mutate the set.
  This is the behaviour we had before version 0.13

0.1402  2004-03-08
- Recurrence functions can be used to generate bounded sets.
  See: t/16bounded_recurrence.t

- There is no limit on how small a recurrence can be.
  Recurrences as small as 1 nanosecond are possible.

[ *** BACKWARDS INCOMPATIBILITIES *** ]

  All modules that create their own recurrences
  must now be able to respond to DateTime::Infinite::Future
  and DateTime::Infinite::Past parameters. The easiest way
  to do this is to add this to the first line of the recurrence
  subroutines:

  next => sub {
     return $_[0] if $_[0]->is_infinite;
     ...
  }
  previous => sub {
     return $_[0] if $_[0]->is_infinite;
     ...
  }

0.1401  2003-11-06
- span() was returning the set, instead of the result.

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.