2023-03-02 Florian Schlichting <fsfs@debian.org>
	* release davical 1.1.12
	* add Debian autopkgtests
	* Fix phpunit tests ('Attempt to read property "rrule_loop_limit" on null') and add them to 'make test'

2023-02-05 Andrew Ruthven <andrew@etc.gen.nz>
	* Fix is-defined and is-not-defined prop-filters
	* A time-range prop-filter should only return events if they are
	  either in the time-range or have a recurrence in it.

2022-10-19 Piotr Filip <6465816-piotrfilip@users.noreply.gitlab.com>
	* check owner when deleting

2023-02-26 Florian Schlichting <fsfs@debian.org>
	* drop default $position argument from BuildXMLTree everywhere (awl!22)

2023-02-04 Andrew Ruthven <andrew@etc.gen.nz>
	* Create unique constraints for tmp_password and role_member.
	* Add a primary key to calendar_alarm table.
	* Add a primary_key to the addressbook_addresses_* tables

2022-02-07 Andrew Ruthven <andrew@etc.gen.nz>
	* Fix Reccurrence Rules using BYHOUR, BYMINUTE and BYSECOND.
	* We no longer support PHP 5.1, assume that DateTime is available

2022-02-18 Andrew Ruthven <puck@catalyst.net.nz>
	* Create .in and .out calendars on principal creation.

2023-02-04 Andrew Ruthven <andrew@etc.gen.nz>
	* Handle baseDNGroups being unset.
	* Ensure that groups_nothing_done is defined
	* Use dbg_error_log instead of dbg_log_array
	* Improve on SQL syntax fix to keep logging working, and add regression test.

2023-01-28 Tobias Brox <tobias@redpill-linpro.com>
	* Fix SQL syntax error if is-not-defined is used as a prop-filter.

2022-12-18 Andrew Ruthven <andrew@etc.gen.nz>
	* Numerous fixes for PHP 8.2
	* Convert RRULE expansion loop limits, and make it configurable to resolve
	  missing recurrences for some complicated rules.
	* Fix BYMONTHDAY reccurence when the day is >= 29.
	* Improvements to regression test suite.
	* Support setting a Content-Security-Policy header.
	* Fixes when using memcache

2022-10-19 Piotr Filip <6465816-piotrfilip@users.noreply.gitlab.com>
	* delete collection by id

2022-05-11 Bill McGonigle <bill-gitlab.com-20170608@bfccomputing.com>
	* support php_fpm under Apache 2.4 (missing PATH_INFO with Apache handler).

2022-12-13 Andrew Ruthven <andrew@etc.gen.nz>
	* Update regression tests that hit index.php for new CSP
	* Add Content-Security-Policy header to sample Apache2 config files

2022-10-19 Piotr Filip <6465816-piotrfilip@users.noreply.gitlab.com>
	* refactor scripts to allow operation with Content-Security-Policy: script-src 'self'

2022-10-22 ruliane <ruliane+github@ruliane.net>
	* Fix error when $icfg is not set.
	* Fix PHP Notice: Undefined variable: body in /usr/share/davical/inc/iSchedule.php on line 435

2022-12-10 Andrew Ruthven <andrew@etc.gen.nz>
	* The PHP 8.2 container has deflate enabled in Apache2, disable it.
	* PHP 8.2 seems to set the timezone to UTC, always set Pacific/Auckland for testcases
	* freq_name is only used locally
	* Ensure that all fields are defined, not added dynamically.
	* Stop copying all fields from the Principal object.
	* Ensure that propfind for access is deterministic.

2022-12-09 Andrew Ruthven <andrew@etc.gen.nz>
	* Debian Unstable no longer has bzip2 by default, use xz instead
	* Debian Unstable has PostgreSQL 15 now

2022-10-04 Debian Janitor <janitor@jelmer.uk>
	* Remove constraints unnecessary since buster (oldstable)

