doc/3.18.rst
author Rémi Cardona <remi.cardona@logilab.fr>
Wed, 12 Feb 2014 17:32:49 +0100
changeset 9534 34d9de030564
parent 9395 96dba2efd16d
permissions -rw-r--r--
[web/data] Ignore disabled widgets in cw.utils.formContents() (closes #3544492) 17.12.1 Disabled controls : http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.12.1 When set, the disabled attribute has the following effects on an element: * Disabled controls do not receive focus. * Disabled controls are skipped in tabbing navigation. * Disabled controls cannot be successful. The third one is the important one. 17.13.2 Successful controls : http://www.w3.org/TR/REC-html40/interact/forms.html#successful-controls A successful control is "valid" for submission. Every successful control has its control name paired with its current value as part of the submitted form data set. Bottom line, disable widgets should not be part of the names and values lists returned by formContents().
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9218
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
     1
What's new in CubicWeb 3.18?
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
     2
============================
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
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
     8
--------------------
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
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    23
  result has only one row (see `#3352314 https://www.cubicweb.org/ticket/3352314`_)
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
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    26
  (see `#3361290 https://www.cubicweb.org/ticket/3361290`_)
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
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    73
---------------------
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`
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    82
  (see `#3361290 https://www.cubicweb.org/ticket/3361290`_)
ac0661486568 [release notes] Documents one() and find() addition
Christophe de Vienne <cdevienne@gmail.com>
parents: 9375
diff changeset
    83
9390
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    84
* the `TmpFileViewMixin` and `TmpPngView` classes (see `#3400448
41795de3d48a [doc] update 3.18 release notes
Julien Cristau <julien.cristau@logilab.fr>
parents: 9388
diff changeset
    85
  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
c027ed79f1ce [doc] add a what's new file for 3.18
David Douard <david.douard@logilab.fr>
parents:
diff changeset
    88
----------------------
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