3.21 (10 July 2015)===================New features------------* the datadir-url configuration option lets one choose where static data files are served (instead of the default ${base-url}/data/)* some integrity checking that was previously implemented in Python was moved to the SQL backend. This includes some constraints, and referential integrity. Some consequences are that:- disabling integrity hooks no longer disables those checks- upgrades that modify constraints will fail when running on sqlite (but upgrades aren't supported on sqlite anyway) Note: as of 3.21.0, the upgrade script only works on PostgreSQL. The migration for SQLServer will be added in a future bugfix release.* for easier instance monitoring, cubicweb can regularly dump some statistics (basically those exposed by the 'info' and 'gc' views) in json format to a fileUser-visible changes--------------------* the use of fckeditor for text form fields is disabled by default* the 'https-deny-anonymous' configuration setting no longer existsCode movement-------------The cubicweb.web.views.timeline module (providing the timeline-json, timelineand static-timeline views) has moved to a standalone cube_.._cube: https://www.cubicweb.org/project/cubicweb-timelineAPI changes-----------* req.set_cookie's "expires" argument, if not None, is expected to be a date or a datetime in UTC. It was previously interpreted as localtime with the UTC offset the server started in, which was inconsistent (we are not aware of any users of that API).* the way to run tests on a postgresql backend has changed slightly, use cubicweb.devtools.{start,stop}pgcluster in setUpModule and tearDownModule* the Connection and ClientConnection objects introduced in CubicWeb 3.19 have been unified. To connect to a repository, use:: session = repo.new_session(login, password=...) with session.new_cnx() as cnx: cnx.execute(...) In tests, the 'repo_cnx' and 'client_cnx' methods of RepoAccess are now aliases to 'cnx'.Deprecated code drops---------------------* the user_callback api has been removed; people should use plain ajax functions instead* the `Pyro` and `Zmq-pickle` remote repository access methods have been entirely removed (emerging alternatives such as rqlcontroller and cwclientlib should be used instead). Note that as a side effect, "repository-only" instances (i.e. without a http component) are no longer possible. If you have any such instances, you will need to rename the configuration file from repository.conf to all-in-one.conf and run ``cubicweb-ctl upgrade`` to update it. Likewise, remote cubicweb-ctl shell is no longer available.* the old (deprecated since 3.19) `DBAPI` api is completely removed* cubicweb.toolsutils.config_connect() has been removed