2022-10-04 Florian Schlichting <fsfs@debian.org>
	* release davical 1.1.11
	* test_bullseye_carddavclientinterop: user3 description is empty
	* test_bullseye_carddavclientinterop: Interop is now capitalized
	* switch egrep to grep -E to avoid test failure
	* do not report VTODO in freebusy (fixes: #267)

2022-06-27 Dirk Bauer <dirk.bauer@iserv.eu>
	* Fixed php8 deprecation for htmlspecialchars (#fixes 266)

2022-07-12 Andrew Ruthven <andrew@etc.gen.nz>
	* Another attempt to make the results deterministic

2022-06-29 Andrew Ruthven <puck@catalystcloud.nz>
	* Final result update?
	* Try and be more deterministic.
	* Report about dumping the database
	* Make GET on a collection deterministic.
	* Update test results

2022-02-18 linda.fliss <linda.fliss@iserv.eu>
	* fixed debug injection

2022-02-18 Andrew Ruthven <puck@catalyst.net.nz>
	* Fix test result
	* Fix another PHP 8.1 error
	* Limit results for get_include_subcollections

2022-02-09 Paul Waite <85040614+paulwaite87@users.noreply.github.com>
	* Provide a facility for setting an override URL which will replace the Change Password UI, and the Forgotten Password UI with a clickable link.

2021-04-22 linda.fliss <linda.fliss@iserv.eu>
	* improved refresh-alarms.php script

2022-02-13 Andrew Ruthven <puck@catalyst.net.nz>
	* Fix the case of a variable
	* Fix a second time where the array might be false.
	* Fix iSchedule configuration with PHP 8
	* Another fix for PHP 8.1
	* Fix the version of AWL we want.
	* Further fixes for PHP 8.1
	* gmstrftime is deprecated in PHP 8.1
	* More fixes for PHP 8.1
	* Allow "&'<> in passwords.
	* Fixes for warnings in PHP 8.1

2022-02-05 Andrew Ruthven <puck@catalyst.net.nz>
	* Debian Bullseye has PostgreSQL 13.
	* Debian Unstable now has PostgreSQL 14.
	* Switch testing to Bullseye, drop Stretch

2021-09-18 Andrew Ruthven <puck@catalystcloud.nz>
	* Don't try and use get_magic_quotes_gpc or get_magic_quotes_runtime on PHP 8
	  or newer.
	* Correctly calculate the duration for zero time events (DTSTART = DTEND) and
	  therefore don't show them in Free/Busy (previously they were shown as taking
	  24 hours). Thank you Piotr Filip for the patch!

2021-03-01 Florian Schlichting <fsfs@debian.org>
	* release davical 1.1.10
	* Update carddav/2042-REPORT-addressbook-query together with df6ff3a in AWL

2021-03-01 Andrew Ruthven <puck@catalyst.net.nz>
	* Add a regression test for new invalid user result from FreeBusy
	* Return a nicer error message if no user is found for Free/Busy via email

2021-02-09 Florian Schlichting <fsfs@debian.org>
	* Listing External Calendars is part of the Administration menu and should be restricted to admins
	* tighten $c->list_everyone to look for DAV::read privilege and actually block access to principals and collections

2020-05-05 Klaus M Pfeiffer <kmp+gitlab@kmp.or.at>
	* add feature list_everyone (fixes #59)

2021-02-08 Florian Schlichting <fsfs@debian.org>
	* CI: run interop tests from carddavclient by Michael Stilkerich <ms@mike2k.de>
	* Add tests for AWLs "Fix param-filter that checks if a parameter is defined"
	* Add test for AWLs "Fix param-filter for multi-value parameters with TYPE=T1,T2 format" and update 2044 accordingly
	* Add tests for AWLs "Fix GetProperties: Select properties with group prefix"
	* Add tests for AWLs "Fix: GetProperties must treat property names as case-insensitive"

2021-02-07 Andrew Ruthven <puck@catalyst.net.nz>
	* Only return the fields that we need for the test

2021-02-06 Andrew Ruthven <puck@catalyst.net.nz>
	* CI: Compress the Apache log files
	* CI: Ensure DAViCal can write to log files
	* CI: Turn on debug logging for all the test runs
	* Include the UID of the card which caused us to hit the RRULE limit
	* Enable debug logging in CI
	* Only return what we're testing, makes it easier to understand regressions
	* Add test for anyof

2021-02-05 Florian Schlichting <fsfs@debian.org>
	* CI: do not clobber apache logs
	* update 2038-REPORT-addressbook-query after AWL's param-filter: fix a typo / explode multivalue commit

2021-02-04 Florian Schlichting <fsfs@debian.org>
	* correct test results after AWL merges of mstilkerich/awl-fix_abookquery_paramnotdef and mstilkerich/awl-fix_support_anyof_propfilter
	* add two more reports testing an allof prop-filter and an anyof text-match prop-filter
	* cardquery: ensure restriction to target collection remains in force even when we find that we need a post_filter step and thus throw away the SQL
	* add a REPORT for a property with multiple values, not all of which match the is-not-defined filter (carddavclient's ParamNotDefinedSome test)
	* add 4 VCARDs from carddavclient AddressbookQueryTest

2021-02-04 Andrew Ruthven <puck@catalyst.net.nz>
	* Correctly exclude cards where TYPE is not set on TEL records.
	* Fix the test result and hopefully make the description clearer
	* I always get whitespace changes
	* Add a bit more info about various suites, and how to time timezone

2021-02-03 Florian Schlichting <fsfs@debian.org>
	* fix PHP8 deprecation warnings: "Required parameter X follows optional parameter Y"

2021-01-31 Jan Hicken <jan.hicken@posteo.de>
	* Add default value for errcontext variable in error handler function
	* Use brackets instead of curly braces for string offset access

2021-02-03 Florian Schlichting <fsfs@debian.org>
	* CI: add build_buster_latestphp

2021-02-02 Florian Schlichting <fsfs@debian.org>
	* CI: build and test on Debian unstable, then several stable releases relevant to our users
	* Normalize "100 Continue" headers

2021-01-24 Andrew Ruthven <andrew@etc.gen.nz>
	* Test case for awl-fix_abookquery_negated_propnotdef

2021-02-01 Andrew Ruthven <puck@catalyst.net.nz>
	* Test case for negated values in awl-fix_abookquery_paramtextmatch

2020-07-22 Piotr Filip <6465816-piotrfilip@users.noreply.gitlab.com>
	* fix: events with recurrence rule are sometimes counted one too many times in freebusy
	* test: remove dependency on the current date

2021-01-25 Andrew Ruthven <andrew@etc.gen.nz>
	* Update test results with new timezone data

2021-01-24 Andrew Ruthven <andrew@etc.gen.nz>
	* Ignore zones.h and zones.tab
	* To start with there are no timezones in a fresh database
	* Make the runs deterministic
	* Fix up update-tzdata.sh so it'll run
	* Test case for awl-fix_abookquery_negated_propnotdef
	* Test case for awl-fix_abookquery_paramtextmatch
	* Test case for awl-fix_abookquery_paramtextmatch
	* Add help option for regression tests
	* Update some more results based on current regression tests

2021-01-23 Andrew Ruthven <puck@catalyst.net.nz>
	* Add test secondary (or more) properties

2020-04-14 Florian Schlichting <fsfs@debian.org>
	* gitlab-ci: use latest Debian stable (fixes #221)

2020-04-04 Florian Schlichting <fsfs@debian.org>
	* LSID logins were removed from AWL, drop related bits in davical

2019-12-06 Florian Schlichting <fsfs@debian.org>
	* use foreach() instead of deprecated each() (fixes #190)
	* HTTP_REFERER will usually be unset for caldav requests, prevent "Undefined index" warnings

2019-12-06 Niels van Gijzen <niels.van.gijzen@gmail.com>
	* Fix CSRF not being checked in collection-edit.php

2019-11-29 Niels van Gijzen <niels.van.gijzen@gmail.com>
	* Correct reflected cross-site scripting (XSS) vulnerability
	* Correct persistent XSS vulnerability in user/group/resource details
	* Correct persistent XSS vulnerability in user/group/resource list
	* Add token to address cross-site request forgery (CSRF) vulnerability

2019-11-26 Andrew Ruthven <puck@catalyst.net.nz>
	* More syntax errors with collection_id

2019-03-28 Cyprian Guerra <cyprian.guerra@gmail.com>
	* Fix syntax of collection_id parameter

2019-06-19 Milan Crha <mcrha@redhat.com>
	* Add missing 'break' to rrule.php

2019-03-11 Florian Schlichting <fsfs@debian.org>
	* More PHP curl message corrections

2019-03-06 Andrew Ruthven <puck@catalyst.net.nz>
	* Specify PHP curl, not PHP5

2019-03-05 Jamie McClymont <jamie.mcclymont@gmail.com>
	* Update minimum PHP version requirement

2019-02-27 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Make range-based calendar queries use the new first_instance_start/last_instance_end columns
	* Make calquery expansion aware of the calendar default timezone

2019-02-12 Florian Schlichting <fsfs@debian.org>
	* Fix more PHP7+ type hints for PHP5 compatibility (fixes #197)

2019-01-30 Florian Schlichting <fsfs@debian.org>
	* add users to new groups in the "update groups" step
	* honour do_not_sync_group_from_ldap when creating groups, correctly display all results
	* honour do_not_sync_from_ldap when creating users, correctly display all results
	* do_not_sync_from_ldap for groups (fixes #158)
	* make the Admin role inheritable (fix #140)
	* turn PHP7+ type hint into phpdoc (fixes #185)

2019-01-30 Andrew Ruthven <puck@catalyst.net.nz>
	* Sure bet to ensure we use a higher version number than Debian
	* Provide example of how to enable audit logging

2019-01-28 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* RRule Expansion: Do not emit recurrences for instances with RRULEs
	* Fix bugs in expansion of events with overridden instances
	* Increase, and make configurable, the limit for rrule expansion

2018-01-11 Nomad Arton <pch13@myzel.net>
	* Make log_caldav_action log calendar_item summary
	* Make log_caldav_action log to syslog
	* Move log_caldav_action() so that it is called before the DELETE

2019-01-10 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Swallow errors when updating instance ranges on TZ changes

2019-01-08 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Update instance range columns when a collection's timezone changes

2019-01-05 Andrew Ruthven <puck@catalyst.net.nz>
	* meh, I give up on php for now
	* The pipeline showed 7.3 as being available, ah well.
	* Specific PHP version...
	* Package build wants dot for graphs, and to run php
	* Need to use sprintf!
	* Make the default settings stand out more

2019-01-04 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Fix excessive SQL queries in calendar-sync REPORT

2019-01-03 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Fix tests after freebusy query changes
	* Use first_instance_start / last_instance_end to filter freebusy queries
	* Populate first_instance_start and last_instance_end on resource write
	* Handle default timezones in getVCalendarRange

2018-12-31 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Make the recurrence range columns in the database tz-aware

2018-11-27 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Pull the freebusy floating-time handling into a function

2019-01-03 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Keep Apache logs as CI artifacts for debugging failures

2018-12-31 Florian Schlichting <fsfs@debian.org>
	* checkpoint scheduling test results and add them to CI runner (fixes: #170)

2017-09-29 Florian Schlichting <fsfs@debian.org>
	* mask unstable DTSTAMP in scheduling tests

2018-12-29 Florian Schlichting <fsfs@debian.org>
	* provide defaults for unused function parameters (fixes #155)
	* Debian: use system perl in dba/update-davical-database
	* Update debian/watch to changed Gitlab directory layout

2018-12-22 Florian Schlichting <fsfs@debian.org>
	* fix to more uses of continue inside switch discovered by CI
	* properly check if $row has been unset (fixes #141)
	* Test: max-resource-size is no longer infinity
	* Apache 2.4.35 stops sending Content-Type headers for 204 No Content responses
	* call fetch_external with external_ua_string (fixes #164)

2018-10-02 Andrew Ruthven <puck@catalyst.net.nz>
	* Remove use of $old_attendees

2018-10-30 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Add Gitlab CI

2018-11-13 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Fix returning dead properties in an allprop PROPFIND

2018-11-30 Andrew Ruthven <puck@catalyst.net.nz>
	* Ignore the id in our test comparision
	* Explicitly set the Charset to use, and look for the usual format.
	* Exclude the ctags from the test
	* Atually, options aren't supported on the end of REPLACE

2018-11-12 Andrew Ruthven <puck@catalyst.net.nz>
	* Make the tests more interesting by using ctag
	* Add tests for: Fix Fatal PHP Error if Depth is more than 1.
	* Fix Fatal PHP Error if Depth is more than 1.
	* Allow over riding the value of ALLSUITES
	* This looks like an acceptable change
	* Allow database dumps to be restored in test suite.
	* Ignore the PostgreSQL version for tests

2018-11-09 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Guess the timezone of non-all-day floating events in freebusy

2018-10-29 Jamie McClymont <jamiemcclymont@catalyst.net.nz>
	* Guess the timezone of VALUE=DATE events in freebusy

2018-10-02 Andrew Ruthven <puck@catalyst.net.nz>
	* Add trivial translations of Passed: %s, using what is already present for Passed.
	* If DAViCal or AWL versions pass, show the running version.
	* Test that max-resource-size is infinity.
	* Fix a typo of this.

2018-08-30 “Paul <“p.kallnbach@gorilla-computing.de”>
	* Introduce new global variable to control maximum size of carddav resources.

2018-05-22 Paul Kallnbach <p.kallnbach@gorilla-computing.de>
	* increase maximum resource size to infinity

2018-04-25 wmbr <w-m-b-r@t-online.de>
	* Fix a typo in DAV_AllProperties which caused dead properties to be omitted

2018-03-21 Till Schäfer <till2.schaefer@tu-dortmund.de>
	* replace php4 style constructors with __construct

2018-02-21 Antoine <ahuret@skilld.fr>
	* Allow user to define awl_appuser and awl_dbauser on create-database script

2018-01-13 Florian Schlichting <fsfs@debian.org>
	* external fetch: improve error reporting
	* external fetch: handle initial NULL of collection.modified

2018-01-11 Florian Schlichting <fsfs@debian.org>
	* switch to doxygen for api docs
	* put the most important debug options in a more visible place

2016-01-21 Frank Steinberg <steinberg@ibr.cs.tu-bs.de>
	* Improved handling of event modifications

2016-06-23 Andrew McMillan <andrew@mcmillan.net.nz>
	* Fix common etag match code, use it everywhere.
	* Tidy up some PHPdoc in DAVResource

2018-01-10 Jean-Baptiste Guerraz <jbguerraz@skilld.fr>
	* use php ldap explode in order to be compatible with any dn
	* sync ldap user - reactivate

2018-01-09 Andrew McMillan <andrew@mcmillan.net.nz>
	* Correctly handle durations without units like "PT"

2018-01-09 Florian Schlichting <fsfs@debian.org>
	* add regression tests for iCal handling calendar delegations
	* drop tests/regression-suite/0528, same as 0527
	* rename DAVResource->_is_proxy_request to _is_proxy_resource
	* Finally: implement managing calendar delegations from iCal
	* group-member-set and group-membership queries on proxy resources should be handled in DAVResource
	* update regression tests due to FetchProxyGroups changes
	* DAVPrincipal->FetchProxyGroups(): disable grants_proxy_access_from_p()
	* DAVPrincipal->FetchProxyGroups(): invert arguments to pprivs()

2018-01-08 Florian Schlichting <fsfs@debian.org>
	* add DAVResource->IsProxyCollection()

2018-01-07 Florian Schlichting <fsfs@debian.org>
	* advertise support for principal-match REPORT
	* clean up obsolete code: supported_methods and supported_reports was moved to DAVResource

2018-01-04 Florian Schlichting <fsfs@debian.org>
	* update doc and fix a warning

2018-01-03 Florian Schlichting <fsfs@debian.org>
	* UI: create external bindings with type set (fix: #132)

2017-11-20 CSchulz <christian@schulz.re>
	* add PT to follow alias

2017-10-25 Florian Schlichting <fsfs@debian.org>
	* Document $c->hide_bound and $c->disable_caldav_proxy_propfind_collections config options

2017-10-09 Florian Schlichting <fsfs@debian.org>
	* 'perl update-davical-database' did not find the intended config file / patchdir

2017-10-04 Florian Schlichting <fsfs@debian.org>
	* testsuite: support /principals/users/ and similar special URLs
	* testsuite: update for calendar-user-type support
	* Update scheduling test-suite: consistent linebreaks, unnecessary quoting, etags
	* fix confusing comments
	* fix "PHP Warning:  preg_match(): No ending delimiter '.' found"
	* add a log entry for login failures (fix #105)
	* PUT: actually propagate database error to client (fix: #127)
	* Update caldav_functions.sql for Postgresql 10
	* fix "PHP Notice: Undefined property" warnings

2017-10-03 Pierre GIRAUD <pierre.giraud@dalibo.com>
	* Add support for calendar-user-type

2016-01-21 Frank Steinberg <steinberg@ibr.cs.tu-bs.de>
	* Resolve attendee group names to lists of individual users. Configurable by $c->enable_attendee_group_resolution (from !21)

2017-09-21 Florian Schlichting <fsfs@debian.org>
	* update tests for changed etags, unstable REV/UID or sort order, improved property parsing
	* dav_test: all files and I/O are UTF-8
	* create-database.sh: call update-davical-database with --dbuser instead of just --owner (see #124)
	* Card search invalid when negate-condition="no" (fixes #126)

2017-05-12 Florian Schlichting <fsfs@debian.org>
	* POST: Fix namespace for caldav scheduling privileges

2017-05-11 Florian Schlichting <fsfs@debian.org>
	* dont put caldav.php in special URLs

2017-05-01 Florian Schlichting <fsfs@debian.org>
	* log failed attempts to set_dav_property
	* group memberships for the calendar-proxy-{read,write} pseudo-principal are always empty
	* PROPPATCH: reject protected properties group-membership, calendar-proxy-{read,write}-for

2017-04-29 Florian Schlichting <fsfs@debian.org>
	* caldav-proxy 5.2: calendar-proxy-read/write are themselves principal resources
	* do not advertise ?add_member on a principal

2017-06-03 Florian Schlichting <fsfs@debian.org>
	* Revert "Support http://.../freebusy.php?foo@example.com"

2017-05-29 Florian Schlichting <fsfs@debian.org>
	* use new AWL class constructor (fixes: #119)

2017-05-17 Florian Schlichting <fsfs@debian.org>
	* CalDAVRequest: make content-type match non-greedy

2017-05-17 Andrew Ruthven <puck@catalyst.net.nz>
	* Improve parsing of RFC5545 durations

2017-05-16 Andrew Ruthven <puck@catalyst.net.nz>
	* Support http://.../freebusy.php?foo@example.com

2017-04-28 Florian Schlichting <fsfs@debian.org>
	* caldav: leave some info about the exception we are catching

2017-04-25 Florian Schlichting <fsfs@debian.org>
	* fix config example as well

2017-04-24 Florian Schlichting <fsfs@debian.org>
	* Merge branch 'server-array-upper' into 'master'

2017-04-24 Jan Losinski <losinskij@gmail.com>
	* Set the user agent string for external calendars

2017-04-09 Florian Schlichting <fsfs@debian.org>
	* cardquery: query limit can be used independently of any query filter

2017-04-08 Florian Schlichting <fsfs@debian.org>
	* cardquery: typo, ends-with has wildcard in front
	* cardquery: a prop-filter without an actual filter rule means we simply need to ensure the property exists

2017-04-13 Jan Losinski <losinski@wh2.tu-dresden.de>
	* Convert array keys for $_SERVER to uppercase

2017-04-08 Florian Schlichting <fsfs@debian.org>
	* dont send early exceptions to the client only, leave a trace in the error log too
	* log an error instead of crashing on principal-property-search REPORT without a proper match clause (fix #114)
	* do not output unescaped XML special characters in if-match error message (fixes: #113)

2017-03-01 Rik Theys <Rik.Theys@esat.kuleuven.be>
	* Fix modified mapping (fix #108)

2017-04-07 Florian Schlichting <fsfs@debian.org>
	* drivers_ldap says "updated" has been replaced with "modified", so update example config accordingly

2017-02-22 Scott Balneaves <sbalneav@alburg.net>
	* Only list active principals in grant selection

2017-02-10 Scott Balneaves <sbalneav@alburg.net>
	* modify hide_older_than logic to allow through recurring events (fixes #103, !36)

2017-04-07 Florian Schlichting <fsfs@debian.org>
	* fix sync of deleted events when hide_todo is set (fixes #100)
	* Update testsuite for changes related to #112 (4cf6628)

2017-03-29 Florian Schlichting <fsfs@debian.org>
	* cannot-modify-protected-property should be used with 403 Forbidden, not 409 Conflict
	* do not put two sets of angle brackets around cannot-modify-protected-property error tag (fixes #112)

2017-03-27 Florian Schlichting <fsfs@debian.org>
	* Fix display of deactivated users after LDAP sync to not include those in $c->do_not_sync_from_ldap

2017-01-23 Florian Schlichting <fsfs@debian.org>
	* Release 1.1.5
	* Update ChangeLog and CREDITS
	* Bump davical version to 1.1.5, DB is at 1.3.2
	* Document remaining config settings for which there are defaults, as
	  well as the very useful $c->skip_bad_event_on_import

2017-01-17 Florian Schlichting <fsfs@debian.org>
	* Update regression suite for gratuitous whitespace changes
	* Unbreak locale selection in admin interface
	* Update apache-davical.conf adding .well-known rewriting
	* Fix ldapDriver instantiation

2017-01-17 Marc <github@mleuser.de>
	* allow admins to manually toggle the uniqueMember fix via config (fix #102)

2017-01-15 Cyril Giraud <cgiraud@free.fr>
	* Update translations from Transifex (French + some trivial updates in other languages)

2017-01-14 Cyril Giraud <cgiraud@free.fr>
	* PHP strings extraction with rebulid-translations.sh + tx push -s -t

2017-01-10 Florian Schlichting <fsfs@debian.org>
	* UI: create internal and external bindings (closes: #90)
	* creating a DAVResource from "/  " loops a lot
	* UI: do not show tickets unless user has write access; they are like passwords
	* UI: use ExtraRowFormat to fix tooltip on action rows / buttons
	* make clean should also clean regression testing artefacts

2017-01-08 Florian Schlichting <fsfs@debian.org>
	* Make sure all configuration settings described at
	  https://wiki.davical.org/index.php/Configuration/settings are
	  documented in the example config files (cf. #76)
	* destroy LSID cookie when actively hitting "Logout" (fixes #56, Debian #703138)
	* remove logout button when the webserver does auth, or use a
	  configured logout URL (fixes #67, Debian #703130)
	* updates for bulk addressbook import

2017-01-06 Florian Schlichting <fsfs@debian.org>
	* support for bulk addressbook import (thanks Jorge López Pérez) - fixes #74
	* Create configured default relationships in all drivers and internal auth (closes: #75)
	* add optional support for X-Forwarded-Proto etc (closes: #87)
	* use https for retrieving current_davical_version (fixes #1)

2017-01-05 Florian Schlichting <fschlich@zedat.fu-berlin.de>
	* fix a typo, add a debug statement
	* delete obsolete entries when updating addressbooks as external resources

2017-01-04 Florian Schlichting <fsfs@debian.org>
	* Add a test case for /user/calendar-proxy-read/ with return=minimal
	* fix expand-property "group-member-set" on calendar-proxy-write URL (closes: #88)
	* fix infinite loop when finding delegates (closes #48)

2017-01-02 Florian Schlichting <fsfs@debian.org>
	* sort example-config.php, add "Scheduling" section and integrate imap_pam_conf_php.txt
	* provide .ics download link in collection view, document $c->get_includes_subcollections

2017-01-01 Florian Schlichting <fsfs@debian.org>
	* misc changes to get more tests to pass
	* Restore-Database.result: error setting plpgsql COMMENT and lots more setval in dump
	* Update other testsuites for contenttype, PROPPATCH and 204 No Content changes
	* Apache 2.4.24 doesn't send Content-Length: 0 headers for 204 No Content responses
	* $principal->fullname is not a method (fixes #101)

2016-12-31 Florian Schlichting <fsfs@debian.org>
	* document AWL debug logging improvements
	* $session: document ->username, actually implement ->fullname

2016-12-30 Florian Schlichting <fsfs@debian.org>
	* Allow deletion of collections, tickets, bindings of principals to
	  whom you have write access (closes: #47)
	* do not show edit buttons on admin pages when not allowed to edit
	* display an error message when not allowed to delete something on the admin page
	* inc/ui/collection-edit.php: display only privileges applicable for collections

2016-12-29 Florian Schlichting <fsfs@debian.org>
	* fix remaining apigen errors (duplicate function names etc)
	* lets have only one function check_for_expansion()
	* replace RRule with RRule-v2
	* clean up apigen errors (closes: #85)
	* drivers_*: brush up apidoc
	* drivers_rimap: update similar to drivers_imap_pam
	* migrate away from deprecated auth functions, warn more aggressively
	* RFC7240: "Prefer: return=minimal"

2016-12-28 Florian Schlichting <fsfs@debian.org>
	* less "global $foo"
	* eliminate trailing whitespace, expand tabs
	* extra line (duplicate)

2016-12-08 Émile Morel <emorel@quarkslab.com>
	* ldap group import: unset group after import

2016-12-08 Andrew Ruthven <puck@catalyst.net.nz>
	* Allow updating addressbooks as external resources. (Closes #93)

2016-12-04 Florian Schlichting <fsfs@debian.org>
	* fix ?add_member when PATH_INFO is not set (closes #96, thanks Thomas Zell!)
	* CreateDefaultRelationships is not defunct

2016-12-02 Christoph Anton Mitterer <calestyo@scientia.net>
	* handle failing version check when allow_url_fopen is set to false (closes: #57)

2016-12-02 Florian Schlichting <fsfs@debian.org>
	* make sure we dont have documentation suggesting that $c->something
	  can be used without assigning a value
	* Remove remaining references to $c->local_tzid (fixes #35)
	* separate rebuild-translations and building locale/
	* document the setup that will get regression-suite to pass
	* Set the same default timezone to Database and PHP

2016-11-30 Florian Schlichting <fsfs@debian.org>
	* freebusy-functions.php: regular debug logging
	* global $c is not used in this function
	* DAVPrincipal: delete funny tabs and other unusual whitespace
	* DAVPrincipal: fix logging labels

2016-10-13 Florian Schlichting <fsfs@debian.org>
	* replace nonexistant start_here.php link with something helpful

2016-01-21 Frank Steinberg <steinberg@ibr.cs.tu-bs.de>
	* Fixed some logging labels.

2016-09-14 Florian Schlichting <fsfs@debian.org>
	* a helpful comment
	* fix typo
	* comment in existing email scheduling code

2016-09-14 Benoît Bleuzé <benoit.bleuze@gmail.com>
	* Handle empty "modified" ldap mapping

2016-07-15 Florian Schlichting <fsfs@debian.org>
	* davical-cli: add link to wiki page

2016-06-22 Andrew McMillan <andrew@mcmillan.net.nz>
	* Add /metrics.php to be scraped by Prometheus for monitoring.
	* Some database changes for server-side attendee handling.
	* Ignore some local cruft.
	* Fail better!
	* Remove array slice reference on method return value.
	* Sending HTTP headers for TODO seems a bit passive-aggressive!
	* getCacheInstance() is the canonical way to get a reference to the cache.
	* Enforce ordering on sample data for more consistent test results.
	* Regression result changes with calendar-free-busy-set disabled.
	* Update to regression test results for PROPPATCH bugfix.
	* Updated regression test results from updates to contenttype
	* The str_ireplace() function is not always present.
	* Disabling slow query threshold nag for batch job.
	* Ensuring we delete vigorously from the cache for DELETE is ++important!
	* Provide some more useful error details in various PUT failure situations.
	* Bugs pointed out by PHPStorm.

2016-06-01 Egoitz Aurrekoetxea <egoitz@sarenet.es>
	* Add scripts/davical-cli, an example of a command-line interface for
	  administrative tasks in a large-scale multi-domain setup

2016-06-13 Florian Schlichting <fsfs@debian.org>
	* adapt to AWL function rename get_fields() -> awl_get_fields()

2016-06-01 Florian Schlichting <fsfs@debian.org>
	* Check for PHP XML support in setup.php (see #91)
	* always regenerate api docs, remove generated files from git

2016-05-19 Andrew Ruthven <puck@catalyst.net.nz>
	* Pass in the refresh interval to fetch_external

2016-05-11 Nishanth Aravamudan <nish.aravamudan@canonical.com>
	* Update to PHP7.0 naming

2016-01-11 Florian Schlichting <fsfs@debian.org>
	* release 1.1.4
	* allow BuildDeadPropertyXML to continue on namespace errors (#9)

2016-01-10 Cyril Giraud <cgiraud@free.fr>
	* Transifex web site URL update. To be continued.

2016-01-08 Florian Schlichting <fsfs@debian.org>
	* Update ChangeLog, add Debian bug closers
	* add the iSchedule administration helper to the menu to give it more visibility and testing
	* fix Thunderbird mutilating external attendees
	* demote stack trace to regular debug logging (cf. #42)

2016-01-06 Florian Schlichting <fsfs@debian.org>
	* Fix scheduling replies with mixed internal and external (ignored) attendees

2016-01-03 Florian Schlichting <fsfs@debian.org>
	* prepare for 1.1.4
	* Properly remove /etc/davical/.keep/keepme

2016-01-01 Florian Schlichting <fsfs@debian.org>
	* remove database connection check before $c is available (closes #36)
	* handle events started before 1900 (closes: #58) [by Benedikt
	  Spranger]
	* let admin.php without parameters redirect to index.php, and document
	  restrict_setup_to_admin setting (fixes #55)
	* minor cleanup of example-config.php

2015-12-31 Florian Schlichting <fsfs@debian.org>
	* email addresses must be unique: add a tooltip and a warning message (fixes #30)
	* Apache 2.4 removed Order / Allow directives for new Require
	* transform date from iOS to standart format [by Milan Medlik]
	* Revert "add fix for the OSX Contacts.app:" [by Andrew McMillan]
	* Support regression testing with postgres on non-default port [by
	  Andrew McMillan]

2015-12-16 Florian Schlichting <fsfs@debian.org>
	* fix issue #72 - 405 error when adding a new contact from Apple's Contacts
	* Make "Toggle all privileges" button work on all forms

2015-12-14 Florian Schlichting <fsfs@debian.org>
	* document that YAML hates tabs (fixes #70)

2015-12-10 Jim Fenton <fenton@bluepopcorn.net>
	* Update required version of AWL to 0.56

2015-12-10 Florian <fsfs@debian.org>
	* remove reference to sourceforge pages from README, add info on IRC
	  channel and davical-general mailing list

2015-11-19 Frank O. Martin <mail@frank-o-martin.de>
	* Removed favicon.ico work around

2015-11-13 ClemensN <c.nuebel@gorilla-computing.de>
	* Fixed grouped Properties naming (vcard)

2015-11-05 Cyril Giraud <cgiraud@free.fr>
	* Add Arabic to language list.
	* Add Slovak (Slovakia) language to language list.
	* Add Finnish language and update for Korean.
	* Add language selection for Korean.

2015-06-25 Louis DuruflÃ© <commit@durufle.eu>
	* HttpDateFormat is actually in AwlDBDialect

2015-10-02 Florian Schlichting <fsfs@debian.org>
	* set dav_name of imported address books to .vcf instead of .ics (fixes #39)
	* fix default value for old events, and actually bail out if "old" is
	  less than six days ago (fixes #49)
	* replace a few remaining instances of the old name "rscds"
	* Do not throw postgres errors when views/types/functions to be
	  dropped do not exist (yet). Fixes #43
	* Debian: build and ship all the docs, including the translation guide
	* dont call make in Debian package builds (fixes #40)
	* do not create incorrect SQL in supported_locales.sql when $lang.values file is missing

2015-07-24 Marten Gajda <marten@dmfs.org>
	* Fix positive PROPPATCH response message body.

2015-07-09 Petr Jurášek <petr.jurasek@solnet.cz>
	* Windows phone 8.1 sends ETag=*, see https://www.ietf.org/rfc/rfc2068.txt, chapter 14.25

2015-05-27 Marten Gajda <marten@dmfs.org>
	* Add component parameter to content-types headers and getcontenttype properties
	* Change the add-member parameter to add_member

2015-05-14 Andrew Ruthven <puck@catalyst.net.nz>
	* Allow external BIND URL to be file:///

2015-04-22 Matthias <matthias.althaus@iserv.eu>
	* Fixed broken .ics import function (fixes #38)

2015-03-06 Cyril Giraud <cgiraud@free.fr>
	* Extract translatable strings in upgrade.php + update according to Transifex translations.

2014-12-29 Cyril Giraud <cgiraud@free.fr>
	* Translation update for es_VE and ko_KR, thanks to Transifex contributors.
	* Forum link update without making translators to re-translate the whole help string

2014-12-29 Timothy Brown <timothy.brown-1@colorado.edu>
	* Bugfix on Basic Auth username/password split.

2014-12-16 Florian Schlichting <fsfs@debian.org>
	* Debian: Ship all config examples and user documentation but remove website

2014-10-20 Florian Schlichting <fsfs@debian.org>
	* test for basic syntax errors in php files
	* fix scripts/build-always.sh: AWL_VERSION is always without quotes

2014-12-03 Mark Davies <mark.davies@moose-beast.com>
	* Add config value "support_obsolete_free_busy_property"
	* First batch of database indexes
	* Fix up Windows create-database.bat - see Issue #32.

2014-11-22 Jim Fenton <fenton@bluepopcorn.net>
	* Correct links to mailing list archives and bug report location

2014-11-14 Aaron W. Swenson <aaron.w.swenson@gmail.com>
	* Loop Over AWL Directory Candidates

2014-11-10 Cyril Giraud <cgiraud@free.fr>
	* Update from Transifex.

2014-11-10 Jorge López Pérez <jorge@adobo.org>
	* Fix current-user-principal

2014-10-27 Cyril Giraud <cgiraud@free.fr>
	* Localization update according to Transifex (Englis, French, German and Slovak at 100%).

2014-10-25 Cyril Giraud <cgiraud@free.fr>
	* Translations update from Transifex.

2014-10-23 Jim Fenton <fenton@bluepopcorn.net>
	* Removed website which is now in DAViCal Project/Website

2014-10-23 Cyril Giraud <cgiraud@free.fr>
	* Translations update according to transifex (french).

2014-10-22 Cyril Giraud <cgiraud@free.fr>
	* Issue #20: Code modification to make some strings translatable.
	* Issue #20: setup.php and help.php fixed (to be reviewed) + translations updates.

2014-10-12 Cyril Giraud <cgiraud@free.fr>
	* Minor translation update.

2014-10-07 Florian Schlichting <fsfs@debian.org>
	* release 1.1.3.1, fixing a critical typo in htdocs/always.php :-(
	* release 1.1.3
	* Add a README.Debian explaining the necessary steps for a basic installation
	* Add php5-ldap as Suggests (LP: #479378)
	* exclude debian/ from tarball

2014-10-06 Florian Schlichting <fsfs@debian.org>
	* Bump dependency on awl to 0.55
	* Declare compliance with Debian Policy 3.9.6
	* document regression testing setup

2014-09-25 Kribbio <kribbio.dk@gmail.com>
	* Create array Organizer for merged with array Attendee on
	  'handle_schedule_reply' function.
	* Name property is 'schedule-inbox' and not 'schedule_inbox'

2014-09-24 Andrew Ruthven <andrew@etc.gen.nz>
	* Closes #25 - Remove a duplicate string.

2014-09-22 Ján Máté <jan.mate@inf-it.com>
	* fix for debian bug #740827 - ensure that the timestamp inserted into
	  the INSERT query is valid

2014-09-22 Cyril Giraud <cgiraud@free.fr>
	* Translations update from Transifex.

2014-09-14 Florian Schlichting <fsfs@debian.org>
	* Declare compliance with Debian Policy 3.9.5 and update d/changelog
	* Switch d/copyright to copyright-format 1.0, amend CREDITS from git log
	* Add a debian/watch file
	* Bump dh compat to level 9
	* Add doc-base registration for api doc and website in davical-doc
	* debian/control: update and sort dependencies, add php5, php5-cli
	  (closes: #717043), php5-curl to Recommends (closes: #656390)
	* Clean up duplicate files (symlink identical files in api documentation)
	* Use short-form debian/rules and fix source format declaration (closes: #730941)
	* Takeover for the Davical Development Team

2014-09-02 “Paul <“p.kallnbach@gorilla-computing.de”>
	* Remove quoted SQL language identifiers

2014-07-18 Jim Fenton <fenton@bluepopcorn.net>
	* Update downloading information

2014-07-02 Jim Fenton <fenton@bluepopcorn.net>
	* Removed PayPal donation request and Flattr button

2014-06-23 “Paul <“p.kallnbach@gorilla-computing.de”>
	* Fixed fetching new external resources on BIND
	* inc/drivers_ldap: fix 'Undefined variable'
	* CardDAV Query Report
	* Support multiple text-match elements within a filter query.
	* Call log_caldav_action for VCARD PUT requests.
	* Support uniqueMember with DN for user names.
	* Added check to ensure email field does not get a double extension.

2014-06-13 Jim Fenton <fenton@bluepopcorn.net>
	* Adjust copyright; remove broken website footer beacon

2014-06-12 Ján Máté <jan.mate@inf-it.com>
	* added network timeout option for LDAP (thanks Sebastian Kotthoff)

2014-06-11 Cyril Giraud <cgiraud@free.fr>
	* Translation updates and new languages.

2014-06-07 Jim Fenton <fenton@bluepopcorn.net>
	* Updated home page with updated information on support structure

2014-05-14 Ján Máté <jan.mate@inf-it.com>
	* added $c->disable_caldav_proxy_propfind_collections option 
	* added $c->hide_bound configuration option
	* added functions for regex comparison
	* various scheduling related fixes (there are still few remaining bugs)
	* expand-property repord - prevent infinite recursion
	* various scheduling related fixes (there are still few remaining bugs)

2014-04-27 Ján Máté <jan.mate@inf-it.com>
	* fixed uninitialized principal object for calendar-proxy-* queries

2014-04-07 Ján Máté <jan.mate@inf-it.com>
	* Awl interface related changes (WritableCollection.php)
	* comment out lines related to external invitation (the Email class is still undefined)
	* awl interface related changes (schedule-functions.php)

2014-03-25 Ján Máté <jan.mate@inf-it.com>
	* fixed missing semicolons in drivers_ldap.php

2014-03-24 Ján Máté <jan.mate@inf-it.com>
	* fixed masking of confidential event components

2013-10-15 Andrew McMillan <andrew@morphoss.com>
	* Improve regression tests
	* Change to read all calendars and then discard inaccessible ones

2013-09-27 Andrew McMillan <andrew@morphoss.com>
	* Minor restructuring of caldav-REPORT

2013-09-26 Andrew McMillan <andrew@morphoss.com>
	* Changes to VCALENDAR content due to parser / renderer changes.
	* Changes to sending of DAV header.
	* More aggressively set timezone for regression testing.
	* Transifex updates
	* Fixing and debugging (freebusy, RRule)
	* The SQL date formatting constants have moved.
	* We will add a setting to disable the DAV header on non-OPTIONS requests.
	* Set the default timezone to the database as well as for PHP.

2013-09-24 Andrew McMillan <andrew@morphoss.com>
	* Freebusy should use vComponent rather than the deprecated iCalComponent
	* Force consistent result ordering.
	* Results changed for new VXXXXX parser.
	* Add options to do colourized, side-by-side & meld reviewing of results.
	* Fix deprecated warning.

2013-09-20 Ján Máté <jan.mate@inf-it.com>
	* fix for $c->hide_TODO processing and user-agent extension
	* fix of major todo synchronization issue if $c->hide_older_than option is set
	* fix to rename/delete the collection properties during the collection renaming/deleting
	* Extend $c->default_collections - adding 'calendar_components' and 'default_properties'
	* Prevent processing of collections from inactive principals

2013-09-19 Matthias Beyer <matthias@ib-fb.de>
	* Added dbg_error_log() calls to the ldap driver
	* Instance caching added
	* Only set the cached instance if driver is valid

2013-09-02 Andrew McMillan <andrew@morphoss.com>
	* Changes to default supported-component-set.
	* ETag/path changes due to regression.host changes.

2013-05-28 Matthias <matthias.althaus@iserv.eu>
	* Fixed schedule reply handling for missing organizer

2013-04-21 Jason Alavaliant <alavaliant@gmail.com>
	* fix the append box when importing collections
	* fix for CLASS attribute problem (CONFIDENTIAL value) and invalid
	  processing of ->hide_alarm configuration option:
	* add fix for the OSX Contacts.app:

2013-03-25  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
	* In places where the CGI variable REMOTE_USER is read, support
	  alternatively REDIRECT_REMOTE_USER, which is used by the Apache
	  HTTPD Server instead, when a redirect was used.
	* Removed debian/README.Debian which didn’t contain any useful
	  information.

2013-03-23  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
	* Handle the content of the CGI AUTH_TYPE variable case-insensitively as
	  defined by RFC 3875 Section 4.1.1.

2013-03-22 fbiete@gmail.com <fbiete@gmail.com>
	* CardDAV support for search contains, starts-with, ends-with, equals

2013-03-21  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
	* Changed the pathnames of the debug files to be a bit more FHS
	  compliant.

2013-03-20  Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
	* Changed the end-of-line encodings of all non-Windows-related and 
	  non-autogenerated text files to use UNIX LF (lots of them had mixed
	  LF/CRLF).
	* HTML escape the remotely retrieved version string printed to the HTML
	  in order to prevent and attacks (if this would have been possible at
	  all in 12 characters).
	* Updated all addresses of the canonical git upstream repository and the
	  issue tracker to the new ones.

2013-07-15 Andrew McMillan <andrew@morphoss.com>
	* Release 1.1.2
	* Correct regression host name.

2013-05-31 Andrew McMillan <andrew@morphoss.com>
	* Sometimes principal_id can be false.
	* Autocreated docs for new classes.

2013-05-29 Andrew McMillan <andrew@morphoss.com>
	* Handle the ?after=(duration|date) syntax when receiving a PUT of a calendar.
	* Fix very buggy conversion of duration to seconds.

2013-05-23 Andrew McMillan <andrew@morphoss.com>
	* Changes in formatting from Transifex.
	* Allow adding an 'after=YYYY-MM-DD' or 'after=P72D' parameter to PUT
	  of a collection
	* Only certain specific namespaces actually have database columns.

2013-04-17 Andrew McMillan <andrew@morphoss.com>
	* Don't warn on slow queries since this is a batch process.
	* Also need to change collection_id...
	* Once we do archive the events we have to update various things so
	  they realise it too.

2013-04-11 Andrew McMillan <andrew@morphoss.com>
	* Remove unecessary debug message on normal behaviour.
	* archive-old-events.php: a script for archiving non-repeating events
	  into an archive calendar.

2013-03-06  Andrew McMillan  <andrew@morphoss.com>
	* Fix capitalisation of 'plpgsql' & 'sql' for Postgres 9.2. (debbug #702403)

2013-02-16  Andrew McMillan  <andrew@morphoss.com>
	* Content-Type header should be 'charset' not 'encoding'.

2012-09-20  Andrew McMillan  <andrew@morphoss.com>
	* When we get here it is a Bad Request, not a Server Error.
	* Quick workaround for iOS6 supported-calendar-component-set issue.
	  Adds a $c->default_calendar_components array of (VEVENT,VTODO,...)
	* Workaround client software with imperfect add-member implementations.

2012-09-10  Andrew McMillan  <andrew@morphoss.com>
	* Fix unassigned variable.
	* Avoid unassigned variable warning.
	* Fix UID handling.
	* Fix debugging to error log.

2012-08-09  Andrew McMillan  <andrew@morphoss.com>
	* Ensure test responses are displayed in their unprocessed form.
	* Some debugging messages.

2012-07-31  Andrew McMillan  <andrew@morphoss.com>
	* Replace deprecated split() with explode()

2012-05-28  Andrew McMillan  <andrew@morphoss.com>
	* First cut at iMIP implementation.  Still working on this.

2012-07-30  Andrew McMillan  <andrew@morphoss.com>
	* Fix SQL fieldname.

2012-07-29  Andrew McMillan  <andrew@morphoss.com>
	* Sometimes we want to retrieve the sync-token as a result of a change we just made.
	  This allows a (default true) flag to indicate whether it's OK to use
	  a previously cached value.
	* On Apple devices these can sometimes appear in the Apple namespace. Odd.
	* Let the VCalendar class handle how to get the UID from the calendar.

2012-07-25  Andrew McMillan  <andrew@morphoss.com>
	* Remove old redundant constructor.

2012-07-13  Andrew McMillan  <andrew@morphoss.com>
	* Add workaround for Apple's POST add-member trainwreck.
	* We might not have a $request calling this so use the object's path instead.
	* Testing for dead property XML which is a set of prop.
	* supported-calendar-component-set uses dead properties too...
	* Don't just return the first element in a dead property - there might be multiple!

2012-07-04  Andrew McMillan  <andrew@morphoss.com>
	* Release 1.1.1
	* CalDAV client library: Handle multiple "Allow" header lines.
	* Fix checking of Basic Auth headers.

2012-07-03  Andrew McMillan  <andrew@morphoss.com>
	* Fix ldap driver to handle numeric usernames correctly.

2012-07-02  Andrew McMillan  <andrew@morphoss.com>
	* Deny calendar-query report on root, principal or addressbook
	  Even if recursive report is enabled.

2012-06-30  Andrew McMillan  <andrew@morphoss.com>
	* Handle allprop and ommission of prop tag in calendar-query.
	* Better timezone handling for parsed alarm times.

2012-06-28  Andrew McMillan  <andrew@morphoss.com>
	* Include memory in statistics debug.
	* Add an option to kill the current process after exceeding a memory limit.

2012-06-27  Andrew McMillan  <andrew@morphoss.com>
	* Fix DISTINCT clause where DAViCal is configured to allow recursive calendars.

2012-06-26  Andrew McMillan  <andrew@morphoss.com>
	* Fix debian bug #656392 - correct detection of suhosin.server_strip status.

2012-06-25  Andrew McMillan  <andrew@morphoss.com>
	* Catch 'events' without a DTSTART gracefully and ignore them.

2012-06-21  Andrew McMillan  <andrew@morphoss.com>
	* Fix notification of deletes when hide_older_than is set.

2012-06-19  Andrew McMillan  <andrew@morphoss.com>
	* Fix call to BuildDeadPropertyXML.

2012-06-17  Andrew McMillan  <andrew@morphoss.com>
	* Release 1.1.0
	* Allow a configurable path replacement regex.

2012-06-14  Andrew McMillan  <andrew@morphoss.com>
	* Decide whether we can write the principal before we refer to it...
	* When a VEVENT has an invalid repeat frequency we pretend it is DAILY.
	  And log an error, just to be obnoxious.

2012-06-11  Andrew McMillan  <andrew@morphoss.com>
	* Allow a user delegated write access to the principal to maintain it.

2012-05-30  Andrew McMillan  <andrew@morphoss.com>
	* Fix some niggles with setup.php and spurious logged errors.

2012-05-28  Andrew McMillan  <andrew@morphoss.com>
	* Handle relative file references better,
	* Add support for $c->hide_older_than to this report.

2012-05-20  Andrew McMillan  <andrew@morphoss.com>
	* Updated & new regression tests for various XML processing changes.
	* Simplify using GetPath() method.
	* Use fully namespaced tags.
	* Fix storing / regurgitating of XML fragments in dead properties.
	  Requires updated AWL to match.

2012-05-15  Andrew McMillan  <andrew@morphoss.com>
	* Add support by Ján Máté for arbitrary collections to create on user creation.
	* Don't disable upload field. Use library to create 'append mode' field.

2012-05-14  Andrew McMillan  <andrew@morphoss.com>
	* Test result of PROPFIND on /
	* Further tests for BIND, particular transitive BINDs.
	* Retry contacting LDAP server and fail with 503 if unavailable.
	* Reduce unnecessary logging.
	* Bugfix replacing $row->dav_id with $row->collection_id.
	* We should error 500 when we have an exception that isn't caught.

2012-05-07  Frank Steinberg  <steinberg@ibr.cs.tu-bs.de>
	* Attendees can only modify own event instance and own PARTSTAT

2012-05-05  Andrew McMillan  <andrew@morphoss.com>
	* A function which can expand collections inside collections.
	* When a bind is made to an existing bind, bind to the target of that.
	* When logging failed anonymous access, don't crash and burn.
	* When matching a URL something missing a trailing slash could also be a binding.

2012-05-03  Andrew McMillan  <andrew@morphoss.com>
	* A more efficient query for GET including sub-collections.
	* Fix getctag replacement in this test.
	* Current regression test results.
	* A default timezone if there is not one set in the PHP configuration.
	* Changes to the way XML is created, and (to a lesser extent) parsed.
	* Merge 'Brief' header support into support for "Prefer"
	* Always default the timezone to something, even if the user did not.

2012-04-30  Andrew McMillan  <andrew@morphoss.com>
	* Simple changes for new XML processing.
	* Add log_caldav_action() hook on addressbook writes.
	* If there are no instances ensure earliest_start still gets a value.

2012-04-22  Andrew McMillan  <andrew@morphoss.com>
	* Make it possible to see output from /setup.php when DB is unavailable.

2012-04-09  Daniel Aleksandersen  <code@daniel.priv.no>
	* Fix failing principal creation for new users using IMAP PAM
	* Provide user feedback when php5-imap is missing.

2012-04-19  Andrew McMillan  <andrew@morphoss.com>
	* Need $request globally in this function
	* Correct response code for PROPPATCH and add support for Brief header.

2012-04-18  Andrew McMillan  <andrew@morphoss.com>
	* Handle modified which is just YYYYMMDDHHMMSS with no indication of datedness.
	* Fix bug in "Edit" of existing grant.
	* Don't try and initialize gettext unless it's installed.

2012-04-17  Andrew McMillan  <andrew@morphoss.com>
	* Further fixes to WebDAV synchronization.
	* Remove davical upgrade log on debian package removal.

2012-04-16  Andrew McMillan  <andrew@morphoss.com>
	* Changes to the way PROPPATCH returns errors.

2012-04-11  Andrew McMillan  <andrew@morphoss.com>
	* Make sure we increment the sync-token on PUT / DELETE.
	* Don't log response for a 404 to reduce log noise.

2012-04-10  Andrew McMillan  <andrew@morphoss.com>
	* Add another hook since sometimes we want the action hook to be post commit.

2012-04-06  Andrew McMillan  <andrew@morphoss.com>
	* Make it so that PUT of a calendar collection becomes a synchronisation.

2012-04-05  Andrew McMillan  <andrew@morphoss.com>
	* Do a bit_or() among multiple privilege settings.

2012-04-04  Andrew McMillan  <andrew@morphoss.com>
	* Fix default URL for FindPrincipal() ensure If-Match etag is quoted.
	* Refactor checking of If-*-Match headers into a single place.

2012-03-22  Andrew McMillan  <andrew@morphoss.com>
	* Get rid of potential warning on early use of date()
	* Basic support for RFC5995 - Using POST to add collection members.
	* Better privilege checking on POST scheduling actions.
	* Fix a bug in GET on collections.
	* Slight header changes as a result of caldav proxy changes.
	* Allow complete disabling of handling for Apple's old calendar-proxy.
	* Changes to Depth handling.

2012-03-19  Andrew McMillan  <andrew@morphoss.com>
	* Fix for collections where sync_token does not compute.

2012-03-17  Andrew McMillan  <andrew@morphoss.com>
	* Principals don't (yet) have a sync-token.
	* We should respond with sync-token if PROPFIND asks too.

2012-03-16  Andrew McMillan  <andrew@morphoss.com>
	* Correct HTTP date formatting function.
	* Remove chance of unset variable warning.

2012-03-13  Andrew McMillan  <andrew@morphoss.com>
	* Don't log 401 response since it's so frequent.
	* Add a basic status/method/uri in front of each logged error.

2012-03-12  Rob Ostensen  <rob@boxacle.net>
	* Add the ability to override dns for iSchedule using a global variable $icfg

2012-03-12  Rob Ostensen  <rob@boxacle.net>
	* Skip empty domains in iSchedule setup page

2012-03-12  Andrew McMillan  <andrew@morphoss.com>
	* Allow dav_test to be used against random SSL certs.
	* Add $c->auto_refresh_duration option to set a auto refresh on any GET calendar.
	* Handle HTTP date formatting for non-english locales (force English names).
	* Silence the warning if this is not initialised.

2012-03-11  Rob Ostensen  <rob@boxacle.net>
	* verify required headers are signed
	* add disallowed header check and some comments

2012-03-07  Rob Ostensen  <rob@boxacle.net>
	* fix a few external BIND import bugs

2012-03-11  Andrew McMillan  <andrew@morphoss.com>
	* iSchedule administration helper.

2012-03-02  Andrew McMillan  <andrew@morphoss.com>
	* Changed default Depth for PROPFIND.
	* Changes due to responding that VPOLL/VAVAILABILITY are OK.
	* Fix bug introduced with iSchedule support.
	* Fix defaulting of Depth value for newer PHP versions.

2012-02-24  Andrew McMillan  <andrew@morphoss.com>
	* Add a command-line script to export a single calendar to stdout.
	* Split major functionality out of GET into it's own include.
	* Only send a Content-Length if the length is > 0

2012-02-21  Andrew McMillan  <andrew@morphoss.com>
	* Override the "don't PUT a whole calendar" option.
	* A command-line script to load a calendar from an iCalendar file.

2012-02-06  Andrew McMillan  <andrew@morphoss.com>
	* Detect unsupported sync-level and return specified error.
	* Force casting of user_no to integer.

2012-02-02  Andrew McMillan  <andrew@morphoss.com>
	* Work from new iana timezone registry.

2012-02-01  Rob Ostensen  <rob@boxacle.net>
	* ischedule: more correct error codes
	* remove some of the debugging cruft
	* ischedule: fake session info when writing scheduling collections

2012-01-31  Rob Ostensen  <rob@boxacle.net>
	* ischedule: correctly set the attendee value on freebusy replies
	* ischedule: actually add attendee to freebusy reply ics

2012-02-01  Andrew McMillan  <andrew@morphoss.com>
	* Implement support for 'Brief' header.
	  Also add VPOLL and VAVAILABILITY to list of supported components.
	* Don't include the example .htaccess on Debian systems.

2012-01-25  Andrew McMillan  <andrew@morphoss.com>
	* Correct variable name used parsing RFC5545 duration.

2012-01-23  Andrew McMillan  <andrew@morphoss.com>
	* Fix problems calling import collection from external contexts.
	* Allow specifying that this test will use Digest authentication.
	* Clean up content-type checking so it's not so noisy on null content.

2012-01-17  Andrew McMillan  <andrew@morphoss.com>
	* Make the 'append' option work.

2012-01-31  Rob Ostensen  <rob@boxacle.net>
	* ischedule: make invites and replies work
	* iSchedule: minor fix
	* iSchedule changes: fix signed domain, better error handling, cleanups
	* ischedule freebusy should work now
	* closer to a working version

2012-01-30  Rob Ostensen  <rob@boxacle.net>
	* fix xml queries

2012-01-27  Rob Ostensen  <rob@boxacle.net>
	* debug logging and some typo fixes
	* return calendar contents if present otherwise return status
	* initial tests for remote iSchedule requests signed using test keys
	* remote scheduling requests should work now, still need to handle ADD/CANCEL requests

2012-01-25  Andrew McMillan  <andrew@morphoss.com>
	* Correct variable name used parsing RFC5545 duration.

2012-01-23  Andrew McMillan  <andrew@morphoss.com>
	* Fix problems calling import collection from external contexts.
	* Allow specifying that this test will use Digest authentication.
	* Clean up content-type checking so it's not so noisy on null content.

2012-01-17  Rob Ostensen  <rob@boxacle.net>
	* iSchedule internal round trip with headers and body signing then verification working

2012-01-17  Andrew McMillan  <andrew@morphoss.com>
	* Make the 'append' option work.

2012-01-16  Rob Ostensen  <rob@boxacle.net>
	* reformatting to match the rest of DAViCal and a few code changes

2012-01-15  Andrew McMillan  <andrew@morphoss.com>
	* <?php should be in lower case.
	* If an external source can supply a useful timezone name, we can use that.
	* Allow user_no, created and modified to be set on create.

2012-01-12  Philipp Matthias Hahn  <pmhahn@pmhahn.de>
	* Use If-Modified-Since-HTTP-Header
	* Fix remote time comparison
	* Compute version only once
	* Use automatic Makefile variables
	* Make several targets .PHONY

2012-01-14  Andrew McMillan  <andrew@morphoss.com>
	* Probably a smidgin more efficient this way around.
	* LDAP driver should not log password unless password logging is specifically on.
	* Release 1.0.2

2012-01-13  Andrew McMillan  <andrew@morphoss.com>
	* Handle VCARD adr/tel/email which have multiple types.
	* Set the default URL to the default calendar name rather than /home/
	* Enable the file upload for addressbook collections.
	* Handle addressbook import along with calendar import.
	* Write UID and REV property n VCARD if they are missing.
	* Fix bug in scheduling on POST request.
	* Fix permissions on user create via external auth.

2012-01-12  Andrew McMillan  <andrew@morphoss.com>
	* Allow for silly programs that send content-type XML with a GET request.
	* Support use of HTTP_AUTHORIZATION in addition to AUTHORIZATION cgi.
	* Add a default min_age for external binds.

2012-01-06  Rob Ostensen  <rob@boxacle.net>
	* Prevent external binds from being created/updated if curl is missing.
	* Add check to setup page to test whether curl is installed.

2012-01-05  Andrew McMillan  <andrew@morphoss.com>
	* Release 1.0.1

2012-01-04  Andrew McMillan  <andrew@morphoss.com>
	* Release 1.0

2011-12-14  Andrew McMillan  <andrew@morphoss.com>
	* Handle bound resources correctly in sync-collection report.
	* Catch missing-xml in request separately from invalid-xml.

2011-12-07  Andrew McMillan  <andrew@morphoss.com>
	* Add the "CardDAV" word into DAViCal's description.
	* Improve expand performance by only doing expansion if we know we need it.

2011-12-03  Andrew McMillan  <andrew@morphoss.com>
	* Use supplied content_type even on zero-length requests.

2011-12-03  Rob Ostensen  <rob@boxacle.net>
	* When creating an external bind don't consider local host as external

2011-11-30  Andrew McMillan  <andrew@morphoss.com>
	* Strip URL-unfriendly characters from UID before using it as URL segment.

2011-11-29  Andrew McMillan  <andrew@morphoss.com>
	* Slightly more helpful 403 response.

2011-11-27  Andrew McMillan  <andrew@morphoss.com>
	* Fix logic error in hide_TODO setting.
	* Make hide_alarm work on bound resources.

2011-11-26  Andrew McMillan  <andrew@morphoss.com>
	* Correct bug in sync-collection report response.
	* Fix BIT24 casting for the LDAP driver.

2011-11-25  Andrew McMillan  <andrew@morphoss.com>
	* Remove password from LDAP log messages.

2011-11-22  Andrew McMillan  <andrew@morphoss.com>
	* Fix for MOVE into a bound location.

2011-11-21  Andrew McMillan  <andrew@morphoss.com>
	* Tooltips for schedule-deliver and schedule-send.
	* Current localisations from Transifex.
	* The tooltips for schedule-send and schedule-deliver should be different!
	* Correctly calculate the next alarm time.
	* Update e-mail address to current one, mention wiki.

2011-11-09  Andrew McMillan  <andrew@morphoss.com>
	* Make sync-collection handle new format for sync token.
	* Don't allow a / in the UID to infect the path on import.

2011-11-09  Rob Ostensen  <rob@boxacle.net>
	* Fix propfind depth:1 on bind to external url

2011-11-02  Andrew McMillan  <andrew@morphoss.com>
	* Handle DELETE scheduling actions.
	* Force output buffers to be flushed, if they're turned on.
	* Correct handling of empty CardDAV:address-data element in request.

2011-11-01  Andrew McMillan  <andrew@morphoss.com>
	* Update refresh-alarms script to newer style initialisation.
	* Fix handling of active flag for general external authentication mechanisms.
	* Update website to reflect new default calendar name.

2011-10-31  Andrew McMillan  <andrew@morphoss.com>
	* Rationalise confidential event rewriting.

2011-10-30  Andrew McMillan  <andrew@morphoss.com>
	* Add the $c->hide_alarms functionality into DAVResource class.

2011-10-28  Andrew McMillan  <andrew@morphoss.com>
	* Allow LDAP sync to work if the date is reasonable and no 'format_updated' is set.
	* We don't need to test for the PostgreSQL non-PDO drivers now.
	* Switch out deprecated LDAP mappings before we use them anywhere.
	* Fix LDAP user creation where memcached support is off.

2011-10-27  Andrew McMillan  <andrew@morphoss.com>
	* Add test for PHP filter module and wiki links for each test.

2011-10-25  Andrew McMillan  <andrew@morphoss.com>
	* Updates to Brazilian Portuguese, German and Dutch translations.
	* We need $c to be global here.
	* A couple more places restricting numeric usernames.

2011-10-25  Rob Ostensen  <rob@boxacle.net>
	* External bind changes, added a clean up button, urls now show for
	  external collections and added a few strings for translation

2011-10-24  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9.7
	* More fixes to CalDAV Scheduling
	  - Handle REPLY from ATTENDEE accepting/declining meeting.
	  - Handle processing on ORGANIZER further changing meeting.
2011-10-24  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9.7
	* More work on CalDAV Scheduling
	  - Handle REPLY from ATTENDEE accepting/declining meeting.
	  - Handle processing on ORGANIZER further changing meeting.

2011-10-20  Andrew McMillan  <andrew@morphoss.com>
	* Add a config setting to force unnecessary FBTYPE parameter in freebusy response.
	* Fix errors in PROPPATCH response.
	* More work on CalDAV Scheduling
	  - Update the SCHEDULE-STATUS parameter correctly.
	  - Don't include ETag in PUT response when scheduling actions occur.
	  - Write scheduling resources to attendee calendars for modifications.

2011-10-18  Andrew McMillan  <andrew@morphoss.com>
	* A basic, untested, handler for /autodiscover/autodiscover.xml
	* Make sure default relationships are created.
	* Fix various brokenness with LDAP introduced in 0.9.9.5

2011-10-16  Andrew McMillan  <andrew@morphoss.com>
	* Support an array of server_auth_type since Kerberos can send different ones.

2011-10-14  Andrew McMillan  <andrew@morphoss.com>
	* Fix tools.php to allow importing of a directory of calendars again.
	* Fix various data casting issues, particularly to handle integer usernames.

2011-10-07  Rob Ostensen  <rob@boxacle.net>
	* Add a page to list externally bound calendars.

2011-09-14  Rob Ostensen  <rob@boxacle.net>
	* Add a check to the setup page for the php calendar extension

2011-10-07  Andrew McMillan  <andrew@morphoss.com>
	* Fail more gracefully on crap encoding input.
	* Test for 'deflate' content encoding.
	* Rewrite calendar-query handling of time-range constraints.

2011-10-06  Andrew McMillan  <andrew@morphoss.com>
	* Fix a regression in lock handling.
	* Fix handling where supplied content-type header is busted.
	* Set limits & defaults on lock duration.
	* Implement support for proposed tzid parameter on list requests.

2011-10-05  Andrew McMillan  <andrew@morphoss.com>
	* Various fixes to timezone server implementation.

2011-10-05  Andrew McMillan  <andrew@morphoss.com>
	* Support gzip/deflate/compress encoding of incoming entity for PUT etc.
	* Add protocol://hostname onto HTTP Location header per spec.

2011-10-05  Andrew McMillan  <andrew@morphoss.com>
	* Fix handling of .well-known where the base handler is not caldav.php

2011-10-04  Andrew McMillan  <andrew@morphoss.com>
	* Updated MKCOL/MKCALENDAR to support setting a supported-calendar-component-set
	* Change sync-token response to be a URI, per spec.
	* Correctly create the addressbook collection as an addressbook.

2011-10-01  Andrew McMillan  <andrew@morphoss.com>
	* Fix the way default privileges are set for the SQL.

2011-09-30  Andrew McMillan  <andrew@morphoss.com>
	* Get rid of unsightly error due to removal of time_zone table.

2011-09-28  Andrew McMillan  <andrew@morphoss.com>
	* Fix bug handling COUNT= with BYDAY=multiple and FREQ=WEEKLY
	* Fix handling of BYMONTHDAY=-N in repeat rules.

2011-09-23  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9.6

2011-09-22  Andrew McMillan  <andrew@morphoss.com>
	* Implement Timezone Server Protocol per -02 draft RFC
	* Add a script that can be run from cron to sync from LDAP.
	* Fix accidental null assignments on update from external authentication (LDAP)

2011-09-20  Andrew McMillan  <andrew@morphoss.com>
	* Add timezone and scheduling to the default regression set.
	* Provide an alternative 1.2.10a patch with fixed check_db_revision().

2011-09-19  Andrew McMillan  <andrew@morphoss.com>
	* Rewrite time-range SQL clauses for clarity and correctness.

2011-09-17  Andrew McMillan  <andrew@morphoss.com>
	* Tests for open-ended time-range calendar-query.
	* Fix an error in calendar-query handling of time-range queries.

2011-09-14  Andrew McMillan  <andrew@morphoss.com>
	* Migrate away from deprecated iCalendar class.
	* Ensure username is initialised to something appropriate from LDAP
	* Allow null dtstart to match any range, as per Scheduling Draft.

2011-09-14  Rob Ostensen  <rob@boxacle.net>
	* add a check to the setup page for the php calendar extension

2011-09-13  Rob Ostensen  <rob@boxacle.net>
	* skip scheduling attendees with schedule-agent set to something other than server

2011-09-10  Andrew McMillan  <andrew@morphoss.com>
	* Write schedule resources to attendee calendars and inboxes on PUT.

2011-09-09  Andrew McMillan  <andrew@morphoss.com>
	* Add test of error response for a REPORT which is not supported.
	* Add support for the CalDAV:schedule-default-calendar-URL property.

2011-09-08  Andrew McMillan  <andrew@morphoss.com>
	* Rename caldav-PUT.php to reflect it's calendaring association.
	* Decruftify, and allow the squid pam to use 'path' instead of 'script' in it's config.
	* Fix PROPPATCH behaviour on bound resources.

2011-09-07  Andrew McMillan  <andrew@morphoss.com>
	* Correct handling of PUT with unreferenced VTIMEZONE

2011-08-29  Andrew McMillan  <andrew@morphoss.com>
	* Restore default relationships, which still have utility in complex environments.

2011-08-28  Andrew McMillan  <andrew@morphoss.com>
	* Workaround MacOS X 10.6 Addressbook cannot login to CardDav with '@' in username

2011-08-26  Andrew McMillan  <andrew@morphoss.com>
	* Only include override components if they happen within the period.
	* Change to depend on postgresql-client >= 8.1 and AWL = 0.47-1

2011-06-28  Rob Ostensen  <rob@boxacle.net>
	* Add support for remote url BINDing

2011-08-25  Andrew McMillan  <andrew@morphoss.com>
	* PROPPATCH is allowed on binds.
	* Make locale handling use stuff pulled from transifex.net
	* Add Brazilian Portuguese and Mexican Spanish.

2011-08-24  Andrew McMillan  <andrew@morphoss.com>
	* Test results including calendar-auto-schedule header as default.
	* Fix calendar-query handling of properties.

2011-08-23  Andrew McMillan  <andrew@morphoss.com>
	* Fix XML output of <error> block.
	* Handle <prop> following <filter> & a single-ended time filter.

2011-06-01  Andrew McMillan  <andrew@morphoss.com>
	* Allow the calendar-query expansion to return all events in floating time.

2011-05-22  Andrew McMillan  <andrew@morphoss.com>
	* Setup test should recognise "Off" as well as "0"

2011-05-18  Andrew McMillan  <andrew@morphoss.com>
	* Add first cut implementation of principal-match report.

2011-05-13  Andrew McMillan  <andrew@morphoss.com>
	* When sync-collection is asked for data, only return it if < 50 rows.

2011-04-03  Andrew McMillan  <andrew@morphoss.com>
	* Ensure dav_id_seq is initialized to a non-colliding value.
	* Add support for Digest authentication.

2011-04-01  Andrew McMillan  <andrew@morphoss.com>
	* When an import event has no UID we reluctantly assign one.

2011-03-13  Andrew McMillan  <andrew@morphoss.com>
	* A more complete fix for weird passwords with LDAP.
	* Apparently an attempt to bind with an empty password will return TRUE!

2011-03-03  Felix Möller  <mail@felixmoeller.de>
	* Add explaination for translators.

2011-03-03  Andrew McMillan  <andrew@morphoss.com>
	* Fix bug in schedule status response where there is no authority.

2011-02-27  Felix Möller  <mail@felixmoeller.de>
	* Sync german translation with Transifex.

2011-02-23  Andrew McMillan  <andrew@morphoss.com>
	* Fix sort order of members listed in a group.
	* Add support for locking with memcached during delete to avoid deadlocks.

2011-02-22  Andrew McMillan  <andrew@morphoss.com>
	* Force line endings to consistent CRLF in GET.

2011-02-22  Felix Möller  <mail@felixmoeller.de>
	* Producing tarballs now which can be build by rpmbuild -ta davical.tar.gz

2011-02-22  Andrew McMillan  <andrew@morphoss.com>
	* Check for LDAP module, but only if LDAP is configured.

2011-02-21  Felix Möller  <mail@felixmoeller.de>
	* add automatic building of translation documentation
	* Remove obsoleted strings from translation
	* Adding documentation for translators

2011-02-21  Andrew McMillan  <andrew@morphoss.com>
	* Move from extract.pl to standard xgettext

2011-01-22  Felix Möller  <mail@felixmoeller.de>
	* Removing the last traces of RSCDS and renaming it to DAViCal.

2011-02-21  Andrew McMillan  <andrew@morphoss.com>
	* Build AWL desired version string as quoted value.

2011-02-20  Andrew McMillan  <andrew@morphoss.com>
	* Correct error message for unsupported report request.

2011-01-21  Andrew McMillan  <andrew@morphoss.com>
	* Ensure resources are always returned with CRLF rather than just LF.

2011-01-18  Andrew McMillan  <andrew@morphoss.com>
	* Skip alarms with bogus trigger data.

2011-01-15  Andrew McMillan  <andrew@morphoss.com>
	* Block invalid tickets from having access.

2011-01-14  Andrew McMillan  <andrew@morphoss.com>
	* Add norwegian and estonian translation files.

2011-01-12  Andrew McMillan  <andrew@morphoss.com>
	* Validate alarm date-time or duration before adding it to the DB.

2011-01-04  Andrew McMillan  <andrew@morphoss.com>
	* Finally give up on the SQL rrule pre-processing.
	* Move debug logged password behind specific 'password' debug setting.
	* Obfuscate event data when reader only has read-free-busy permission.

2011-01-03  Andrew McMillan  <andrew@morphoss.com>
	* List all of a user's calendar homes
	* Extend default_privileges to members of a group.

2010-12-31  Andrew McMillan  <andrew@morphoss.com>
	* Add support for caching of feed, and uncaching on collection change.

2010-12-30  Andrew McMillan  <andrew@morphoss.com>
	* Let auth realm be 'per Principal' to work around Mozilla #247486
	* IMAP PAM authentication from Oliver Schulze

2010-12-28  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9.4

2010-12-27  Andrew McMillan  <andrew@morphoss.com>
	* Refactor PUT functions to set modified/created dates more correctly.

2010-12-27  Leho Kraav  <leho@kraav.com>
	* add et_EE to support locales

2010-12-26  Andrew McMillan  <andrew@morphoss.com>
	* Fix errors in po files pointed out by Transifex uploading.
	* A new AtomFeed class for building an Atom feed.
	* Switch to creating an atom feed, which is a better feed standard.

2010-12-26  Leho Kraav  <leho@kraav.com>
	* A new URL to provide an RSS feed of a calendar's changes.

2010-12-26  Andrew McMillan  <andrew@morphoss.com>
	* Refactored RRule to add support for initialisation from a vProperty.

2010-12-25  Andrew McMillan  <andrew@morphoss.com>
	* Remove all reference to PgQuery
	* Extensive refactoring of principal-edit, plus support for creating tickets.
	* Add support for writing scheduling resources on PUT.
	* Improve support for handling floating time.
	* Add cil for internal issue tracking.

2010-12-08  Andrew McMillan  <andrew@morphoss.com>
	* Cut access with invalid/expired tickets out immediately.

2010-12-07  Andrew McMillan  <andrew@morphoss.com>
	* Handle empty PROPFIND, don't blow up on invalid XML.

2010-11-30  Andrew McMillan  <andrew@morphoss.com>
	* /.well-known/* now returns a 301 redirect, per spec.
	* Use text/vcard for content type in advance of ratification of spec.
	* Properly handle addressbooks in multiget.
	* Hide authorization headers in logging.
	* Update sync-collection REPORT to match -04 of draft.
	* Replace index.php with caldav.php when we find it in our path.

2010-11-27  Andrew McMillan  <andrew@morphoss.com>
	* Be pedantic about checking user is active before we let them in.
	* Specify the SRV record examples with leading _ as they should be.

2010-11-21  Andrew McMillan  <andrew@morphoss.com>
	* Fix SQL for group handling from Michael Braun.
	* Add principal-collection-set to standard responses for DAVResource.
	* Correct typo in POST handling.

2010-11-20  Andrew McMillan  <andrew@morphoss.com>
	* Also update displayname if fullname is changed.

2010-10-02  Daniel Aleksandersen  <daniel@>
	* remove old screenshots
	* updated iPhone client configuration with new screenshots

2010-11-19  Andrew McMillan  <andrew@morphoss.com>
	* Handle stuff like DTSTART;TZID=America/New_York:20101119T231307

2010-11-14  Andrew McMillan  <andrew@morphoss.com>
	* Script to refresh calendar_alarms with next instance time.

2010-11-09  Andrew McMillan  <andrew@morphoss.com>
	* Don't let auth functions create duplicate home calendars.

2010-11-06  Andrew McMillan  <andrew@morphoss.com>
	* Patch for caldav sync from Pierre-Arnaud Poudret.
	* Add ACL to the supported methods.
	* Change regression runner to look for sample data with tests.
	* Correct version number typo.
	* Always grant 'DAV::read' privilege from principal to group members.

2010-11-05  Andrew McMillan  <andrew@morphoss.com>
	* Use expanded time specifiers in format since %Y doesn't work on Windows.
	* Support recursive REPORT query if configured to allow it.

2010-11-04  Andrew McMillan  <andrew@morphoss.com>
	* Add a new WritableCollection object which we will use for PUT.
	* Use text/vcard rather than older text/x-vcard.
	* Support event properties in changed part of sync-response.
	* Rename variable to work around Pg 9.0 reserved name.

2010-11-01  Andrew McMillan  <andrew@morphoss.com>
	* Switch from regular expression which may not work in old/odd PHP.

2010-10-31  Andrew McMillan  <andrew@morphoss.com>
	* Support getlastmodified property in REPORT requests.

2010-10-16  Andrew McMillan  <andrew@morphoss.com>
	* Fix typo in iTIP CANCEL handling.

2010-10-15  Andrew McMillan  <andrew@morphoss.com>
	* Turn on calendar-auto-schedule header if $c->enable_auto_schedule
	* Add various additional checks into /setup.php
	* Add knowledge of desired parallel AWL version to setup.

2010-10-10  Andrew McMillan  <andrew@morphoss.com>
	* Fix various minor CardDAV bugs.
	* Omit the <response> for event outside the time range - when expanded.
	* Fix privilege_to_bits function to set 'all' correctly & work with recent postgres

2010-10-08  Andrew McMillan  <andrew@morphoss.com>
	* Don't supply freebusy for 0-duration events.
	* Another regression test for free/busy catching many events.
	* Add an event with a thoroughly bogus tzid to ensure we cope.
	* Check for some supported stuff very early so we can show it is missing.
	* Better display of bindings.
	* Add postgreSQL 9.0 as a possibility.
	* Fix warning when using basic authentication fallback.
	* Fix handling of iCalendar durations containing negative elements.
	* Handle events which don't have either DTEND *or* DURATION.
	* Rewrite __construct() method of RepeatRuleDateTimeZone to be more robust.

2010-09-25  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9.3
	* Rename 'Import Calendars' to 'Tools' since LDAP is more likely.
	* Add an 'all' regression set which creates the initial DB for the others.
	* If we get an unknown sync token, just sync everything.
	* Minor refactoring of DAVResource.
	* Consistently use ETags with quoting.
	* Add configuration option to use older 'sync-response' tag.
	* Provide correct getcontenttype property for addressbook resources.

2010-09-24  Andrew McMillan  <andrew@morphoss.com>
	* Allow basic auth to supply login credentials.
	* Display the bindings a principal has access to.
	* Fix various bugs with handling of addressbook resources.

2010-09-23  Andrew McMillan  <andrew@morphoss.com>
	* Regression tests need to check sync on addressbook collections.
	* Make the sync report work with non-calendar resources.
	* Fix write_sync_changes to cope with non-calendar resources.

2010-09-21  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9.2
	* [principal/collection edit] Add display of tickets and bindings.

2010-09-20  Andrew McMillan  <andrew@morphoss.com>
	* [collection-edit] Handle some errors more gracefully.

2010-09-16  Jim Hague  <jim.hague@acm.org>
	* PAM auth - get user name from a comma-less passwd comment field.

2010-09-14  Andrew McMillan  <andrew@morphoss.com>
	* Remove built docs for files no longer present in DAViCal.
	* Improve resiliency of sync-caldav script.
	* Uncomment the addressbook-query report.

2010-09-13  Andrew McMillan  <andrew@morphoss.com>
	* Warn if we're being expected to log actions, but have no function.

2010-09-12  Andrew McMillan  <debian@mcmillan.net.nz>
	* Tweaking OPTIONS output.
	* Whoops: we weren't sending an ETag on PUT for non-Calendar resources.

2010-09-11  Andrew McMillan  <andrew@morphoss.com>
	* [setup] Detect whether suhosin.server.strip is set and discourage it.
	* [index] Allow for a HEAD request on / to be served here too.
	* [principal edit] Ensure the id is > 0 for us to fetch the record.
	* [sync-collection report] Fix to work with bound collections.

2010-09-02  Andrew McMillan  <andrew@morphoss.com>
	* Ensure we get a duration, and default to 1 day if not.
	* Handle a level of indirection in Binds of binds.
	* Try harder to get the right duration for an event.

2010-08-31  Andrew McMillan  <andrew@morphoss.com>
	* Wrap calendar-specific things for PROPFIND in an IsCalendar() test.

2010-08-30  Andrew McMillan  <andrew@morphoss.com>
	* Refactored free/busy handling to a single core routine with RRule-2
	* Add support for weeks in durations.
	* Switch event expansion to use vComponent.php rather than iCalendar.
	* Add a getUserByEMail() function.

2010-08-29  Andrew McMillan  <andrew@morphoss.com>
	* Coerce the content-type on PUT.

2010-08-28  Andrew McMillan  <andrew@morphoss.com>
	* Add initial support for addressbook-query REPORT.

2010-08-24  Andrew McMillan  <andrew@morphoss.com>
	* OPTIONS should be available to someone with any of the read permissions.

2010-08-18  Andrew McMillan  <andrew@morphoss.com>
	* Print stage of processing for diagnostic reasons.
	* Update WebDAV Sync to support -03 of draft
	* Order drop-down list of principals by displayname.
	* Allow principal-property-search(-set) REPORT requests on any URL.
	* Add optional parameter to 'simple' interface to allow action logging.
	* Add all/any option to NeedPrivilege method also.

2010-08-14  Jens Zahner  <jens.zahner@servicereisen.de>
	* Fixes to LDAP group handling by Jens Zahner

2010-06-29  Andrew McMillan  <andrew@morphoss.com>
	* Results of returning applicable permissions by resourcetype.
	* Respond with supported-report error if the report is unsupported.
	* Default type to 'resource' for privileges display.
	* Remove uninitialised variable possibility.

2010-06-28  Andrew McMillan  <andrew@morphoss.com>
	* Add parameter for masking privilege output to only applicable set.
	* Check for existence of target resource before we check for READ perm.
	* Better guessing of content-type when we get a bad/missing one.
	* Rewrite the way the DAV header is produced.

2010-06-27  Andrew McMillan  <andrew@morphoss.com>
	* Don't allow PUT of non-calendar/address resources into calendars/addressbooks.
	* Add support for carddav / caldav well-known URLs. Fix short open tag.
	* Update regression tests for DAV support header change.
	* Add indication of support for addressbook.

2010-06-23  Andrew McMillan  <andrew@morphoss.com>
	* Correct return code on PUT modified.
	* Send a correct content-type on GET.
	* Rename event() to resource() since it might not be an event.
	* When we PUT a vcard set the caldav_type to VCARD.
	* Try and read dav_principal since the remote usr record no longer suffices.

2010-06-17  Andrew McMillan  <andrew@morphoss.com>
	* A fix for problems with character output in the user configuration.
	* Allow for the send_page_header() function to be overridden.
	* Also remove '/' from potential ticket charset.
	* Updated Deutsch translation.

2010-05-30  Andrew McMillan  <andrew@morphoss.com>
	* Add a weak_etag field to the calendar_attendee table.

2010-05-27  Andrew McMillan  <andrew@morphoss.com>
	* Updated results with fixed RFC5545 wrapping/escaping.

2010-05-19  Andrew McMillan  <andrew@morphoss.com>
	* Handle VCARD on PUT.
	* Add ability to start a regression suite from a DB dump.
	* Add a hack so older Mozilla calendar versions don't see auto-schedule.

2010-05-17  Andrew McMillan  <andrew@morphoss.com>
	* Add a hack to work around Lightning/Sunbird bug #463392
	* These AwlQuery classes are ow thoroughly migrated into AWL.

2010-05-14  Michael Trausch  <mike@trausch.us>
	* A module for authorization by way of the "pwauth" program

2010-05-12  Andrew McMillan  <andrew@morphoss.com>
	* A few minor database changes.
	* A few improvements to database creation.
	  Inspired by Peter Eisentraut's blog post about writing scripts
	  for PostgreSQL.
	* Add support for the addressbook-multiget REPORT.  Untested.
	* Fix if_addressbook for /
	* Add a check for gettext availability.

2010-05-07  Andrew McMillan  <andrew@morphoss.com>
	* Add a function to convert iCalendar interval syntax into SQL.
	* Move RRule expansion functions into RRule include.

2010-04-29  Andrew McMillan  <andrew@morphoss.com>
	* Add facility to append to a calendar with ?mode=append on PUT
	* RDATE/EXDATE can occur multiply, as well as contain multiple dates.

2010-04-28  Andrew McMillan  <andrew@morphoss.com>
	* When a timezone is supplied, but not used in the event, pretend it was.

2010-04-26  Andrew McMillan  <andrew@morphoss.com>
	* Improved sync to cope slightly better if remote data already present.
	* Don't complain if the event includes an unused timezone.

2010-04-20  Andrew McMillan  <andrew@morphoss.com>
	* Log the response regardless, if it is status 400 or greater.
	* Hide the output of that upgrade away in the var/log directory.
	* Attempt to run the database update on upgrade, but ignore failure.

2010-04-19  Andrew McMillan  <andrew@morphoss.com>
	* Fix lintian error.
	* Release 0.9.9

2010-04-17  Andrew McMillan  <andrew@morphoss.com>
	* Updated changelog for release 0.9.9
	* Add SQL query to test 244 to highlight the correct results.

2010-04-16  Andrew McMillan  <andrew@morphoss.com>
	* Switch to put caldav_data.* in result list after calendar_item.*
	* Switch to use RenderGMT() to render these dates.
	* Updated freebusy results from RenderGMT() fix.
	* Fix RenderGMT() to render GMT correctly.

2010-04-15  Andrew McMillan  <andrew@morphoss.com>
	* all should depend on the new location for always.php
	* Use the new olson_from_tzstring() function to extract the Olson tz.
	* Connection/Keep-alive headers removed.
	* Don't report Connection: and Keep-alive: headers.

2010-04-14  Andrew McMillan  <andrew@morphoss.com>
	* Preparing to release 0.9.9
2010-04-17  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.9
	* Fix RenderGMT() to render actual GMT time & use more widely.

2010-04-15  Andrew McMillan  <andrew@morphoss.com>
	* Use the new olson_from_tzstring() function to extract the Olson tz.

2010-04-13  Andrew McMillan  <andrew@morphoss.com>
	* Allow configuration of $c->restrict_admin_roles.
	* Try to clarify principal actions with better prompts.
	* Inactive users should not still be able to access their calendars.

2010-04-12  Andrew McMillan  <andrew@morphoss.com>
	* Provide visual feedback when users cannot edit a page.

2010-04-03  Andrew McMillan  <andrew@morphoss.com>
	* Cope with Google occasionally setting the CREATED date to 0000 year.
	* A new trigger allowing calendar_alarm.component to be edited.
	  The trigger will then cause the caldav_data record to be
	  updated with the new alarm component, and the etag is changed.
	* Force ticket_id to be cast to text, even if it looks like a number.
	* Force casting to text on setting DAV properties.
	* Add facility to GET on collection of collections.
	  Including bound collections into the resultset.

2010-04-01  Andrew McMillan  <andrew@morphoss.com>
	* Only log start of script if that specific debug is configured.
	* Support statistics logging for interactive pages too.

2010-03-31  Andrew McMillan  <andrew@morphoss.com>
	* Switch recommended source to pgp.net.nz for the repository key.

2010-03-30  Andrew McMillan  <andrew@morphoss.com>
	* Correct PUT response code for create vs update.
	* Add some statistical logging for script/database execution times.

2010-03-29  Andrew McMillan  <andrew@morphoss.com>
	* Add initial support for arbitray text objects in collections.
	* Fix logging type on MOVE and remove redundant code.
	* Remove any expired locks before testing if a lock is active.

2010-03-27  Andrew McMillan  <andrew@morphoss.com>
	* Add some support for VALUE=DATE in our DateTime wrapper.

2010-03-25  Andrew McMillan  <andrew@morphoss.com>
	* Check for unbind permission on container before DELETE.

2010-03-24  Andrew McMillan  <andrew@morphoss.com>
	* Now PROPPATCH works on bindings.
	* Teach set_dav_property() about dav_bindings.
	* Error correctly when the destination parent collection does not exist.
	* Improved approach for reading parent collection.
	* Initialise the parent_container when constructing from a row.
	* Handle duplicate attendee lines in one VEVENT.
	* Add configurable locale directory from Aurelien.

2010-03-23  Andrew McMillan  <andrew@morphoss.com>
	* Ignore sync-cache droppings from sync script testing.

2010-03-23  Rob Ostensen  <rob@boxacle.net>
	* scheduling spec section 6.4, deliver event with scheduling status to users inbox

2010-03-23  Andrew McMillan  <andrew@morphoss.com>
	* Move always.php into the webroot for easier setup.
	  Also add some 'search for the AWL includes' code into it for
	  even more easier setup.
	* Explode out Attendees and Alarms on PUT/import collection too.
	* Updated dav_test now looks for DATA= as simple filename.

2010-03-22  Andrew McMillan  <andrew@morphoss.com>
	* Enforce Pacific/Auckland timezone when running regression tests.
	* Default to internal expansion of :name SQL parameters.
	* Now parsing out VALARM components on PUT.
	* AwlQuery restructuring for wider use and easier PgQuery transition.
	* Add permissions for new tables in DB 1.2.8

2010-03-21  Rob Ostensen  <rob@boxacle.net>
	* first run at ldap group support

2010-03-19  Rob Ostensen  <rob@boxacle.net>
	* include number of items in dav collection on collection edit page

2010-03-20  Andrew McMillan  <andrew@morphoss.com>
	* Improved logging of failed queries.
	* Regression test example configuration, with comments.
	* Update DAV header.
	* Don't exclude NULL DTSTART if reporting on scheduling collection.
	* Support schedule-calendar-transp property.
	* Properly insert resourcetypes on MKCOL.
	* Handle resourcetypes regardless of XML format.
	* Provide a more useful error output on an XML parser failure.
	* Split out home & freebusy sets into their own functions.
	* Remove the freebusy_set from the collection.

2010-03-19  Andrew McMillan  <andrew@morphoss.com>
	* Fix parent-set response on collections.

2010-03-18  Rob Ostensen  <rob@boxacle.net>
	* warn if there are no active admin users

2010-03-18  Andrew McMillan  <andrew@morphoss.com>
	* Fix deactivation of users no longer in LDAP.
	* Siwtch to use an object for the updated users row.
	* Correct fix for privileges INSERT.
	* Standardise on the double-cast for getting decimal -> privilege bits.
	* Fix PROPPATCH handling of CardDAV addressbook setting.
	* Confirm lock is removed by DELETE.
	* Test failure to remove a lock due to wrong lock token.
	* Add support for PUT on individual resources within a bind.
	* Catch the privileges on resources via a bound ticket.
	* Restructure and add support for DELETE on a Bind.
	* Add a test header and log it to help find which tests cause problems.
	* Remove ancient hack to cope with broken Evolution < v1.9
	* Add $c->skip_bad_event_on_import configuration setting.
	  This will allow failure on import of collections to apply only
	  to an individual event, rather than failing the whole collection.
	* Add support for resource-id and parent-set properties.
	* Can now apply arbitrary resourcetypes to collections.
	* Add an extra resourcetype to a binding to indicate it's a binding.
	* Finish migrating all DAViCal code to AwlQuery.
	* Remove the old screen for showing a collection.

2010-03-17  Aurelien Requiem  <aurelien@menfin.net>
	* Don't include self as a potential group member.
	* Updated i18n & French translation.

2010-03-17  Andrew McMillan  <andrew@morphoss.com>
	* Show calendar properties on creation.
	* Using original displayname for binds.
	* Add support for persistent connections.
	* Add support for PROPPATCH displayname on a bind.

2010-03-16  Andrew McMillan  <andrew@morphoss.com>
	* No dependence on DAViCalUser.php is needed any longer.
	* Fix sf.net #2970729
	* Remove old DAViCalUser class
	* Remove old relationship_types maintenance program.

2010-03-15  Andrew McMillan  <andrew@morphoss.com>
	* Make calendar-query report work with bound collections.
	* GET now working with bound resources.
	* Getting bindings to work as seamlessly as possible.

2010-03-14  Andrew McMillan  <andrew@morphoss.com>
	* Correct privilege checking for modification of collection.
	* Working BIND and PROPFIND of bound resources.
	* Fix incorrect reference in PreconditionFailed() method.
	* Update installation docs.
	* Added MatchResource() method for matching by resource_id.
	* Removed references to old style $debuggroups.
	* Added build-depends on libawl-php (closes: debian bts #573687)

2010-03-13  Andrew McMillan  <andrew@morphoss.com>
	* New regression tests for things using tickets.
	* RRULE expansion now working correctly.
	* Enhance the exception handler to display a forward trace

2010-03-12  Andrew McMillan  <andrew@morphoss.com>
	* Minor adjustments to handling 'infinity' for ticket timeout.
	* Switch from AllowedTo() to HavePrivilegeTo() to support tickets.
	* Allow ticket based access as well as public calendars.

2010-03-12  Aurelien Requiem  <aurelien@menfin.net>
	* Updated french translation, with further i18n fixes to setup.

2010-03-12  Andrew McMillan  <andrew@morphoss.com>
	* Add principal_id to PublicSession.

2010-03-11  Andrew McMillan  <andrew@morphoss.com>
	* Fix uninitialised variable errors in new scheduling code.
	* Some updates to the caldav client library and an example script.
	* Nail the last (hopefully) missing reference to base_url.
	* Handle 'infinity' for the ticket timeout.
	* create-database.sh does not need to specify bash.

2010-03-10  Andrew McMillan  <andrew@morphoss.com>
	* Adding Upgrader class to AwlDatabase and tidying things somewhat.
	* Starting work on a PHP database upgrader.
	* Switch  some library code to LGPLv3 license.

2010-03-10  Rob Ostensen  <rob@boxacle.net>
	* Don't write to resources we don't have privileges to
	* Scheduling extentions working with iCal 4

2010-03-10  Andrew McMillan  <andrew@morphoss.com>
	* Reinstate PostgreSQL 8.1 support into the Debian control file.

2010-03-09  Andrew McMillan  <andrew@morphoss.com>
	* New Svenska localisation from Emil Lundberg
	* Need to depend on new version of AWL.
	* Migrated DELETE to AwlQuery wrapper.

2010-03-08  Andrew McMillan  <andrew@morphoss.com>
	* Rewrite OPTIONS response to use DAVResource.
	* AwlQuery::QDo() method for quick queries where we don't parse the resultset.
	* Add configuration setting to optionally restrict /setup.php to admin.

2010-03-07  Andrew McMillan  <andrew@morphoss.com>
	* Link to the DAViCal website, rather than SourceForge.
	* Check precondition to disallow creating collections in a schedule-inbox.
	* Move PreconditionFailed and MalformedRequest into $request methods.
	* Switch to HavePrivilegeTo() to ensure we catch tickets.
	* Correct misspelled __LINE__ references.

2010-03-06  Andrew McMillan  <andrew@morphoss.com>
	* Check permission on MOVE destination.
	* Add an empty response to the DAV::group property.
	* All schedule-deliver privileges should be included in default.
	* Use NeedPrivilege to respond to access denied.

2010-03-05  Andrew McMillan  <andrew@morphoss.com>
	* Provide some rudimentary statistics about the setup.
	* With readonly_webdav_collections set we should write nothing!
	* Check we have actually got an XML body if we got a content-type XML.
	* Correct setup of locale.

2010-03-04  Andrew McMillan  <andrew@morphoss.com>
	* Properly respond with <error> elements inside <responsedescription>
	* Validating user/collection names. Updating fullname/displayname.
	* Some long overdue updates to the installation docs.
	* Switch always.php over to AwlQuery.

2010-03-03  Andrew McMillan  <andrew@morphoss.com>
	* Migrate MKCOL script to AwlQuery wrapper.
	* Add transaction helpers to query class.

2010-03-02  Andrew McMillan  <andrew@morphoss.com>
	* Updated collection / principal edit, with better l10n.

2010-02-28  Andrew McMillan  <andrew@morphoss.com>
	* Correct allprop/include processing.
	* Use 'Revoke' rather than 'Delete' for grants, and 'Remove' for group members.
	* Add an option to restrict visible contents to a limited date range.

2010-02-27  Andrew McMillan  <andrew@morphoss.com>
	* Tweak privileges_list() to work in older Pg versions.

2010-02-26  Andrew McMillan  <andrew@morphoss.com>
	* Tweak 'we don't support this' response to scheduling requests.

2010-02-26  Masahiro Mikami  <ZBN15427@nifty.com>
	* Updated Japanese localisation.

2010-02-26  Andrew McMillan  <andrew@morphoss.com>
	* Modification of protected properties should be a 403.

2010-02-25  Andrew McMillan  <andrew@morphoss.com>
	* Strip slashes from collection names.  They're too confusing.
	* Add a config item to exclude some users from LDAP sync.

2010-02-25  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.8.3
	* Assign correct resourcetype on collection maintenance.

2010-02-24  Andrew McMillan  <andrew@morphoss.com>
	* Apparently CentOS 5 doesn't have DateTime class in it's PHP :-(
	* Allow active/inactive setting to edit principal.
	* Add a menu link to list inactive principals.
	* Fix the 'ALL' button action in grants update.
	* Correct 'ALL' privilege to 24 bits.
	* Move location of CSS submenus slightly.
	* Don't display a grant/collection stuff until a user is created.
	* Provide passthru on icons, images, css and js files.

2010-02-23  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.8.2
	* Include inactive support for RRULE expansion.

2010-02-23  Masahiro Mikami  <ZBN15427@nifty.com>
	* Updated Japanese translation.

2010-02-23  Emmanuel Seyman  <eseyman@edd.fr>
	* Updated French translation.

2010-02-22  Andrew McMillan  <andrew@morphoss.com>
	* Expanding functionality in RepeatRuleDateTime class.

2010-02-20  Andrew McMillan  <andrew@morphoss.com>
	* Setup page is now able to detect the PDO pgsql drivers.
	* Don't require a person to be logged in to see setup.php if their
	  setup is so screwed they can't even connect to a database...
	* Making things more localisable.

2010-02-19  Vincent Van Houtte  <vvh@synergylaw.be>
	* Updated Dutch translation.

2010-02-18  Andrew McMillan  <andrew@morphoss.com>
	* Use htmlspecialchars rather than htmlentities, which screws up translations.
	* Remove link to old users browse page.

2010-02-22  lebarjack  <lebarjack@agenda.univ-lille2.fr>
	* Updated required software documentation
	* Added a Gentoo installation paragraph
	* Updated needed depnedencies

2010-02-18  Andrew McMillan  <andrew@morphoss.com>
	* Add better localisation support to principal / collection edit screens.
	* Default user to davical_dba & provide more help regarding .pgpass files.
	* Remove reference to relationships, which are so passe now.
	* Admin: support deleting principals / collections with confirmation.
	* dav_principal: add a rule for deleting.
	* admin: Support setting a principal to be 'Administrator'
	* AwlDB: Attempt some better error handling.

2010-02-17  Andrew McMillan  <andrew@morphoss.com>
	* PROPPATCH: Setting properties on Principals now working.
	* always: Initialise the AWL db connection.
	* PUT Functions: add support for X-WR-CALNAME in uploaded calendars.
	* Edit Collections: Fix privileges to do this, and editing of privs.

2010-02-15  Andrew McMillan  <andrew@morphoss.com>
	* A new RepeatRule object to be used for expanding events.

2010-02-13  Andrew McMillan  <andrew@morphoss.com>
	* Include the browse javascript for row linking.
	* Make admin stuff work better in a subfolder.
	* Correct URLs for subfolder operation in principal edit.
	* Remove flush() calls from pubsub.

2010-02-11  Peter Schaefer-Hutter  <pschaefer@users.sourceforge.net>
	* Updated german translation.

2010-02-03  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.8.1
	* Update the sync changes for deletion of a calendar.
	* Always report DELETE action in sync-changes
	* Report correct href with DELETE action in sync report.

2010-02-01  Andrew McMillan  <andrew@morphoss.com>
	* Remove misguided include logic.
	* Editor widget class has been moved into AWL.

2010-01-30  Andrew McMillan  <andrew@morphoss.com>
	* Fix up the javascript around enabling fields when calendar/addressbook.
	* Move version display to setup.php and do basic dependency checks.

2010-01-27  Andrew McMillan  <andrew@morphoss.com>
	* Allow config files to be under /usr/local

2010-01-11  Andrew McMillan  <andrew@morphoss.com>
	* We don't need to reference a $action . '.js' file.
	* Create a default calendar when a User or Resource principal is created.

2010-01-10  Andrew McMillan  <andrew@morphoss.com>
	* Add a utility IsCreate() method opposite to IsUpdate().
	* Try and reduce the odds of an extra quote in the password.

2009-12-28  Andrew McMillan  <andrew@morphoss.com>
	* Basic support for the ACL method.  Working, but needs work.
	* Improve logging of parameterised queries.

2009-12-27  Andrew McMillan  <andrew@morphoss.com>
	* DAV::owner should be wrapped with DAV::property in DAV::ace response.
	* Return 406 Not Acceptable for invalid XML request.
	* Refactor principal-property-search REPORT.
	* Use calendar-user-address-set for search rather than CS extension.
	* Move DAVResource inclusion to REPORT wrapper.
	* Comment out debugging messages for peformance.
	* Fix problems with logging of failed queries.
	* Add pass-through for PDO ErrorInfo() method.
	* New regression tests and updated results.
	* Add support for principal-search-property-set REPORT per RFC3744
	* Refactor the construction of DAV::acl and report owner acl

2009-12-26  Andrew McMillan  <andrew@morphoss.com>
	* Current regression test results.
	* Move MKCOL/MKCALENDAR to NeedPrivilege()
	* Correct log facility.
	* Strip  redundant code from CalDAVRequest
	* Revert misguided namespacing change on Not Found properties.
	* Move response for supported-lock and supported-privilege-set into DAVResource.php
	* Fix logic for calculating by_email
	* New style privilege checking.
	* Switch to NeedPrivilege() method for checking privileges.
	* Switch privileges to use the new model.

2009-12-24  Andrew McMillan  <andrew@morphoss.com>
	* Release 0.9.8
	* Slightly updated TODO.
	* Move the Allow response back into OPTIONS where it really belongs.
	* Deny setting of deprecated free-busy-set.
	* iCal4 wants to see 'calendar-proxy' in the DAV header.

2009-12-24  Patrick Näf Moser  <patrick@moser-naef.ch>
	* Updated german translation.

2009-12-23  Andrew McMillan  <andrew@morphoss.com>
	* Updated results including ACL support indication.
	* Regression test for caldav:calendar-timezone retrieval.
	* Move caldav:calendar-timezone into the collection table.
	* Basic framework for starting on ACL method handler.
	* COMMIT with the same DB connection we BEGAN on!
	* Remove irrlevant functionality to CreateDefaultRelationships.
	  A stub is retained in case external organisations have written
	  some auth plugin which does use it.
	* Correct logic when processing directory of files.
	* A couple more tests for iCal4 interoperability.

2009-12-22  Andrew McMillan  <andrew@morphoss.com>
	* Depend on correct libawl-php version.

2009-12-21  Andrew McMillan  <andrew@morphoss.com>
	* Display DAViCal version & schema wanted / actual versions.
	* Kill the schedule-in/out box on upgrade so they are recreated.
	* Clarify menu wording.  Remove relationships page (yay!).
	* Add simple placeholder pages for planned setup / upgrade activities.
	* Force function parameter types for older PostgreSQL versions.
	* Remove unused functions.

2009-12-21  Rob Ostensen  <rob@boxacle.net>
	* Publish/Subscribe notification for DAViCal by Rob Ostensen.

2009-12-21  Andrew McMillan  <andrew@morphoss.com>
	* Switched everything over to the new permissions model.

2009-12-16  Andrew McMillan  <andrew@morphoss.com>
	* Better use of getent to extract user fullname. Debian bug #561288.

2009-12-13  Andrew McMillan  <andrew@morphoss.com>
	* Retitle 'New User' to 'New Principal'
	* Link to create a new collection.
	* Allow for creation of new calendars for a user_no.

2009-12-11  Andrew McMillan  <andrew@morphoss.com>
	* Correctly create a principal record for the administrator.
	* We now need to create a principal record along with a usr one.

2009-12-08  Andrew McMillan  <andrew@morphoss.com>
	* Make the username field larger.
	* Replacement for older caldav-client which goes further.
	  Now handles discovery of the principal URL and the user's calendars.
	* Test for current-user-principal support.
	* Fix handling of DELETE followed by CREATE case.
	* Restore support for current-user-principal property.

2009-12-05  Andrew McMillan  <andrew@morphoss.com>
	* Provide some better visual feedback when grants/members are added/changed.

2009-12-04  Andrew McMillan  <andrew@morphoss.com>
	* Try and clarify the terminology for bind/unbind.
	* Another attempt at supporting older DB versions.
	* Fix initialisation of empty array for older Pg versions.
	* Allow building of built-po without building everything else.
	* Rename davical.php to admin.php which is more appropriate.
	* Correct for active column removed from principal.

2009-11-27  Andrew McMillan  <debian@mcmillan.net.nz>
	* Add/edit grants on collections.
	* Now able to edit /create grants to specific users or groups.
	* Use first perl in path.
	* Add some page-end padding.
	* Ensure we still get active if we got a real boolean.
	* Add some error avoidance to SetLookup.

2009-11-24  Andrew McMillan  <andrew@morphoss.com>
	* Output with updates to upgrade-davical-database
	* Allow admin / principal to add groups to themselves

2009-11-23  Andrew McMillan  <andrew@morphoss.com>
	* Add support for the X-HTTP-Method-Override header.

2009-11-22  Andrew McMillan  <andrew@morphoss.com>
	* New screens for browsing/editing Principals & Collections.
	* CSS tweaks for new maintenance screens.
	* Fix conversion of Resource users.
	* New functions for listing memberships, members and privileges.
	* Document default privileges in example config.
	* Add default privileges setting.  Move privileges functions out of DAVResource.php
	* Granting for collection_id rather than dav_name now.
	* Grant access to dav_principal view.
	* Don't have an 'active' column on the principal.
	* Definition of a dav_principal writable view of usr+principal
	* Add ability to apply a folder of SQL rather than just a single file.

2009-11-15  Andrew McMillan  <andrew@morphoss.com>
	* Add support for supported-method-set / suported-report-set
	* Sprinkle some minimal CardDAV support in there.

2009-11-14  Andrew McMillan  <andrew@morphoss.com>
	* A basic regression test for the expand-property report.
	* Add expand-property report to the supported reports.
	* Move URL deconstruction into DeconstructURL function.
	* Implement the expand-property report.

2009-11-12  Andrew McMillan  <andrew@morphoss.com>
	* New PROPFIND implementation.
	* Correct <creationdate> format & group-member* responses.

2009-11-07  Andrew McMillan  <andrew@morphoss.com>
	* Be as lazy as possible about doing that horrible proxy query.

2009-11-05  Andrew McMillan  <andrew@morphoss.com>
	* Add some more fields onto the collections table.
	* Only respond with freebusy to a VFREEBUSY request.

2009-11-04  Andrew McMillan  <andrew@morphoss.com>
	* Add MOVE to the supported method set.
	* Allow for replacing the regression.host in headers as well.
	* Updated test results, mostly due to adding a newline to dav_test output.

2009-11-02  Andrew McMillan  <andrew@morphoss.com>
	* Regression tests for the supported-* properties.
	* New tests following the iCal4 client through one path.
	* Support for the DAV MOVE method.
	* Add a dav_name() accessor for forward compatibility.
	* List support for the DAV::sync-collection report

2009-11-02  Rob Ostensen  <caveman+davical@caveman.name>
	* First cut of support for pubsub push notifications by Rob Ostensen.

2009-11-02  Andrew McMillan  <andrew@morphoss.com>
	* Correct response for schedule-inbox.
	* Improving response on non-existent resources.
	* Add a test for existence of the referenced principal.
	* Return supported-calendar-component-set only on a calendar.

2009-10-30  Andrew McMillan  <andrew@morphoss.com>
	* Allow test case to be fully specified on the command line by filename.

2009-10-30  Matthias Mohr  <Matthias@Mohrenclan.de>
	* Translatability improvements from Matthias Mohr.

2009-10-28  Andrew McMillan  <andrew@morphoss.com>
	* Implementations of supported-report-set and supported-method-set.

2009-10-27  Andrew McMillan  <andrew@morphoss.com>
	* Translate 'Delete User' button as pointed out by Matthias Mohr
	* Revert include changes on further evaluation.
	* Also collect the current user principal record into $session.
	* Updated translation from Matthias Mohr.
	* Menu restructuring.
	* Updates to styles, including CSS menus.
	* Update the help page to point to more useful links.
	* Add DB version upgrade detection code.
	* Add a script for building always.php to include DB version also.
	* Correct translations URL.
	* Structure changes for grants on collections.
	* Be more robust about finding the AWL code location.
	* Revert to require_once().

2009-10-23  Andrew McMillan <andrew@morphoss.com>
	* Release 0.9.7.6
	* Fix return value from include so PHP doesn't exit.

2009-10-22  Andrew McMillan <andrew@morphoss.com>
	* Release 0.9.7.5
	* Fix inclusion of auth-functions.php and classBrowser.php
	* New Deutsch translation by Matthias Mohr.

2009-10-07  Andrew McMillan <andrew@morphoss.com>
	* Release 0.9.7.4
	* Fix setting of relationships in user administration.
	* Add option to make freebusy information public.
	* Correct structure of supported-privilege-set response.
	* Move server-specific properties from CalDAVPrincipal to CalDAVRequest.

2009-10-06  Andrew McMillan <andrew@morphoss.com>
	* Release 0.9.7.3

2009-09-25  Andrew McMillan <andrew@morphoss.com>
	* Fix overzealous URL encoding of mailto:username@domain.com
	* Expand permissions on both sides of the group expansion.
	* Update licensing to note external LGPL sources
	* Add a 'Delete User' option.
	* Add facility to create collection without uploading VCALENDAR
	* Add ability to set calendar as public on creation.

2009-09-14  Andrew McMillan <andrew@morphoss.com>
	* Allow admin access to be restricted to a particular domain.

2009-09-11  Andrew McMillan <andrew@morphoss.com>
	* Add support for /principals/users/username so iPhone (& possibly
	  also iCal) users have a simpler setup experience.
	* Expand privileges to work with iPhone OS 3.1
	* Release 0.9.7.2

2009-09-05  Andrew McMillan <andrew@morphoss.com>
	* Fix call-time pass by reference warnings.

2009-09-02  Andrew McMillan <andrew@morphoss.com>
	* Allow disabling of CalDAV Proxy support for performance on large sites.
	* Update website content.
	* Ensure <href> elements are urldecoded in calendar-multiget

2009-09-02  Andrew McMillan <andrew@morphoss.com>
	* Allow disabling of CalDAV Proxy support for performance on large sites.

2009-08-29  Andrew McMillan <andrew@morphoss.com>
	* Restructure PUT handling to give easier API possibilities.

2009-08-24 Andrew McMillan <andrew@morphoss.com>

	* Fix broken SQL when selecting user list for group.
	* Ensure incoming URLs are decoded before we process them.
	* Add ability to log caldav actions
	* Updated French translation.

2008-06-30 Andrew McMillan <andrew@morphoss.com>

	* Remove the out of date update-rscds-database script.
	* Rename RSCDS*(.php) to DAViCal*(.php)
	* Rename RSCDSUser (.php) to DAViCalUser (.php)

2009-06-27  Andrew McMillan <andrew@morphoss.com>
	* Make e-mail lookup be case-insensitive if possible

2009-06-22  Andrew McMillan <andrew@morphoss.com>

	* Release 0.9.7
	* Add debug logging of response/request and related headers.

2009-06-20  Andrew McMillan <andrew@morphoss.com>

	* Various fixes for compatibility with iPhone v3 OS.

2009-06-16  Andrew McMillan <andrew@morphoss.com>

	* Align freebusy.php parameter handling with proposed standard.

2009-06-15  Andrew McMillan <andrew@morphoss.com>

	* Allow free/busy permission to grant access to obfuscated calendar.

2009-06-13  Andrew McMillan <andrew@morphoss.com>

	* Stubbed implementation of calendar proxy.

2009-05-12  Andrew McMillan <andrew@morphoss.com>

	* Switch to RRULE functions for more accurate overlap calculation.

2009-04-17  Andrew McMillan  <andrew@morphoss.com>

	* Added support for publicly_readable attribute of collection
	  when accessing a /public.php/user/collection/ path.

2009-04-11  Andrew McMillan <andrew@morphoss.com>

	* Allow configuration of site wide user default values.
