openxcap (3.2.0) unstable; urgency=medium

  * Added locking to DB for JSON API operations
  * Fixed default uri and attributes in JSON api
  * Added shutdown/stop code for the database connections
  * Refactor/optimize logging
  * Fixed multiple memory leaks
  * Fixed traceback when dburi is None
  * Added better nonce cache

-- Tijmen de Mes <tijmen@ag-projects.com>  Wed, 11 Mar 2026 08:10:08 +0100

openxcap (3.1.2) unstable; urgency=medium

  * Simplified user matching regexp for URLs
  * Potentially fixed memory leak

 -- Tijmen de Mes <tijmen@ag-projects.com>  Tue, 29 Jul 2025 14:51:35 +0200

openxcap (3.1.1) unstable; urgency=medium

  * Added credits to NLnet Foundation
  * Expose REST api routes only when dependencies are available
  * Updated docs
  * Don't put identical documents and return same etag
  * Fixed multiple etags for the same document in xcapdiff event

 -- Tijmen de Mes <tijmen@ag-projects.com>  Mon, 19 May 2025 10:34:18 +0200

openxcap (3.1.0) unstable; urgency=medium

  * Updated API docs
  * Updated documentation
  * Added JSON REST API
  * Added route definitions for JSON REST API
  * Added models to describe API responses
  * Added schemas for addressbook urls in JSON API
  * Added schemas for user urls in JSON API
  * Added utils for JSON API schema operations
  * Added method to return application by document id
  * Added authentication support for different URL schema
  * Fixed checking the xcap app authorization
  * Fixed pydantic 2 compatibility
  * Fixed name and set server name
  * Fixed setting profile for SIPThor backend, a setter does not work in older pydantic versions

 -- Tijmen de Mes <tijmen@ag-projects.com>  Thu, 24 Apr 2025 14:03:04 +0200

openxcap (3.0.0) unstable; urgency=medium

  * Ported code to Python 3
  * Modernized code
  * Moved configuration
  * Drop Twisted Web2 and use FastAPI
  * Drop bundled xml.SAX
  * Drop unused code
  * Refactored backends to use SQLModel
  * Use async database connections
  * Updated documentation
  * Changed xml applications to work with FastAPI
  * Use async where needed
  * Reworked debian packaging
  * Added typing in python code
  * Support running behind a reverse web proxy
  * Updated copyright years
  * Updated License
  * Fixed tests

 -- Tijmen de Mes <tijmen@ag-projects.com>  Tue, 18 Mar 2025 10:28:30 +0100

openxcap (2.7.1) unstable; urgency=medium

  * Fixed installing SIP Thor signal handlers
  * Switch SIP Thor publisher transport to TCP 
  * Improved logging

 -- Adrian Georgescu <ag@ag-projects.com>  Sun, 12 Apr 2020 02:35:27 +0200

openxcap (2.7.0) unstable; urgency=medium

  * Refactored logging
    - Adapted to logging changes in python-application 2.8.0
    - Simplified and compacted the web access logging code
    - Separated the web access logger from the main logger
    - Got rid of logging filters which improved performance
    - Reorganized logging related configuration options
  * Refactored openxcap script and runtime logic
    - Adapt to process changes in python-application 2.8.0
    - Use argparse to handle command line arguments
    - Replaced --pid with --config-dir and --runtime-dir
    - Added --systemd option for running as a systemd service
    - Added --debug option to enable verbose logging
    - Added --debug-memory option to eanble memory debugging
    - Added code to wait for network to become available on startup
  * Some PEP-8 compliance fixes
  * Removed no longer used code
  * Improved settings description and fixed default value
  * Added boring file
  * Fixed web logging code
  * Improved formatting for logged requests and responses
  * Simplified credential factories and removed tweaks
  * Embedded the twisted.web2 framework
  * Removed no longer needed dependency
  * Updated python-application version dependency
  * Split debian package dependencies one per line
  * Refactored debian packaging
    - Increased debian compatibility level to 11
    - Use pybuild as the debian build system
    - Updated build and package dependencies
    - Switched from init script to systemd service
    - Install README to the debian package docs
    - Removed no longer used pycompat and pyversions debian files
    - Removed no longer used openxcap.dirs and openxcap.install debian files
    - Install the configuration sample and extra data files from setup.py
  * Removed opensips configuration sample
  * Removed duplicate changelog file
  * Do not include python bytecode files in the test directory
  * Synchronized LICENSE with debian/copyright and updated copyright years
  * Added debian logrotate file
  * Removed package prefix from service file name
  * Switched from WatchedFileHandler to FileHandler for access logs
  * Made MANIFEST.in more explicit and avoid unnecessary prune commands
  * Added changelog for version 2.7.0
  * Removed commented out variable in debian rules
  * Explicitly use python2 in shebang lines
  * Removed old test for xcaplib version
  * Ordered imports alphabetically
  * Increased debian standards version to 4.5.0
  * Updated copyright years

 -- Dan Pascu <dan@ag-projects.com>  Fri, 14 Feb 2020 14:10:17 +0200

