doc/changes/3.21.rst
author Philippe Pepiot <ph@itsalwaysdns.eu>
Mon, 30 Mar 2020 15:45:40 +0200
changeset 12962 fa0cd558d829
parent 12728 6bcd8899f71b
permissions -rw-r--r--
[server] implement dynamic database pooler Opening too much database connection has a cost at startup and also PostgreSQL as a maximum number of connection (100 by default). This get worse when starting multiple wsgi processes, since each process has its own database pool. Instead of opening `connections-pool-size` connections to the database at startup, just open one and open more only when needed.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10930
e0f5bfafec90 [doc] Add 3.21 release date
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10533
diff changeset
     1
3.21 (10 July 2015)
e0f5bfafec90 [doc] Add 3.21 release date
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10533
diff changeset
     2
===================
10215
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
     3
10325
d2e1e67af4e1 [doc] mention datadir-url configuration option in release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10305
diff changeset
     4
New features
d2e1e67af4e1 [doc] mention datadir-url configuration option in release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10305
diff changeset
     5
------------
d2e1e67af4e1 [doc] mention datadir-url configuration option in release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10305
diff changeset
     6
d2e1e67af4e1 [doc] mention datadir-url configuration option in release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10305
diff changeset
     7
* the datadir-url configuration option lets one choose where static data files
d2e1e67af4e1 [doc] mention datadir-url configuration option in release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10305
diff changeset
     8
  are served (instead of the default ${base-url}/data/)
d2e1e67af4e1 [doc] mention datadir-url configuration option in release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10305
diff changeset
     9
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    10
* some integrity checking that was previously implemented in Python was
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    11
  moved to the SQL backend.  This includes some constraints, and
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    12
  referential integrity.  Some consequences are that:
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    13
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    14
  - disabling integrity hooks no longer disables those checks
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    15
  - upgrades that modify constraints will fail when running on sqlite
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    16
    (but upgrades aren't supported on sqlite anyway)
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    17
10533
78a0ac371736 [doc/3.21] mention the postgresql-only state of the upgrade script
Julien Cristau <julien.cristau@logilab.fr>
parents: 10504
diff changeset
    18
  Note: as of 3.21.0, the upgrade script only works on PostgreSQL.  The
78a0ac371736 [doc/3.21] mention the postgresql-only state of the upgrade script
Julien Cristau <julien.cristau@logilab.fr>
parents: 10504
diff changeset
    19
  migration for SQLServer will be added in a future bugfix release.
78a0ac371736 [doc/3.21] mention the postgresql-only state of the upgrade script
Julien Cristau <julien.cristau@logilab.fr>
parents: 10504
diff changeset
    20
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    21
* for easier instance monitoring, cubicweb can regularly dump some statistics
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    22
  (basically those exposed by the 'info' and 'gc' views) in json format to a file
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    23
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    24
User-visible changes
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    25
--------------------
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    26
12728
6bcd8899f71b [doc] add instruction to re-enable ckeditor
Laurent Peuch <cortex@worlddomination.be>
parents: 10930
diff changeset
    27
* the use of fckeditor for text form fields is disabled by default, to re-enable it simply install the `cubicweb-ckeditor` cube (then `add_cude('ckeditor')` in a migration or in the shell)
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    28
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    29
* the 'https-deny-anonymous' configuration setting no longer exists
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    30
10232
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    31
Code movement
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    32
-------------
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    33
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    34
The cubicweb.web.views.timeline module (providing the timeline-json, timeline
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    35
and static-timeline views) has moved to a standalone cube_
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    36
cda1bdc3652e [web] split timeline in an individual cube
Julien Cristau <julien.cristau@logilab.fr>
parents: 10215
diff changeset
    37
.. _cube: https://www.cubicweb.org/project/cubicweb-timeline
10215
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    38
10305
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    39
API changes
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    40
-----------
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    41
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    42
* req.set_cookie's "expires" argument, if not None, is expected to be a
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    43
  date or a datetime in UTC.  It was previously interpreted as localtime
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    44
  with the UTC offset the server started in, which was inconsistent (we
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    45
  are not aware of any users of that API).
937deb71a681 [web] kill GMTOFFSET (closes #2154655)
Julien Cristau <julien.cristau@logilab.fr>
parents: 10237
diff changeset
    46
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    47
* the way to run tests on a postgresql backend has changed slightly, use
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    48
  cubicweb.devtools.{start,stop}pgcluster in setUpModule and tearDownModule
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    49
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    50
* the Connection and ClientConnection objects introduced in CubicWeb 3.19 have
10496
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10469
diff changeset
    51
  been unified.  To connect to a repository, use::
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    52
10496
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10469
diff changeset
    53
    session = repo.new_session(login, password=...)
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10469
diff changeset
    54
    with session.new_cnx() as cnx:
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10469
diff changeset
    55
        cnx.execute(...)
10504
3755cd64fff8 [doc] small rst fixes and cleanups in changelog files
David Douard <david.douard@logilab.fr>
parents: 10502
diff changeset
    56
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    57
  In tests, the 'repo_cnx' and 'client_cnx' methods of RepoAccess are now
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    58
  aliases to 'cnx'.
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    59
10215
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    60
Deprecated code drops
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    61
---------------------
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    62
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    63
* the user_callback api has been removed; people should use plain
96085e379066 [views,js] remove user_callback feature
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    64
  ajax functions instead
10235
684215aca046 Remove remote repository-access-through-pyro support
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10232
diff changeset
    65
10236
ef3059a692cb Remove the remote repository-access-through-zmq support
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10235
diff changeset
    66
* the `Pyro` and `Zmq-pickle` remote repository access methods have
ef3059a692cb Remove the remote repository-access-through-zmq support
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10235
diff changeset
    67
  been entirely removed (emerging alternatives such as rqlcontroller
10237
1e030b1a5622 Remove leftover bits from start-repository command, and document its demise
Julien Cristau <julien.cristau@logilab.fr>
parents: 10236
diff changeset
    68
  and cwclientlib should be used instead).  Note that as a side effect,
1e030b1a5622 Remove leftover bits from start-repository command, and document its demise
Julien Cristau <julien.cristau@logilab.fr>
parents: 10236
diff changeset
    69
  "repository-only" instances (i.e. without a http component) are no
1e030b1a5622 Remove leftover bits from start-repository command, and document its demise
Julien Cristau <julien.cristau@logilab.fr>
parents: 10236
diff changeset
    70
  longer possible.  If you have any such instances, you will need to
1e030b1a5622 Remove leftover bits from start-repository command, and document its demise
Julien Cristau <julien.cristau@logilab.fr>
parents: 10236
diff changeset
    71
  rename the configuration file from repository.conf to all-in-one.conf
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    72
  and run ``cubicweb-ctl upgrade`` to update it.  Likewise, remote cubicweb-ctl
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    73
  shell is no longer available.
10237
1e030b1a5622 Remove leftover bits from start-repository command, and document its demise
Julien Cristau <julien.cristau@logilab.fr>
parents: 10236
diff changeset
    74
10331
6f25c7e4f19b [dbapi] remove the dbapi module and its immediate remaining users
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10325
diff changeset
    75
* the old (deprecated since 3.19) `DBAPI` api is completely removed
10469
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    76
bd78f563e812 [doc] update 3.21 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 10331
diff changeset
    77
* cubicweb.toolsutils.config_connect() has been removed