doc/changes/3.25.rst
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Wed, 12 Apr 2017 16:12:51 +0200
branch3.25
changeset 12155 4ba8fd2cd41a
parent 12128 1a50be88dd0c
child 12166 a33c2b8d183b
permissions -rw-r--r--
[sources] Turn classmethod into standard method No need for a class method and easier to get proper logger including source's name.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11951
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     1
3.25 (UNRELEASED)
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     2
=================
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     3
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     4
New features
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     5
------------
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     6
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     7
* A new option `connections-pooler-enabled` (default yes) has been added. This
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     8
  allow to switch off internal connection pooling for use with others poolers
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
     9
  such as pgbouncer_.
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    10
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    11
.. _pgbouncer: https://pgbouncer.github.io/
330f240435b0 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr>
parents:
diff changeset
    12
12081
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    13
* In `deleteconf` view (confirmation before deletion), the list of first-level
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    14
  composite objects that would be deleted along with the primary entity is
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    15
  displayed (01eeea97e549).
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    16
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    17
* The ``cubicweb.pyramid`` module now provides a Paste application factory
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    18
  registered as an entry point named ``pyramid_main`` and that can be used to
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    19
  run a Pyramid WSGI application bound to a CubicWeb repository.
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    20
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    21
* A new configuration type ``pyramid`` has been added to create CubicWeb's
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    22
  instances (through ``cubicweb-ctl create -c pyramid <basecube> <appid>``).
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    23
  This configuration bootstraps a CubicWeb instance that is essentially a
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    24
  repository plus the minimal setup to run a Pyramid WSGI application on top
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    25
  of it. Noticeably, it does not ship all *web* configuration but rather
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    26
  relies on configuration declared in a ``development.ini`` file for any
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    27
  Pyramid application.
11963
64ecd4d96ac7 [workflow] Utilities for declarative definition of workflows
Christophe de Vienne <christophe@unlish.com>
parents: 11951
diff changeset
    28
64ecd4d96ac7 [workflow] Utilities for declarative definition of workflows
Christophe de Vienne <christophe@unlish.com>
parents: 11951
diff changeset
    29
* A new way to declare workflows as simple data structure (dict/list) has been
64ecd4d96ac7 [workflow] Utilities for declarative definition of workflows
Christophe de Vienne <christophe@unlish.com>
parents: 11951
diff changeset
    30
  introduced. Respective utility functions live in ``cubicweb.wfutils``
64ecd4d96ac7 [workflow] Utilities for declarative definition of workflows
Christophe de Vienne <christophe@unlish.com>
parents: 11951
diff changeset
    31
  module. This handles both the creation and migration of workflows.
12081
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    32
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    33
* A new IDublinCore adapter has been introduced to control the generation of
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    34
  Dublin Core metadata that are used in several base views.
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    35
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    36
* It is now possible to *derive* rtags using their ``derive`` method
12083
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    37
  (0849a5eb57b8). Derived rtags keep a reference to the original rtag and only
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    38
  hold custom rules, allowing changes which are done in the original rtag after
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    39
  derivation to be still considered.
12081
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    40
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    41
* A new ``cubicweb-ctl scheduler <appid>`` command has been introduced to run
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    42
  background and periodic tasks of the repository (previously called *looping
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    43
  tasks*). In a production environment, a process with this command should be
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    44
  run alongside with a WSGI server process (possibly running multiple
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    45
  processes itself).
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    46
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    47
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    48
Backwards incompatible changes
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    49
------------------------------
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    50
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    51
* As a consequence of the replacement of the old looping tasks manager by a
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    52
  scheduler, all cubicweb-ctl's "start" commands (i.e. ``start``, ``pyramid``,
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    53
  ``wsgi``) do not start repository *looping tasks manager* anymore, nor do
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    54
  they start the scheduler. Site administrators are thus expected to start
12112
0a54f49314f6 [server] Introduce an `has_scheduler` method on Repository
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12083
diff changeset
    55
  this scheduler as a separate process. Also, registering looping tasks (i.e.
0a54f49314f6 [server] Introduce an `has_scheduler` method on Repository
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12083
diff changeset
    56
  calling ``repo.looping_tasks()``) is a no-op when the repository has no
0a54f49314f6 [server] Introduce an `has_scheduler` method on Repository
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12083
diff changeset
    57
  scheduler set; a warning is issued in such cases. Application developers may
0a54f49314f6 [server] Introduce an `has_scheduler` method on Repository
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12083
diff changeset
    58
  rely on repository's ``has_scheduler`` method to determine if they should
0a54f49314f6 [server] Introduce an `has_scheduler` method on Repository
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12083
diff changeset
    59
  register a looping task or not.
12081
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    60
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    61
* In ``cubicweb.pyramid``, function ``make_cubicweb_application`` got renamed
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    62
  into ``config_from_cwconfig`` (950ce7d9f642).
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    63
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    64
* Several cleanups in repository's session management have been conducted
12083
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    65
  resulting from changes introduced in 3.19 release. Among others, the
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    66
  ``cubicweb.server.session.Session`` class has been dropped, and request
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    67
  ``session`` attribute is now tight to a web session whose implementation
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    68
  depends on the front-end used (twisted or pyramid). Hence this attribute
af5e5137d6a8 [doc] Add some details about rtag derivation and server api cleanup in release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12082
diff changeset
    69
  should not be accessed from "repository side" code (e.g. hooks or operations)
12128
1a50be88dd0c [doc] More release note about session data handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12124
diff changeset
    70
  and has lost some of his former attributes like ``repo`` which used to
1a50be88dd0c [doc] More release note about session data handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12124
diff changeset
    71
  reference the repository instance. Due to this, you don't have anymore access
1a50be88dd0c [doc] More release note about session data handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12124
diff changeset
    72
  to session's data through the connection, which leds to deprecation of the
1a50be88dd0c [doc] More release note about session data handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12124
diff changeset
    73
  ``data`` attribute and removal of ``get_shared_data`` and ``set_shared_data``
1a50be88dd0c [doc] More release note about session data handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12124
diff changeset
    74
  methods which are deprecated since 3.19.
12081
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    75
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    76
* Support for 'https-url' configuration option has been removed
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    77
  (4516c3956d46).
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    78
34dad81d955f [doc] Fill release notes for 3.25
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11963
diff changeset
    79
* The `next_tabindex` method of request class has been removed (011730a4af73).
12114
40446d4e1ee2 [hooks] Drop "logstats" hook
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12112
diff changeset
    80
40446d4e1ee2 [hooks] Drop "logstats" hook
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12112
diff changeset
    81
* The `cubicweb.hook.logstats.start` hook was dropped because it's looping
40446d4e1ee2 [hooks] Drop "logstats" hook
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12112
diff changeset
    82
  task would not be run in a web instance (see first point about repository
40446d4e1ee2 [hooks] Drop "logstats" hook
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 12112
diff changeset
    83
  scheduler).
12124
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    84
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    85
* ``uicfg`` rules  to hide the opposite relation of inlined form are not anymore
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    86
  automatically added, because this was actually done randomly and so not
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    87
  reliable, so you'll have to add them manually:
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    88
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    89
  ::
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    90
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    91
    autoform_section.tag_subject_of(('CWUser', 'use_email', 'EmailAddress'),
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    92
                                    'main', 'inlined')
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    93
    autoform_section.tag_object_of(('CWUser', 'use_email', 'EmailAddress'),
392d6d599286 [doc] Add release note about change in uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 12114
diff changeset
    94
                                   'inlined', 'hidden')