openxcap (2.6.1) unstable; urgency=medium

  * Increased debian compatibility level to 9
  * Updated debian standards version
  * Added dependency on lsb-base
  * Updated debian maintainer
  * Fixed debian package description
  * Do not add INSTALL file into the debian package

 -- Dan Pascu <dan@ag-projects.com>  Wed, 01 Feb 2017 09:41:10 +0200

openxcap (2.6.0) unstable; urgency=medium

  * Don't request a client certificate for HTTPS connections
  * Raised python-gnutls version dependency

 -- Saul Ibarra <saul@ag-projects.com>  Wed, 12 Oct 2016 12:55:42 +0200

openxcap (2.5.0) unstable; urgency=medium

  * Fixed deleting documents in bulk in SIPThor backend
  * Adapted to API changes in python-gnutls 3.0 and SIPThor
  * Improved Debian init file

 -- Saul Ibarra <saul@ag-projects.com>  Thu, 10 Mar 2016 12:18:46 +0100

openxcap (2.4.0) unstable; urgency=medium

  * Removed runtime dependency check
  * Updated copyright years

 -- Saul Ibarra <saul@ag-projects.com>  Wed, 06 Jan 2016 15:14:03 +0100

openxcap (2.3.0) unstable; urgency=medium

  * Refactor xcapdiff publishing for OpenSIPS backend
  * Fix dependency name
  * Drop dependency on twisted-web
  * Raise python-application version dependency
  * Add dependency on python-sipsimple

 -- Saul Ibarra <saul@ag-projects.com>  Mon, 14 Dec 2015 16:47:26 +0100

openxcap (2.2.0) unstable; urgency=medium

  * Add a 30 second timeout to avoid keeping TCP lingering connections
  * Removed deprecated port setting
  * Raise open file descriptor limit on start
  * Lower HTTP input timeout to 30 seconds
  * Dropped Python < 2.7 support

 -- Saul Ibarra <saul@ag-projects.com>  Wed, 03 Dec 2014 12:35:57 +0100

openxcap (2.1.0) unstable; urgency=low

  * Adapted to changes in SIP SIMPLE SDK package structure
  * Added custom application to purge all server data (org.openxcap.purge)
  * Separate pres-rules and OMA pres-rules applications
  * Fixed creating route header for xcap-diff
  * Fixed setting port number in DB URL
  * Fixed unicode issues with SIPThor backend
  * Refactor icon application to conform to standards
  * Allow OpenXCAP to be started as non-root when running in foreground
  * Send xcap-diff PUBLISH with expires set to 0

 -- Saul Ibarra <saul@ag-projects.com>  Thu, 10 Jan 2013 01:17:03 +0100

openxcap (2.0.1) unstable; urgency=low

  * Added xcap-diff notification also for resource-lists and rls-services
  * Added disabled_applications setting
  * Use the local xml.xsd instead of importing the schema remotely
  * Added missing XML declaration to xcap-directory schema
  * Adapted to changes in python-application
  * Bumped debian standards to version 3.9.2
  * Reworked Debian packaging

 -- Saul Ibarra <saul@ag-projects.com>  Tue, 07 Jun 2011 08:32:10 +0200

