doc/changes/3.18.rst
author Denis Laxalde <denis.laxalde@logilab.fr>
Thu, 21 Mar 2019 14:33:54 +0100
changeset 12530 9d88e1177c35
parent 10504 3755cd64fff8
permissions -rw-r--r--
Remove Twisted web server Twisted web server is not used anymore and has been superseded by pyramid many years ago. Furthermore, our usage is not compatible with Python 3. So we drop the "etwist" sub-package. As a consequence, "all-in-one" configuration type gets dropped as it was Twisted-specific. We resurrect it in cubicweb/pyramid/config.py by only keeping options used by the "pyramid". Similarly, we introduce a AllInOneCreateHandler in cubicweb/pyramid/pyramidctl.py that is basically the one that lived in cubicweb/etwist/twctl.py and is used to create the "all-in-one" instance. Added a TODO here about "pyramid.ini" that could be generated at the end of bootstrap() method. In cubicweb/devtools/httptest.py, CubicWebServerTC is now equivalent to CubicWebWsgiTC and the latter is dropped.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10502
bdcd35e575fd [doc] reformat changes files headers
David Douard <david.douard@logilab.fr>
parents: 10496
diff changeset
     1
3.18 (10/01/2014)
bdcd35e575fd [doc] reformat changes files headers
David Douard <david.douard@logilab.fr>
parents: 10496
diff changeset
     2
=================
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
     3
9375
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
     4
The migration script does not handle sqlite nor mysql instances.
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
     5
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
     6
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
     7
New functionalities
10504
3755cd64fff8 [doc] small rst fixes and cleanups in changelog files
David Douard <david.douard@logilab.fr>
parents: 10502
diff changeset
     8
-------------------
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
     9
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    10
* add a security debugging tool
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    11
  (see `#2920304 <http://www.cubicweb.org/2920304>`_)
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    12
9395
96dba2efd16d [hooks/security] provide attribute "add" permission
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9390
diff changeset
    13
* introduce an `add` permission on attributes, to be interpreted at
96dba2efd16d [hooks/security] provide attribute "add" permission
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9390
diff changeset
    14
  entity creation time only and allow the implementation of complex
96dba2efd16d [hooks/security] provide attribute "add" permission
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9390
diff changeset
    15
  `update` rules that don't block entity creation (before that the
96dba2efd16d [hooks/security] provide attribute "add" permission
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9390
diff changeset
    16
  `update` attribute permission was interpreted at entity creation and
96dba2efd16d [hooks/security] provide attribute "add" permission
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9390
diff changeset
    17
  update time)
96dba2efd16d [hooks/security] provide attribute "add" permission
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9390
diff changeset
    18
9341
099a3a33eaaa [uicfg] give a set_fields_order method to the primary view display control
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9302
diff changeset
    19
* the primary view display controller (uicfg) now has a
099a3a33eaaa [uicfg] give a set_fields_order method to the primary view display control
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9302
diff changeset
    20
  `set_fields_order` method similar to the one available for forms
099a3a33eaaa [uicfg] give a set_fields_order method to the primary view display control
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9302
diff changeset
    21
9382
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    22
* new method `ResultSet.one(col=0)` to retrive a single entity and enforce the
10496
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10491
diff changeset
    23
  result has only one row (see `#3352314 <https://www.cubicweb.org/ticket/3352314>`_)
9382
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    24
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    25
* new method `RequestSessionBase.find` to look for entities
10496
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10491
diff changeset
    26
  (see `#3361290 <https://www.cubicweb.org/ticket/3361290>`_)
9382
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    27
9388
4c34a63bd113 update jquery to 1.10 (closes #2786674)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9384
diff changeset
    28
* the embedded jQuery copy has been updated to version 1.10.2, and jQuery UI to
4c34a63bd113 update jquery to 1.10 (closes #2786674)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9384
diff changeset
    29
  version 1.10.3.
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    30
9390
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    31
* initial support for wsgi for the debug mode, available through the new
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    32
  ``wsgi`` cubicweb-ctl command, which can use either python's builtin
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    33
  wsgi server or the werkzeug module if present.
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    34
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    35
* a ``rql-table`` directive is now available in ReST fields
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    36
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    37
* cubicweb-ctl upgrade can now generate the static data resource directory
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    38
  directly, without a manual call to gen-static-datadir.
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    39
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    40
API changes
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    41
-----------
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    42
9254
e1369f2dba79 [hooks/security] Defer entity permission checks to an Operation.
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9218
diff changeset
    43
* not really an API change, but the entity permission checks are now
e1369f2dba79 [hooks/security] Defer entity permission checks to an Operation.
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9218
diff changeset
    44
  systematically deferred to an operation, instead of a) trying in a
e1369f2dba79 [hooks/security] Defer entity permission checks to an Operation.
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9218
diff changeset
    45
  hook and b) if it failed, retrying later in an operation
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    46
9301
84ff860a966b [doc] document changed attribute default value storage
Julien Cristau <julien.cristau@logilab.fr>
parents: 9291
diff changeset
    47
* The default value storage for attributes is no longer String, but
84ff860a966b [doc] document changed attribute default value storage
Julien Cristau <julien.cristau@logilab.fr>
parents: 9291
diff changeset
    48
  Bytes.  This opens the road to storing arbitrary python objects, e.g.
84ff860a966b [doc] document changed attribute default value storage
Julien Cristau <julien.cristau@logilab.fr>
parents: 9291
diff changeset
    49
  numpy arrays, and fixes a bug where default values whose truth value
