doc/3.18.rst
changeset 10491 c67bcee93248
parent 10490 76ab3c71aff2
child 10492 68c13e0c0fc5
equal deleted inserted replaced
10490:76ab3c71aff2 10491:c67bcee93248
     1 What's new in CubicWeb 3.18?
       
     2 ============================
       
     3 
       
     4 The migration script does not handle sqlite nor mysql instances.
       
     5 
       
     6 
       
     7 New functionalities
       
     8 --------------------
       
     9 
       
    10 * add a security debugging tool
       
    11   (see `#2920304 <http://www.cubicweb.org/2920304>`_)
       
    12 
       
    13 * introduce an `add` permission on attributes, to be interpreted at
       
    14   entity creation time only and allow the implementation of complex
       
    15   `update` rules that don't block entity creation (before that the
       
    16   `update` attribute permission was interpreted at entity creation and
       
    17   update time)
       
    18 
       
    19 * the primary view display controller (uicfg) now has a
       
    20   `set_fields_order` method similar to the one available for forms
       
    21 
       
    22 * new method `ResultSet.one(col=0)` to retrive a single entity and enforce the
       
    23   result has only one row (see `#3352314 https://www.cubicweb.org/ticket/3352314`_)
       
    24 
       
    25 * new method `RequestSessionBase.find` to look for entities
       
    26   (see `#3361290 https://www.cubicweb.org/ticket/3361290`_)
       
    27 
       
    28 * the embedded jQuery copy has been updated to version 1.10.2, and jQuery UI to
       
    29   version 1.10.3.
       
    30 
       
    31 * initial support for wsgi for the debug mode, available through the new
       
    32   ``wsgi`` cubicweb-ctl command, which can use either python's builtin
       
    33   wsgi server or the werkzeug module if present.
       
    34 
       
    35 * a ``rql-table`` directive is now available in ReST fields
       
    36 
       
    37 * cubicweb-ctl upgrade can now generate the static data resource directory
       
    38   directly, without a manual call to gen-static-datadir.
       
    39 
       
    40 API changes
       
    41 -----------
       
    42 
       
    43 * not really an API change, but the entity permission checks are now
       
    44   systematically deferred to an operation, instead of a) trying in a
       
    45   hook and b) if it failed, retrying later in an operation
       
    46 
       
    47 * The default value storage for attributes is no longer String, but
       
    48   Bytes.  This opens the road to storing arbitrary python objects, e.g.
       
    49   numpy arrays, and fixes a bug where default values whose truth value
       
    50   was False were not properly migrated.
       
    51 
       
    52 * `symmetric` relations are no more handled by an rql rewrite but are
       
    53   now handled with hooks (from the `activeintegrity` category); this
       
    54   may have some consequences for applications that do low-level database
       
    55   manipulations or at times disable (some) hooks.
       
    56 
       
    57 * `unique together` constraints (multi-columns unicity constraints)
       
    58   get a `name` attribute that maps the CubicWeb contraint entities to
       
    59   corresponding backend index.
       
    60 
       
    61 * BreadCrumbEntityVComponent's open_breadcrumbs method now includes
       
    62   the first breadcrumbs separator
       
    63 
       
    64 * entities can be compared for equality and hashed
       
    65 
       
    66 * the ``on_fire_transition`` predicate accepts a sequence of possible
       
    67   transition names
       
    68 
       
    69 * the GROUP_CONCAT rql aggregate function no longer repeats duplicate
       
    70   values, on the sqlite and postgresql backends
       
    71 
       
    72 Deprecation
       
    73 ---------------------
       
    74 
       
    75 * ``pyrorql`` sources have been deprecated. Multisource will be fully dropped
       
    76   in the next version. If you are still using pyrorql, switch to ``datafeed``
       
    77   **NOW**!
       
    78 
       
    79 * the old multi-source system
       
    80 
       
    81 * `find_one_entity` and `find_entities` in favor of `find`
       
    82   (see `#3361290 https://www.cubicweb.org/ticket/3361290`_)
       
    83 
       
    84 * the `TmpFileViewMixin` and `TmpPngView` classes (see `#3400448
       
    85   https://www.cubicweb.org/ticket/3400448`_)
       
    86 
       
    87 Deprecated Code Drops
       
    88 ----------------------
       
    89 
       
    90 * ``ldapuser`` have been dropped; use ``ldapfeed`` now
       
    91   (see `#2936496 <http://www.cubicweb.org/2936496>`_)
       
    92 
       
    93 * action ``GotRhythm`` was removed, make sure you do not
       
    94   import it in your cubes (even to unregister it)
       
    95   (see `#3093362 <http://www.cubicweb.org/3093362>`_)
       
    96 
       
    97 * all 3.8 backward compat is gone
       
    98 
       
    99 * all 3.9 backward compat (including the javascript side) is gone
       
   100 
       
   101 * the ``twisted`` (web-only) instance type has been removed