doc/4.0.rst
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Thu, 20 Jun 2013 16:00:07 +0200
changeset 9043 97c3bb9a7c99
parent 9042 6cc13a0a9145
child 9113 af6efc15fc90
permissions -rw-r--r--
[testlib] move repo and related attribute back on Instance instead of Class The repo and cnx was hold by the TestCase class to work as a cache and avoid recreation of the repo from scratch of each test. However since bad26a22fe29 the caching is done by the DatabaseHandler object and it is not necessary have a second layer of cache on the TestCase itself. We move the repo and cnx attribute back on the TestCase instance itself and make several class methods instance methods again. This will helps to change dbapi access in test from dbapi to repoapi. related to #2503918

What's new in CubicWeb 4.0?
============================

Behavior Changes
----------------

* The anonymous property of Session and Connection are now computed from the
  related user login. If it match the ``anonymous-user`` in the config the
  connection is anonymous. Beware that the ``anonymous-user`` config is web
  specific. Therefore, no session may be anonymous in repository only setup.

API changes
-----------

* ``RepositorySessionManager.postlogin`` is now called with two arguments,
  request and session. And this now happens before the session is linked to the
  request.

* ``SessionManager`` and ``AuthenticationManager`` now take a repo object at
  initialization time instead of a vreg.

* The ``async`` argument of ``_cw.call_service`` have been dropped. All call are
  now  synchronous. The zmq notification bus looks like a good replacement for
  most async usecase.

* ``repo.stats()`` is now deprecated. The same information are available through
  a service (``_cw.call_service('repo_stats')``)

* ``repo.gc_stats()`` is now deprecated. The same information are available through
  a service (``_cw.call_service('repo_gc_stats')``)

* ``request.set_session`` no longer takes an optional ``user`` argument.

* CubicwebTC does not have repo and cnx as class attributes anymore. They are
  standard instance attributes. ``set_cnx`` and ``_init_repo`` class methods
  become instance methods.


Deprecated Code Drops
----------------------

* The ldapuser source has been dropped. ldapfeed is the only official source
  remaining for ldap.

* session.hijack_user mechanism has been dropped.