mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 15:15:23 +00:00
523 lines
15 KiB
Plaintext
523 lines
15 KiB
Plaintext
Version 0.24, XX Xxx 2002 ( cvs tag libical-0-24 )
|
|
--------------------------------------------------
|
|
|
|
**** Incompatibilities with previous version ****
|
|
|
|
CSTP client/server code has been removed from libicalss.
|
|
Future versions will eventually contain a full CAP 6.0
|
|
client/server implementation.
|
|
|
|
icalproperty_get_name() is deprecated and will change
|
|
in a future release. Use icalproperty_get_icalproperty_name()
|
|
instead.
|
|
|
|
icalcomponent_get_span() is deprecated in this release
|
|
because it does not handle recurring events. See
|
|
icalcomponent_foreach_recurrence() for an alternate
|
|
interface.
|
|
|
|
The icalproperty_remove_parameter() call is deprecated
|
|
because it improperly deals with extended parameters.
|
|
See icalproperty_remove_parameter_by_kind() for a
|
|
compatible call.
|
|
|
|
Code that deals with the TRANSPARENT property now
|
|
uses enumeration values to get/set values instead of
|
|
strings.
|
|
|
|
The code for dealing with icalsets was overhauled. You
|
|
will want to use the common icalset_* routines
|
|
directly instead of calling into the icalfileset_* or
|
|
icaldirset_* routines.
|
|
|
|
A number of routines now expect to be called with
|
|
const arguments. A number of routines now
|
|
return pointers to const data.
|
|
|
|
|
|
**** New Features ****
|
|
|
|
Major cleanup of the time-handling routines. New API is
|
|
available that deals with timezones much more cleanly.
|
|
|
|
The regression routines in src/test are much cleaner.
|
|
Test runs summarize which tests fail and do not
|
|
immediately abort() like the old set of tests. A
|
|
number of old, commented tests were resurrected.
|
|
|
|
C++ Interface: New libraries libical_cxx.la and libicalss_cxx.la
|
|
are build when you configure with the --enable-cxx option.
|
|
|
|
Java Interface: A JNI interface to libical is build when
|
|
you configure with the --enable-java option.
|
|
|
|
Most of libical is now reentrant and thread safe. The Lex/Yacc
|
|
query parser is pre-built with flex 2.5.8 and bison 1.34. To
|
|
rebuild these files you will need to specify the --with-devel
|
|
option. The --enable-reentrant option also adds the -D_REENTRANT
|
|
flag for systems that require it. The build system attempts to
|
|
add the pthread libraries to support a thread safe memory allocator
|
|
and thread-safe error handling.
|
|
|
|
A new storage mechanism for Berkeley DB 4.0 was contributed
|
|
by Critical Path. Specify the --with-bdb4 and --with-bdb4-dir
|
|
options to enable.
|
|
|
|
Embedded code comments are slowly being migrated to be
|
|
doxygen compliant. See http://www.doxygen.org/ for
|
|
more on this wonderful tool.
|
|
|
|
The code should now compile with non-gcc compilers. Certain
|
|
parts of the autogenerated code were causing problems. The
|
|
code base has also been ported to the windows Visual C
|
|
environment.
|
|
|
|
|
|
Version 0.23, 26 Mar 01 ( cvs tag libical-0-23 )
|
|
------------------------------------------------
|
|
|
|
**** Incompatibilities with previous versions ****
|
|
|
|
icalparameter_new_rsvp
|
|
icalparameter_get_rsvp
|
|
icalparameter_set_rsvp
|
|
|
|
These routines now take and return ICAL_RSVP_TRUE and
|
|
ICAL_RSVP_FALSE instead of 0 and 1
|
|
|
|
icalenum_*_to_*
|
|
|
|
These routines have been moved to icalproperty, icalparameter
|
|
or icalvalue
|
|
|
|
|
|
|
|
Python interface: An alpha level python interface is available in
|
|
src/python.
|
|
|
|
Perl interface: A pre-alpha level interface is available in
|
|
src/Net-ICal-Libical
|
|
|
|
Code Autogeneration: Converted all of the important files in
|
|
design-data/ to .csv files and improved the code that is generated
|
|
from them. Now all of the enumerations for property, parameters and
|
|
values are generated from thes files, as are the string
|
|
representations for the enumerations. You can add a new property or
|
|
parameter to the system simply by adding a line to the appropriate
|
|
file in design-data/
|
|
|
|
Recurrences: Improved the recurrence code by fixing bugs in MONTHLY
|
|
recurrences and completely re-implementing expand_year_days() for
|
|
YEARLY recurrences. Hubert V's aided in testing.
|
|
|
|
Build system: JP Rosevear made several improvements to the build
|
|
system. Now checking out the code from cvs should give to a complete
|
|
but minimal distribution, without any of the autognerated files.
|
|
|
|
Interface changes: Nearly all of the icalenum routines for converting
|
|
between strings and enumerations have been moved out of icalenum into
|
|
icalproperty, icalparameter and icalvalue. This means that their names
|
|
have changed, although #defines have been added to icalenum.h to map
|
|
back to the old names.
|
|
|
|
Added src/libical/icllangbind.c that has some functions to make it
|
|
easier to bind libical to other languages.
|
|
|
|
|
|
Version 0.22, 15 Jan 01 ( cvs tag libical-0-22)
|
|
----------------------------------------------
|
|
|
|
Many improvements to the time routines in icaltime.c. I think that
|
|
they actually make sense now. Note that there is an interface change
|
|
with icaltime_from_timet() -- I removed the is_utc parameter, since
|
|
all timet values are in UTC. Use icaltime_from_int() if you really
|
|
want the old interface
|
|
|
|
Major improvements to icalfileset. icalfileset_select now works and so
|
|
does file locking.
|
|
|
|
Minor revision to the documentation, but it does include a new section
|
|
on file storage ( icalfileset ) and time ( icaltime.c)
|
|
|
|
Lots of bug fixes and small patches.
|
|
|
|
I improved the regression test in src/test/regression.c. It now have
|
|
command line switches to select specific tests ( undocumentated, of
|
|
course ) and more of the tests include asserts, so you can just run it
|
|
without looking at the output. If the test runs without crashing, it
|
|
is mostly OK.
|
|
|
|
|
|
|
|
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
|
|
--------------------
|