doc/changes/3.27.rst
author Laurent Peuch <cortex@worlddomination.be>
Wed, 22 May 2019 01:16:55 +0200
changeset 12730 6c48a49cd3c2
parent 12716 f5300acd8f4f
child 12736 5add82b08a6d
permissions -rw-r--r--
[pyramid/ctl] pyramid command will always run in foreground from now on Daemonization used to make sens in the past, but today "pyramid" command is only used for dev and should never be used for deployement (you should use a wsgi server for that instead) so daemonization doesn't fit any use case anymore. Closes #17232923

3.27 (not yet released)
=======================

New features
------------

* Tests can now be run concurrently across multiple processes. You can use
  `pytest-xdist`_ for that. For tests using `PostgresApptestConfiguration` you
  should be aware that `startpgcluster()` can't run concurrently. Workaround is
  to call pytest with ``--dist=loadfile`` to use a single test process per test
  module or use an existing database cluster and set ``db-host`` and
  ``db-port`` of ``devtools.DEFAULT_PSQL_SOURCES['system']`` accordingly.

.. _pytest-xdist: https://github.com/pytest-dev/pytest-xdist

* on `cubicweb-ctl create` and `cubicweb-ctl pyramid`, if it doesn't already
  exist in the instance directory, the `pyramid.ini` file will be generated
  with the needed secrets.

* add a --pdb flag to all cubicweb-ctl command to launch (i)pdb if an exception
  occurs during a command execution.

Backwards incompatible changes
------------------------------

* Standardization on the way to launch a cubicweb instance, from now on the
  only way to do that will be the used the ``pyramid`` command. Therefore:

   * ``cubicweb-ctl`` commands "start", "stop", "restart", "reload" and "status"
     have been removed because they relied on the Twisted web server backend that
     is no longer maintained nor working with Python 3.

   * Twisted web server support has been removed.

   * ``cubicweb-ctl wsgi`` has also been removed.

* Support for legacy cubes (in the 'cubes' python namespace) has been dropped.
  Use of environment variables CW_CUBES_PATH and CUBES_DIR is removed.

* Python 2 support has been dropped.

* Exceptions in notification hooks aren't catched-all anymore during tests so
  one can expect tests that seem to pass (but were actually silently failing)
  to fail now.

* All "cubicweb-ctl" command only accept one instance argument from now one
  (instead of 0 to n)

* 'pyramid' command will always run in the foreground now, by consequence the
  option ``--no-daemon`` has been removed.

* DBG_MS flag has been removed since it is not used anymore

Deprecated code drops
---------------------

Most code deprecated until version 3.25 has been dropped.