openxcap (2.0.0) unstable; urgency=low

  * Added OMA XDM support for Buddy Lists Management
  * Unquote external references in resource-lists and pres-rules
  * Fixed resource lists and RLS services schemas
  * Added test case for conditional PUT with If-Match
  * Use allow_external_references setting also for entry-ref elements
  * Fixed PUT with If-Match header
  * Fixed UTF-8 encoding/decoding in SIPThor backend
  * Don't allow relative URIs to link to another users' resource list entry
  * Check external references for pres-rules and resource-lists
  * Use a single appusage for pres-rules
  * Don't allow external-ref paths which don't point to an 'entry'
  * Check entry-ref entries in resource-lists
  * Added test case for testing If-None-Match * in PUT requests
  * Don't allow PUT for xcap-caps
  * Added XPath tests to the test suite
  * Raise DocumentSelectorError if selector doesn't start with slash
  * Use appusages 'id' attribute as the AUID
  * Fixed support for XCAP default document namespace
  * Generate NodeParsingError when specified namespace is not found
  * Merged xcap-directory application definition with other applications
  * Fixed directory application AUID
  * Updated sample OpenSIPS mysql dburi

 -- Adrian Georgescu <ag@ag-projects.com>  Tue, 28 Sep 2010 11:29:23 +0200

openxcap (1.2.1) unstable; urgency=low

  * Don't generate exception if unknown namespace is specified
  * Fix crash with huge logs produced by icon application
  * Modified log_access not to assume response.stream exists
  * Support full and partial URLs
  * Fix packaging for Debian and Ubuntu distributions

 -- Saul Ibarra <saul@ag-projects.com>  Wed, 23 Jun 2010 11:18:49 +0200

openxcap (1.2.0) unstable; urgency=low

  [ Adrian Georgescu ]
  * Removed python-xml dependency
  * Use Account_test for running the test suite
  * Changed MySQL scripts doc field to mediumblob
  * Removed unused auids, keep only the standard ones
  * Use OMA standard names for icon directory applications
  * Dropped SQLite support which wasn't finished. 
  * Make MySQLdb reconnect active only for version 1.2.2
  * Updated readme
  * Detail allowed MIME types in error response
  * Icon application GET returns the image itself, not an XML
  * Fixed size constraint and don't delete previous icons on PUT
  * Made some error messages more clear
  * Deprecated port parameter, now port should be specified in root URI
  * Added icon application support
  * Added 'public GET applications'. Public GET applications are not asked for 
    auth for GET requests, just for PUT
  * Fixed xcap-directory listing in SIPThor backend
  * Support for listing more than one document of the same type in xcap-directory
  * Added xcap-directory application (OMA TS XDM Core)
  * If no trusted_peers is specified default to none instead of any
  * Fixed allow subnets in trusted_peers
  * Reworked xcap-caps using etree
  * Use common-policy schema for validating dialog-rules documents
  * Fixed refresh of OpenSIPS watchers when using dialog-rules
  * Made presence rules use presence-rules.xsd schema
  * Added support for dialog-rules

  [ Saul Ibarra ]
  * Fixed logging with latest python-application
  * Remove python-xml dependency by taking sax package from PyXML project
  * Changed default authentication type to digest
  * Renamed watchers application to org.openxcap.watchers
  * Fixed test suite for resource lists and rls services
  * Bumped debian standards to version 3.8.4
  * Restructured all appusages
  * Updated maintainer and uploaders
  * Refactored logging system and added more information
  * Updated documentation and install files
  * Log fatal error and exit when must-have settings are missing
  * Clarified configuration sample comments
  * Renamed dialog-rules to org.openxcap.dialog-rules

 -- Saul Ibarra <saul@ag-projects.com>  Mon, 26 Apr 2010 08:46:56 +0200

openxcap (1.1.3) unstable; urgency=low

  * Fixed digest authentication bug related to the opaque attribute
  * Added more python packages to the runtime dependency checking

 -- Adrian Georgescu <ag@ag-projects.com>  Thu, 12 Nov 2009 15:01:35 +0100

openxcap (1.1.2) unstable; urgency=low

  * Fixed debian/rules and added dependencies an newer cdbs and debhelper
  * Bumped Standerds-Version to 3.8.3

 -- Lucian Stanescu <luci@ag-projects.com>  Thu, 03 Sep 2009 11:04:01 +0300