84ff860a966b [doc] document changed attribute default value storage
Julien Cristau <julien.cristau@logilab.fr>
parents: 9291
diff changeset
    50
  was False were not properly migrated.
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    51
9361
0542a85fe667 symmetric relations: replace bogus rql2sql translation by a hook
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9341
diff changeset
    52
* `symmetric` relations are no more handled by an rql rewrite but are
0542a85fe667 symmetric relations: replace bogus rql2sql translation by a hook
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9341
diff changeset
    53
  now handled with hooks (from the `activeintegrity` category); this
0542a85fe667 symmetric relations: replace bogus rql2sql translation by a hook
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9341
diff changeset
    54
  may have some consequences for applications that do low-level database
0542a85fe667 symmetric relations: replace bogus rql2sql translation by a hook
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9341
diff changeset
    55
  manipulations or at times disable (some) hooks.
0542a85fe667 symmetric relations: replace bogus rql2sql translation by a hook
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9341
diff changeset
    56
9375
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
    57
* `unique together` constraints (multi-columns unicity constraints)
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
    58
  get a `name` attribute that maps the CubicWeb contraint entities to
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
    59
  corresponding backend index.
8e88576787c3 [schema] fix unique together index handling
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9374
diff changeset
    60
9384
430859af32c6 [breadcrumbs] Small breadcrumb components refactoring
Florent Cayre <florent.cayre@logilab.fr>
parents: 9382
diff changeset
    61
* BreadCrumbEntityVComponent's open_breadcrumbs method now includes
430859af32c6 [breadcrumbs] Small breadcrumb components refactoring
Florent Cayre <florent.cayre@logilab.fr>
parents: 9382
diff changeset
    62
  the first breadcrumbs separator
430859af32c6 [breadcrumbs] Small breadcrumb components refactoring
Florent Cayre <florent.cayre@logilab.fr>
parents: 9382
diff changeset
    63
9390
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    64
* entities can be compared for equality and hashed
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    65
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    66
* the ``on_fire_transition`` predicate accepts a sequence of possible
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    67
  transition names
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    68
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    69
* the GROUP_CONCAT rql aggregate function no longer repeats duplicate
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    70
  values, on the sqlite and postgresql backends
9361
0542a85fe667 symmetric relations: replace bogus rql2sql translation by a hook
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9341
diff changeset
    71
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    72
Deprecation
10504
3755cd64fff8 [doc] small rst fixes and cleanups in changelog files
David Douard <david.douard@logilab.fr>
parents: 10502
diff changeset
    73
-----------
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    74
9374
1236d9058ad3 [pyrorql] deprecate pyrorql source (closes #2919299)
David Douard <david.douard@logilab.fr>
parents: 9361
diff changeset
    75
* ``pyrorql`` sources have been deprecated. Multisource will be fully dropped
1236d9058ad3 [pyrorql] deprecate pyrorql source (closes #2919299)
David Douard <david.douard@logilab.fr>
parents: 9361
diff changeset
    76
  in the next version. If you are still using pyrorql, switch to ``datafeed``
1236d9058ad3 [pyrorql] deprecate pyrorql source (closes #2919299)
David Douard <david.douard@logilab.fr>
parents: 9361
diff changeset
    77
  **NOW**!
1236d9058ad3 [pyrorql] deprecate pyrorql source (closes #2919299)
David Douard <david.douard@logilab.fr>
parents: 9361
diff changeset
    78
9302
af36f459d2f0 [server] deprecate the old multi-source system
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9301
diff changeset
    79
* the old multi-source system
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    80
9382
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    81
* `find_one_entity` and `find_entities` in favor of `find`
10496
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10491
diff changeset
    82
  (see `#3361290 <https://www.cubicweb.org/ticket/3361290>`_)
9382
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    83
10496
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10491
diff changeset
    84
* the `TmpFileViewMixin` and `TmpPngView` classes (see
e95b559a06a2 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr>
parents: 10491
diff changeset
    85
  `#3400448 <https://www.cubicweb.org/ticket/3400448>`_)
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    86
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    87
Deprecated Code Drops
10504
3755cd64fff8 [doc] small rst fixes and cleanups in changelog files
David Douard <david.douard@logilab.fr>
parents: 10502
diff changeset
    88
---------------------
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    89
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    90
* ``ldapuser`` have been dropped; use ``ldapfeed`` now
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    91
  (see `#2936496 <http://www.cubicweb.org/2936496>`_)
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    92
9291
4894bb92558a [web] remove action "Got Rhythm" (closes #3093362)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 9259
diff changeset
    93
* action ``GotRhythm`` was removed, make sure you do not
4894bb92558a [web] remove action "Got Rhythm" (closes #3093362)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 9259
diff changeset
    94
  import it in your cubes (even to unregister it)
4894bb92558a [web] remove action "Got Rhythm" (closes #3093362)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 9259
diff changeset
    95
  (see `#3093362 <http://www.cubicweb.org/3093362>`_)
4894bb92558a [web] remove action "Got Rhythm" (closes #3093362)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 9259
diff changeset
    96
9255
46f41c3e1443 remove 3.8 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9254
diff changeset
    97
* all 3.8 backward compat is gone
9256
697a8181ba30 remove 3.9 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9255
diff changeset
    98
9259
68cde7431c2c [js] remove 3.9 bw compat (where apparently unused)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9257
diff changeset
    99
* all 3.9 backward compat (including the javascript side) is gone
9390
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
   100
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
   101
* the ``twisted`` (web-only) instance type has been removed