1 2005-03-02 Marcus Mueller <znek@mulle-kybernetik.com>
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)
7 2005-02-28 Marcus Mueller <znek@mulle-kybernetik.com>
11 * iCalRepeatableEntityObject.m: shifted code to
12 iCalRecurrenceCalculator
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.
23 * iCalDateHolder.h: exposed the API
25 * NSCalendarDate+ICal.[hm]: new convenience constructor for calendar
26 dates from iCal representations (uses iCalDateHolder internally)
28 * iCalRecurrenceRule.m: changed setUntil: to utilize new public
29 NSCalendarDate+ICal category
31 * NGiCal.h: added NSCalendarDate+ICal.h to the public headers
33 * GNUmakefile: NSCalendarDate+ICal.h is public now
35 2005-02-20 Helge Hess <helge.hess@opengroupware.org>
37 * NGiCal.xmap: fixed a missing semicolon (did not load on MacOSX)
40 2005-02-17 Helge Hess <helge.hess@skyrix.com>
42 * GNUmakefile.preamble: fixed linking locations for dependencies
45 2005-02-17 Marcus Mueller <znek@mulle-kybernetik.com>
49 * iCalEntityObject.[hm]: added convenience API
51 * iCalRepeatableEntityObject.[hm]: added convenience API
53 * iCalRecurrenceRule.m: bugfixes in -byDayList and
54 -iCalRepresentationForWeekDay:
56 * iCalRecurrenceCalculator.m: implemented 'BYDAY' calculations for
57 weekly frequency. Note that 'COUNT' is still broken for this case.
59 * iCalRenderer.m: updated rendering, now can render recurrence rules
60 and accompanied stuff properly.
62 2005-02-15 Marcus Mueller <znek@mulle-kybernetik.com>
66 * iCalRecurrenceRule.[hm]: exposed some more of the API
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.
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.
79 * iCalEvent.[hm]: convenience wrapper for the new method found in
80 iCalRepeatableEntityObject.
82 2005-02-14 Helge Hess <helge.hess@opengroupware.org>
86 * GNUmakefile.preamble: added missing dependency on libNGExtensions
87 (which also adds the dependency on libDOM)
89 * iCalRecurrenceCalculator.h: fixed missing forward declaration in
92 2005-02-12 Marcus Mueller <znek@mulle-kybernetik.com>
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.
100 * iCalRepeatableEntityObject.[hm]: new method for calculating the
101 last possible recurrence start date. This can be used for fetches
104 * iCalEvent.[hm]: more convenient wrapper for the new method found in
105 iCalRepeatableEntityObject.
107 * NSCalendarDate+ICal.[hm]: convenience methods for calculating
108 "distances" between dates.
112 2005-02-11 Marcus Mueller <znek@mulle-kybernetik.com>
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.
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.
126 * iCalRecurrenceCalculator.[hm]: a controller implementing RFC2445
127 to properly generate recurrence ranges and accompanied functionality.
129 * iCalEvent.[hm], iCalToDo.[hm]: now subclasses from
130 iCalRepeatableEntityObject, thus removed code dealing with
133 * NGiCal.h: added new headers
135 * NGiCal.xmap: changed recurrenceRule mappings due to model change
137 * tests/*: contains unit tests for stuff dealing with recurrences. See
138 accompanied README for details
140 2004-12-17 Marcus Mueller <znek@mulle-kybernetik.com>
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)
146 2004-12-16 Marcus Mueller <znek@mulle-kybernetik.com>
150 * iCalEvent.[hm]: Added transparency 'TRANSP'. Also multiple
151 convenience methods provided.
153 * NGiCal.xmap: added proper mapping for 'transp'.
155 2004-12-14 Marcus Mueller <znek@mulle-kybernetik.com>
157 * NGiCal.xcode: minor changes and updated
159 2004-12-13 Marcus Mueller <znek@mulle-kybernetik.com>
161 * iCalPerson.[hm]: added -cnWithoutQuotes and -rfc822Email convenience
162 methods to simplify client code dealing with these properties
165 2004-11-07 Marcus Mueller <znek@mulle-kybernetik.com>
167 * NGiCal.xcode: provide SOPE_{MAJOR,MINOR}_VERSION to the build
169 2004-11-06 Helge Hess <helge.hess@opengroupware.org>
171 * iCalRenderer.m: use SOPE version defines for iCalendar product id
174 2004-11-04 Helge Hess <helge.hess@skyrix.com>
176 * use Version file for install directory location of sax mapping
178 2004-10-31 Marcus Mueller <znek@mulle-kybernetik.com>
180 * iCalAlarm.[hm], iCalEvent.[hm], iCalToDo.[hm],
181 NGiCal.xmap: added recurrenceRule (v4.3.34)
183 2004-10-20 Marcus Mueller <znek@mulle-kybernetik.com>
185 * NGiCal.xcode: added iCalRenderer.[hm], bumped framework version
187 2004-10-20 Helge Hess <helge.hess@opengroupware.org>
189 * iCalRenderer.m: fixed some issue with Cocoa Foundation (v4.3.33)
193 * iCalEvent.m: added -vEvent method to produce an iCalendar
194 representation of an event
196 * added iCalRenderer class based on the SOGo render by ZNeK
198 2004-10-14 Marcus Mueller <znek@mulle-kybernetik.com>
200 * NGiCal.xmap: added "categories" mapping (v4.3.31)
202 2004-10-05 Marcus Mueller <znek@mulle-kybernetik.com>
204 * iCalEntityObject.[hm]: added categories property (v4.3.30)
206 2004-09-22 Marcus Mueller <znek@mulle-kybernetik.com>
208 * NGiCal.xcode: fixed several build parameters
210 2004-09-01 Marcus Mueller <znek@mulle-kybernetik.com>
214 * iCalEventChanges.[hm]: new class for tracking changes between
217 * iCalEvent.[hm]: new API to generate iCalEventChanges objects.
219 * common.h: inline function and macro for "safe" comparison of
222 2004-09-01 Helge Hess <helge.hess@opengroupware.org>
224 * GNUmakefile.postamble: copy sax-model to FHS_INSTALL_ROOT +
225 /share/sope-4.3/saxmappings/ when compiling for FHS (v4.3.28)
227 2004-08-29 Helge Hess <helge.hess@opengroupware.org>
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)
234 2004-08-26 Marcus Mueller <znek@mulle-kybernetik.com>
236 * NGiCal.xcode: new Xcode project
238 2004-08-20 Helge Hess <helge.hess@opengroupware.org>
240 * fixed for SOPE 3.3 directory layout (v4.3.26)
244 * moved to SOPE 4.3 (v4.3.25)
246 2004-08-14 Helge Hess <helge.hess@opengroupware.org>
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)
252 2004-07-14 Helge Hess <helge.hess@opengroupware.org>
254 * iCalEvent.h: moved 'status' field to iCalEntityObject, because it is
255 also available in todo objects (v4.2.23)
257 2004-06-30 Marcus Mueller <znek@mulle-kybernetik.com>
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)
263 2004-06-09 Helge Hess <helge.hess@opengroupware.org>
267 * GNUmakefile.preamble: added prebinding
269 * GNUmakefile: create GNUmakefile.preamble, GNUmakefile.postamble
271 2004-05-05 Marcus Mueller <znek@mulle-kybernetik.com>
273 * GNUmakefile: added support for building with
274 GNUSTEP_BUILD_DIR environment variable set for recent
275 gnustep-make package. (v4.2.20)
277 2004-01-23 Helge Hess <helge.hess@opengroupware.org>
279 * iCalDataSource.m: added some sanity checks, improved to work better
280 with Mozilla generated iCal files (v4.2.19)
282 2003-12-22 Helge Hess <helge.hess@skyrix.com>
284 * iCalDateHolder.m: small fix not to print a warning for "YYYYMMDD"
285 style dates (which are supported) (v4.2.18)
287 2003-12-21 Helge Hess <helge.hess@opengroupware.org>
291 * iCalEvent.m: added parsing of duration values and calculation of
292 end-dates based on that (eg required for Panther iCal.app)
294 * iCalEvent.m: added support for 'status' and 'duration' fields
296 Thu Nov 20 16:31:15 2003 Martin Hoerning <martin@opengroupware.org>
298 * iCalDateHolder.m: added timeless date format: YYYYMMDD
299 (solves ogo bug 424) (v4.2.16)
301 Wed Oct 29 22:04:32 2003 Martin Hoerning <martin@opengroupware.org>
303 * iCalDateHolder.m, iCalObject.[m|h]: added iCalDefaultTimeZone to
304 create date from iCalDates without timeZone. (solves OGoo bug 257)
307 2003-10-12 Helge Hess <helge@opengroupware.org>
309 * GNUmakefile (libNGiCal_LIBRARIES_DEPEND_UPON): link against
310 libSaxObjC on MacOSX (v4.2.14)
312 Fri Jul 18 17:04:55 2003 Martin Hoerning <mh@skyrix.com>
314 * iCalToDo.h, iCalPerson.h, iCalEvent.h, iCalEntityObject.h: added
315 accessor-methods to interface (v4.2.13)
317 2003-07-18 Helge Hess <helge.hess@skyrix.com>
319 * iCalDateHolder.m: replaces and indexOfString with rangeOfString,
320 thanks to Filip Van Raemdonck for pointing that out (v4.2.12)
322 2003-03-21 Helge Hess <helge.hess@skyrix.com>
324 * added some method prototypes
326 2003-03-13 Helge Hess <helge.hess@skyrix.com>
328 * moved iCalEntityObject to a separate file (v4.2.11)
330 Mon Mar 10 18:41:10 2003 Bjoern Stierand <bjoern@skyrix.com>
332 * NGiCal.xmap: added missing attendee attributes (as dictated by
335 2003-03-10 Helge Hess <helge.hess@skyrix.com>
337 * iCalPerson.h: added some method prototypes
339 2003-02-24 Helge Hess <helge.hess@skyrix.com>
341 * iCalObject.h: added some accessors (v4.2.10)
343 2003-02-12 Helge Hess <helge.hess@skyrix.com>
345 * moved to skyrix-core (v4.2.9)
347 2003-01-13 Helge Hess <helge.hess@skyrix.com>
349 * added some support for timezones to be able to parse Evolution
350 apt creation requests (v4.2.7)
352 2002-10-14 Helge Hess <helge.hess@skyrix.com>
354 * added iCalDateHolder for decoding xCal date values with timezone
355 attributes to a NSCalendarDate
357 * iCalObject.m: ignore X- keys
359 * removed all the old stuff (v4.2.4)
361 * ICalVEvent.m: renamed -class to -eventClass since -class conflicts
362 with the NSObject method
364 * started XML based iCal (v4.2.3)
366 2002-10-10 Helge Hess <helge.hess@skyrix.com>
368 * ICalParser.m: small cleanups (v4.2.2)
370 2002-10-04 Helge Hess <helge.hess@skyrix.com>
372 * created ChangeLog, created NGiCal library into SkyCore