openxcap (1.1.1) unstable; urgency=low

  * Merged the ThorNode section of the configuration file into ThorNetwork
  * Fixed config.ini.sample to fit in 80 chars width
  * Better TLS defaults in the sample configuration file
  * Better logging of exceptions in the script
  * Adapted code to the latest API changes in python-application 1.1.5
  * Fixed handling of XMLRPC errors in publish_xcapdiff of OpenSIPS interface
  * Fixed lintian warning about missing misc:Depends
  * Fixed default value for ServerConfig.applications setting
  * Removed unused config file
  * Updated include and prune lists in MANIFEST.in
  * Fixed backend config setting default type
  * Removed unused imports
  * Simplified and updated debian build dependencies
  * Updated requirements in INSTALL
  * Updated debian dependencies
  * Simplified dependency checking by using the application.dependency module
  * Changed how the system config directory is set to use latest API
  * Updated Python dependency to 2.5 in INSTALL
  * Moved todo items to wiki tickets
  * Update copyright text
  * Bumped standards version and version for python-application
  * Fixed reading OpenSIPS xmplrpc_url config option
  * Added version check for python-application on startup
  * Removed _datatypes attribute from ConfigSection subsclasses
  * Reverted classmethods of ConfigSection class to functions
  * Removed ConfigFile.read_settings() overriden method
  * Made "algorithm"/"stale" unquoting patch Python 2.4 compatible
  * Make "algorithm" and "stale" header parameters not quoted
  * Restart software on debian upgrade

 -- Adrian Georgescu <ag@ag-projects.com>  Tue, 04 Aug 2009 13:25:19 +0200

openxcap (1.1.0) unstable; urgency=low

  * Renamed OpenSER to OpenSIPS (requires changes to openxcap configuration)
  * Require python-lxml of version at least 2.0.7-1
  * Require python-gnutls of version at least 1.1.8
  * Require python-application of version at least 1.1.0
  * Test suite: requires xcaplib of version at least 1.0.9
  * Reply with 404 if no realm is provided and no default realm is defined
  * Added Content-Type: text/plain to ResourceNotFound error
  * xcap.errors: rename ErrorResponse in XMLErrorResponse
  * Fixed openxcap.org/ticket/85: Singleton was called with different arguments
  * Log all the information available for 500 errors by default
  * Updated documentation and installation documentation
  * Prefer epollreactor or kqreactor to pollreactor if available
  * Test suite: add --start-server option (requires eventlet)
  * Remove hardcoded setting for xmlrpc_url; Don't start the server if it was
    not specified for opensips backend

 -- Adrian Georgescu <ag@ag-projects.com>  Wed, 08 Apr 2009 00:02:54 +0200

