doc/3.20.rst
author David Douard <david.douard@logilab.fr>
Tue, 19 Jul 2016 13:56:40 +0200
branch3.20
changeset 11398 d71ce8b30a52
parent 10131 7e6b7739afe6
permissions -rw-r--r--
3.20 branch
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10006
8391bf718485 remove most 3.10 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
     1
What's new in CubicWeb 3.20
8391bf718485 remove most 3.10 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
     2
===========================
8391bf718485 remove most 3.10 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
     3
10081
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
     4
New features
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
     5
------------
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
     6
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
     7
* virtual relations: a new ComputedRelation class can be used in
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
     8
  schema.py; its `rule` attribute is an RQL snippet that defines the new
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
     9
  relation.
10107
1ef92a6193a8 [serverctl] rename remove_cube to drop_cube (closes #4545093)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 10091
diff changeset
    10
10081
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    11
* computed attributes: an attribute can now be defined with a `formula`
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    12
  argument (also an RQL snippet); it will be read-only, and updated
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    13
  automatically.
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    14
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    15
  Both of these features are described in `CWEP-002`_, and the updated
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    16
  "Data model" chapter of the CubicWeb book.
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    17
10118
78ab2b14048a [utils] provide a function to return an admin connection from an appid
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10107
diff changeset
    18
* cubicweb-ctl plugins can use the ``cubicweb.utils.admincnx`` function
78ab2b14048a [utils] provide a function to return an admin connection from an appid
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10107
diff changeset
    19
  to get a Connection object from an instance name.
78ab2b14048a [utils] provide a function to return an admin connection from an appid
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10107
diff changeset
    20
10131
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    21
* new 'tornado' wsgi backend
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    22
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    23
* session cookies have the HttpOnly flag, so they're no longer exposed to
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    24
  javascript
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    25
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    26
* rich text fields can be formatted as markdown
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    27
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    28
* the edit controller detects concurrent editions, and raises a ValidationError
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    29
  if an entity was modified between form generation and submission
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    30
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    31
* cubicweb can use a postgresql "schema" (namespace) for its tables
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    32
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    33
* "cubicweb-ctl configure" can be used to set values of the admin user
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    34
  credentials in the sources configuration file
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    35
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    36
* in debug mode, setting the _cwtracehtml parameter on a request allows tracing
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    37
  where each bit of output is produced
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    38
10081
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    39
.. _CWEP-002: http://hg.logilab.org/review/cwep/file/tip/CWEP-002.rst
f1baed9ccf0d [doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr>
parents: 10008
diff changeset
    40
10091
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    41
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    42
API Changes
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    43
-----------
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    44
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    45
* ``ucsvreader()`` and ``ucsvreader_pb()`` from the ``dataimport`` module have
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    46
  2 new keyword arguments ``delimiter`` and ``quotechar`` to replace the
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    47
  ``separator`` and ``quote`` arguments respectively. This makes the API match
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    48
  that of Python's ``csv.reader()``.  The old arguments are still supported
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    49
  though deprecated.
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    50
10107
1ef92a6193a8 [serverctl] rename remove_cube to drop_cube (closes #4545093)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 10091
diff changeset
    51
* the migration environment's ``remove_cube`` function is now called ``drop_cube``.
1ef92a6193a8 [serverctl] rename remove_cube to drop_cube (closes #4545093)
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 10091
diff changeset
    52
10121
23af005426bf [web] everything old is new again
Julien Cristau <julien.cristau@logilab.fr>
parents: 10118
diff changeset
    53
* cubicweb.old.css is now cubicweb.css.  The previous "new"
23af005426bf [web] everything old is new again
Julien Cristau <julien.cristau@logilab.fr>
parents: 10118
diff changeset
    54
  cubicweb.css, along with its cubicweb.reset.css companion, have been
23af005426bf [web] everything old is new again
Julien Cristau <julien.cristau@logilab.fr>
parents: 10118
diff changeset
    55
  removed.
10091
09878c2f8621 [dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
Rémi Cardona <remi.cardona@logilab.fr>
parents: 10081
diff changeset
    56
10131
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    57
* the jquery-treeview plugin was updated to its latest version
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    58
7e6b7739afe6 [pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr>
parents: 10121
diff changeset
    59
10006
8391bf718485 remove most 3.10 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    60
Deprecated Code Drops
8391bf718485 remove most 3.10 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    61
----------------------
8391bf718485 remove most 3.10 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
diff changeset
    62
10008
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    63
* most of 3.10 and 3.11 backward compat is gone; this includes:
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    64
  - CtxComponent.box_action() and CtxComponent.build_link()
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    65
  - cubicweb.devtools.htmlparser.XMLDemotingValidator
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    66
  - various methods and properties on Entities, replaced by cw_edited and cw_attr_cache
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    67
  - 'commit_event' method on hooks, replaced by 'postcommit_event'
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    68
  - server.hook.set_operation(), replaced by Operation.get_instance(...).add_data()
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    69
  - View.div_id(), View.div_class() and View.create_url()
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    70
  - `*VComponent` classes
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    71
  - in forms, Field.value() and Field.help() must take the form and the field itself as arguments
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    72
  - form.render() must get `w` as a named argument, and renderer.render() must take `w` as first argument
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    73
  - in breadcrumbs, the optional `recurs` argument must be a set, not False
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    74
  - cubicweb.web.views.idownloadable.{download_box,IDownloadableLineView}
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    75
  - primary views no longer have `render_entity_summary` and `summary` methods
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    76
  - WFHistoryVComponent's `cell_call` method is replaced by `render_body`
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    77
  - cubicweb.dataimport.ObjectStore.add(), replaced by create_entity
36b75aefe2c2 [doc/3.20] more details on removed code
Julien Cristau <julien.cristau@logilab.fr>
parents: 10007
diff changeset
    78
  - ManageView.{folders,display_folders}