[Cubicweb] [ANNOUNCE] cubicweb 3.20.0 released

Julien Cristau julien.cristau at logilab.fr
Wed Jan 7 16:30:28 CET 2015


Hi,

I'm happy to announce the release of CubicWeb 3.20.0 (and 3.20.1, to fix
a stupid mistake in .0).  The highlight of this release is the
implementation of virtual relations and computed attributes (CWEP002,
http://hg.logilab.org/master/cwep/raw-file/tip/CWEP-002.rst).

Some more changes that might be of interest, taken from the doc/3.20.rst
file in the CubicWeb source tree:

What's new in CubicWeb 3.20
===========================

New features
------------

* virtual relations: a new ComputedRelation class can be used in
  schema.py; its `rule` attribute is an RQL snippet that defines the new
  relation.

* computed attributes: an attribute can now be defined with a `formula`
  argument (also an RQL snippet); it will be read-only, and updated
  automatically.

  Both of these features are described in `CWEP-002`_, and the updated
  "Data model" chapter of the CubicWeb book.

* cubicweb-ctl plugins can use the ``cubicweb.utils.admincnx`` function
  to get a Connection object from an instance name.

* new 'tornado' wsgi backend

* session cookies have the HttpOnly flag, so they're no longer exposed to
  javascript

* rich text fields can be formatted as markdown

* the edit controller detects concurrent editions, and raises a ValidationError
  if an entity was modified between form generation and submission

* cubicweb can use a postgresql "schema" (namespace) for its tables

* "cubicweb-ctl configure" can be used to set values of the admin user
  credentials in the sources configuration file

* in debug mode, setting the _cwtracehtml parameter on a request allows tracing
  where each bit of output is produced

.. _CWEP-002: http://hg.logilab.org/review/cwep/file/tip/CWEP-002.rst


API Changes
-----------

* ``ucsvreader()`` and ``ucsvreader_pb()`` from the ``dataimport`` module have
  2 new keyword arguments ``delimiter`` and ``quotechar`` to replace the
  ``separator`` and ``quote`` arguments respectively. This makes the API match
  that of Python's ``csv.reader()``.  The old arguments are still supported
  though deprecated.

* the migration environment's ``remove_cube`` function is now called ``drop_cube``.

* cubicweb.old.css is now cubicweb.css.  The previous "new"
  cubicweb.css, along with its cubicweb.reset.css companion, have been
  removed.

* the jquery-treeview plugin was updated to its latest version


Deprecated Code Drops
----------------------

* most of 3.10 and 3.11 backward compat is gone; this includes:
  - CtxComponent.box_action() and CtxComponent.build_link()
  - cubicweb.devtools.htmlparser.XMLDemotingValidator
  - various methods and properties on Entities, replaced by cw_edited and cw_attr_cache
  - 'commit_event' method on hooks, replaced by 'postcommit_event'
  - server.hook.set_operation(), replaced by Operation.get_instance(...).add_data()
  - View.div_id(), View.div_class() and View.create_url()
  - `*VComponent` classes
  - in forms, Field.value() and Field.help() must take the form and the field itself as arguments
  - form.render() must get `w` as a named argument, and renderer.render() must take `w` as first argument
  - in breadcrumbs, the optional `recurs` argument must be a set, not False
  - cubicweb.web.views.idownloadable.{download_box,IDownloadableLineView}
  - primary views no longer have `render_entity_summary` and `summary` methods
  - WFHistoryVComponent's `cell_call` method is replaced by `render_body`
  - cubicweb.dataimport.ObjectStore.add(), replaced by create_entity
  - ManageView.{folders,display_folders}

Enjoy!

Cheers,
Julien
-- 
Julien Cristau          <julien.cristau at logilab.fr>
Logilab		        http://www.logilab.fr/
Informatique scientifique & gestion de connaissances
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.cubicweb.org/pipermail/cubicweb/attachments/20150107/14e4d55b/attachment-0251.sig>


More information about the Cubicweb mailing list