Extend $c->default_collections - adding 'calendar_components' and 'default_properties'
[davical.git] / ChangeLog
blobbff4386d943250cb3af57cc4335be2e85477110b
1 2013-03-25  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
2         * In places where the CGI variable REMOTE_USER is read, support
3           alternatively REDIRECT_REMOTE_USER, which is used by the Apache
4           HTTPD Server instead, when a redirect was used.
5         * Removed debian/README.Debian which didn’t contain any useful
6           information.
8 2013-03-23  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
9         * Handle the content of the CGI AUTH_TYPE variable case-insensitively as
10           defined by RFC 3875 Section 4.1.1.
12 2013-03-21  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
13         * Changed the pathnames of the debug files to be a bit more FHS
14           compliant.
16 2013-03-20  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
17         * Changed the end-of-line encodings of all non-Windows-related and 
18           non-autogenerated text files to use UNIX LF (lots of them had mixed
19           LF/CRLF).
20         * HTML escape the remotely retrieved version string printed to the HTML
21           in order to prevent and attacks (if this would have been possible at
22           all in 12 characters).
23         * Updated all addresses of the canonical git upstream repository and the
24           issue tracker to the new ones.
26 2013-03-06  Andrew McMillan  <andrew@morphoss.com>
27         * Fix capitalisation of 'plpgsql' & 'sql' for Postgres 9.2. (debbug #702403)
29 2013-02-16  Andrew McMillan  <andrew@morphoss.com>
30         * Content-Type header should be 'charset' not 'encoding'.
32 2012-09-20  Andrew McMillan  <andrew@morphoss.com>
33         * When we get here it is a Bad Request, not a Server Error.
34         * Quick workaround for iOS6 supported-calendar-component-set issue.
35           Adds a $c->default_calendar_components array of (VEVENT,VTODO,...)
36         * Workaround client software with imperfect add-member implementations.
38 2012-09-10  Andrew McMillan  <andrew@morphoss.com>
39         * Fix unassigned variable.
40         * Avoid unassigned variable warning.
41         * Fix UID handling.
42         * Fix debugging to error log.
44 2012-08-09  Andrew McMillan  <andrew@morphoss.com>
45         * Ensure test responses are displayed in their unprocessed form.
46         * Some debugging messages.
48 2012-07-31  Andrew McMillan  <andrew@morphoss.com>
49         * Replace deprecated split() with explode()
51 2012-05-28  Andrew McMillan  <andrew@morphoss.com>
52         * First cut at iMIP implementation.  Still working on this.
54 2012-07-30  Andrew McMillan  <andrew@morphoss.com>
55         * Fix SQL fieldname.
57 2012-07-29  Andrew McMillan  <andrew@morphoss.com>
58         * Sometimes we want to retrieve the sync-token as a result of a change we just made.
59           This allows a (default true) flag to indicate whether it's OK to use
60           a previously cached value.
61         * On Apple devices these can sometimes appear in the Apple namespace. Odd.
62         * Let the VCalendar class handle how to get the UID from the calendar.
64 2012-07-25  Andrew McMillan  <andrew@morphoss.com>
65         * Remove old redundant constructor.
67 2012-07-13  Andrew McMillan  <andrew@morphoss.com>
68         * Add workaround for Apple's POST add-member trainwreck.
69         * We might not have a $request calling this so use the object's path instead.
70         * Testing for dead property XML which is a set of prop.
71         * supported-calendar-component-set uses dead properties too...
72         * Don't just return the first element in a dead property - there might be multiple!
74 2012-07-04  Andrew McMillan  <andrew@morphoss.com>
75         * Release 1.1.1
76         * CalDAV client library: Handle multiple "Allow" header lines.
77         * Fix checking of Basic Auth headers.
79 2012-07-03  Andrew McMillan  <andrew@morphoss.com>
80         * Fix ldap driver to handle numeric usernames correctly.
82 2012-07-02  Andrew McMillan  <andrew@morphoss.com>
83         * Deny calendar-query report on root, principal or addressbook
84           Even if recursive report is enabled.
86 2012-06-30  Andrew McMillan  <andrew@morphoss.com>
87         * Handle allprop and ommission of prop tag in calendar-query.
88         * Better timezone handling for parsed alarm times.
90 2012-06-28  Andrew McMillan  <andrew@morphoss.com>
91         * Include memory in statistics debug.
92         * Add an option to kill the current process after exceeding a memory limit.
94 2012-06-27  Andrew McMillan  <andrew@morphoss.com>
95         * Fix DISTINCT clause where DAViCal is configured to allow recursive calendars.
97 2012-06-26  Andrew McMillan  <andrew@morphoss.com>
98         * Fix debian bug #656392 - correct detection of suhosin.server_strip status.
100 2012-06-25  Andrew McMillan  <andrew@morphoss.com>
101         * Catch 'events' without a DTSTART gracefully and ignore them.
103 2012-06-21  Andrew McMillan  <andrew@morphoss.com>
104         * Fix notification of deletes when hide_older_than is set.
106 2012-06-19  Andrew McMillan  <andrew@morphoss.com>
107         * Fix call to BuildDeadPropertyXML.
109 2012-06-17  Andrew McMillan  <andrew@morphoss.com>
110         * Release 1.1.0
111         * Allow a configurable path replacement regex.
113 2012-06-14  Andrew McMillan  <andrew@morphoss.com>
114         * Decide whether we can write the principal before we refer to it...
115         * When a VEVENT has an invalid repeat frequency we pretend it is DAILY.
116           And log an error, just to be obnoxious.
118 2012-06-11  Andrew McMillan  <andrew@morphoss.com>
119         * Allow a user delegated write access to the principal to maintain it.
121 2012-05-30  Andrew McMillan  <andrew@morphoss.com>
122         * Fix some niggles with setup.php and spurious logged errors.
124 2012-05-28  Andrew McMillan  <andrew@morphoss.com>
125         * Handle relative file references better,
126         * Add support for $c->hide_older_than to this report.
128 2012-05-20  Andrew McMillan  <andrew@morphoss.com>
129         * Updated & new regression tests for various XML processing changes.
130         * Simplify using GetPath() method.
131         * Use fully namespaced tags.
132         * Fix storing / regurgitating of XML fragments in dead properties.
133           Requires updated AWL to match.
135 2012-05-15  Andrew McMillan  <andrew@morphoss.com>
136         * Add support by Ján Máté for arbitrary collections to create on user creation.
137         * Don't disable upload field. Use library to create 'append mode' field.
139 2012-05-14  Andrew McMillan  <andrew@morphoss.com>
140         * Test result of PROPFIND on /
141         * Further tests for BIND, particular transitive BINDs.
142         * Retry contacting LDAP server and fail with 503 if unavailable.
143         * Reduce unnecessary logging.
144         * Bugfix replacing $row->dav_id with $row->collection_id.
145         * We should error 500 when we have an exception that isn't caught.
147 2012-05-07  Frank Steinberg  <steinberg@ibr.cs.tu-bs.de>
148         * Attendees can only modify own event instance and own PARTSTAT
150 2012-05-05  Andrew McMillan  <andrew@morphoss.com>
151         * A function which can expand collections inside collections.
152         * When a bind is made to an existing bind, bind to the target of that.
153         * When logging failed anonymous access, don't crash and burn.
154         * When matching a URL something missing a trailing slash could also be a binding.
156 2012-05-03  Andrew McMillan  <andrew@morphoss.com>
157         * A more efficient query for GET including sub-collections.
158         * Fix getctag replacement in this test.
159         * Current regression test results.
160         * A default timezone if there is not one set in the PHP configuration.
161         * Changes to the way XML is created, and (to a lesser extent) parsed.
162         * Merge 'Brief' header support into support for "Prefer"
163         * Always default the timezone to something, even if the user did not.
165 2012-04-30  Andrew McMillan  <andrew@morphoss.com>
166         * Simple changes for new XML processing.
167         * Add log_caldav_action() hook on addressbook writes.
168         * If there are no instances ensure earliest_start still gets a value.
170 2012-04-22  Andrew McMillan  <andrew@morphoss.com>
171         * Make it possible to see output from /setup.php when DB is unavailable.
173 2012-04-09  Daniel Aleksandersen  <code@daniel.priv.no>
174         * Fix failing principal creation for new users using IMAP PAM
175         * Provide user feedback when php5-imap is missing.
177 2012-04-19  Andrew McMillan  <andrew@morphoss.com>
178         * Need $request globally in this function
179         * Correct response code for PROPPATCH and add support for Brief header.
181 2012-04-18  Andrew McMillan  <andrew@morphoss.com>
182         * Handle modified which is just YYYYMMDDHHMMSS with no indication of datedness.
183         * Fix bug in "Edit" of existing grant.
184         * Don't try and initialize gettext unless it's installed.
186 2012-04-17  Andrew McMillan  <andrew@morphoss.com>
187         * Further fixes to WebDAV synchronization.
188         * Remove davical upgrade log on debian package removal.
190 2012-04-16  Andrew McMillan  <andrew@morphoss.com>
191         * Changes to the way PROPPATCH returns errors.
193 2012-04-11  Andrew McMillan  <andrew@morphoss.com>
194         * Make sure we increment the sync-token on PUT / DELETE.
195         * Don't log response for a 404 to reduce log noise.
197 2012-04-10  Andrew McMillan  <andrew@morphoss.com>
198         * Add another hook since sometimes we want the action hook to be post commit.
200 2012-04-06  Andrew McMillan  <andrew@morphoss.com>
201         * Make it so that PUT of a calendar collection becomes a synchronisation.
203 2012-04-05  Andrew McMillan  <andrew@morphoss.com>
204         * Do a bit_or() among multiple privilege settings.
206 2012-04-04  Andrew McMillan  <andrew@morphoss.com>
207         * Fix default URL for FindPrincipal() ensure If-Match etag is quoted.
208         * Refactor checking of If-*-Match headers into a single place.
210 2012-03-22  Andrew McMillan  <andrew@morphoss.com>
211         * Get rid of potential warning on early use of date()
212         * Basic support for RFC5995 - Using POST to add collection members.
213         * Better privilege checking on POST scheduling actions.
214         * Fix a bug in GET on collections.
215         * Slight header changes as a result of caldav proxy changes.
216         * Allow complete disabling of handling for Apple's old calendar-proxy.
217         * Changes to Depth handling.
219 2012-03-19  Andrew McMillan  <andrew@morphoss.com>
220         * Fix for collections where sync_token does not compute.
222 2012-03-17  Andrew McMillan  <andrew@morphoss.com>
223         * Principals don't (yet) have a sync-token.
224         * We should respond with sync-token if PROPFIND asks too.
226 2012-03-16  Andrew McMillan  <andrew@morphoss.com>
227         * Correct HTTP date formatting function.
228         * Remove chance of unset variable warning.
230 2012-03-13  Andrew McMillan  <andrew@morphoss.com>
231         * Don't log 401 response since it's so frequent.
232         * Add a basic status/method/uri in front of each logged error.
234 2012-03-12  Rob Ostensen  <rob@boxacle.net>
235         * Add the ability to override dns for iSchedule using a global variable $icfg
237 2012-03-12  Rob Ostensen  <rob@boxacle.net>
238         * Skip empty domains in iSchedule setup page
240 2012-03-12  Andrew McMillan  <andrew@morphoss.com>
241         * Allow dav_test to be used against random SSL certs.
242         * Add $c->auto_refresh_duration option to set a auto refresh on any GET calendar.
243         * Handle HTTP date formatting for non-english locales (force English names).
244         * Silence the warning if this is not initialised.
246 2012-03-11  Rob Ostensen  <rob@boxacle.net>
247         * verify required headers are signed
248         * add disallowed header check and some comments
250 2012-03-07  Rob Ostensen  <rob@boxacle.net>
251         * fix a few external BIND import bugs
253 2012-03-11  Andrew McMillan  <andrew@morphoss.com>
254         * iSchedule administration helper.
256 2012-03-02  Andrew McMillan  <andrew@morphoss.com>
257         * Changed default Depth for PROPFIND.
258         * Changes due to responding that VPOLL/VAVAILABILITY are OK.
259         * Fix bug introduced with iSchedule support.
260         * Fix defaulting of Depth value for newer PHP versions.
262 2012-02-24  Andrew McMillan  <andrew@morphoss.com>
263         * Add a command-line script to export a single calendar to stdout.
264         * Split major functionality out of GET into it's own include.
265         * Only send a Content-Length if the length is > 0
267 2012-02-21  Andrew McMillan  <andrew@morphoss.com>
268         * Override the "don't PUT a whole calendar" option.
269         * A command-line script to load a calendar from an iCalendar file.
271 2012-02-06  Andrew McMillan  <andrew@morphoss.com>
272         * Detect unsupported sync-level and return specified error.
273         * Force casting of user_no to integer.
275 2012-02-02  Andrew McMillan  <andrew@morphoss.com>
276         * Work from new iana timezone registry.
278 2012-02-01  Rob Ostensen  <rob@boxacle.net>
279         * ischedule: more correct error codes
280         * remove some of the debugging cruft
281         * ischedule: fake session info when writing scheduling collections
283 2012-01-31  Rob Ostensen  <rob@boxacle.net>
284         * ischedule: correctly set the attendee value on freebusy replies
285         * ischedule: actually add attendee to freebusy reply ics
287 2012-02-01  Andrew McMillan  <andrew@morphoss.com>
288         * Implement support for 'Brief' header.
289           Also add VPOLL and VAVAILABILITY to list of supported components.
290         * Don't include the example .htaccess on Debian systems.
292 2012-01-25  Andrew McMillan  <andrew@morphoss.com>
293         * Correct variable name used parsing RFC5545 duration.
295 2012-01-23  Andrew McMillan  <andrew@morphoss.com>
296         * Fix problems calling import collection from external contexts.
297         * Allow specifying that this test will use Digest authentication.
298         * Clean up content-type checking so it's not so noisy on null content.
300 2012-01-17  Andrew McMillan  <andrew@morphoss.com>
301         * Make the 'append' option work.
303 2012-01-31  Rob Ostensen  <rob@boxacle.net>
304         * ischedule: make invites and replies work
305         * iSchedule: minor fix
306         * iSchedule changes: fix signed domain, better error handling, cleanups
307         * ischedule freebusy should work now
308         * closer to a working version
310 2012-01-30  Rob Ostensen  <rob@boxacle.net>
311         * fix xml queries
313 2012-01-27  Rob Ostensen  <rob@boxacle.net>
314         * debug logging and some typo fixes
315         * return calendar contents if present otherwise return status
316         * initial tests for remote iSchedule requests signed using test keys
317         * remote scheduling requests should work now, still need to handle ADD/CANCEL requests
319 2012-01-25  Andrew McMillan  <andrew@morphoss.com>
320         * Correct variable name used parsing RFC5545 duration.
322 2012-01-23  Andrew McMillan  <andrew@morphoss.com>
323         * Fix problems calling import collection from external contexts.
324         * Allow specifying that this test will use Digest authentication.
325         * Clean up content-type checking so it's not so noisy on null content.
327 2012-01-17  Rob Ostensen  <rob@boxacle.net>
328         * iSchedule internal round trip with headers and body signing then verification working
330 2012-01-17  Andrew McMillan  <andrew@morphoss.com>
331         * Make the 'append' option work.
333 2012-01-16  Rob Ostensen  <rob@boxacle.net>
334         * reformatting to match the rest of DAViCal and a few code changes
336 2012-01-15  Andrew McMillan  <andrew@morphoss.com>
337         * <?php should be in lower case.
338         * If an external source can supply a useful timezone name, we can use that.
339         * Allow user_no, created and modified to be set on create.
341 2012-01-12  Philipp Matthias Hahn  <pmhahn@pmhahn.de>
342         * Use If-Modified-Since-HTTP-Header
343         * Fix remote time comparison
344         * Compute version only once
345         * Use automatic Makefile variables
346         * Make several targets .PHONY
348 2012-01-14  Andrew McMillan  <andrew@morphoss.com>
349         * Probably a smidgin more efficient this way around.
350         * LDAP driver should not log password unless password logging is specifically on.
351         * Release 1.0.2
353 2012-01-13  Andrew McMillan  <andrew@morphoss.com>
354         * Handle VCARD adr/tel/email which have multiple types.
355         * Set the default URL to the default calendar name rather than /home/
356         * Enable the file upload for addressbook collections.
357         * Handle addressbook import along with calendar import.
358         * Write UID and REV property n VCARD if they are missing.
359         * Fix bug in scheduling on POST request.
360         * Fix permissions on user create via external auth.
362 2012-01-12  Andrew McMillan  <andrew@morphoss.com>
363         * Allow for silly programs that send content-type XML with a GET request.
364         * Support use of HTTP_AUTHORIZATION in addition to AUTHORIZATION cgi.
365         * Add a default min_age for external binds.
367 2012-01-06  Rob Ostensen  <rob@boxacle.net>
368         * Prevent external binds from being created/updated if curl is missing.
369         * Add check to setup page to test whether curl is installed.
371 2012-01-05  Andrew McMillan  <andrew@morphoss.com>
372         * Release 1.0.1
374 2012-01-04  Andrew McMillan  <andrew@morphoss.com>
375         * Release 1.0
377 2011-12-14  Andrew McMillan  <andrew@morphoss.com>
378         * Handle bound resources correctly in sync-collection report.
379         * Catch missing-xml in request separately from invalid-xml.
381 2011-12-07  Andrew McMillan  <andrew@morphoss.com>
382         * Add the "CardDAV" word into DAViCal's description.
383         * Improve expand performance by only doing expansion if we know we need it.
385 2011-12-03  Andrew McMillan  <andrew@morphoss.com>
386         * Use supplied content_type even on zero-length requests.
388 2011-12-03  Rob Ostensen  <rob@boxacle.net>
389         * When creating an external bind don't consider local host as external
391 2011-11-30  Andrew McMillan  <andrew@morphoss.com>
392         * Strip URL-unfriendly characters from UID before using it as URL segment.
394 2011-11-29  Andrew McMillan  <andrew@morphoss.com>
395         * Slightly more helpful 403 response.
397 2011-11-27  Andrew McMillan  <andrew@morphoss.com>
398         * Fix logic error in hide_TODO setting.
399         * Make hide_alarm work on bound resources.
401 2011-11-26  Andrew McMillan  <andrew@morphoss.com>
402         * Correct bug in sync-collection report response.
403         * Fix BIT24 casting for the LDAP driver.
405 2011-11-25  Andrew McMillan  <andrew@morphoss.com>
406         * Remove password from LDAP log messages.
408 2011-11-22  Andrew McMillan  <andrew@morphoss.com>
409         * Fix for MOVE into a bound location.
411 2011-11-21  Andrew McMillan  <andrew@morphoss.com>
412         * Tooltips for schedule-deliver and schedule-send.
413         * Current localisations from Transifex.
414         * The tooltips for schedule-send and schedule-deliver should be different!
415         * Correctly calculate the next alarm time.
416         * Update e-mail address to current one, mention wiki.
418 2011-11-09  Andrew McMillan  <andrew@morphoss.com>
419         * Make sync-collection handle new format for sync token.
420         * Don't allow a / in the UID to infect the path on import.
422 2011-11-09  Rob Ostensen  <rob@boxacle.net>
423         * Fix propfind depth:1 on bind to external url
425 2011-11-02  Andrew McMillan  <andrew@morphoss.com>
426         * Handle DELETE scheduling actions.
427         * Force output buffers to be flushed, if they're turned on.
428         * Correct handling of empty CardDAV:address-data element in request.
430 2011-11-01  Andrew McMillan  <andrew@morphoss.com>
431         * Update refresh-alarms script to newer style initialisation.
432         * Fix handling of active flag for general external authentication mechanisms.
433         * Update website to reflect new default calendar name.
435 2011-10-31  Andrew McMillan  <andrew@morphoss.com>
436         * Rationalise confidential event rewriting.
438 2011-10-30  Andrew McMillan  <andrew@morphoss.com>
439         * Add the $c->hide_alarms functionality into DAVResource class.
441 2011-10-28  Andrew McMillan  <andrew@morphoss.com>
442         * Allow LDAP sync to work if the date is reasonable and no 'format_updated' is set.
443         * We don't need to test for the PostgreSQL non-PDO drivers now.
444         * Switch out deprecated LDAP mappings before we use them anywhere.
445         * Fix LDAP user creation where memcached support is off.
447 2011-10-27  Andrew McMillan  <andrew@morphoss.com>
448         * Add test for PHP filter module and wiki links for each test.
450 2011-10-25  Andrew McMillan  <andrew@morphoss.com>
451         * Updates to Brazilian Portuguese, German and Dutch translations.
452         * We need $c to be global here.
453         * A couple more places restricting numeric usernames.
455 2011-10-25  Rob Ostensen  <rob@boxacle.net>
456         * External bind changes, added a clean up button, urls now show for
457           external collections and added a few strings for translation
459 2011-10-24  Andrew McMillan  <andrew@morphoss.com>
460         * Release 0.9.9.7
461         * More fixes to CalDAV Scheduling
462           - Handle REPLY from ATTENDEE accepting/declining meeting.
463           - Handle processing on ORGANIZER further changing meeting.
464 2011-10-24  Andrew McMillan  <andrew@morphoss.com>
465         * Release 0.9.9.7
466         * More work on CalDAV Scheduling
467           - Handle REPLY from ATTENDEE accepting/declining meeting.
468           - Handle processing on ORGANIZER further changing meeting.
470 2011-10-20  Andrew McMillan  <andrew@morphoss.com>
471         * Add a config setting to force unnecessary FBTYPE parameter in freebusy response.
472         * Fix errors in PROPPATCH response.
473         * More work on CalDAV Scheduling
474           - Update the SCHEDULE-STATUS parameter correctly.
475           - Don't include ETag in PUT response when scheduling actions occur.
476           - Write scheduling resources to attendee calendars for modifications.
478 2011-10-18  Andrew McMillan  <andrew@morphoss.com>
479         * A basic, untested, handler for /autodiscover/autodiscover.xml
480         * Make sure default relationships are created.
481         * Fix various brokenness with LDAP introduced in 0.9.9.5
483 2011-10-16  Andrew McMillan  <andrew@morphoss.com>
484         * Support an array of server_auth_type since Kerberos can send different ones.
486 2011-10-14  Andrew McMillan  <andrew@morphoss.com>
487         * Fix tools.php to allow importing of a directory of calendars again.
488         * Fix various data casting issues, particularly to handle integer usernames.
490 2011-10-07  Rob Ostensen  <rob@boxacle.net>
491         * Add a page to list externally bound calendars.
493 2011-09-14  Rob Ostensen  <rob@boxacle.net>
494         * Add a check to the setup page for the php calendar extension
496 2011-10-07  Andrew McMillan  <andrew@morphoss.com>
497         * Fail more gracefully on crap encoding input.
498         * Test for 'deflate' content encoding.
499         * Rewrite calendar-query handling of time-range constraints.
501 2011-10-06  Andrew McMillan  <andrew@morphoss.com>
502         * Fix a regression in lock handling.
503         * Fix handling where supplied content-type header is busted.
504         * Set limits & defaults on lock duration.
505         * Implement support for proposed tzid parameter on list requests.
507 2011-10-05  Andrew McMillan  <andrew@morphoss.com>
508         * Various fixes to timezone server implementation.
510 2011-10-05  Andrew McMillan  <andrew@morphoss.com>
511         * Support gzip/deflate/compress encoding of incoming entity for PUT etc.
512         * Add protocol://hostname onto HTTP Location header per spec.
514 2011-10-05  Andrew McMillan  <andrew@morphoss.com>
515         * Fix handling of .well-known where the base handler is not caldav.php
517 2011-10-04  Andrew McMillan  <andrew@morphoss.com>
518         * Updated MKCOL/MKCALENDAR to support setting a supported-calendar-component-set
519         * Change sync-token response to be a URI, per spec.
520         * Correctly create the addressbook collection as an addressbook.
522 2011-10-01  Andrew McMillan  <andrew@morphoss.com>
523         * Fix the way default privileges are set for the SQL.
525 2011-09-30  Andrew McMillan  <andrew@morphoss.com>
526         * Get rid of unsightly error due to removal of time_zone table.
528 2011-09-28  Andrew McMillan  <andrew@morphoss.com>
529         * Fix bug handling COUNT= with BYDAY=multiple and FREQ=WEEKLY
530         * Fix handling of BYMONTHDAY=-N in repeat rules.
532 2011-09-23  Andrew McMillan  <andrew@morphoss.com>
533         * Release 0.9.9.6
535 2011-09-22  Andrew McMillan  <andrew@morphoss.com>
536         * Implement Timezone Server Protocol per -02 draft RFC
537         * Add a script that can be run from cron to sync from LDAP.
538         * Fix accidental null assignments on update from external authentication (LDAP)
540 2011-09-20  Andrew McMillan  <andrew@morphoss.com>
541         * Add timezone and scheduling to the default regression set.
542         * Provide an alternative 1.2.10a patch with fixed check_db_revision().
544 2011-09-19  Andrew McMillan  <andrew@morphoss.com>
545         * Rewrite time-range SQL clauses for clarity and correctness.
547 2011-09-17  Andrew McMillan  <andrew@morphoss.com>
548         * Tests for open-ended time-range calendar-query.
549         * Fix an error in calendar-query handling of time-range queries.
551 2011-09-14  Andrew McMillan  <andrew@morphoss.com>
552         * Migrate away from deprecated iCalendar class.
553         * Ensure username is initialised to something appropriate from LDAP
554         * Allow null dtstart to match any range, as per Scheduling Draft.
556 2011-09-14  Rob Ostensen  <rob@boxacle.net>
557         * add a check to the setup page for the php calendar extension
559 2011-09-13  Rob Ostensen  <rob@boxacle.net>
560         * skip scheduling attendees with schedule-agent set to something other than server
562 2011-09-10  Andrew McMillan  <andrew@morphoss.com>
563         * Write schedule resources to attendee calendars and inboxes on PUT.
565 2011-09-09  Andrew McMillan  <andrew@morphoss.com>
566         * Add test of error response for a REPORT which is not supported.
567         * Add support for the CalDAV:schedule-default-calendar-URL property.
569 2011-09-08  Andrew McMillan  <andrew@morphoss.com>
570         * Rename caldav-PUT.php to reflect it's calendaring association.
571         * Decruftify, and allow the squid pam to use 'path' instead of 'script' in it's config.
572         * Fix PROPPATCH behaviour on bound resources.
574 2011-09-07  Andrew McMillan  <andrew@morphoss.com>
575         * Correct handling of PUT with unreferenced VTIMEZONE
577 2011-08-29  Andrew McMillan  <andrew@morphoss.com>
578         * Restore default relationships, which still have utility in complex environments.
580 2011-08-28  Andrew McMillan  <andrew@morphoss.com>
581         * Workaround MacOS X 10.6 Addressbook cannot login to CardDav with '@' in username
583 2011-08-26  Andrew McMillan  <andrew@morphoss.com>
584         * Only include override components if they happen within the period.
585         * Change to depend on postgresql-client >= 8.1 and AWL = 0.47-1
587 2011-06-28  Rob Ostensen  <rob@boxacle.net>
588         * Add support for remote url BINDing
590 2011-08-25  Andrew McMillan  <andrew@morphoss.com>
591         * PROPPATCH is allowed on binds.
592         * Make locale handling use stuff pulled from transifex.net
593         * Add Brazilian Portuguese and Mexican Spanish.
595 2011-08-24  Andrew McMillan  <andrew@morphoss.com>
596         * Test results including calendar-auto-schedule header as default.
597         * Fix calendar-query handling of properties.
599 2011-08-23  Andrew McMillan  <andrew@morphoss.com>
600         * Fix XML output of <error> block.
601         * Handle <prop> following <filter> & a single-ended time filter.
603 2011-06-01  Andrew McMillan  <andrew@morphoss.com>
604         * Allow the calendar-query expansion to return all events in floating time.
606 2011-05-22  Andrew McMillan  <andrew@morphoss.com>
607         * Setup test should recognise "Off" as well as "0"
609 2011-05-18  Andrew McMillan  <andrew@morphoss.com>
610         * Add first cut implementation of principal-match report.
612 2011-05-13  Andrew McMillan  <andrew@morphoss.com>
613         * When sync-collection is asked for data, only return it if < 50 rows.
615 2011-04-03  Andrew McMillan  <andrew@morphoss.com>
616         * Ensure dav_id_seq is initialized to a non-colliding value.
617         * Add support for Digest authentication.
619 2011-04-01  Andrew McMillan  <andrew@morphoss.com>
620         * When an import event has no UID we reluctantly assign one.
622 2011-03-13  Andrew McMillan  <andrew@morphoss.com>
623         * A more complete fix for weird passwords with LDAP.
624         * Apparently an attempt to bind with an empty password will return TRUE!
626 2011-03-03  Felix Möller  <mail@felixmoeller.de>
627         * Add explaination for translators.
629 2011-03-03  Andrew McMillan  <andrew@morphoss.com>
630         * Fix bug in schedule status response where there is no authority.
632 2011-02-27  Felix Möller  <mail@felixmoeller.de>
633         * Sync german translation with Transifex.
635 2011-02-23  Andrew McMillan  <andrew@morphoss.com>
636         * Fix sort order of members listed in a group.
637         * Add support for locking with memcached during delete to avoid deadlocks.
639 2011-02-22  Andrew McMillan  <andrew@morphoss.com>
640         * Force line endings to consistent CRLF in GET.
642 2011-02-22  Felix Möller  <mail@felixmoeller.de>
643         * Producing tarballs now which can be build by rpmbuild -ta davical.tar.gz
645 2011-02-22  Andrew McMillan  <andrew@morphoss.com>
646         * Check for LDAP module, but only if LDAP is configured.
648 2011-02-21  Felix Möller  <mail@felixmoeller.de>
649         * add automatic building of translation documentation
650         * Remove obsoleted strings from translation
651         * Adding documentation for translators
653 2011-02-21  Andrew McMillan  <andrew@morphoss.com>
654         * Move from extract.pl to standard xgettext
656 2011-01-22  Felix Möller  <mail@felixmoeller.de>
657         * Removing the last traces of RSCDS and renaming it to DAViCal.
659 2011-02-21  Andrew McMillan  <andrew@morphoss.com>
660         * Build AWL desired version string as quoted value.
662 2011-02-20  Andrew McMillan  <andrew@morphoss.com>
663         * Correct error message for unsupported report request.
665 2011-01-21  Andrew McMillan  <andrew@morphoss.com>
666         * Ensure resources are always returned with CRLF rather than just LF.
668 2011-01-18  Andrew McMillan  <andrew@morphoss.com>
669         * Skip alarms with bogus trigger data.
671 2011-01-15  Andrew McMillan  <andrew@morphoss.com>
672         * Block invalid tickets from having access.
674 2011-01-14  Andrew McMillan  <andrew@morphoss.com>
675         * Add norwegian and estonian translation files.
677 2011-01-12  Andrew McMillan  <andrew@morphoss.com>
678         * Validate alarm date-time or duration before adding it to the DB.
680 2011-01-04  Andrew McMillan  <andrew@morphoss.com>
681         * Finally give up on the SQL rrule pre-processing.
682         * Move debug logged password behind specific 'password' debug setting.
683         * Obfuscate event data when reader only has read-free-busy permission.
685 2011-01-03  Andrew McMillan  <andrew@morphoss.com>
686         * List all of a user's calendar homes
687         * Extend default_privileges to members of a group.
689 2010-12-31  Andrew McMillan  <andrew@morphoss.com>
690         * Add support for caching of feed, and uncaching on collection change.
692 2010-12-30  Andrew McMillan  <andrew@morphoss.com>
693         * Let auth realm be 'per Principal' to work around Mozilla #247486
694         * IMAP PAM authentication from Oliver Schulze
696 2010-12-28  Andrew McMillan  <andrew@morphoss.com>
697         * Release 0.9.9.4
699 2010-12-27  Andrew McMillan  <andrew@morphoss.com>
700         * Refactor PUT functions to set modified/created dates more correctly.
702 2010-12-27  Leho Kraav  <leho@kraav.com>
703         * add et_EE to support locales
705 2010-12-26  Andrew McMillan  <andrew@morphoss.com>
706         * Fix errors in po files pointed out by Transifex uploading.
707         * A new AtomFeed class for building an Atom feed.
708         * Switch to creating an atom feed, which is a better feed standard.
710 2010-12-26  Leho Kraav  <leho@kraav.com>
711         * A new URL to provide an RSS feed of a calendar's changes.
713 2010-12-26  Andrew McMillan  <andrew@morphoss.com>
714         * Refactored RRule to add support for initialisation from a vProperty.
716 2010-12-25  Andrew McMillan  <andrew@morphoss.com>
717         * Remove all reference to PgQuery
718         * Extensive refactoring of principal-edit, plus support for creating tickets.
719         * Add support for writing scheduling resources on PUT.
720         * Improve support for handling floating time.
721         * Add cil for internal issue tracking.
723 2010-12-08  Andrew McMillan  <andrew@morphoss.com>
724         * Cut access with invalid/expired tickets out immediately.
726 2010-12-07  Andrew McMillan  <andrew@morphoss.com>
727         * Handle empty PROPFIND, don't blow up on invalid XML.
729 2010-11-30  Andrew McMillan  <andrew@morphoss.com>
730         * /.well-known/* now returns a 301 redirect, per spec.
731         * Use text/vcard for content type in advance of ratification of spec.
732         * Properly handle addressbooks in multiget.
733         * Hide authorization headers in logging.
734         * Update sync-collection REPORT to match -04 of draft.
735         * Replace index.php with caldav.php when we find it in our path.
737 2010-11-27  Andrew McMillan  <andrew@morphoss.com>
738         * Be pedantic about checking user is active before we let them in.
739         * Specify the SRV record examples with leading _ as they should be.
741 2010-11-21  Andrew McMillan  <andrew@morphoss.com>
742         * Fix SQL for group handling from Michael Braun.
743         * Add principal-collection-set to standard responses for DAVResource.
744         * Correct typo in POST handling.
746 2010-11-20  Andrew McMillan  <andrew@morphoss.com>
747         * Also update displayname if fullname is changed.
749 2010-10-02  Daniel Aleksandersen  <daniel@>
750         * remove old screenshots
751         * updated iPhone client configuration with new screenshots
753 2010-11-19  Andrew McMillan  <andrew@morphoss.com>
754         * Handle stuff like DTSTART;TZID=America/New_York:20101119T231307
756 2010-11-14  Andrew McMillan  <andrew@morphoss.com>
757         * Script to refresh calendar_alarms with next instance time.
759 2010-11-09  Andrew McMillan  <andrew@morphoss.com>
760         * Don't let auth functions create duplicate home calendars.
762 2010-11-06  Andrew McMillan  <andrew@morphoss.com>
763         * Patch for caldav sync from Pierre-Arnaud Poudret.
764         * Add ACL to the supported methods.
765         * Change regression runner to look for sample data with tests.
766         * Correct version number typo.
767         * Always grant 'DAV::read' privilege from principal to group members.
769 2010-11-05  Andrew McMillan  <andrew@morphoss.com>
770         * Use expanded time specifiers in format since %Y doesn't work on Windows.
771         * Support recursive REPORT query if configured to allow it.
773 2010-11-04  Andrew McMillan  <andrew@morphoss.com>
774         * Add a new WritableCollection object which we will use for PUT.
775         * Use text/vcard rather than older text/x-vcard.
776         * Support event properties in changed part of sync-response.
777         * Rename variable to work around Pg 9.0 reserved name.
779 2010-11-01  Andrew McMillan  <andrew@morphoss.com>
780         * Switch from regular expression which may not work in old/odd PHP.
782 2010-10-31  Andrew McMillan  <andrew@morphoss.com>
783         * Support getlastmodified property in REPORT requests.
785 2010-10-16  Andrew McMillan  <andrew@morphoss.com>
786         * Fix typo in iTIP CANCEL handling.
788 2010-10-15  Andrew McMillan  <andrew@morphoss.com>
789         * Turn on calendar-auto-schedule header if $c->enable_auto_schedule
790         * Add various additional checks into /setup.php
791         * Add knowledge of desired parallel AWL version to setup.
793 2010-10-10  Andrew McMillan  <andrew@morphoss.com>
794         * Fix various minor CardDAV bugs.
795         * Omit the <response> for event outside the time range - when expanded.
796         * Fix privilege_to_bits function to set 'all' correctly & work with recent postgres
798 2010-10-08  Andrew McMillan  <andrew@morphoss.com>
799         * Don't supply freebusy for 0-duration events.
800         * Another regression test for free/busy catching many events.
801         * Add an event with a thoroughly bogus tzid to ensure we cope.
802         * Check for some supported stuff very early so we can show it is missing.
803         * Better display of bindings.
804         * Add postgreSQL 9.0 as a possibility.
805         * Fix warning when using basic authentication fallback.
806         * Fix handling of iCalendar durations containing negative elements.
807         * Handle events which don't have either DTEND *or* DURATION.
808         * Rewrite __construct() method of RepeatRuleDateTimeZone to be more robust.
810 2010-09-25  Andrew McMillan  <andrew@morphoss.com>
811         * Release 0.9.9.3
812         * Rename 'Import Calendars' to 'Tools' since LDAP is more likely.
813         * Add an 'all' regression set which creates the initial DB for the others.
814         * If we get an unknown sync token, just sync everything.
815         * Minor refactoring of DAVResource.
816         * Consistently use ETags with quoting.
817         * Add configuration option to use older 'sync-response' tag.
818         * Provide correct getcontenttype property for addressbook resources.
820 2010-09-24  Andrew McMillan  <andrew@morphoss.com>
821         * Allow basic auth to supply login credentials.
822         * Display the bindings a principal has access to.
823         * Fix various bugs with handling of addressbook resources.
825 2010-09-23  Andrew McMillan  <andrew@morphoss.com>
826         * Regression tests need to check sync on addressbook collections.
827         * Make the sync report work with non-calendar resources.
828         * Fix write_sync_changes to cope with non-calendar resources.
830 2010-09-21  Andrew McMillan  <andrew@morphoss.com>
831         * Release 0.9.9.2
832         * [principal/collection edit] Add display of tickets and bindings.
834 2010-09-20  Andrew McMillan  <andrew@morphoss.com>
835         * [collection-edit] Handle some errors more gracefully.
837 2010-09-16  Jim Hague  <jim.hague@acm.org>
838         * PAM auth - get user name from a comma-less passwd comment field.
840 2010-09-14  Andrew McMillan  <andrew@morphoss.com>
841         * Remove built docs for files no longer present in DAViCal.
842         * Improve resiliency of sync-caldav script.
843         * Uncomment the addressbook-query report.
845 2010-09-13  Andrew McMillan  <andrew@morphoss.com>
846         * Warn if we're being expected to log actions, but have no function.
848 2010-09-12  Andrew McMillan  <debian@mcmillan.net.nz>
849         * Tweaking OPTIONS output.
850         * Whoops: we weren't sending an ETag on PUT for non-Calendar resources.
852 2010-09-11  Andrew McMillan  <andrew@morphoss.com>
853         * [setup] Detect whether suhosin.server.strip is set and discourage it.
854         * [index] Allow for a HEAD request on / to be served here too.
855         * [principal edit] Ensure the id is > 0 for us to fetch the record.
856         * [sync-collection report] Fix to work with bound collections.
858 2010-09-02  Andrew McMillan  <andrew@morphoss.com>
859         * Ensure we get a duration, and default to 1 day if not.
860         * Handle a level of indirection in Binds of binds.
861         * Try harder to get the right duration for an event.
863 2010-08-31  Andrew McMillan  <andrew@morphoss.com>
864         * Wrap calendar-specific things for PROPFIND in an IsCalendar() test.
866 2010-08-30  Andrew McMillan  <andrew@morphoss.com>
867         * Refactored free/busy handling to a single core routine with RRule-2
868         * Add support for weeks in durations.
869         * Switch event expansion to use vComponent.php rather than iCalendar.
870         * Add a getUserByEMail() function.
872 2010-08-29  Andrew McMillan  <andrew@morphoss.com>
873         * Coerce the content-type on PUT.
875 2010-08-28  Andrew McMillan  <andrew@morphoss.com>
876         * Add initial support for addressbook-query REPORT.
878 2010-08-24  Andrew McMillan  <andrew@morphoss.com>
879         * OPTIONS should be available to someone with any of the read permissions.
881 2010-08-18  Andrew McMillan  <andrew@morphoss.com>
882         * Print stage of processing for diagnostic reasons.
883         * Update WebDAV Sync to support -03 of draft
884         * Order drop-down list of principals by displayname.
885         * Allow principal-property-search(-set) REPORT requests on any URL.
886         * Add optional parameter to 'simple' interface to allow action logging.
887         * Add all/any option to NeedPrivilege method also.
889 2010-08-14  Jens Zahner  <jens.zahner@servicereisen.de>
890         * Fixes to LDAP group handling by Jens Zahner
892 2010-06-29  Andrew McMillan  <andrew@morphoss.com>
893         * Results of returning applicable permissions by resourcetype.
894         * Respond with supported-report error if the report is unsupported.
895         * Default type to 'resource' for privileges display.
896         * Remove uninitialised variable possibility.
898 2010-06-28  Andrew McMillan  <andrew@morphoss.com>
899         * Add parameter for masking privilege output to only applicable set.
900         * Check for existence of target resource before we check for READ perm.
901         * Better guessing of content-type when we get a bad/missing one.
902         * Rewrite the way the DAV header is produced.
904 2010-06-27  Andrew McMillan  <andrew@morphoss.com>
905         * Don't allow PUT of non-calendar/address resources into calendars/addressbooks.
906         * Add support for carddav / caldav well-known URLs. Fix short open tag.
907         * Update regression tests for DAV support header change.
908         * Add indication of support for addressbook.
910 2010-06-23  Andrew McMillan  <andrew@morphoss.com>
911         * Correct return code on PUT modified.
912         * Send a correct content-type on GET.
913         * Rename event() to resource() since it might not be an event.
914         * When we PUT a vcard set the caldav_type to VCARD.
915         * Try and read dav_principal since the remote usr record no longer suffices.
917 2010-06-17  Andrew McMillan  <andrew@morphoss.com>
918         * A fix for problems with character output in the user configuration.
919         * Allow for the send_page_header() function to be overridden.
920         * Also remove '/' from potential ticket charset.
921         * Updated Deutsch translation.
923 2010-05-30  Andrew McMillan  <andrew@morphoss.com>
924         * Add a weak_etag field to the calendar_attendee table.
926 2010-05-27  Andrew McMillan  <andrew@morphoss.com>
927         * Updated results with fixed RFC5545 wrapping/escaping.
929 2010-05-19  Andrew McMillan  <andrew@morphoss.com>
930         * Handle VCARD on PUT.
931         * Add ability to start a regression suite from a DB dump.
932         * Add a hack so older Mozilla calendar versions don't see auto-schedule.
934 2010-05-17  Andrew McMillan  <andrew@morphoss.com>
935         * Add a hack to work around Lightning/Sunbird bug #463392
936         * These AwlQuery classes are ow thoroughly migrated into AWL.
938 2010-05-14  Michael Trausch  <mike@trausch.us>
939         * A module for authorization by way of the "pwauth" program
941 2010-05-12  Andrew McMillan  <andrew@morphoss.com>
942         * A few minor database changes.
943         * A few improvements to database creation.
944           Inspired by Peter Eisentraut's blog post about writing scripts
945           for PostgreSQL.
946         * Add support for the addressbook-multiget REPORT.  Untested.
947         * Fix if_addressbook for /
948         * Add a check for gettext availability.
950 2010-05-07  Andrew McMillan  <andrew@morphoss.com>
951         * Add a function to convert iCalendar interval syntax into SQL.
952         * Move RRule expansion functions into RRule include.
954 2010-04-29  Andrew McMillan  <andrew@morphoss.com>
955         * Add facility to append to a calendar with ?mode=append on PUT
956         * RDATE/EXDATE can occur multiply, as well as contain multiple dates.
958 2010-04-28  Andrew McMillan  <andrew@morphoss.com>
959         * When a timezone is supplied, but not used in the event, pretend it was.
961 2010-04-26  Andrew McMillan  <andrew@morphoss.com>
962         * Improved sync to cope slightly better if remote data already present.
963         * Don't complain if the event includes an unused timezone.
965 2010-04-20  Andrew McMillan  <andrew@morphoss.com>
966         * Log the response regardless, if it is status 400 or greater.
967         * Hide the output of that upgrade away in the var/log directory.
968         * Attempt to run the database update on upgrade, but ignore failure.
970 2010-04-19  Andrew McMillan  <andrew@morphoss.com>
971         * Fix lintian error.
972         * Release 0.9.9
974 2010-04-17  Andrew McMillan  <andrew@morphoss.com>
975         * Updated changelog for release 0.9.9
976         * Add SQL query to test 244 to highlight the correct results.
978 2010-04-16  Andrew McMillan  <andrew@morphoss.com>
979         * Switch to put caldav_data.* in result list after calendar_item.*
980         * Switch to use RenderGMT() to render these dates.
981         * Updated freebusy results from RenderGMT() fix.
982         * Fix RenderGMT() to render GMT correctly.
984 2010-04-15  Andrew McMillan  <andrew@morphoss.com>
985         * all should depend on the new location for always.php
986         * Use the new olson_from_tzstring() function to extract the Olson tz.
987         * Connection/Keep-alive headers removed.
988         * Don't report Connection: and Keep-alive: headers.
990 2010-04-14  Andrew McMillan  <andrew@morphoss.com>
991         * Preparing to release 0.9.9
992 2010-04-17  Andrew McMillan  <andrew@morphoss.com>
993         * Release 0.9.9
994         * Fix RenderGMT() to render actual GMT time & use more widely.
996 2010-04-15  Andrew McMillan  <andrew@morphoss.com>
997         * Use the new olson_from_tzstring() function to extract the Olson tz.
999 2010-04-13  Andrew McMillan  <andrew@morphoss.com>
1000         * Allow configuration of $c->restrict_admin_roles.
1001         * Try to clarify principal actions with better prompts.
1002         * Inactive users should not still be able to access their calendars.
1004 2010-04-12  Andrew McMillan  <andrew@morphoss.com>
1005         * Provide visual feedback when users cannot edit a page.
1007 2010-04-03  Andrew McMillan  <andrew@morphoss.com>
1008         * Cope with Google occasionally setting the CREATED date to 0000 year.
1009         * A new trigger allowing calendar_alarm.component to be edited.
1010           The trigger will then cause the caldav_data record to be
1011           updated with the new alarm component, and the etag is changed.
1012         * Force ticket_id to be cast to text, even if it looks like a number.
1013         * Force casting to text on setting DAV properties.
1014         * Add facility to GET on collection of collections.
1015           Including bound collections into the resultset.
1017 2010-04-01  Andrew McMillan  <andrew@morphoss.com>
1018         * Only log start of script if that specific debug is configured.
1019         * Support statistics logging for interactive pages too.
1021 2010-03-31  Andrew McMillan  <andrew@morphoss.com>
1022         * Switch recommended source to pgp.net.nz for the repository key.
1024 2010-03-30  Andrew McMillan  <andrew@morphoss.com>
1025         * Correct PUT response code for create vs update.
1026         * Add some statistical logging for script/database execution times.
1028 2010-03-29  Andrew McMillan  <andrew@morphoss.com>
1029         * Add initial support for arbitray text objects in collections.
1030         * Fix logging type on MOVE and remove redundant code.
1031         * Remove any expired locks before testing if a lock is active.
1033 2010-03-27  Andrew McMillan  <andrew@morphoss.com>
1034         * Add some support for VALUE=DATE in our DateTime wrapper.
1036 2010-03-25  Andrew McMillan  <andrew@morphoss.com>
1037         * Check for unbind permission on container before DELETE.
1039 2010-03-24  Andrew McMillan  <andrew@morphoss.com>
1040         * Now PROPPATCH works on bindings.
1041         * Teach set_dav_property() about dav_bindings.
1042         * Error correctly when the destination parent collection does not exist.
1043         * Improved approach for reading parent collection.
1044         * Initialise the parent_container when constructing from a row.
1045         * Handle duplicate attendee lines in one VEVENT.
1046         * Add configurable locale directory from Aurelien.
1048 2010-03-23  Andrew McMillan  <andrew@morphoss.com>
1049         * Ignore sync-cache droppings from sync script testing.
1051 2010-03-23  Rob Ostensen  <rob@boxacle.net>
1052         * scheduling spec section 6.4, deliver event with scheduling status to users inbox
1054 2010-03-23  Andrew McMillan  <andrew@morphoss.com>
1055         * Move always.php into the webroot for easier setup.
1056           Also add some 'search for the AWL includes' code into it for
1057           even more easier setup.
1058         * Explode out Attendees and Alarms on PUT/import collection too.
1059         * Updated dav_test now looks for DATA= as simple filename.
1061 2010-03-22  Andrew McMillan  <andrew@morphoss.com>
1062         * Enforce Pacific/Auckland timezone when running regression tests.
1063         * Default to internal expansion of :name SQL parameters.
1064         * Now parsing out VALARM components on PUT.
1065         * AwlQuery restructuring for wider use and easier PgQuery transition.
1066         * Add permissions for new tables in DB 1.2.8
1068 2010-03-21  Rob Ostensen  <rob@boxacle.net>
1069         * first run at ldap group support
1071 2010-03-19  Rob Ostensen  <rob@boxacle.net>
1072         * include number of items in dav collection on collection edit page
1074 2010-03-20  Andrew McMillan  <andrew@morphoss.com>
1075         * Improved logging of failed queries.
1076         * Regression test example configuration, with comments.
1077         * Update DAV header.
1078         * Don't exclude NULL DTSTART if reporting on scheduling collection.
1079         * Support schedule-calendar-transp property.
1080         * Properly insert resourcetypes on MKCOL.
1081         * Handle resourcetypes regardless of XML format.
1082         * Provide a more useful error output on an XML parser failure.
1083         * Split out home & freebusy sets into their own functions.
1084         * Remove the freebusy_set from the collection.
1086 2010-03-19  Andrew McMillan  <andrew@morphoss.com>
1087         * Fix parent-set response on collections.
1089 2010-03-18  Rob Ostensen  <rob@boxacle.net>
1090         * warn if there are no active admin users
1092 2010-03-18  Andrew McMillan  <andrew@morphoss.com>
1093         * Fix deactivation of users no longer in LDAP.
1094         * Siwtch to use an object for the updated users row.
1095         * Correct fix for privileges INSERT.
1096         * Standardise on the double-cast for getting decimal -> privilege bits.
1097         * Fix PROPPATCH handling of CardDAV addressbook setting.
1098         * Confirm lock is removed by DELETE.
1099         * Test failure to remove a lock due to wrong lock token.
1100         * Add support for PUT on individual resources within a bind.
1101         * Catch the privileges on resources via a bound ticket.
1102         * Restructure and add support for DELETE on a Bind.
1103         * Add a test header and log it to help find which tests cause problems.
1104         * Remove ancient hack to cope with broken Evolution < v1.9
1105         * Add $c->skip_bad_event_on_import configuration setting.
1106           This will allow failure on import of collections to apply only
1107           to an individual event, rather than failing the whole collection.
1108         * Add support for resource-id and parent-set properties.
1109         * Can now apply arbitrary resourcetypes to collections.
1110         * Add an extra resourcetype to a binding to indicate it's a binding.
1111         * Finish migrating all DAViCal code to AwlQuery.
1112         * Remove the old screen for showing a collection.
1114 2010-03-17  Aurelien Requiem  <aurelien@menfin.net>
1115         * Don't include self as a potential group member.
1116         * Updated i18n & French translation.
1118 2010-03-17  Andrew McMillan  <andrew@morphoss.com>
1119         * Show calendar properties on creation.
1120         * Using original displayname for binds.
1121         * Add support for persistent connections.
1122         * Add support for PROPPATCH displayname on a bind.
1124 2010-03-16  Andrew McMillan  <andrew@morphoss.com>
1125         * No dependence on DAViCalUser.php is needed any longer.
1126         * Fix sf.net #2970729
1127         * Remove old DAViCalUser class
1128         * Remove old relationship_types maintenance program.
1130 2010-03-15  Andrew McMillan  <andrew@morphoss.com>
1131         * Make calendar-query report work with bound collections.
1132         * GET now working with bound resources.
1133         * Getting bindings to work as seamlessly as possible.
1135 2010-03-14  Andrew McMillan  <andrew@morphoss.com>
1136         * Correct privilege checking for modification of collection.
1137         * Working BIND and PROPFIND of bound resources.
1138         * Fix incorrect reference in PreconditionFailed() method.
1139         * Update installation docs.
1140         * Added MatchResource() method for matching by resource_id.
1141         * Removed references to old style $debuggroups.
1142         * Added build-depends on libawl-php (closes: debian bts #573687)
1144 2010-03-13  Andrew McMillan  <andrew@morphoss.com>
1145         * New regression tests for things using tickets.
1146         * RRULE expansion now working correctly.
1147         * Enhance the exception handler to display a forward trace
1149 2010-03-12  Andrew McMillan  <andrew@morphoss.com>
1150         * Minor adjustments to handling 'infinity' for ticket timeout.
1151         * Switch from AllowedTo() to HavePrivilegeTo() to support tickets.
1152         * Allow ticket based access as well as public calendars.
1154 2010-03-12  Aurelien Requiem  <aurelien@menfin.net>
1155         * Updated french translation, with further i18n fixes to setup.
1157 2010-03-12  Andrew McMillan  <andrew@morphoss.com>
1158         * Add principal_id to PublicSession.
1160 2010-03-11  Andrew McMillan  <andrew@morphoss.com>
1161         * Fix uninitialised variable errors in new scheduling code.
1162         * Some updates to the caldav client library and an example script.
1163         * Nail the last (hopefully) missing reference to base_url.
1164         * Handle 'infinity' for the ticket timeout.
1165         * create-database.sh does not need to specify bash.
1167 2010-03-10  Andrew McMillan  <andrew@morphoss.com>
1168         * Adding Upgrader class to AwlDatabase and tidying things somewhat.
1169         * Starting work on a PHP database upgrader.
1170         * Switch  some library code to LGPLv3 license.
1172 2010-03-10  Rob Ostensen  <rob@boxacle.net>
1173         * Don't write to resources we don't have privileges to
1174         * Scheduling extentions working with iCal 4
1176 2010-03-10  Andrew McMillan  <andrew@morphoss.com>
1177         * Reinstate PostgreSQL 8.1 support into the Debian control file.
1179 2010-03-09  Andrew McMillan  <andrew@morphoss.com>
1180         * New Svenska localisation from Emil Lundberg
1181         * Need to depend on new version of AWL.
1182         * Migrated DELETE to AwlQuery wrapper.
1184 2010-03-08  Andrew McMillan  <andrew@morphoss.com>
1185         * Rewrite OPTIONS response to use DAVResource.
1186         * AwlQuery::QDo() method for quick queries where we don't parse the resultset.
1187         * Add configuration setting to optionally restrict /setup.php to admin.
1189 2010-03-07  Andrew McMillan  <andrew@morphoss.com>
1190         * Link to the DAViCal website, rather than SourceForge.
1191         * Check precondition to disallow creating collections in a schedule-inbox.
1192         * Move PreconditionFailed and MalformedRequest into $request methods.
1193         * Switch to HavePrivilegeTo() to ensure we catch tickets.
1194         * Correct misspelled __LINE__ references.
1196 2010-03-06  Andrew McMillan  <andrew@morphoss.com>
1197         * Check permission on MOVE destination.
1198         * Add an empty response to the DAV::group property.
1199         * All schedule-deliver privileges should be included in default.
1200         * Use NeedPrivilege to respond to access denied.
1202 2010-03-05  Andrew McMillan  <andrew@morphoss.com>
1203         * Provide some rudimentary statistics about the setup.
1204         * With readonly_webdav_collections set we should write nothing!
1205         * Check we have actually got an XML body if we got a content-type XML.
1206         * Correct setup of locale.
1208 2010-03-04  Andrew McMillan  <andrew@morphoss.com>
1209         * Properly respond with <error> elements inside <responsedescription>
1210         * Validating user/collection names. Updating fullname/displayname.
1211         * Some long overdue updates to the installation docs.
1212         * Switch always.php over to AwlQuery.
1214 2010-03-03  Andrew McMillan  <andrew@morphoss.com>
1215         * Migrate MKCOL script to AwlQuery wrapper.
1216         * Add transaction helpers to query class.
1218 2010-03-02  Andrew McMillan  <andrew@morphoss.com>
1219         * Updated collection / principal edit, with better l10n.
1221 2010-02-28  Andrew McMillan  <andrew@morphoss.com>
1222         * Correct allprop/include processing.
1223         * Use 'Revoke' rather than 'Delete' for grants, and 'Remove' for group members.
1224         * Add an option to restrict visible contents to a limited date range.
1226 2010-02-27  Andrew McMillan  <andrew@morphoss.com>
1227         * Tweak privileges_list() to work in older Pg versions.
1229 2010-02-26  Andrew McMillan  <andrew@morphoss.com>
1230         * Tweak 'we don't support this' response to scheduling requests.
1232 2010-02-26  Masahiro Mikami  <ZBN15427@nifty.com>
1233         * Updated Japanese localisation.
1235 2010-02-26  Andrew McMillan  <andrew@morphoss.com>
1236         * Modification of protected properties should be a 403.
1238 2010-02-25  Andrew McMillan  <andrew@morphoss.com>
1239         * Strip slashes from collection names.  They're too confusing.
1240         * Add a config item to exclude some users from LDAP sync.
1242 2010-02-25  Andrew McMillan  <andrew@morphoss.com>
1243         * Release 0.9.8.3
1244         * Assign correct resourcetype on collection maintenance.
1246 2010-02-24  Andrew McMillan  <andrew@morphoss.com>
1247         * Apparently CentOS 5 doesn't have DateTime class in it's PHP :-(
1248         * Allow active/inactive setting to edit principal.
1249         * Add a menu link to list inactive principals.
1250         * Fix the 'ALL' button action in grants update.
1251         * Correct 'ALL' privilege to 24 bits.
1252         * Move location of CSS submenus slightly.
1253         * Don't display a grant/collection stuff until a user is created.
1254         * Provide passthru on icons, images, css and js files.
1256 2010-02-23  Andrew McMillan  <andrew@morphoss.com>
1257         * Release 0.9.8.2
1258         * Include inactive support for RRULE expansion.
1260 2010-02-23  Masahiro Mikami  <ZBN15427@nifty.com>
1261         * Updated Japanese translation.
1263 2010-02-23  Emmanuel Seyman  <eseyman@edd.fr>
1264         * Updated French translation.
1266 2010-02-22  Andrew McMillan  <andrew@morphoss.com>
1267         * Expanding functionality in RepeatRuleDateTime class.
1269 2010-02-20  Andrew McMillan  <andrew@morphoss.com>
1270         * Setup page is now able to detect the PDO pgsql drivers.
1271         * Don't require a person to be logged in to see setup.php if their
1272           setup is so screwed they can't even connect to a database...
1273         * Making things more localisable.
1275 2010-02-19  Vincent Van Houtte  <vvh@synergylaw.be>
1276         * Updated Dutch translation.
1278 2010-02-18  Andrew McMillan  <andrew@morphoss.com>
1279         * Use htmlspecialchars rather than htmlentities, which screws up translations.
1280         * Remove link to old users browse page.
1282 2010-02-22  lebarjack  <lebarjack@agenda.univ-lille2.fr>
1283         * Updated required software documentation
1284         * Added a Gentoo installation paragraph
1285         * Updated needed depnedencies
1287 2010-02-18  Andrew McMillan  <andrew@morphoss.com>
1288         * Add better localisation support to principal / collection edit screens.
1289         * Default user to davical_dba & provide more help regarding .pgpass files.
1290         * Remove reference to relationships, which are so passe now.
1291         * Admin: support deleting principals / collections with confirmation.
1292         * dav_principal: add a rule for deleting.
1293         * admin: Support setting a principal to be 'Administrator'
1294         * AwlDB: Attempt some better error handling.
1296 2010-02-17  Andrew McMillan  <andrew@morphoss.com>
1297         * PROPPATCH: Setting properties on Principals now working.
1298         * always: Initialise the AWL db connection.
1299         * PUT Functions: add support for X-WR-CALNAME in uploaded calendars.
1300         * Edit Collections: Fix privileges to do this, and editing of privs.
1302 2010-02-15  Andrew McMillan  <andrew@morphoss.com>
1303         * A new RepeatRule object to be used for expanding events.
1305 2010-02-13  Andrew McMillan  <andrew@morphoss.com>
1306         * Include the browse javascript for row linking.
1307         * Make admin stuff work better in a subfolder.
1308         * Correct URLs for subfolder operation in principal edit.
1309         * Remove flush() calls from pubsub.
1311 2010-02-11  Peter Schaefer-Hutter  <pschaefer@users.sourceforge.net>
1312         * Updated german translation.
1314 2010-02-03  Andrew McMillan  <andrew@morphoss.com>
1315         * Release 0.9.8.1
1316         * Update the sync changes for deletion of a calendar.
1317         * Always report DELETE action in sync-changes
1318         * Report correct href with DELETE action in sync report.
1320 2010-02-01  Andrew McMillan  <andrew@morphoss.com>
1321         * Remove misguided include logic.
1322         * Editor widget class has been moved into AWL.
1324 2010-01-30  Andrew McMillan  <andrew@morphoss.com>
1325         * Fix up the javascript around enabling fields when calendar/addressbook.
1326         * Move version display to setup.php and do basic dependency checks.
1328 2010-01-27  Andrew McMillan  <andrew@morphoss.com>
1329         * Allow config files to be under /usr/local
1331 2010-01-11  Andrew McMillan  <andrew@morphoss.com>
1332         * We don't need to reference a $action . '.js' file.
1333         * Create a default calendar when a User or Resource principal is created.
1335 2010-01-10  Andrew McMillan  <andrew@morphoss.com>
1336         * Add a utility IsCreate() method opposite to IsUpdate().
1337         * Try and reduce the odds of an extra quote in the password.
1339 2009-12-28  Andrew McMillan  <andrew@morphoss.com>
1340         * Basic support for the ACL method.  Working, but needs work.
1341         * Improve logging of parameterised queries.
1343 2009-12-27  Andrew McMillan  <andrew@morphoss.com>
1344         * DAV::owner should be wrapped with DAV::property in DAV::ace response.
1345         * Return 406 Not Acceptable for invalid XML request.
1346         * Refactor principal-property-search REPORT.
1347         * Use calendar-user-address-set for search rather than CS extension.
1348         * Move DAVResource inclusion to REPORT wrapper.
1349         * Comment out debugging messages for peformance.
1350         * Fix problems with logging of failed queries.
1351         * Add pass-through for PDO ErrorInfo() method.
1352         * New regression tests and updated results.
1353         * Add support for principal-search-property-set REPORT per RFC3744
1354         * Refactor the construction of DAV::acl and report owner acl
1356 2009-12-26  Andrew McMillan  <andrew@morphoss.com>
1357         * Current regression test results.
1358         * Move MKCOL/MKCALENDAR to NeedPrivilege()
1359         * Correct log facility.
1360         * Strip  redundant code from CalDAVRequest
1361         * Revert misguided namespacing change on Not Found properties.
1362         * Move response for supported-lock and supported-privilege-set into DAVResource.php
1363         * Fix logic for calculating by_email
1364         * New style privilege checking.
1365         * Switch to NeedPrivilege() method for checking privileges.
1366         * Switch privileges to use the new model.
1368 2009-12-24  Andrew McMillan  <andrew@morphoss.com>
1369         * Release 0.9.8
1370         * Slightly updated TODO.
1371         * Move the Allow response back into OPTIONS where it really belongs.
1372         * Deny setting of deprecated free-busy-set.
1373         * iCal4 wants to see 'calendar-proxy' in the DAV header.
1375 2009-12-24  Patrick Näf Moser  <patrick@moser-naef.ch>
1376         * Updated german translation.
1378 2009-12-23  Andrew McMillan  <andrew@morphoss.com>
1379         * Updated results including ACL support indication.
1380         * Regression test for caldav:calendar-timezone retrieval.
1381         * Move caldav:calendar-timezone into the collection table.
1382         * Basic framework for starting on ACL method handler.
1383         * COMMIT with the same DB connection we BEGAN on!
1384         * Remove irrlevant functionality to CreateDefaultRelationships.
1385           A stub is retained in case external organisations have written
1386           some auth plugin which does use it.
1387         * Correct logic when processing directory of files.
1388         * A couple more tests for iCal4 interoperability.
1390 2009-12-22  Andrew McMillan  <andrew@morphoss.com>
1391         * Depend on correct libawl-php version.
1393 2009-12-21  Andrew McMillan  <andrew@morphoss.com>
1394         * Display DAViCal version & schema wanted / actual versions.
1395         * Kill the schedule-in/out box on upgrade so they are recreated.
1396         * Clarify menu wording.  Remove relationships page (yay!).
1397         * Add simple placeholder pages for planned setup / upgrade activities.
1398         * Force function parameter types for older PostgreSQL versions.
1399         * Remove unused functions.
1401 2009-12-21  Rob Ostensen  <rob@boxacle.net>
1402         * Publish/Subscribe notification for DAViCal by Rob Ostensen.
1404 2009-12-21  Andrew McMillan  <andrew@morphoss.com>
1405         * Switched everything over to the new permissions model.
1407 2009-12-16  Andrew McMillan  <andrew@morphoss.com>
1408         * Better use of getent to extract user fullname. Debian bug #561288.
1410 2009-12-13  Andrew McMillan  <andrew@morphoss.com>
1411         * Retitle 'New User' to 'New Principal'
1412         * Link to create a new collection.
1413         * Allow for creation of new calendars for a user_no.
1415 2009-12-11  Andrew McMillan  <andrew@morphoss.com>
1416         * Correctly create a principal record for the administrator.
1417         * We now need to create a principal record along with a usr one.
1419 2009-12-08  Andrew McMillan  <andrew@morphoss.com>
1420         * Make the username field larger.
1421         * Replacement for older caldav-client which goes further.
1422           Now handles discovery of the principal URL and the user's calendars.
1423         * Test for current-user-principal support.
1424         * Fix handling of DELETE followed by CREATE case.
1425         * Restore support for current-user-principal property.
1427 2009-12-05  Andrew McMillan  <andrew@morphoss.com>
1428         * Provide some better visual feedback when grants/members are added/changed.
1430 2009-12-04  Andrew McMillan  <andrew@morphoss.com>
1431         * Try and clarify the terminology for bind/unbind.
1432         * Another attempt at supporting older DB versions.
1433         * Fix initialisation of empty array for older Pg versions.
1434         * Allow building of built-po without building everything else.
1435         * Rename davical.php to admin.php which is more appropriate.
1436         * Correct for active column removed from principal.
1438 2009-11-27  Andrew McMillan  <debian@mcmillan.net.nz>
1439         * Add/edit grants on collections.
1440         * Now able to edit /create grants to specific users or groups.
1441         * Use first perl in path.
1442         * Add some page-end padding.
1443         * Ensure we still get active if we got a real boolean.
1444         * Add some error avoidance to SetLookup.
1446 2009-11-24  Andrew McMillan  <andrew@morphoss.com>
1447         * Output with updates to upgrade-davical-database
1448         * Allow admin / principal to add groups to themselves
1450 2009-11-23  Andrew McMillan  <andrew@morphoss.com>
1451         * Add support for the X-HTTP-Method-Override header.
1453 2009-11-22  Andrew McMillan  <andrew@morphoss.com>
1454         * New screens for browsing/editing Principals & Collections.
1455         * CSS tweaks for new maintenance screens.
1456         * Fix conversion of Resource users.
1457         * New functions for listing memberships, members and privileges.
1458         * Document default privileges in example config.
1459         * Add default privileges setting.  Move privileges functions out of DAVResource.php
1460         * Granting for collection_id rather than dav_name now.
1461         * Grant access to dav_principal view.
1462         * Don't have an 'active' column on the principal.
1463         * Definition of a dav_principal writable view of usr+principal
1464         * Add ability to apply a folder of SQL rather than just a single file.
1466 2009-11-15  Andrew McMillan  <andrew@morphoss.com>
1467         * Add support for supported-method-set / suported-report-set
1468         * Sprinkle some minimal CardDAV support in there.
1470 2009-11-14  Andrew McMillan  <andrew@morphoss.com>
1471         * A basic regression test for the expand-property report.
1472         * Add expand-property report to the supported reports.
1473         * Move URL deconstruction into DeconstructURL function.
1474         * Implement the expand-property report.
1476 2009-11-12  Andrew McMillan  <andrew@morphoss.com>
1477         * New PROPFIND implementation.
1478         * Correct <creationdate> format & group-member* responses.
1480 2009-11-07  Andrew McMillan  <andrew@morphoss.com>
1481         * Be as lazy as possible about doing that horrible proxy query.
1483 2009-11-05  Andrew McMillan  <andrew@morphoss.com>
1484         * Add some more fields onto the collections table.
1485         * Only respond with freebusy to a VFREEBUSY request.
1487 2009-11-04  Andrew McMillan  <andrew@morphoss.com>
1488         * Add MOVE to the supported method set.
1489         * Allow for replacing the regression.host in headers as well.
1490         * Updated test results, mostly due to adding a newline to dav_test output.
1492 2009-11-02  Andrew McMillan  <andrew@morphoss.com>
1493         * Regression tests for the supported-* properties.
1494         * New tests following the iCal4 client through one path.
1495         * Support for the DAV MOVE method.
1496         * Add a dav_name() accessor for forward compatibility.
1497         * List support for the DAV::sync-collection report
1499 2009-11-02  Rob Ostensen  <caveman+davical@caveman.name>
1500         * First cut of support for pubsub push notifications by Rob Ostensen.
1502 2009-11-02  Andrew McMillan  <andrew@morphoss.com>
1503         * Correct response for schedule-inbox.
1504         * Improving response on non-existent resources.
1505         * Add a test for existence of the referenced principal.
1506         * Return supported-calendar-component-set only on a calendar.
1508 2009-10-30  Andrew McMillan  <andrew@morphoss.com>
1509         * Allow test case to be fully specified on the command line by filename.
1511 2009-10-30  Matthias Mohr  <Matthias@Mohrenclan.de>
1512         * Translatability improvements from Matthias Mohr.
1514 2009-10-28  Andrew McMillan  <andrew@morphoss.com>
1515         * Implementations of supported-report-set and supported-method-set.
1517 2009-10-27  Andrew McMillan  <andrew@morphoss.com>
1518         * Translate 'Delete User' button as pointed out by Matthias Mohr
1519         * Revert include changes on further evaluation.
1520         * Also collect the current user principal record into $session.
1521         * Updated translation from Matthias Mohr.
1522         * Menu restructuring.
1523         * Updates to styles, including CSS menus.
1524         * Update the help page to point to more useful links.
1525         * Add DB version upgrade detection code.
1526         * Add a script for building always.php to include DB version also.
1527         * Correct translations URL.
1528         * Structure changes for grants on collections.
1529         * Be more robust about finding the AWL code location.
1530         * Revert to require_once().
1532 2009-10-23  Andrew McMillan <andrew@morphoss.com>
1533         * Release 0.9.7.6
1534         * Fix return value from include so PHP doesn't exit.
1536 2009-10-22  Andrew McMillan <andrew@morphoss.com>
1537         * Release 0.9.7.5
1538         * Fix inclusion of auth-functions.php and classBrowser.php
1539         * New Deutsch translation by Matthias Mohr.
1541 2009-10-07  Andrew McMillan <andrew@morphoss.com>
1542         * Release 0.9.7.4
1543         * Fix setting of relationships in user administration.
1544         * Add option to make freebusy information public.
1545         * Correct structure of supported-privilege-set response.
1546         * Move server-specific properties from CalDAVPrincipal to CalDAVRequest.
1548 2009-10-06  Andrew McMillan <andrew@morphoss.com>
1549         * Release 0.9.7.3
1551 2009-09-25  Andrew McMillan <andrew@morphoss.com>
1552         * Fix overzealous URL encoding of mailto:username@domain.com
1553         * Expand permissions on both sides of the group expansion.
1554         * Update licensing to note external LGPL sources
1555         * Add a 'Delete User' option.
1556         * Add facility to create collection without uploading VCALENDAR
1557         * Add ability to set calendar as public on creation.
1559 2009-09-14  Andrew McMillan <andrew@morphoss.com>
1560         * Allow admin access to be restricted to a particular domain.
1562 2009-09-11  Andrew McMillan <andrew@morphoss.com>
1563         * Add support for /principals/users/username so iPhone (& possibly
1564           also iCal) users have a simpler setup experience.
1565         * Expand privileges to work with iPhone OS 3.1
1566         * Release 0.9.7.2
1568 2009-09-05  Andrew McMillan <andrew@morphoss.com>
1569         * Fix call-time pass by reference warnings.
1571 2009-09-02  Andrew McMillan <andrew@morphoss.com>
1572         * Allow disabling of CalDAV Proxy support for performance on large sites.
1573         * Update website content.
1574         * Ensure <href> elements are urldecoded in calendar-multiget
1576 2009-09-02  Andrew McMillan <andrew@morphoss.com>
1577         * Allow disabling of CalDAV Proxy support for performance on large sites.
1579 2009-08-29  Andrew McMillan <andrew@morphoss.com>
1580         * Restructure PUT handling to give easier API possibilities.
1582 2009-08-24 Andrew McMillan <andrew@morphoss.com>
1584         * Fix broken SQL when selecting user list for group.
1585         * Ensure incoming URLs are decoded before we process them.
1586         * Add ability to log caldav actions
1587         * Updated French translation.
1589 2008-06-30 Andrew McMillan <andrew@morphoss.com>
1591         * Remove the out of date update-rscds-database script.
1592         * Rename RSCDS*(.php) to DAViCal*(.php)
1593         * Rename RSCDSUser (.php) to DAViCalUser (.php)
1595 2009-06-27  Andrew McMillan <andrew@morphoss.com>
1596         * Make e-mail lookup be case-insensitive if possible
1598 2009-06-22  Andrew McMillan <andrew@morphoss.com>
1600         * Release 0.9.7
1601         * Add debug logging of response/request and related headers.
1603 2009-06-20  Andrew McMillan <andrew@morphoss.com>
1605         * Various fixes for compatibility with iPhone v3 OS.
1607 2009-06-16  Andrew McMillan <andrew@morphoss.com>
1609         * Align freebusy.php parameter handling with proposed standard.
1611 2009-06-15  Andrew McMillan <andrew@morphoss.com>
1613         * Allow free/busy permission to grant access to obfuscated calendar.
1615 2009-06-13  Andrew McMillan <andrew@morphoss.com>
1617         * Stubbed implementation of calendar proxy.
1619 2009-05-12  Andrew McMillan <andrew@morphoss.com>
1621         * Switch to RRULE functions for more accurate overlap calculation.
1623 2009-04-17  Andrew McMillan  <andrew@morphoss.com>
1625         * Added support for publicly_readable attribute of collection
1626           when accessing a /public.php/user/collection/ path.
1628 2009-04-11  Andrew McMillan <andrew@morphoss.com>
1630         * Allow configuration of site wide user default values.