]> err.no Git - sope/blob - sope-ical/NGiCal/ChangeLog
various bugfixes and optimizations
[sope] / sope-ical / NGiCal / ChangeLog
1 2005-03-02  Marcus Mueller  <znek@mulle-kybernetik.com>
2
3         * iCalRecurrenceCalculator.m: optimized exception date handling in
4           complex calculation method quite a bit. Fixed bugs in all calculation
5           methods by introducing checks on the desired range. (v4.5.48)
6
7 2005-02-28  Marcus Mueller  <znek@mulle-kybernetik.com>
8
9         * v4.5.47
10
11         * iCalRepeatableEntityObject.m:  shifted code to
12           iCalRecurrenceCalculator
13
14         * iCalRecurrenceCalculator.[hm]: new class method to calculate
15           complex recurrences. In SOGo this information is stored in quick
16           fields to reduce the complexity of lookups, hence we need to offer
17           a proper API to calculate date ranges from this information.
18           Fixed all calculations to explicitly set timeZone for all newly
19           created startDates - it seems the timeZone information is not
20           properly retained by the hour:minute:second: method from NGExtensions
21           which lead to improper DST related shifts.
22
23         * iCalDateHolder.h: exposed the API
24
25         * NSCalendarDate+ICal.[hm]: new convenience constructor for calendar
26           dates from iCal representations (uses iCalDateHolder internally)
27
28         * iCalRecurrenceRule.m: changed setUntil: to utilize new public
29           NSCalendarDate+ICal category
30
31         * NGiCal.h: added NSCalendarDate+ICal.h to the public headers
32
33         * GNUmakefile: NSCalendarDate+ICal.h is public now
34
35 2005-02-20  Helge Hess  <helge.hess@opengroupware.org>
36
37         * NGiCal.xmap: fixed a missing semicolon (did not load on MacOSX)
38           (v.4.5.46)
39
40 2005-02-17  Helge Hess  <helge.hess@skyrix.com>
41
42         * GNUmakefile.preamble: fixed linking locations for dependencies
43           (v4.5.45)
44
45 2005-02-17  Marcus Mueller  <znek@mulle-kybernetik.com>
46
47         * v4.5.44
48
49         * iCalEntityObject.[hm]: added convenience API
50
51         * iCalRepeatableEntityObject.[hm]: added convenience API
52
53         * iCalRecurrenceRule.m: bugfixes in -byDayList and
54           -iCalRepresentationForWeekDay:
55
56         * iCalRecurrenceCalculator.m: implemented 'BYDAY' calculations for
57           weekly frequency. Note that 'COUNT' is still broken for this case.
58
59         * iCalRenderer.m: updated rendering, now can render recurrence rules
60           and accompanied stuff properly.
61
62 2005-02-15  Marcus Mueller  <znek@mulle-kybernetik.com>
63
64         * v4.5.43
65
66         * iCalRecurrenceRule.[hm]: exposed some more of the API
67
68         * iCalRecurrenceCalculator.m: some bugfixes. Split the code and gave
69           iCalWeeklyRecurrenceCalculator its own calculation - there are a
70           number of foreseeable differences to daily calculation that make
71           this necessary in the near future anyways.
72
73         * v4.5.42
74
75         * iCalRepeatableEntityObject.[hm]: added ability to properly calculate
76           the recurrence ranges within a specific calendar date range, taking
77           all possible exceptions into account.
78
79         * iCalEvent.[hm]: convenience wrapper for the new method found in
80           iCalRepeatableEntityObject.
81
82 2005-02-14  Helge Hess  <helge.hess@opengroupware.org>
83
84         * v4.5.41
85
86         * GNUmakefile.preamble: added missing dependency on libNGExtensions
87           (which also adds the dependency on libDOM)
88
89         * iCalRecurrenceCalculator.h: fixed missing forward declaration in
90           header
91
92 2005-02-12  Marcus Mueller  <znek@mulle-kybernetik.com>
93
94         * v4.5.40
95
96         * iCalRecurrenceCalculator.[hm]: implemented all required (and simple)
97           calculations. Added some convenience API to query some of the more
98           obvious ranges suitable as limits for fetching/comparison. 
99
100         * iCalRepeatableEntityObject.[hm]: new method for calculating the
101           last possible recurrence start date. This can be used for fetches
102           as well.
103
104         * iCalEvent.[hm]: more convenient wrapper for the new method found in
105           iCalRepeatableEntityObject.
106
107         * NSCalendarDate+ICal.[hm]: convenience methods for calculating
108           "distances" between dates.
109
110         * tests/*: updated
111
112 2005-02-11  Marcus Mueller  <znek@mulle-kybernetik.com>
113
114         * v4.5.39
115
116         * README: updated
117
118         * iCalRepeatableEntityObject.[hm]: new base class for all other
119           repeatable entity objects. Offers a convenience API for generating
120           recurrence ranges and tests, taking all exceptions into account.
121
122         * iCalRecurrenceRule.[hm]: an iCal recurrence rule, modeled as closely
123           as possible to RFC2445. Please note that this is work in progress
124           and far from being complete, yet.
125
126         * iCalRecurrenceCalculator.[hm]: a controller implementing RFC2445
127           to properly generate recurrence ranges and accompanied functionality.
128
129         * iCalEvent.[hm], iCalToDo.[hm]: now subclasses from
130           iCalRepeatableEntityObject, thus removed code dealing with
131           recurrences
132
133         * NGiCal.h: added new headers
134
135         * NGiCal.xmap: changed recurrenceRule mappings due to model change
136
137         * tests/*: contains unit tests for stuff dealing with recurrences. See
138           accompanied README for details
139
140 2004-12-17  Marcus Mueller  <znek@mulle-kybernetik.com>
141
142         * iCalPerson.[hm]: formalized participationStatus according to RFC2445.
143           Provided convenience API to set status without concrete knowledge
144           of string values involved. (v4.5.38)
145
146 2004-12-16  Marcus Mueller  <znek@mulle-kybernetik.com>
147
148         * v4.5.37
149
150         * iCalEvent.[hm]: Added transparency 'TRANSP'. Also multiple
151           convenience methods provided.
152
153         * NGiCal.xmap: added proper mapping for 'transp'.
154
155 2004-12-14  Marcus Mueller  <znek@mulle-kybernetik.com>
156
157         * NGiCal.xcode: minor changes and updated
158
159 2004-12-13  Marcus Mueller  <znek@mulle-kybernetik.com>
160
161         * iCalPerson.[hm]: added -cnWithoutQuotes and -rfc822Email convenience
162           methods to simplify client code dealing with these properties
163           (v4.5.36)
164
165 2004-11-07  Marcus Mueller  <znek@mulle-kybernetik.com>
166
167         * NGiCal.xcode: provide SOPE_{MAJOR,MINOR}_VERSION to the build
168
169 2004-11-06  Helge Hess  <helge.hess@opengroupware.org>
170
171         * iCalRenderer.m: use SOPE version defines for iCalendar product id
172           (v4.5.35)
173
174 2004-11-04  Helge Hess  <helge.hess@skyrix.com>
175
176         * use Version file for install directory location of sax mapping
177
178 2004-10-31  Marcus Mueller  <znek@mulle-kybernetik.com>
179
180         * iCalAlarm.[hm], iCalEvent.[hm], iCalToDo.[hm],
181           NGiCal.xmap: added recurrenceRule (v4.3.34)
182
183 2004-10-20  Marcus Mueller  <znek@mulle-kybernetik.com>
184
185         * NGiCal.xcode: added iCalRenderer.[hm], bumped framework version
186
187 2004-10-20  Helge Hess  <helge.hess@opengroupware.org>
188
189         * iCalRenderer.m: fixed some issue with Cocoa Foundation (v4.3.33)
190
191         * v4.3.32
192
193         * iCalEvent.m: added -vEvent method to produce an iCalendar
194           representation of an event
195
196         * added iCalRenderer class based on the SOGo render by ZNeK
197
198 2004-10-14  Marcus Mueller  <znek@mulle-kybernetik.com>
199
200         * NGiCal.xmap: added "categories" mapping (v4.3.31)
201
202 2004-10-05  Marcus Mueller  <znek@mulle-kybernetik.com>
203
204         * iCalEntityObject.[hm]: added categories property (v4.3.30)
205
206 2004-09-22  Marcus Mueller  <znek@mulle-kybernetik.com>
207
208         * NGiCal.xcode: fixed several build parameters
209
210 2004-09-01  Marcus Mueller  <znek@mulle-kybernetik.com>
211
212         * v4.3.29
213
214         * iCalEventChanges.[hm]: new class for tracking changes between
215           two given events
216
217         * iCalEvent.[hm]: new API to generate iCalEventChanges objects.
218
219         * common.h: inline function and macro for "safe" comparison of
220           object values
221
222 2004-09-01  Helge Hess  <helge.hess@opengroupware.org>
223
224         * GNUmakefile.postamble: copy sax-model to FHS_INSTALL_ROOT + 
225           /share/sope-4.3/saxmappings/ when compiling for FHS (v4.3.28)
226
227 2004-08-29  Helge Hess  <helge.hess@opengroupware.org>
228
229         * added hack to install the project in FHS locations - the library,
230           its headers, the tools and the resources will be installed in
231           FHS_INSTALL_ROOT if specified (eg make FHS_INSTALL_ROOT=/usr/local)
232           (v4.3.27)
233
234 2004-08-26  Marcus Mueller  <znek@mulle-kybernetik.com>
235
236         * NGiCal.xcode: new Xcode project
237
238 2004-08-20  Helge Hess  <helge.hess@opengroupware.org>
239
240         * fixed for SOPE 3.3 directory layout (v4.3.26)
241
242         * moved to sope-ical
243
244         * moved to SOPE 4.3 (v4.3.25)
245
246 2004-08-14  Helge Hess  <helge.hess@opengroupware.org>
247
248         * iCalEntityObject.m: changed "sequence" attribute from NSString to
249           NSNumber (this might break some code, though some care was taken to
250           accept NSString parameters) (v4.2.24)
251
252 2004-07-14  Helge Hess  <helge.hess@opengroupware.org>
253
254         * iCalEvent.h: moved 'status' field to iCalEntityObject, because it is
255           also available in todo objects (v4.2.23)
256
257 2004-06-30  Marcus Mueller  <znek@mulle-kybernetik.com>
258
259         * iCalEntityObject.m: added -removeAllAttendees and -removeAllAlarms.
260           These are necessary in case you want to remake the contents of these
261           collections, but keep all other attributes otherwise. (v4.2.22)
262
263 2004-06-09  Helge Hess  <helge.hess@opengroupware.org>
264
265         * v4.2.21
266
267         * GNUmakefile.preamble: added prebinding
268
269         * GNUmakefile: create GNUmakefile.preamble, GNUmakefile.postamble
270
271 2004-05-05  Marcus Mueller  <znek@mulle-kybernetik.com>
272
273         * GNUmakefile: added support for building with
274           GNUSTEP_BUILD_DIR environment variable set for recent
275           gnustep-make package. (v4.2.20)
276
277 2004-01-23  Helge Hess  <helge.hess@opengroupware.org>
278
279         * iCalDataSource.m: added some sanity checks, improved to work better
280           with Mozilla generated iCal files (v4.2.19)
281
282 2003-12-22  Helge Hess  <helge.hess@skyrix.com>
283
284         * iCalDateHolder.m: small fix not to print a warning for "YYYYMMDD"
285           style dates (which are supported) (v4.2.18)
286
287 2003-12-21  Helge Hess  <helge.hess@opengroupware.org>
288
289         * v4.2.17
290
291         * iCalEvent.m: added parsing of duration values and calculation of 
292           end-dates based on that (eg required for Panther iCal.app)
293         
294         * iCalEvent.m: added support for 'status' and 'duration' fields 
295
296 Thu Nov 20 16:31:15 2003  Martin Hoerning  <martin@opengroupware.org>
297
298         * iCalDateHolder.m: added timeless date format: YYYYMMDD
299           (solves ogo bug 424) (v4.2.16)
300
301 Wed Oct 29 22:04:32 2003  Martin Hoerning  <martin@opengroupware.org>
302
303         * iCalDateHolder.m, iCalObject.[m|h]: added iCalDefaultTimeZone to 
304           create date from iCalDates without timeZone. (solves OGoo bug 257) 
305           (v4.2.15)
306
307 2003-10-12  Helge Hess  <helge@opengroupware.org>
308
309         * GNUmakefile (libNGiCal_LIBRARIES_DEPEND_UPON): link against
310           libSaxObjC on MacOSX (v4.2.14)
311
312 Fri Jul 18 17:04:55 2003  Martin Hoerning  <mh@skyrix.com>
313
314         * iCalToDo.h, iCalPerson.h, iCalEvent.h, iCalEntityObject.h: added 
315           accessor-methods to interface (v4.2.13)
316
317 2003-07-18  Helge Hess  <helge.hess@skyrix.com>
318
319         * iCalDateHolder.m: replaces and indexOfString with rangeOfString,
320           thanks to Filip Van Raemdonck for pointing that out (v4.2.12)
321
322 2003-03-21  Helge Hess  <helge.hess@skyrix.com>
323
324         * added some method prototypes
325
326 2003-03-13  Helge Hess  <helge.hess@skyrix.com>
327
328         * moved iCalEntityObject to a separate file (v4.2.11)
329
330 Mon Mar 10 18:41:10 2003  Bjoern Stierand  <bjoern@skyrix.com>
331
332         * NGiCal.xmap: added missing attendee attributes (as dictated by
333           mh on the phone)
334
335 2003-03-10  Helge Hess  <helge.hess@skyrix.com>
336
337         * iCalPerson.h: added some method prototypes
338
339 2003-02-24  Helge Hess  <helge.hess@skyrix.com>
340
341         * iCalObject.h: added some accessors (v4.2.10)
342
343 2003-02-12  Helge Hess  <helge.hess@skyrix.com>
344
345         * moved to skyrix-core (v4.2.9)
346
347 2003-01-13  Helge Hess  <helge.hess@skyrix.com>
348
349         * added some support for timezones to be able to parse Evolution
350           apt creation requests (v4.2.7)
351
352 2002-10-14  Helge Hess  <helge.hess@skyrix.com>
353
354         * added iCalDateHolder for decoding xCal date values with timezone
355           attributes to a NSCalendarDate
356
357         * iCalObject.m: ignore X- keys
358
359         * removed all the old stuff (v4.2.4)
360
361         * ICalVEvent.m: renamed -class to -eventClass since -class conflicts
362           with the NSObject method
363
364         * started XML based iCal (v4.2.3)
365
366 2002-10-10  Helge Hess  <helge.hess@skyrix.com>
367
368         * ICalParser.m: small cleanups (v4.2.2)
369
370 2002-10-04  Helge Hess  <helge.hess@skyrix.com>
371
372         * created ChangeLog, created NGiCal library into SkyCore
373
374