openxcap (1.0.7) unstable; urgency=low

  * Use pysupport instead of pycentral for debian packaging
  * Log errors to syslog unless log_error_to_file=yes in [Logging] section
  * Fixed parsing node selectors of type /*[1] and added tests for this case
  * Fixed "unbound prefix" bug and added a test case. A new function is added
    that checks well-formedness of the elements.
  * Only import gnutls when TLS is used
  * Fixed "watchers" application to generate and insert ETag header in the
    response
  * Added test for "watchers" application (test_watchers.py)
  * Removed ./debian/openxcap.postinst
  * Updated sipthor interface for SIPThor 1.0.1
  * Replace openser-mi-proxy with opensips-mi-proxy in documentation
  * Improved INSTALL and synced it with the wiki
  * Updated README and TODO
  * Corrected name of pres-rules auid
  * Test system: updated to use python-xcaplib 1.0.8
  * Test system: added -r, --repeat option
  * Test system: added support for "--client eventlet"
  * Test system: added support for "--start-server config_file"
  * Test system: fixed to use original options for each test
  * Test system: added support for starting and using in-process server
    (requires eventlet)
  * Test system: added undocumented '--client xcapclient' option. It makes
    test system to use xcapclient tool instead of xcaplib package. This is
    only useful for testing xcapclient.
  * More detailed report for test_auth.py
  * Fixed typo in the http error response
  * Made xcap.uri module accept parameter of uri to parse when run as script
    (for simple troubleshooting)

 -- Adrian Georgescu <ag@ag-projects.com>  Fri, 30 Jan 2009 10:59:44 +0100

openxcap (1.0.6) unstable; urgency=low

  * fixed: namespace bindings in the request weren't parsed correctly
  * fixed: pid file was removed on package upgrade

 -- Denis Bilenko <denis@ag-projects.com>  Thu, 16 Oct 2008 17:01:24 +0200

openxcap (1.0.5) unstable; urgency=low

  * fixed: openxcap with 'openser' backend couldn't be started
    if enable_publish_xcapdiff=yes
  * fixed a couple of potential Internal Server Errors
  * added python-mysqldb to dependencies
  * added <entry> node to <uniqueness-failure> error as required by RFC
  * nicer error messages in several cases

 -- Denis Bilenko <denis@ag-projects.com>  Wed, 15 Oct 2008 10:41:26 +0200

openxcap (1.0.4) unstable; urgency=low

  * Disabled authentication for requests in /global/ context, because it didn't work well.
    It is safe, because the only use for /global/ now is retrieving xcap-caps.

 -- Denis Bilenko <denis@ag-projects.com>  Tue, 07 Oct 2008 19:34:47 +0200

openxcap (1.0.3) unstable; urgency=low

  * Fixed: requesting XCAP root resulted in 500 (now 404)
  * Fixed: multiple matches resulted in 500 (now 404)
  * Improved error responses

 -- Denis Bilenko <denis@ag-projects.com>  Mon, 06 Oct 2008 06:33:45 +0200

openxcap (1.0.2) unstable; urgency=high

  * Fixed and improved logging. it now logs much more then before and can be customized
  * Fixed bug: xcap-caps application was not available under /global/ tree
  * Added experimental support for sqlite database
  * Fixed multiple xcap roots/aliases. having more then one root= entry in the config is legal now
  * Fixed bug that made OpenXCAP dependent on specific MySQLdb versions (those with 'reconnect' parameter)
  * Fixed pyxml issue: previously, if pyxml was not installed, OpenXCAP would fail
    with obscure exception on element operation. Now it refuses to start.
  * Fixed URI parsing
  * Better error reporting in many cases
  * Many more bugs fixes

 -- Denis Bilenko <denis@ag-projects.com>  Fri, 03 Oct 2008 05:42:45 +0200

openxcap (1.0.1) unstable; urgency=low

  * Added proper URI parsing, so att_value may contain slashes now
  * Fixed schemas not to fetch files from the internet on initialization

 -- Denis Bilenko <denis@ag-projects.com>  Fri, 12 Sep 2008 10:15:54 +0200

openxcap (1.0.0) unstable; urgency=high

  * Added RLS services (RFC 4662 and RFC 4826)
  * Added support for xcap-diff based on draft-ietf-simple-xcap-diff-09
  * Added partial get/put/delete of elements in the XCAP documents
  * Added test suite for rls-services, resource-lists and partial updates
  * Many bug fixes from field experiences
  * Development status from beta to production
  * Switched to Python 2.5
  * Improved documentation and testing suite
  * Changed license to GPL
  * Fixed MySQL operational error (2006)

 -- Adrian Georgescu <ag@ag-projects.com>  Mon, 08 Sep 2008 15:32:07 +0200

openxcap (0.9.9.5) unstable; urgency=low

  * Fixed a wrongly named positional argument

 -- Ruud Klaver <ruud@ag-projects.com>  Thu, 12 Jun 2008 10:58:11 +0200

openxcap (0.9.9.4) unstable; urgency=low

  * Fixed one keyword argument too many

 -- Ruud Klaver <ruud@ag-projects.com>  Tue, 03 Jun 2008 10:38:27 +0200

openxcap (0.9.9.3) unstable; urgency=low

  * Changed some lxml function argument from positional to keyword

 -- Ruud Klaver <ruud@ag-projects.com>  Tue, 03 Jun 2008 10:32:06 +0200

openxcap (0.9.9.2) unstable; urgency=low

  * Changed debian package to not automatically start the server on install
  * Fix for dburi being updated in SIPThor backend
  * Fixed the SIPThor module to not make a new connection on every transaction

 -- Ruud Klaver <ruud@ag-projects.com>  Wed, 14 May 2008 11:18:00 +0200

openxcap (0.9.9.1) unstable; urgency=low

  * Removed memcache access from the SIPThor backend to reflect change in
    architecture

  * Have SIPThor backend gracefully disconnect by having it install its own
    signal handlers. Backends now include a installSignalHandlers boolean
    variable.

 -- Ruud Klaver <ruud@ag-projects.com>  Mon, 31 Mar 2008 13:23:19 +0200

openxcap (0.9.9) unstable; urgency=low

  * Fixed node selector decoding
  * Save presence rules documents under the same file name ("index.xml")
  * Moved trusted_peers to [Authentication] config section
  * Default xcap_table to "xcap" in config.ini.sample
  * Improved URI logging
  * DELETE of a full document doesn't produce an Etag in the 200 response
  * Added SIP Thor backend

 -- Mircea Amarascu <mircea@ag-projects.com>  Mon, 21 Jan 2008 23:26:29 +0200

openxcap (0.9.8) unstable; urgency=low

  * Support subdirectories by using doc_uri column in xcap table.
  * Updated MySQL xcap table structure

 -- Adrian Georgescu <adigeo@ag-projects.com>  Fri, 09 Nov 2007 18:48:51 +0100

openxcap (0.9.7) unstable; urgency=low

  * Prevented Twisted from printing SQL login info in the log
  * Added some info to INSTALL about tested versions

 -- Ruud Klaver <ruud@ag-projects.com>  Fri, 19 Oct 2007 14:33:08 +0200

openxcap (0.9.6) unstable; urgency=low

  * Fixed trusted peer authentication bug against the latest Twisted svn trunk.

 -- Mircea Amarascu <mircea@ag-projects.com>  Fri, 19 Oct 2007 08:29:13 +0300

openxcap (0.9.5) unstable; urgency=low

  * Changed watcher application to reflect new database column names of OpenSER revision 2923
  * Changed default SQL table name from "xcap" to "xcap_xml"

 -- Adrian Georgescu <ag@ag-projects.com>  Wed, 17 Oct 2007 16:40:05 +0200

openxcap (0.9.4) unstable; urgency=low

  * Added "watchers" application to query OpenSER presence watchers.
  * Include debian directory in the source archive.

 -- Mircea Amarascu <mircea@ag-projects.com>  Wed, 10 Oct 2007 17:19:12 +0300

openxcap (0.9.3) unstable; urgency=low

  * Adjusted OpenXCAP to use python-application >= 1.0.9
  * Set TLS mode based on http/https scheme of the root URI.
  * document_validation defaults to Yes in config.ini.sample

 -- Mircea Amarascu <mircea@ag-projects.com>  Wed, 19 Sep 2007 15:20:16 +0300

openxcap (0.9.2) unstable; urgency=low

  * Changed the name and structure of xcap_xml table.
  * Added the 'type' param to refreshWatchers OpenSER command.
  * Added configuration option to disable XML schema validation.
  * Updated XML scheme to allow EyeBeam resource lists to pass validation.
  * Update debian dependencies.

 -- Mircea Amarascu <mircea@ag-projects.com>  Wed, 19 Sep 2007 10:03:19 +0300

openxcap (0.9.1) unstable; urgency=low

  * Fixed the debian control file.
  * Fixed some lintian warnings.
  * Added MANIFEST.in file.
  * Removed no longer needed remove-version-control rule.
  * Fixed install rule name.
  * Do not copy config.ini.sample as it is into /etc/openxcap/
  * Added tls directory and .placeholder to prevent it from being purged.
  * Use relative paths for tls certificates in config.ini

 -- Dan Pascu <dan@ag-projects.com>  Mon, 03 Sep 2007 12:42:47 +0300

openxcap (0.9.0) unstable; urgency=low

  * Initial release.

 -- Mircea Amarascu <mircea@ag-projects.com>  Wed, 29 Aug 2007 14:03:17 +0300
