doc/changes/3.23.rst
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Tue, 07 Mar 2017 12:08:39 +0100
changeset 12006 c2230b7f6358
parent 11445 b2eb66dfd9c6
permissions -rw-r--r--
[web] Don't raise ProcessFormError if there is no value specified a03376213747 introduced a slight modification in None / empty string values and with it a regression where an exception is raised on empty values, while we should simply consider no value is specified and return None.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     1
3.23 (24 June 2016)
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     2
===================
11182
66c44d3d97af [devtools/testlib] Issue a RuntimeError when a generative tests is detected
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
diff changeset
     3
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     4
New features
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     5
------------
11182
66c44d3d97af [devtools/testlib] Issue a RuntimeError when a generative tests is detected
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
diff changeset
     6
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     7
* Python 3.x support in CubicWeb itself is now complete, except for the
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     8
  twisted package (since Twisted does not completely support Python 3.x
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
     9
  itself). The skeleton for new cube should also be Python 3 compatible, in
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    10
  particular its `setup.py` got updated.
11182
66c44d3d97af [devtools/testlib] Issue a RuntimeError when a generative tests is detected
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
diff changeset
    11
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    12
* The `source-sync` command can now synchronize all sources in the database,
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    13
  if no `<source>` argument is provided.
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    14
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    15
* Datafeed source synchronization is now asynchronous when requested from user
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    16
  interface.
11379
057ad6b9c132 [doc/changes] CubicWebTC.set_description no longer available
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11378
diff changeset
    17
11378
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    18
Database handling
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    19
~~~~~~~~~~~~~~~~~
11378
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    20
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    21
* Most indexes and constraints will be rebuilt during the migration, because
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    22
  they are now named after a md5 hash to control the name's size.
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    23
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    24
* Index are renamed upon renaming of an entity type, so they are still
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    25
  correctly tracked.
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    26
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    27
* A new `db-check-index` command is added to `cubicweb-ctl`, to display the
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    28
  differences between the indexes in the database and those expected by the
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    29
  schema. It's recommended to run this command after the migration to 3.23 and
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    30
  to adjust things manually for cases that are not easily handled by the
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    31
  migration script, such as indexes of entity types that have been renamed. It
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    32
  should be mostly about dropping extra indexes.
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    33
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    34
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    35
Data-import
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    36
~~~~~~~~~~~
11378
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    37
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    38
* Deprecated `MetaGenerator` in favor of slightly adapted API in
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    39
  `MetadataGenerator` (more consistent, giving more control to sub-classes and
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    40
  suitable for usage with the `MassiveObjectStore`)
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    41
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    42
* Major cleanups of the `MassiveObjectStore` and its `PGHelper` companion
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    43
  class:
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    44
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    45
  - dropped a bunch of unnecessary / unused attributes
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    46
  - refactored / renamed internal methods
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    47
  - added support for a metadata generator, the now recommended way to control
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    48
    metadata generation
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    49
11381
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    50
* Deprecated `SQLGenObjectStore`, `MassiveObjectStore` should be used instead.
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    51
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    52
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    53
Backwards-incompatible changes
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    54
------------------------------
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    55
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    56
* Generative tests *à la logilab-common* are not supported anymore in
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    57
  `CubicWebTC`. It is advised to use the subtests_ API (available on
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    58
  `CubicWebTC` either from the standard library as of Python 3.4 or through
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    59
  unittest2 package otherwise).
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    60
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    61
* `CubicWebTC`'s `set_description` method (comming from
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    62
  `logilab.common.testlib.TestCase`) is no longer available.
750a98450dea [3.23] More release notes
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11379
diff changeset
    63
11378
a62de037e379 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11182
diff changeset
    64
11445
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    65
Development
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    66
-----------
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    67
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    68
When installed within a virtualenv, CubicWeb will look for instances data as
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    69
in ``user`` mode by default, that is in ``$HOME/etc/cubicweb.d``, as opposed
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    70
to ``$VIRTUAL_ENV/etc/cubicweb.d`` previously. To restore this behavior,
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    71
explicitly set ``CW_MODE`` to ``system``. Alternatively (and preferably), the
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    72
``CW_INSTANCES_DIR`` environment variables may be used to specify instances
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    73
data location.
b2eb66dfd9c6 [doc] Document change of instances location in virtualenv installation
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11381
diff changeset
    74
11182
66c44d3d97af [devtools/testlib] Issue a RuntimeError when a generative tests is detected
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
diff changeset
    75
.. _subtests: https://docs.python.org/3/library/unittest.html#distinguishing-test-iterations-using-subtests