Version 0.21, 20 Nov 00 ( cvs tag libical-0-21)
----------------------------------------------
* icalmessage.c Many routines to create new ical messages.
* icalspanlist.c Code to generate a list of the busy time f the
VEVENTS in a set. Also includes routiens to generate free and busy
lists from the spanlist, and to find the next free time after a
given time.
* icalvalue.c The STATUS property now has its own value type,
STATUS, which holds the enumeration icalproperty_status.
* icalrestriction.c Added more restrictions. Now handles mutual
and exclusive consitions, and checks for the reight values in
STATUS properties
* icaltypes.c Added routine to create durationtype from string:
icaldurationtype_from_string
* icalcomponet.c Add sever get/set convienience routines to access
and manipulate common component propoerties from the component
interface. This eliminates the need to create a lot of temporary
variables if you just want to change the start time of and event.
* icalcomponent.c Added new routines to icalcomponent:
_get_span -- returns the start and end times of the event in UTC
_get_first_real_component -- return ref to VTODO, VEVENT or VJOURNAL
* icalspanlist.c Added new class, icalspanlist, that generates a
list of alternating busy and free times from an icalset. The class
includes routines to gnerate rfc2445 busy and free lists, and to
get the next avaliable busy or free time after a given time.
Version 0.20D 3 Nov 00
-----------------------
Many miscelaneous tweaks to the build system
More work to icalclassify.
Aded routines to icaltime.c to convert to and from specific timezones
in Olsen format ("America/Los_Angeles")
Version 0.20 7 Sept 00 (cvs tag libical-0-20 )
----------------------------------------------
Addedd icalclassify() which looks at a message and determine how to
process it.
Misc bug fixes and tweaks.
Version 0.19 6 August 00 (cvs tag libical-0-19)
-----------------------------------------------
Created a MIME parser in icalmime.c. This will take any complex MIME
encapsulated message and return an icalcomponent with the same
structure. Each MIME part is represented by a component of type
X-LIC-MIMEPART.
Added MIME partsing to stow.c
Added external iterators to icalcomponent. See test_iterators() in
test/regression.c
Refactored icalcluster and icalstore into icalset, icalfileset and
icaldirset, which have a pseudo inheritance relationship between them.
Fixed more memory leaks.
Version 0.18a 10 June 00 ( cvs tag libical-0-18a )
-----------------------------------------------
Did the final tweaks to stow.c, a program to recieve and store iMIP
messages.
Version 0.18 10 June 00 ( cvs tag libical-0-18 )
-----------------------------------------------
Added libicalvcal, which includes the Versit code for parsing vCal
files and a routine (icalvcal_convert() ) that converts a vCal object
to an iCal object. The test program is src/test/testvcal.
Added marginally functional recurrence code. The curent code does not
handle all of the examples in rfc2445 ( which are extracted in
test-data/recur.txt ) but it can do all of the obvious cases. See the
test program in src/test/recur.c for an example. In particular, the
code cannot handle the integer values in BYDAY, nor negative integers
in BYMONTH or BYMONTHDAY. It also cannot handle BYSETPOS.
Moved some code to the examples directory and improved the comments.
Did a little more work on the documentation in the doc directory. The
documentation is in LyX source, but there is a text version in
UsingLibical.txt
Version 0.17 15 May 00 (cvs tag libical-0-17 )
---------------------------------------------
Fixed two bugs that added extraneous '/' to test values
Fixed type in internal string for the COUNTER method
Eliminated a memory leak in icalparser.c
Version 0.16a 29 April 00
----------------------------------------------
Fixed bug in icalvalue_new_from_string that caused METHOD value to
choke on non standard input.
Fixed a memory leak in icalparser_add_line -- failed to free 'line'
Version 0.16 5 April 00 ( cvs tag libical-0-16)
----------------------------------------------
Now using automake.
Substantial changes to the parser. New interfaces let you parser
multiple components from a single stream by feading the parser object
one line at a time.
Added a STRING value type. this type is like TEXT, but does not
backslash magic characters. It is used in PRODID and REQUEST-STATUS,
where the '/' and ';' are literal.
Added several convience functions for REQUEST-STATUS to icalenums.c
Addedd a routine to icalcomponent to convert X-LIC errors to
REQUEST-STATUS return values.
Version 0.15a 5 Mar 00 (cvs tag libical-0-15a)
---------------------
Experimented with CVS
Fixed icalvalue_set_text to convert escaped characters into the proper
values.
Other minor code tweaks.
Version 0.15 7 Feb 00
---------------------
Split the storage classess ( icalstore, icalcluster, icalcalendar )
into a seperate library, libicalss
Implemented restriction checking in file icalrestrictions.c. The
checking is not complete, but can handle the bulk of the restrictions
described in RFC 2446.
Created a new value type, METHOD. Changed METHOD property to use the
new value. The METHOD value uses an enumeration.
Version 0.14b
-------------
Implemented parsing of RECUR values, although it does not handle BYDAY
specs with numbers.
Fixed error in icalparser_next_line that mangled lines longer than the
temp buffer (1024 chars.) The temp buffer is now 80 chars, and it can
handle (apparently) arbitrary length lines
Fixed severe brokenness in a value, but I forgot which one.
Cleaned cruft out of the distribution, so the tarfile is smaller.
Version 0.14a 14 Jan 00
-----------------------
Fixed bug in ROLE parameter -- missing '-' in the text of allowed values
Fixed bug in X-parameters
Version 0.14 11 Jan 00
----------------------
Fixed wrong value type for TRIGGER property
Added Calendar object. Calendar is an aggregate of two stores and two
clusters, and can store all of the inforamation associated with a
calendar.
icalcomponent_add_property and icalcomponent_add_component will
complain if you try to add a component or property that is already
part of an other component. The *_free routines wil complain if you try
to free a linked component or property.
More improvements to error handling.
Parser is much more robust.
Minor memory enhancements.
Regression test runs without memory leaks.
Version 0.13d 21Dec99
---------------------
Seperated perl interface and library
Added autoconf support
Scripts that generate derived properties, values and parameters now
change source and header files inline.
Changed icalstore to cluster all components with DTSTART in a month
into a single file. This should reduce number of file accesses by a
factor of 60.
Ran code through Purify and fixed memory leaks.
Version 0.13 16Nov99
---------------------
Yet more bug fixes! Yeah!
Added better error handling. The Parser inserts X-LIC-*ERROR
properties to warn of parsing errors.
The imip source/sink programs in /src/imip is demonstrably functional.
Version 0.12b 17Oct99
---------------------
More bug fixes, particularily in parse from string routines
ICal::Store is mostly functional
This is version is a checkpoint, not a release.
Version 0.12a 10Oct99
---------------------
Expanded perl interface:
Added 1/2 of Store module
Fixed bugs
Implemeted get_{first,next}_property
Extended C interface
Made get_{first,next}_property work properly
Fixed bugs
This is version is a checkpoint, not a release.
Version 0.12 27Aug99
--------------------
Added a rudimentatry perl interface
This is version is a checkpoint, not a release.
Version 0.11 11Aug99
--------------------
Eliminated most use of flex/bison -- all parsing, except for the
values, is done in C.
Cleaned up memory leaks. Purify claims that I got them all.
Moved all derived component/prop/param/value code ( in .inc / .h
files) into main files ( icalcomponent.{c,h}, icalproperty.{c,h}, etc/
)
Implemented *_clone routines.
Fixed a lot of bugs.
Implemented more value types. Still unimplemeneted are BINARY and RECUR
Included MacOS/Code Warior files from Graham Davison
Version 0.10 8Jul99
-------------------
Eliminated shift/reduce and reduce/reduce conflicts in the parser.
This version is almost feature complete -- it has the basic structure
for all of the library's functionality, and it will only require
implementing procedure shells and fixing bugs. I think that all of the
hard work is done...
Version 0.09a,b 3,7 Jul99
-------------------------
Various improvements to the parser, added some functionality. The parser code
is mostly complete, and should be fully functional, except for a horde of
bugs. Also added support for X-Properties.
Version 0.09 25Jun99
--------------------
Added a parser in files src/comp/icalitip.{y,l} The lexer is mostly
functional, but the parser is not.
Version 0.08 2Jun99
--------------------
All files now have MPL licensing
Implement enough of the code to perform some rudimentary testing
Version 0.07 14May99
--------------------
Remove all interfaces that construct object from a string
Moved most code back into comp directory
Implemented C files for most headers -- usecases.c now links.
Many improvements to generation scripts.
Version 0.06 25Apr99
--------------------
Expanded distribution to include:
Directory structure that can accomodate future expansion
Several levels of Makefiles
This CHANGES file
Added headers for irip and parse modules
Added several files with design information
Added scripts that I had used to generate much of the ical header code.
Split C headers from CC headers
Added data for iTIP and iCAL component restrictions in restrictions.csv
Version 0.05 11Apr99
----------------------
Changes to ical headers
Added derived Property classes.
Improved the interface to the derived property and parameter classes
Added derived component classes.
Created usecases.c and ccusecases.cc to demonstrate use
C++ interface compile
Version 0.04 5Apr99
-------------------
Version 0.02 30Mar99
--------------------