Tue, 26 Feb 2019 16:25:27 +0100 [doc] uses :file:`name` everywhere + indicate file when it's not present
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:25:27 +0100] rev 12407
[doc] uses :file:`name` everywhere + indicate file when it's not present
Tue, 26 Feb 2019 16:23:37 +0100 [doc] english typos
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:23:37 +0100] rev 12406
[doc] english typos
Tue, 26 Feb 2019 16:23:07 +0100 [doc] pep8/retab in code examples
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:23:07 +0100] rev 12405
[doc] pep8/retab in code examples
Wed, 27 Feb 2019 13:41:34 +0100 [doc] correct import for i18n
Laurent Peuch <cortex@worlddomination.be> [Wed, 27 Feb 2019 13:41:34 +0100] rev 12404
[doc] correct import for i18n
Thu, 21 Feb 2019 18:46:39 +0100 [doc] pep8 and retab in tutorial code example
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:46:39 +0100] rev 12403
[doc] pep8 and retab in tutorial code example
Thu, 21 Feb 2019 19:08:44 +0100 [doc] correct pip command to have needed dependancies to use the start command
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 19:08:44 +0100] rev 12402
[doc] correct pip command to have needed dependancies to use the start command I know we want to remove this command but in the meantime having this documentation working seems like something good.
Thu, 21 Feb 2019 18:57:24 +0100 [doc] explain the difference between a relation and an attribute
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:57:24 +0100] rev 12401
[doc] explain the difference between a relation and an attribute
Thu, 21 Feb 2019 18:57:05 +0100 [doc] plural
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:57:05 +0100] rev 12400
[doc] plural
Thu, 21 Feb 2019 18:56:42 +0100 [doc] misc, put every reference to something in the code between backquotes
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:56:42 +0100] rev 12399
[doc] misc, put every reference to something in the code between backquotes
Thu, 21 Feb 2019 18:54:46 +0100 [doc] bold to make reading more obvious
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:54:46 +0100] rev 12398
[doc] bold to make reading more obvious
Thu, 21 Feb 2019 18:54:23 +0100 [doc] style, switch to bullet points list to make things easier to read
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:54:23 +0100] rev 12397
[doc] style, switch to bullet points list to make things easier to read
Thu, 21 Feb 2019 18:53:39 +0100 [doc] explains what the <X.Y.Z> means
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:53:39 +0100] rev 12396
[doc] explains what the <X.Y.Z> means
Thu, 21 Feb 2019 18:53:03 +0100 [doc] command output style has changed
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:53:03 +0100] rev 12395
[doc] command output style has changed
Thu, 21 Feb 2019 18:51:36 +0100 [doc] always put file name for code example and uses :file:`path` syntax everywhere
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:51:36 +0100] rev 12394
[doc] always put file name for code example and uses :file:`path` syntax everywhere
Thu, 21 Feb 2019 18:49:24 +0100 [doc] explicitely give the local server url to make this step more obvious
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:49:24 +0100] rev 12393
[doc] explicitely give the local server url to make this step more obvious
Thu, 21 Feb 2019 18:48:51 +0100 [doc] start the server in debug mode, it's easier during learning
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:48:51 +0100] rev 12392
[doc] start the server in debug mode, it's easier during learning
Thu, 21 Feb 2019 18:48:07 +0100 [doc] recommend sqlite during tutorial because it's simplier to use
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:48:07 +0100] rev 12391
[doc] recommend sqlite during tutorial because it's simplier to use
Thu, 21 Feb 2019 18:47:35 +0100 [doc] add a link to every cube documentation page
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:47:35 +0100] rev 12390
[doc] add a link to every cube documentation page
Thu, 21 Feb 2019 18:47:03 +0100 [doc] make this step more obvious
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:47:03 +0100] rev 12389
[doc] make this step more obvious
Thu, 21 Feb 2019 18:42:29 +0100 [doc] move to latest CW version for cube creation
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:42:29 +0100] rev 12388
[doc] move to latest CW version for cube creation
Thu, 21 Feb 2019 18:15:26 +0100 [doc] missng import for i18n in example
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:15:26 +0100] rev 12387
[doc] missng import for i18n in example
Thu, 21 Feb 2019 18:10:47 +0100 [doc] unused import in example
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:10:47 +0100] rev 12386
[doc] unused import in example
Thu, 21 Feb 2019 15:25:23 +0100 [doc] output has changed
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:25:23 +0100] rev 12385
[doc] output has changed
Thu, 21 Feb 2019 15:18:09 +0100 [doc] blanks spaces to allow example to breath and be more lisible
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:18:09 +0100] rev 12384
[doc] blanks spaces to allow example to breath and be more lisible
Thu, 21 Feb 2019 15:16:22 +0100 [doc] default tests template has changed
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:16:22 +0100] rev 12383
[doc] default tests template has changed
Thu, 21 Feb 2019 15:13:45 +0100 [doc] default generated filename as changed
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:13:45 +0100] rev 12382
[doc] default generated filename as changed
Thu, 21 Feb 2019 10:05:38 +0100 [doc] rst syntax bug, blank line needed before item list
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 10:05:38 +0100] rev 12381
[doc] rst syntax bug, blank line needed before item list
Fri, 22 Feb 2019 15:16:26 +0100 [doc] add link to cubes contribution document
Laurent Peuch <cortex@worlddomination.be> [Fri, 22 Feb 2019 15:16:26 +0100] rev 12380
[doc] add link to cubes contribution document
Wed, 27 Feb 2019 13:36:31 +0100 Merge 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Feb 2019 13:36:31 +0100] rev 12379
Merge 3.26
Fri, 22 Feb 2019 15:48:34 +0100 [doc] link to current documentation, not old cubicweb.org doc
Laurent Peuch <cortex@worlddomination.be> [Fri, 22 Feb 2019 15:48:34 +0100] rev 12378
[doc] link to current documentation, not old cubicweb.org doc
Wed, 13 Feb 2019 14:40:39 +0100 Explicitly require repoze.lru for Pyramid tests 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Feb 2019 14:40:39 +0100] rev 12377
Explicitly require repoze.lru for Pyramid tests This used to be pulled by pyramid but the dependency got dropped in pyramid version 1.10, see: https://docs.pylonsproject.org/projects/pyramid/en/latest/whatsnew-1.10.html#backward-incompatibilities We already have an explicit dependency in setup.py, but it was missing for tests. Perhaps we could simply use '.[pyramid]' in this requirements file? Not sure what side effect it'd have though...
Wed, 13 Feb 2019 17:25:09 +0100 [cubicweb-ctl] make uid option obvious 3.26
Laurent Peuch <cortex@worlddomination.be> [Wed, 13 Feb 2019 17:25:09 +0100] rev 12376
[cubicweb-ctl] make uid option obvious
Wed, 13 Feb 2019 17:32:41 +0100 [README] point to xmpp room for contributors 3.26
Laurent Peuch <cortex@worlddomination.be> [Wed, 13 Feb 2019 17:32:41 +0100] rev 12375
[README] point to xmpp room for contributors
Tue, 12 Feb 2019 15:31:12 +0100 [doc] link to README regarding how to contribute to the code base 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 15:31:12 +0100] rev 12374
[doc] link to README regarding how to contribute to the code base
Tue, 12 Feb 2019 15:23:29 +0100 [README] improve contribution section with links and command examples 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 15:23:29 +0100] rev 12373
[README] improve contribution section with links and command examples
Wed, 13 Feb 2019 11:39:46 +0100 [README] point to logilab's jenkins in tests section 3.26
Laurent Peuch <cortex@worlddomination.be> [Wed, 13 Feb 2019 11:39:46 +0100] rev 12372
[README] point to logilab's jenkins in tests section
Tue, 12 Feb 2019 16:11:54 +0100 [pyramid] improve pyramid warning with link to doc on how to write pyramid.ini file 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 16:11:54 +0100] rev 12371
[pyramid] improve pyramid warning with link to doc on how to write pyramid.ini file
Tue, 12 Feb 2019 15:51:21 +0100 [doc] translate french to english
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 15:51:21 +0100] rev 12370
[doc] translate french to english
Tue, 12 Feb 2019 14:59:42 +0100 [doc] typo, 'CW' doesn't exist in the example
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:59:42 +0100] rev 12369
[doc] typo, 'CW' doesn't exist in the example
Tue, 12 Feb 2019 14:59:13 +0100 [doc] always indicate the file in which the code should be put
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:59:13 +0100] rev 12368
[doc] always indicate the file in which the code should be put
Tue, 12 Feb 2019 14:58:50 +0100 [doc] respect pep8 in code examples
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:58:50 +0100] rev 12367
[doc] respect pep8 in code examples
Tue, 12 Feb 2019 14:58:26 +0100 [doc] serie a small improvments
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:58:26 +0100] rev 12366
[doc] serie a small improvments
Tue, 12 Feb 2019 14:55:02 +0100 [doc] typo, the field is "name" not "title"
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:55:02 +0100] rev 12365
[doc] typo, the field is "name" not "title"
Tue, 12 Feb 2019 14:53:48 +0100 [doc] fix, command "create" is missing base cube
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:53:48 +0100] rev 12364
[doc] fix, command "create" is missing base cube
Tue, 12 Feb 2019 14:48:52 +0100 [doc] improve blog tutorial first steps and explain common errors
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:48:52 +0100] rev 12363
[doc] improve blog tutorial first steps and explain common errors
Tue, 12 Feb 2019 14:43:45 +0100 [doc] how to install pyramid or twisted application server 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:43:45 +0100] rev 12362
[doc] how to install pyramid or twisted application server
Tue, 12 Feb 2019 11:38:19 +0100 [doc] new behavior in virtualenv since 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 11:38:19 +0100] rev 12361
[doc] new behavior in virtualenv since 3.26
Tue, 29 Jan 2019 14:04:28 +0100 [skeleton] use python3 flake8
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 29 Jan 2019 14:04:28 +0100] rev 12360
[skeleton] use python3 flake8 In tox "flake8" environment, use python 3 virtualenv, so we can check for python3 incompatible syntax.
Tue, 29 Jan 2019 14:02:19 +0100 [skeleton] drop whitelist_externals for flake8
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 29 Jan 2019 14:02:19 +0100] rev 12359
[skeleton] drop whitelist_externals for flake8 whitelist_externals makes sense when used with sitepackages=true. In this case it will always rely on $VIRTUAL_ENV/bin/flake8 so, the whitelist_externals has no effect.
Mon, 29 Oct 2018 16:39:21 +0100 Add changelog note for running tests with pytest-xdist
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 29 Oct 2018 16:39:21 +0100] rev 12358
Add changelog note for running tests with pytest-xdist
Fri, 26 Oct 2018 17:12:26 +0200 Make test database template creation concurrent
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 26 Oct 2018 17:12:26 +0200] rev 12357
Make test database template creation concurrent build_db_cache() is used in tests to create test database templates, i.e. DEFAULT_EMPTY_DB_ID (which is __default_empty_db__) and custom template database using CubicwebTC test_db_id/pre_setup_database API. When running tests in parallel using multiple processes, build_db_cache() may try to build the same database twice. Avoid this by adding synchronisation of process by using a file lock. So when two processes require the same template database, one build the database and others wait it to be created. Use filelock (https://github.com/benediktschmitt/py-filelock) library to have a portable (unix / windows) way for handling locks. Also filelock is packaged in debian: https://packages.debian.org/source/python-filelock
Fri, 26 Oct 2018 17:00:05 +0200 Make test database cache lookup concurrent
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 26 Oct 2018 17:00:05 +0200] rev 12356
Make test database cache lookup concurrent has_cache() is used to dertermine if the template database already exists or not. When running tests accross multiple process, has_cache() wasn't aware of databases created by other processes because it used a cache to generate the cache... Since the discovering discover_cached_db() time is quite reasonable (it's just about listing file in a directory), let re-generate the cache on cache miss.
Mon, 29 Oct 2018 10:04:31 +0100 Fix flake8 issues since release 3.6.0
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 29 Oct 2018 10:04:31 +0100] rev 12355
Fix flake8 issues since release 3.6.0 Flake8 had a new release which raise new issues, namely: W504: line break after binary operator F841: local variable 'ex' is assigned to but never used W605: invalid escape sequence F821: undefined name 'buffer' (noqa seems the only way to avoid this false positive) Also pin flake8>=3.6 in our tests and make explicit that we use python3 to run flake8 tests.
Mon, 29 Oct 2018 10:09:19 +0100 Stabilize flake8 tests on 3.26 branch 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 29 Oct 2018 10:09:19 +0100] rev 12354
Stabilize flake8 tests on 3.26 branch Use basepython=python2 or flake8 installed with python3 will raise "[F821] undefined name 'buffer'" Pin flake8 < 3.6 which has new checks that doesn't pass on our current code base.
Tue, 09 Oct 2018 16:24:12 +0200 Fix typo in RDFS URI
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 09 Oct 2018 16:24:12 +0200] rev 12353
Fix typo in RDFS URI
Tue, 02 Oct 2018 16:04:52 +0200 [doc] Do not rely on lgc's sphinx_ext 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 02 Oct 2018 16:04:52 +0200] rev 12352
[doc] Do not rely on lgc's sphinx_ext This module is broken (getting an ImportError) and I don't want to fix it. The only usage we make of it is for the "autodocstring" directive, and I don't know what it does. Based on the context, replacing autodocstring with either automodule or autoclass and removing sphinx_ext from required Sphinx extensions.
Thu, 06 Sep 2018 13:44:06 +0200 Added tag 3.26.7 for changeset ee4ad63c91e5 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 06 Sep 2018 13:44:06 +0200] rev 12351
Added tag 3.26.7 for changeset ee4ad63c91e5
Thu, 06 Sep 2018 13:43:56 +0200 [pkg] Version 3.26.7 3.26 3.26.7
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 06 Sep 2018 13:43:56 +0200] rev 12350
[pkg] Version 3.26.7
Fri, 24 Aug 2018 17:19:02 +0200 Fix possible double import of cubes 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 24 Aug 2018 17:19:02 +0200] rev 12349
Fix possible double import of cubes For a new-style cube, if we import "cubicweb_<name>" and then import "cubes.<name>", the cube will be imported twice. cubes.<name> and then cubicweb_name is ok though... When using pyramid, we try to find which cube define a "includeme" by importing them with the name "cubes.<name>", so we (possibly ?) double import all new-style cube. This case may also occur in tests with PyramidCWTest. Touching the import loader to fix this scares me, so let's fix this by testing "cubicweb_<name>" *before* "cubes.name" (for old style cubes, importing cubicweb_<name> raise ImportError).
Wed, 22 Aug 2018 16:04:39 +0200 [autoform] Make RelationField.fromcardinality a class method factory 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Aug 2018 16:04:39 +0200] rev 12348
[autoform] Make RelationField.fromcardinality a class method factory Instead of having the "RelationField" class hard-coded in this factory method (thus preventing any subclass to properly use it), we make that method a classmethod and instantiate the actual class instead of the base one.
Wed, 22 Aug 2018 16:02:30 +0200 [autoform] Use fieldclass from kwargs in guess_field for non-final relations 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Aug 2018 16:02:30 +0200] rev 12347
[autoform] Use fieldclass from kwargs in guess_field for non-final relations This follows up on af969080e7e6 in which a "fieldclass" kwarg has been added in EntityFieldsForm.field_by_name() before calling guess_field(). In this changeset, this value was only used for final relation but the way non-final relation actually also changed since we also use guess_field from these relation (previously, the field class specified through uicfg was instantiated directly in EntityFieldsForm.field_by_name()). So in the non-final case in guess_field() we simply try to retrieve "fieldclass" from kwargs and fall back to RelationField.
Thu, 16 Aug 2018 12:31:44 +0200 [py37] `async` is now a reserved keyword
Samuel Trégouët <samuel.tregouet@logilab.fr> [Thu, 16 Aug 2018 12:31:44 +0200] rev 12346
[py37] `async` is now a reserved keyword
Wed, 18 Jul 2018 13:53:00 +0200 Merge 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 18 Jul 2018 13:53:00 +0200] rev 12345
Merge 3.26
Wed, 18 Jul 2018 13:48:13 +0200 Added tag 3.26.6, debian/3.26.6-1 for changeset 8362503a9248 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 18 Jul 2018 13:48:13 +0200] rev 12344
Added tag 3.26.6, debian/3.26.6-1 for changeset 8362503a9248
Wed, 18 Jul 2018 13:47:45 +0200 [pkg] version 3.26.6 3.26 3.26.6 debian/3.26.6-1
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 18 Jul 2018 13:47:45 +0200] rev 12343
[pkg] version 3.26.6
Wed, 18 Jul 2018 11:27:05 +0200 [py3] Replace unicode keyword which is unknown in python3 3.26
Olivier Giorgis <olivier.giorgis@logilab.fr> [Wed, 18 Jul 2018 11:27:05 +0200] rev 12342
[py3] Replace unicode keyword which is unknown in python3
Wed, 11 Jul 2018 09:18:57 +0200 [skeleton] Use "py3" as tox environment instead of "py34"
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 11 Jul 2018 09:18:57 +0200] rev 12341
[skeleton] Use "py3" as tox environment instead of "py34"
Thu, 28 Jun 2018 18:19:08 +0200 Added tag 3.26.5 for changeset 76d7b0aa94d2 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 18:19:08 +0200] rev 12340
Added tag 3.26.5 for changeset 76d7b0aa94d2
Thu, 28 Jun 2018 18:18:33 +0200 [pkg] Version 3.26.5 3.26 3.26.5
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 18:18:33 +0200] rev 12339
[pkg] Version 3.26.5
Thu, 28 Jun 2018 16:49:57 +0200 Merge with 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Jun 2018 16:49:57 +0200] rev 12338
Merge with 3.26
Thu, 28 Jun 2018 12:19:16 +0200 [py3] Use "utf-8" as input encoding for docutils in rest extension 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 12:19:16 +0200] rev 12337
[py3] Use "utf-8" as input encoding for docutils in rest extension Docutils says that "unicode" is an unknown encoding on Python3. Not sure where "unicode" as an encoding comes (it's there since showtime) but "utf-8" seems more appropriate. From now on, rendering of CubicWeb's rst directive (e.g. ..winclude) works on Python 3. Accordingly, we extend wdoc's test to demonstrate this. For this we need to install docutils in tox's web environment.
Thu, 28 Jun 2018 11:19:14 +0200 [py3] Avoid setting attribute on Element instance in wdoc view 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 11:19:14 +0200] rev 12336
[py3] Avoid setting attribute on Element instance in wdoc view This change is needed to make "wdoc" view work on Python 3. Indeed, before this patch, we used to set a "parent" attribute on Element instances, which is not permitted since Python 3.3 as xml.etree.ElementTree uses the C implementation by default. To get rid of this "parent" attribute, we rework the XML nodes processing logic to return and retrieve a node along with its parent in several place of the code. Namely, build_toc_index() now accepts the "parent" value for "node" and inserts it in the "index" dict (thus avoid `node.parent = <value>`). Respectively, every query to the "index" dict is updated to also retrieve the "parent" (thus avoiding `<value> = node.parent`). Later in InlineHelpView class, the "index" dict is bound to "tocindex" attribute so we adjust how it is queried in respective methods. Tests cubicweb/web/test/unittest_views_wdoc.py now pass on Python 3.
Thu, 28 Jun 2018 10:07:20 +0200 [test] Add a trivial test for "wdoc" view 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 10:07:20 +0200] rev 12335
[test] Add a trivial test for "wdoc" view We just make sure it gets rendered without errors (which wasn't the case before the previous patch). It does not work on Python 3; this will be fixed in next changeset.
Thu, 28 Jun 2018 10:06:26 +0200 [py3] Open rst file in text mode in wdoc view 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 10:06:26 +0200] rev 12334
[py3] Open rst file in text mode in wdoc view Otherwise, UStringIO complains that it receives bytes.
Thu, 28 Jun 2018 11:11:10 +0200 [ext/rest] Drop "handle_io_errors" argument to docutils' FileInput 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 11:11:10 +0200] rev 12333
[ext/rest] Drop "handle_io_errors" argument to docutils' FileInput This argument is deprecated and ignore in docutils since version 0.10. Besides, its default value is None which is the same as we passed.
Thu, 28 Jun 2018 10:38:04 +0200 [wdoc] Remove fallback about xml.etree module 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 10:38:04 +0200] rev 12332
[wdoc] Remove fallback about xml.etree module Module xml.etree exists since python 2.5.
Thu, 28 Jun 2018 10:15:33 +0200 [wdoc] Avoid usage of deprecated xlm elementree getchildren() method 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 10:15:33 +0200] rev 12331
[wdoc] Avoid usage of deprecated xlm elementree getchildren() method Use list(node) as suggested by the deprecation warning.
Thu, 28 Jun 2018 09:43:23 +0200 [style] Make cubicweb/web/views/wdoc.py flake8-clean 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 09:43:23 +0200] rev 12330
[style] Make cubicweb/web/views/wdoc.py flake8-clean
Thu, 28 Jun 2018 09:38:38 +0200 [py3] Use six.text_type instead of unicode in wdoc views 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 28 Jun 2018 09:38:38 +0200] rev 12329
[py3] Use six.text_type instead of unicode in wdoc views
Thu, 28 Jun 2018 10:17:15 +0200 [views/startup] drop a duplicate rql query in manage view
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Jun 2018 10:17:15 +0200] rev 12328
[views/startup] drop a duplicate rql query in manage view Counting entities in `nb` is already done above this code, regression introduced by a85db6fa
Tue, 19 Jun 2018 09:13:40 +0200 Merge with 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 19 Jun 2018 09:13:40 +0200] rev 12327
Merge with 3.26
Mon, 18 Jun 2018 10:04:08 +0200 Added tag 3.26.4, debian/3.26.4-1 for changeset e1c1af68db86 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 18 Jun 2018 10:04:08 +0200] rev 12326
Added tag 3.26.4, debian/3.26.4-1 for changeset e1c1af68db86
Mon, 18 Jun 2018 08:58:47 +0200 [pkg] Version 3.26.4 3.26 3.26.4 debian/3.26.4-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 18 Jun 2018 08:58:47 +0200] rev 12325
[pkg] Version 3.26.4
Fri, 15 Jun 2018 17:45:26 +0200 [py3] ensure AjaxController return bytes 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Jun 2018 17:45:26 +0200] rev 12324
[py3] ensure AjaxController return bytes publish() must return bytes, when the @ajaxfunc decorated method return None, this raised: TypeError: You cannot set Response.body to a text object (use Response.text)
Wed, 13 Jun 2018 11:09:17 +0200 [py3] Let InstanceCommand.run_arg() always return an int 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Jun 2018 11:09:17 +0200] rev 12323
[py3] Let InstanceCommand.run_arg() always return an int The caller of this method (which is method "run_args") does `max(status, self.run_arg(appid))` and run_arg might return None if the underlying <cmdname>_instance method returns None. On python3 max(1, None) breaks with "TypeError: unorderable types: int() > NoneType()". So we enforce run_arg() method to return an integer even if the underlying method returns None. This fixes call of "cubicweb-ctl i18ninstance" with Python3.
Mon, 18 Jun 2018 08:47:03 +0200 [test] Use cubicweb-file < 2.0.0 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 18 Jun 2018 08:47:03 +0200] rev 12322
[test] Use cubicweb-file < 2.0.0 From version 2.0.0, cubicweb-file moved to new-style layout (Python package) but we still expect it to be an old-style cube in CubicWeb's tests (WebconfigTC in web/test/unittest_webconfig.py).
Wed, 06 Jun 2018 11:56:15 +0200 [py3] Decode subprocess stdout in toolsutils.show_diffs() 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 06 Jun 2018 11:56:15 +0200] rev 12321
[py3] Decode subprocess stdout in toolsutils.show_diffs() On Python 3, subprocess' pipes are bytes stream so we must decode them before printing. Without this change, diff of configuration files (e.g. all-in-one.conf as displayed upon instance upgrade) will rendered as a single line on Python 3.
Thu, 03 May 2018 16:47:51 +0200 [python3] make sure staticcontroller returns a bytes instance 3.26
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 03 May 2018 16:47:51 +0200] rev 12320
[python3] make sure staticcontroller returns a bytes instance The ``publish()`` method of controller is supposed to return a bytes intsance. Returning a text_type instance will crash later on in the Pyramid response handler when assigning content to ``response.body`` (at least in Python3):: >>> from pyramid.response import Response >>> r = Response() >>> r.body = '' Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/adim/.virtualenvs/…/response.py", line 562, in _body__set raise TypeError(msg) TypeError: You cannot set Response.body to a text object (use Response.text)
Thu, 03 May 2018 14:05:26 +0200 [python3] use inspect.getfullargspec instead of inspect.getargspec 3.26
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 03 May 2018 14:05:26 +0200] rev 12319
[python3] use inspect.getfullargspec instead of inspect.getargspec The latter is now deprecated
Fri, 15 Jun 2018 17:45:26 +0200 [py3] ensure AjaxController return bytes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Jun 2018 17:45:26 +0200] rev 12318
[py3] ensure AjaxController return bytes publish() must return bytes, when the @ajaxfunc decorated method return None, this raised: TypeError: You cannot set Response.body to a text object (use Response.text)
Wed, 13 Jun 2018 11:09:17 +0200 [py3] Let InstanceCommand.run_arg() always return an int
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Jun 2018 11:09:17 +0200] rev 12317
[py3] Let InstanceCommand.run_arg() always return an int The caller of this method (which is method "run_args") does `max(status, self.run_arg(appid))` and run_arg might return None if the underlying <cmdname>_instance method returns None. On python3 max(1, None) breaks with "TypeError: unorderable types: int() > NoneType()". So we enforce run_arg() method to return an integer even if the underlying method returns None. This fixes call of "cubicweb-ctl i18ninstance" with Python3.
Fri, 15 Jun 2018 17:42:50 +0200 Depend on cubicweb-file >= 2.0.0
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Jun 2018 17:42:50 +0200] rev 12316
Depend on cubicweb-file >= 2.0.0 I applied V1 of the patch, but V2 contained this extra hunk...
Mon, 11 Jun 2018 16:50:38 +0200 [test] Update webconfig's tests accounting for cubicweb-file being now a package
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 11 Jun 2018 16:50:38 +0200] rev 12315
[test] Update webconfig's tests accounting for cubicweb-file being now a package WebconfigTC.test_locate_all_files and WebconfigTC.test_locate_resource assumed that cubicweb-file was installed in <share>/cubes/file whereas, from the latest release, it is now a standard Python package thus installed in site-packages as cubicweb_file. We simply update base directory of these two tests.
Wed, 06 Jun 2018 18:54:24 +0200 [widgets.js] fix obvious bug detected by sonar
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 06 Jun 2018 18:54:24 +0200] rev 12314
[widgets.js] fix obvious bug detected by sonar
Wed, 06 Jun 2018 18:37:16 +0200 [views/uicfg] obvious bug detected by sonar
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 06 Jun 2018 18:37:16 +0200] rev 12313
[views/uicfg] obvious bug detected by sonar
Wed, 06 Jun 2018 14:20:16 +0200 [style] Make toolsutils.py flake8-clean
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 06 Jun 2018 14:20:16 +0200] rev 12312
[style] Make toolsutils.py flake8-clean Run `autopep8 --max-line-length 100 -i cubicweb/toolsutils.py` and fixed unused imports.
Wed, 06 Jun 2018 11:56:15 +0200 [py3] Decode subprocess stdout in toolsutils.show_diffs()
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 06 Jun 2018 11:56:15 +0200] rev 12311
[py3] Decode subprocess stdout in toolsutils.show_diffs() On Python 3, subprocess' pipes are bytes stream so we must decode them before printing. Without this change, diff of configuration files (e.g. all-in-one.conf as displayed upon instance upgrade) will rendered as a single line on Python 3.
Thu, 03 May 2018 16:47:51 +0200 [python3] make sure staticcontroller returns a bytes instance
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 03 May 2018 16:47:51 +0200] rev 12310
[python3] make sure staticcontroller returns a bytes instance The ``publish()`` method of controller is supposed to return a bytes intsance. Returning a text_type instance will crash later on in the Pyramid response handler when assigning content to ``response.body`` (at least in Python3):: >>> from pyramid.response import Response >>> r = Response() >>> r.body = '' Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/adim/.virtualenvs/…/response.py", line 562, in _body__set raise TypeError(msg) TypeError: You cannot set Response.body to a text object (use Response.text)
Thu, 03 May 2018 14:05:26 +0200 [python3] use inspect.getfullargspec instead of inspect.getargspec
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 03 May 2018 14:05:26 +0200] rev 12309
[python3] use inspect.getfullargspec instead of inspect.getargspec The latter is now deprecated
Wed, 25 Apr 2018 15:29:25 +0200 [utils] Fixes compatiblity of QueryCache with expected dict interface
Laurent Wouters <lwouters@cenotelie.fr> [Wed, 25 Apr 2018 15:29:25 +0200] rev 12308
[utils] Fixes compatiblity of QueryCache with expected dict interface QueryCache is expected to mimick the interface of the dict built-in. The current __iter__ implementation breaks this expectation by iterating over key, value pairs instead of only the keys. This changeset fixes this issue by changing the __iter__ implementation to iterate over the keys in the cache and providing an implementation of the items method with a contract identical to the dict build-in (return a copy of the key- value pairs within the dictionary as a list).
Tue, 24 Apr 2018 15:21:18 +0200 [test/statsd] add tests for cubicweb.statsd_logger
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 15:21:18 +0200] rev 12307
[test/statsd] add tests for cubicweb.statsd_logger
Tue, 24 Apr 2018 17:16:44 +0200 [utils] Implements __iter__ on QueryCache
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 24 Apr 2018 17:16:44 +0200] rev 12306
[utils] Implements __iter__ on QueryCache In order to be able to iterate over the currently cached queries (so that they may be inspected and invalidated), this changeset implementes __iter__ on QueryCache.
Tue, 24 Apr 2018 17:30:43 +0200 [utils] Added new get method to QueryCache
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 24 Apr 2018 17:30:43 +0200] rev 12305
[utils] Added new get method to QueryCache The new get method enables the retrieval an item in the cache by specifying a default value so that in the absence of an item for the key, the default value is returned.
Tue, 24 Apr 2018 15:21:38 +0200 [test/rset] typo
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 15:21:38 +0200] rev 12304
[test/rset] typo
Tue, 24 Apr 2018 11:22:17 +0200 [utils] Fixed issue in clearing QueryCache
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 24 Apr 2018 11:22:17 +0200] rev 12303
[utils] Fixed issue in clearing QueryCache When trying to add an item in a full QueryCache, the cache tries to make room. It tries to list and remove non-permanent items with a transient counter (number of times it has been requested). However, there is a pathological case where items could be non-permanent but still not have a transient counter because they were added, but never requested. In some cases, the full cache could be flushed, including the permanent items. This changeset attempts to fix this issue by only dropping the non-permanent items that did not hav a transient counter.
Mon, 13 Nov 2017 16:08:58 +0100 [statsd] add a statsd_timethis context manager
David Douard <david.douard@logilab.fr> [Mon, 13 Nov 2017 16:08:58 +0100] rev 12302
[statsd] add a statsd_timethis context manager This context manager allows to report to statsd the execution time of any piece of code, without the need for it to be a function or a method, like:: def some_function(): do_stuff() with statsd_timethis('some context message'): do_that() ensure_this()
Tue, 24 Apr 2018 14:16:14 +0200 [test/rset] add tests for ResultSet.first() and .last() methods
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 14:16:14 +0200] rev 12301
[test/rset] add tests for ResultSet.first() and .last() methods
Tue, 24 Apr 2018 14:04:43 +0200 [test/rset] flake8
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 14:04:43 +0200] rev 12300
[test/rset] flake8
Tue, 24 Apr 2018 13:55:20 +0200 [rset] update copyright
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 13:55:20 +0200] rev 12299
[rset] update copyright
Thu, 21 Sep 2017 16:29:26 +0200 [rset] add convenient first() and last() methods on ResultSet
David Douard <david.douard@logilab.fr> [Thu, 21 Sep 2017 16:29:26 +0200] rev 12298
[rset] add convenient first() and last() methods on ResultSet These make life easier for the heavy user of the CW shell. Also aliases entities() with all(); so we end with a pretty consistant set: - .one() - .first() - .last() - .all()
Tue, 24 Apr 2018 10:19:42 +0200 [server] Fixed issue with the adapters cache of a cloned EditedEntity
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 24 Apr 2018 10:19:42 +0200] rev 12297
[server] Fixed issue with the adapters cache of a cloned EditedEntity The adapters' cache of the entity within an EditedEntity used to be copied along the entity itself during a cloning operation of the EditedEntity. This raises an issue when the adapters' cache is not empty and contains cached values linking to transaction-specific data (or the transaction itself). This prevents the clone EditedEntity being used in a transaction outside the one that created it. This change resets the adapters' cache of the new copy so that no cached value remain. The new copy can then be used in a new transaction afterwards.
Thu, 12 Oct 2017 15:22:00 +0200 [rql2sql] fix handling of the ORDERBY clause when the aggregation function is "embedded" 3.26
David Douard <david.douard@logilab.fr> [Thu, 12 Oct 2017 15:22:00 +0200] rev 12296
[rql2sql] fix handling of the ORDERBY clause when the aggregation function is "embedded" ie. a situation like: Any X GROUPBY X ORDERBY COUNT(Y) WHERE ... works fine since the aggregation function (COUNT) if the first one, whereas a situation like the proposed test: Any X GROUPBY X ORDERBY ABS(COUNT(Y)) WHERE ... failed due to the fact we only checked the top aggratation function (ABS). Closes #17108671
Mon, 23 Apr 2018 15:23:55 +0200 Merge 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 23 Apr 2018 15:23:55 +0200] rev 12295
Merge 3.26
Mon, 23 Apr 2018 13:50:50 +0200 [pkg] Set version to 3.27.0.dev0
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 23 Apr 2018 13:50:50 +0200] rev 12294
[pkg] Set version to 3.27.0.dev0
Mon, 23 Apr 2018 15:19:19 +0200 Added tag 3.26.3, debian/3.26.3-1 for changeset f7067be5f69c 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 23 Apr 2018 15:19:19 +0200] rev 12293
Added tag 3.26.3, debian/3.26.3-1 for changeset f7067be5f69c
Mon, 23 Apr 2018 15:17:36 +0200 [pkg] Version 3.26.3 3.26 3.26.3 debian/3.26.3-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 23 Apr 2018 15:17:36 +0200] rev 12292
[pkg] Version 3.26.3
Mon, 16 Oct 2017 12:10:19 +0200 [utils/statsd_logger] flake8 3.26
David Douard <david.douard@logilab.fr> [Mon, 16 Oct 2017 12:10:19 +0200] rev 12291
[utils/statsd_logger] flake8
Wed, 13 Dec 2017 01:23:39 +0100 [source/native] do NOT do anything with fti if do_fti is False 3.26
David Douard <david.douard@logilab.fr> [Wed, 13 Dec 2017 01:23:39 +0100] rev 12290
[source/native] do NOT do anything with fti if do_fti is False ensure no fti related process is done when fti is disabled on a db source.
Thu, 19 Apr 2018 15:55:33 +0200 [test/web] flake8 unittest_propertysheet.py 3.26
David Douard <david.douard@logilab.fr> [Thu, 19 Apr 2018 15:55:33 +0200] rev 12289
[test/web] flake8 unittest_propertysheet.py
Thu, 19 Apr 2018 12:47:48 +0200 [web] fix css file generation permission bug (closes #17143773) 3.26
David Douard <david.douard@logilab.fr> [Thu, 19 Apr 2018 12:47:48 +0200] rev 12288
[web] fix css file generation permission bug (closes #17143773) PropertySheet.process_resource() uses mkstemp which enforce a 0600 mode on the output file, which is not the file permission we want for css files.
Thu, 19 Apr 2018 12:45:24 +0200 [test/web] add a test for css generation file permission problem (related to #17143773) 3.26
David Douard <david.douard@logilab.fr> [Thu, 19 Apr 2018 12:45:24 +0200] rev 12287
[test/web] add a test for css generation file permission problem (related to #17143773)
Thu, 19 Apr 2018 15:05:55 +0200 [doc] include the 3.26 changelog in changes's index 3.26
David Douard <david.douard@logilab.fr> [Thu, 19 Apr 2018 15:05:55 +0200] rev 12286
[doc] include the 3.26 changelog in changes's index
Thu, 22 Mar 2018 14:45:11 +0100 [server] set PGPASSWORD when running pg commands for backup and restore 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 22 Mar 2018 14:45:11 +0100] rev 12285
[server] set PGPASSWORD when running pg commands for backup and restore For db-dump (implied by upgrade) and db-restore with postgres with non-trusted authentication, the db password is asked by pg tools (pg_dump, pg_restore, createdb, dropdb). Avoid this behavior by setting the PGPASSWORD environment variable when database driver is postgres and db-password is set in sources file.
Thu, 22 Mar 2018 14:17:40 +0100 Added tag 3.26.2, centos/3.26.2-1, debian/3.26.2-1 for changeset 9bee3134d304 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Mar 2018 14:17:40 +0100] rev 12284
Added tag 3.26.2, centos/3.26.2-1, debian/3.26.2-1 for changeset 9bee3134d304
Thu, 22 Mar 2018 13:53:33 +0100 [pkg] Version 3.26.2 3.26 3.26.2 centos/3.26.2-1 debian/3.26.2-1
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Mar 2018 13:53:33 +0100] rev 12283
[pkg] Version 3.26.2
Thu, 22 Mar 2018 10:02:59 +0100 Flake8 cubicweb/web/webctl.py 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Mar 2018 10:02:59 +0100] rev 12282
Flake8 cubicweb/web/webctl.py Having the file flake8 clean makes it easier to catch basic programming errors (e.g. name errors).
Thu, 22 Mar 2018 10:04:54 +0100 [web] Add missing import of _DATA_DIR in webctl 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Mar 2018 10:04:54 +0100] rev 12281
[web] Add missing import of _DATA_DIR in webctl Followup on d84bc85f7f70 which introduced usage of this name in _datadirs method of GenStaticDataDirMixIn but resulted into a NameError at runtime and makes migrations crash.
Thu, 15 Feb 2018 11:04:20 +0100 [server] unicode → text_type in utils 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 11:04:20 +0100] rev 12280
[server] unicode → text_type in utils
Thu, 15 Feb 2018 11:02:48 +0100 [views] unicode → six.text_type in views/authentication.py 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 11:02:48 +0100] rev 12279
[views] unicode → six.text_type in views/authentication.py
Mon, 05 Mar 2018 10:32:58 +0100 [pyramid] Recreate CWSession entity when eid no longer exists 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 05 Mar 2018 10:32:58 +0100] rev 12278
[pyramid] Recreate CWSession entity when eid no longer exists As noted in comment, it might occur that we receive a "sessioneid" from a valid cookie while respective CWSession got dropped (typical case is db being recreated while users got preserved). In such case, we just recreate the CWSession entity as if it did not exist.
Thu, 22 Feb 2018 16:22:55 +0100 Added tag 3.26.1, debian/3.26.1-1, centos/3.26.1-1 for changeset 027676243aaa 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Feb 2018 16:22:55 +0100] rev 12277
Added tag 3.26.1, debian/3.26.1-1, centos/3.26.1-1 for changeset 027676243aaa
Thu, 22 Feb 2018 16:13:45 +0100 [pkg] Drop non-existant files from MANIFEST.in 3.26 3.26.1 centos/3.26.1-1 debian/3.26.1-1
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Feb 2018 16:13:45 +0100] rev 12276
[pkg] Drop non-existant files from MANIFEST.in
Wed, 21 Feb 2018 18:07:24 +0100 [pkg] Version 3.26.1 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 21 Feb 2018 18:07:24 +0100] rev 12275
[pkg] Version 3.26.1
Thu, 15 Feb 2018 14:20:11 +0100 [test] Drop an unused function in cwconfig tests 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 14:20:11 +0100] rev 12274
[test] Drop an unused function in cwconfig tests
Thu, 15 Feb 2018 14:19:15 +0100 [cwconfig] Always use "sys.prefix" to determine installation prefix 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 14:19:15 +0100] rev 12273
[cwconfig] Always use "sys.prefix" to determine installation prefix We drop all legacy logic implemented in _find_prefix() which now happens to be buggy since we cleaned up setup.py in 3.26 (noticeably because virtualenv is no longer properly detected). Closes #17132990.
Thu, 15 Feb 2018 10:55:49 +0100 [cwconfig] Look for migration scripts directory relatively to code 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 10:55:49 +0100] rev 12272
[cwconfig] Look for migration scripts directory relatively to code Thus getting rid of the last piece of data in "shared" directory. As a consequence, we can drop data_files from __pkginfo__.py. Related to #17132990.
Thu, 15 Feb 2018 10:26:55 +0100 [pkg] Get rid of "pydir" in __pkginfo__.py 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 10:26:55 +0100] rev 12271
[pkg] Get rid of "pydir" in __pkginfo__.py Nothing uses this.
Thu, 15 Feb 2018 10:24:13 +0100 [pkg] Get rid of "shared" data 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 10:24:13 +0100] rev 12270
[pkg] Get rid of "shared" data These are not used anymore per previous changesets. Related to #17132990.
Thu, 15 Feb 2018 10:11:16 +0100 [cwconfig] Drop shared_dir method 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 10:11:16 +0100] rev 12269
[cwconfig] Drop shared_dir method There's no more users of this method. Related to #17132990.
Thu, 15 Feb 2018 13:45:06 +0100 [config] Avoid relying on shared_dir method when possible 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 13:45:06 +0100] rev 12268
[config] Avoid relying on shared_dir method when possible From 3.26, some "data" directories (like web/data and i18n or wdoc) are installed along with CubicWeb in site packages. So we can retrieve them relatively to the module that needs them (namely "cubicweb" for "i18n" and "cubicweb.web" for "web/data" and "wdoc"). Reason for doing this is that "share_dir()" is not working when cubicweb is installed in "develop" mode and we are about to drop this method. Related to #17132990.
Thu, 15 Feb 2018 14:11:18 +0100 [test] Add a test for WebConfiguration.locate_all_files() 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 14:11:18 +0100] rev 12267
[test] Add a test for WebConfiguration.locate_all_files() We are going to change the implementation, make sure there's no regression.
Thu, 15 Feb 2018 09:35:48 +0100 [cwconfig] Get rid of _forced_mode global 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 09:35:48 +0100] rev 12266
[cwconfig] Get rid of _forced_mode global And compute CubicWebNoAppConfiguration.mode within the class namespace. Related to #17132990.
Thu, 15 Feb 2018 09:27:15 +0100 [cwconfig] Get rid of CWDEV 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 09:27:15 +0100] rev 12265
[cwconfig] Get rid of CWDEV This is in preparation of a fix for #17132990 to cleanup legacy (and probably no longer working) behaviors.
Thu, 15 Feb 2018 09:26:02 +0100 [doc] Set release date of 3.26 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Feb 2018 09:26:02 +0100] rev 12264
[doc] Set release date of 3.26
Tue, 06 Feb 2018 16:31:49 +0100 [web] Fix UnboundLocalError about "exc" in ajax controller 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Feb 2018 16:31:49 +0100] rev 12263
[web] Fix UnboundLocalError about "exc" in ajax controller Introduced in 159dce89a145.
Wed, 07 Feb 2018 09:20:32 +0100 Link to "3.26" docs in README 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 07 Feb 2018 09:20:32 +0100] rev 12262
Link to "3.26" docs in README
Thu, 01 Feb 2018 09:49:56 +0100 Added tag 3.26.0, debian/3.26.0-1, centos/3.26.0-1 for changeset 199851fcddd4 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 01 Feb 2018 09:49:56 +0100] rev 12261
Added tag 3.26.0, debian/3.26.0-1, centos/3.26.0-1 for changeset 199851fcddd4
Thu, 01 Feb 2018 09:24:52 +0100 [pkg] Version 3.26.0 3.26 3.26.0 centos/3.26.0-1 debian/3.26.0-1
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 01 Feb 2018 09:24:52 +0100] rev 12260
[pkg] Version 3.26.0
Thu, 25 Jan 2018 12:10:48 +0100 [pkg] Version 3.26.0rc0 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 25 Jan 2018 12:10:48 +0100] rev 12259
[pkg] Version 3.26.0rc0
Fri, 12 Jan 2018 10:17:10 +0100 [schema] Define a decorator to handle methods override
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jan 2018 10:17:10 +0100] rev 12258
[schema] Define a decorator to handle methods override There is a number of external classes (from yams/rql) methods overridden "by hand" in cubicweb/schema.py. Define a single decorator to factor out the pattern. It handles specifying the method name (to avoid conflict with the local namespace) and passing the original method to the new definition when needed.
Wed, 24 Jan 2018 12:03:21 +0100 [pkg] Use setuptools.find_packages()
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 12:03:21 +0100] rev 12257
[pkg] Use setuptools.find_packages() We drop the custom get_packages() function in setup.py that used to look for test files (not discovered automatically since test directories are not packages) and replace it by explicit entries in MANIFEST.in.
Wed, 24 Jan 2018 11:51:23 +0100 [pkg] Drop SandboxViolation verification cracking
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 11:51:23 +0100] rev 12256
[pkg] Drop SandboxViolation verification cracking Dunno what this is for. Let's see if this work without.
Wed, 24 Jan 2018 11:43:13 +0100 [pkg] Drop custom "install_data" command
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 11:43:13 +0100] rev 12255
[pkg] Drop custom "install_data" command Not sure what this is for, the comment mentions "egg" directory, but this is quite likely an old hack that should be unnecessary when using a recent setuptools.
Wed, 24 Jan 2018 11:40:12 +0100 [pkg] Replace custom "scripts" handling by a setuptools entry points
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 11:40:12 +0100] rev 12254
[pkg] Replace custom "scripts" handling by a setuptools entry points http://setuptools.readthedocs.io/en/latest/setuptools.html#automatic-script-creation
Wed, 24 Jan 2018 13:30:50 +0100 Set a default value for arguments of cubicweb.cwctl:run()
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 13:30:50 +0100] rev 12253
Set a default value for arguments of cubicweb.cwctl:run() This will help making a console script entry point from this to get rid of the custom installation of scripts in setup.py. Accordingly, update all calls of this function.
Wed, 24 Jan 2018 11:34:44 +0100 [pkg] Drop custom install_lib command and use include_package_data instead
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 11:34:44 +0100] rev 12252
[pkg] Drop custom install_lib command and use include_package_data instead The custom install_lib command appeared to be meant to install package data, as declared in __pkginfo__.py. Let's rely on setuptools' include_package_data[1] option to handle this. [1]: http://setuptools.readthedocs.io/en/latest/setuptools.html#including-data-files
Wed, 24 Jan 2018 14:45:26 +0100 [py3] Replace a unicode() occurrence in workflow views
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 14:45:26 +0100] rev 12251
[py3] Replace a unicode() occurrence in workflow views
Wed, 24 Jan 2018 14:41:01 +0100 [py3] Drop a couple of unicode() in devtools.testlib
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 14:41:01 +0100] rev 12250
[py3] Drop a couple of unicode() in devtools.testlib
Wed, 24 Jan 2018 14:38:39 +0100 [py3] Alias long to int in pgstore tests
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jan 2018 14:38:39 +0100] rev 12249
[py3] Alias long to int in pgstore tests The previous version of handling PY2/PY3 made flake8 complain.
Fri, 12 Jan 2018 11:02:52 +0100 Merge with 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jan 2018 11:02:52 +0100] rev 12248
Merge with 3.25
Fri, 12 Jan 2018 10:56:30 +0100 Added tag 3.25.4, centos/3.25.4-1, debian/3.25.4-1 for changeset b8567725c473 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jan 2018 10:56:30 +0100] rev 12247
Added tag 3.25.4, centos/3.25.4-1, debian/3.25.4-1 for changeset b8567725c473
Fri, 12 Jan 2018 10:48:34 +0100 [pkg] Version 3.25.4 3.25 3.25.4 centos/3.25.4-1 debian/3.25.4-1
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jan 2018 10:48:34 +0100] rev 12246
[pkg] Version 3.25.4
Tue, 12 Dec 2017 11:17:25 +0100 [pyramid] Let logging be configured through .ini file
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Dec 2017 11:17:25 +0100] rev 12245
[pyramid] Let logging be configured through .ini file We do not initialize logging in CubicWebPyramidConfiguration thus preventing logging to be started with cubicweb's configuration. On the other hand, any logging configuration defined in ``development.ini`` file will be loaded by whatever start the instance using this file (i.e. pserve, gunicorn, etc.). The benefit is that logging can now be configured per "qualified name" in this file (i.e. one can easily set the DEBUG level for the application cube while keeping all dependencies' level to WARNING). In the development.ini template, we add logger configurations for "logilab" and "cubicweb" qualified names (along with those of the application cube).
Fri, 01 Dec 2017 11:19:19 +0100 Disable pytest's logs reporting
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 01 Dec 2017 11:19:19 +0100] rev 12244
Disable pytest's logs reporting CubicWeb already prints captured logs in stderr upon test failure, so we get them twice. Until we fix our logging management, disabling pytest capture and restore brings the output level back to sanity.
Fri, 01 Dec 2017 11:12:09 +0100 [pyramid] Do not issue security warnings in test mode
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 01 Dec 2017 11:12:09 +0100] rev 12243
[pyramid] Do not issue security warnings in test mode When some session or authtk secret is missing in Pyramid settings, scary "!! SECURITY WARNING !!" are issued. This is arguably pointless in tests. So disable them in this case.
Thu, 30 Nov 2017 11:55:35 +0100 [ssplanner] Prevent execution of write queries involving computed relations
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 30 Nov 2017 11:55:35 +0100] rev 12242
[ssplanner] Prevent execution of write queries involving computed relations Previously, setting a computed relation upon entity creation or modification (using the ORM or an RQL query) would usually fail with an operational error in the backend ("no such table"). However, under some mysterious circumstances (like passing a string as value in cw_set for a computed relation), the RQL to SQL transformation would simply drop the clause. To prevent this to happen, we add a check for computed relation before adding a relation to an execution plan. This check raises a QueryError. It happens in several places: * in querier.InsertPlan.add_relation_def() (called from several places in ssplanner steps) for INSERT queries, * in ssplanner.UpdateStep.execute() for SET queries and, * in ssplanner.SSplanner.build_delete_plan() for DELETE queries. Tests added to unittest_querier.py because unittest_sslplanner.py looked inappropriate (it has only unit tests) and the former already had a NonRegressionTC class.
Thu, 30 Nov 2017 11:00:01 +0100 [querier] Expand 'rdef' argument in InsertPlan.add_relation_def()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 30 Nov 2017 11:00:01 +0100] rev 12241
[querier] Expand 'rdef' argument in InsertPlan.add_relation_def() Expand the 'rdef' tuple to improve readability. The 'rtype' value is not used at the moment, but will in the next changeset.
Thu, 30 Nov 2017 11:20:58 +0100 [server] Use dict.setdefault() instead of if/else in repo.glob_add_relations()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 30 Nov 2017 11:20:58 +0100] rev 12240
[server] Use dict.setdefault() instead of if/else in repo.glob_add_relations()
Fri, 03 Nov 2017 15:26:32 +0100 [cleanup] Fix some flake8 errors
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Nov 2017 15:26:32 +0100] rev 12239
[cleanup] Fix some flake8 errors
Fri, 03 Nov 2017 15:26:04 +0100 [test] Stop using lgc.testlib in unittest_migractions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Nov 2017 15:26:04 +0100] rev 12238
[test] Stop using lgc.testlib in unittest_migractions
Fri, 03 Nov 2017 16:31:59 +0100 [test] Drop no more used "maxeid" based deletion in BaseQuerierTC and derived tests
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Nov 2017 16:31:59 +0100] rev 12237
[test] Drop no more used "maxeid" based deletion in BaseQuerierTC and derived tests This is probably only necessary for QuerierTC itself, move it there and drop incantation from other derived classes to deactivate this feature.
Fri, 15 Sep 2017 16:31:33 +0200 [rql2sql/test] Remove dead setUpModule tearDownModule
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Sep 2017 16:31:33 +0200] rev 12236
[rql2sql/test] Remove dead setUpModule tearDownModule they are overwritten a few lines below , hence this code is dead and not necessary for test success, drop it.
Fri, 15 Sep 2017 16:25:51 +0200 [rql2sql/test] Move base class from repotest to unittest_rql2sql
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Sep 2017 16:25:51 +0200] rev 12235
[rql2sql/test] Move base class from repotest to unittest_rql2sql It's only used there, so move it closer to its usage. Along the way, stop using lgc.testlib.
Fri, 15 Sep 2017 16:59:13 +0200 [rql2sql/test] Set maxDiff to None to see full diffs
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Sep 2017 16:59:13 +0200] rev 12234
[rql2sql/test] Set maxDiff to None to see full diffs this is usually useful to compare SQL strings
Fri, 15 Sep 2017 17:01:04 +0200 [rql2sql] Use string_type instead of unicode for py3k support
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 15 Sep 2017 17:01:04 +0200] rev 12233
[rql2sql] Use string_type instead of unicode for py3k support
Wed, 29 Nov 2017 17:08:05 +0100 [gcdebug] Only ignore weakref.WeakKeyDictionary class on Python 2
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Nov 2017 17:08:05 +0100] rev 12232
[gcdebug] Only ignore weakref.WeakKeyDictionary class on Python 2 From Python 3.5, this class fails isinstance check with the following error: :: cls = <class 'weakref.WeakKeyDictionary'>, instance = <functools._lru_list_elem object at 0x7f4331859a48> def __instancecheck__(cls, instance): """Override for isinstance(instance, cls).""" # Inline the cache checking > subclass = instance.__class__ E AssertionError: [<class 'AttributeError'> in gc] 'functools._lru_list_elem' object has no attribute '__class__' /usr/lib/python3.5/abc.py:181: AssertionError I have no clue why this happens, but it makes cubicweb.web.test.test_views.AutomaticWebTest.test_startup_views fail on Python 3.5. So only consider this class for Python 2.
Wed, 29 Nov 2017 16:14:57 +0100 [wsgi] Convert "code" passed to WSGIResponse as integer
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Nov 2017 16:14:57 +0100] rev 12231
[wsgi] Convert "code" passed to WSGIResponse as integer WSGIResponse is passed a Request.status_out in CubicWebWSGIApplication._render(), which, starting from Python 3.5, is an instance of HTTPStatus. However, webtest still expects a 3-digits value as status string. Fortunately, calling int() on an HTTPStatus works.
Wed, 29 Nov 2017 15:50:07 +0100 [test] Add a "version" to cubicweb_mycube/__pkginfo__.py
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Nov 2017 15:50:07 +0100] rev 12230
[test] Add a "version" to cubicweb_mycube/__pkginfo__.py Starting from Python 3.5, unittest_cwctl.py::CubicWebCtlTC.test_list() would fail without this.
Tue, 28 Nov 2017 15:43:55 +0100 [tox] Use py3 environment instead of py34
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Nov 2017 15:43:55 +0100] rev 12229
[tox] Use py3 environment instead of py34 The former would select any Python 3 interpreter.
Fri, 03 Nov 2017 15:02:03 +0100 [querier] Allow usage of computed relation into WHERE clause of write queries 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Nov 2017 15:02:03 +0100] rev 12228
[querier] Allow usage of computed relation into WHERE clause of write queries This used to crash because of an attempt to access unexisting table. Closes #17113286
Fri, 03 Nov 2017 12:27:51 +0100 [cleanup] Fix some flake8 errors
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Nov 2017 12:27:51 +0100] rev 12227
[cleanup] Fix some flake8 errors
Mon, 30 Oct 2017 09:37:20 +0100 [tox] Bump flake8 version to 3.5
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:37:20 +0100] rev 12226
[tox] Bump flake8 version to 3.5 Previous patches fixed new errors raised in this version.
Mon, 30 Oct 2017 09:32:26 +0100 [pyramid] Get rid of a couple of bare "except"
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:32:26 +0100] rev 12225
[pyramid] Get rid of a couple of bare "except"
Mon, 30 Oct 2017 09:28:52 +0100 [pyramid] Get rid of a bare "except" in UpdateLoginTimeAuthenticationPolicy
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:28:52 +0100] rev 12224
[pyramid] Get rid of a bare "except" in UpdateLoginTimeAuthenticationPolicy Also refactor a bit the method to restrict the try/except block to the code for which we actually want to catch an exception (i.e. the cnx.execute() + cnx.commit()).
Mon, 30 Oct 2017 09:25:22 +0100 [web] Avoid bare "except" in ConcatFilesHandler.concat_cached_filepath()
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:25:22 +0100] rev 12223
[web] Avoid bare "except" in ConcatFilesHandler.concat_cached_filepath()
Mon, 30 Oct 2017 09:16:07 +0100 [test] Use ignore_errors=True in shutil.rmtree instead of try/except/pass
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:16:07 +0100] rev 12222
[test] Use ignore_errors=True in shutil.rmtree instead of try/except/pass
Mon, 30 Oct 2017 09:13:02 +0100 [server] Get rid of a bare except in sqlutils
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:13:02 +0100] rev 12221
[server] Get rid of a bare except in sqlutils
Mon, 30 Oct 2017 09:14:36 +0100 [server] Do not use logilab.common.date.strptime in sqlutils
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:14:36 +0100] rev 12220
[server] Do not use logilab.common.date.strptime in sqlutils This function is aliased to datetime.datetime.strptime() and exists only for compatibility with Python <= 2.5 which we no longer support.
Mon, 30 Oct 2017 09:08:35 +0100 [dataimport/test] Ignore flake8 error E741 in test_pgstore.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:08:35 +0100] rev 12219
[dataimport/test] Ignore flake8 error E741 in test_pgstore.py This error is about "l" being an ambiguous variable name. Here, it's arguably acceptable.
Mon, 30 Oct 2017 09:18:20 +0100 [test] Avoid ambiguous variable name "l" in unittest_req.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:18:20 +0100] rev 12218
[test] Avoid ambiguous variable name "l" in unittest_req.py This is an error (E741) from flake8 3.5.
Mon, 30 Oct 2017 09:04:34 +0100 [tox] Bound flake8 version to >=3.4, <3.5 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Oct 2017 09:04:34 +0100] rev 12217
[tox] Bound flake8 version to >=3.4, <3.5 The code base is not clean with 3.5, so keep using 3.4 in *stable* branches.
Tue, 24 Oct 2017 09:50:29 +0200 [pyramid] set waitress url_scheme to https when base-url scheme is https 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 24 Oct 2017 09:50:29 +0200] rev 12216
[pyramid] set waitress url_scheme to https when base-url scheme is https See https://docs.pylonsproject.org/projects/waitress/en/latest/#using-behind-a-reverse-proxy Since we do not configure trusted_proxy waitress ignore X-Forwarded-Proto header and may generate http urls (pyramid request.url) when the instance is behind a https reverse proxy. This cause cubicweb-signredrequest to not work with since it rely on the url (including scheme). Set url_scheme to 'https' when CubicWeb base-url scheme is https as a workaround.
Tue, 17 Oct 2017 11:59:55 +0200 Added tag 3.25.3, centos/3.25.3-1, debian/3.25.3-1 for changeset d238badfc268 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 17 Oct 2017 11:59:55 +0200] rev 12215
Added tag 3.25.3, centos/3.25.3-1, debian/3.25.3-1 for changeset d238badfc268
Tue, 17 Oct 2017 11:58:35 +0200 [pkg] version 3.25.3 3.25 3.25.3 centos/3.25.3-1 debian/3.25.3-1
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 17 Oct 2017 11:58:35 +0200] rev 12214
[pkg] version 3.25.3
Fri, 06 Oct 2017 15:14:18 +0200 [uicfg] Fix autoform_section rtags wrt derivation 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 06 Oct 2017 15:14:18 +0200] rev 12213
[uicfg] Fix autoform_section rtags wrt derivation cw 3.25 introduced the 'derived rtags' feature, but missed that `autoform_section` implementation was overriding several methods where this was implemented in the base class. The following problems are tested and fixed: * during init, we should not attempt to call `_initfunc_step2` if there is some parent, * but we should handle expansion of wildcard ('*' used as subject or object of a tag) since this is handled during init step for this class, unlike others which handle this in `get` method (i.e. at lookup time), * fix overrided `get` method to consider parent rtag if any. Closes #17107020
Fri, 06 Oct 2017 10:00:36 +0200 [rtags] Enhance repr of rtags 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 06 Oct 2017 10:00:36 +0200] rev 12212
[rtags] Enhance repr of rtags * we don't care of the class, the registry id is enough (never seen a case of sub-classing) * add the module from which the rtag is coming as well as parent rtag if any.
Fri, 06 Oct 2017 14:23:40 +0200 [web/test] Use bare unittest main instead of lgc.main 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 06 Oct 2017 14:23:40 +0200] rev 12211
[web/test] Use bare unittest main instead of lgc.main
Fri, 06 Oct 2017 14:24:35 +0200 [cleanup] Fix some flake8 errors 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 06 Oct 2017 14:24:35 +0200] rev 12210
[cleanup] Fix some flake8 errors and drop upper bound of copyright along the way. autoform module is not added to flake8-ok-files since there are some remaining errors to be handled, but that's still a start.
Fri, 15 Sep 2017 14:14:46 +0200 [doc] Update the advanced tutorial
Olivier Giorgis <olivier.giorgis@logilab.fr> [Fri, 15 Sep 2017 14:14:46 +0200] rev 12209
[doc] Update the advanced tutorial to follow the new style layout of cubes among others.
Tue, 12 Sep 2017 15:05:22 +0200 [views] Respond with 400 Bad Request in case of validation error in ajax request
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Sep 2017 15:05:22 +0200] rev 12208
[views] Respond with 400 Bad Request in case of validation error in ajax request Previously, we raised a plain RemoteCallFailed without a status code, in which case it defaults to "500 Internal Server Error". Now, for validation errors, we issue a 400 Bad Request since these are clearly client errors.
Fri, 06 Oct 2017 11:45:52 +0200 [web] fix session /cnx mix in anonymized_request 3.25
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Fri, 06 Oct 2017 11:45:52 +0200] rev 12207
[web] fix session /cnx mix in anonymized_request
Fri, 06 Oct 2017 16:59:10 +0200 [test] Pin some test dependencies
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 06 Oct 2017 16:59:10 +0200] rev 12206
[test] Pin some test dependencies We currently have CI failures because cubes used as test dependencies have been updated to new-style cube layout. To avoid this, pin them to previous released. Those dependencies should be removed but in the mean time this should be enough (and backported in all active branches).
Fri, 06 Oct 2017 16:59:10 +0200 [test] Pin some test dependencies 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 06 Oct 2017 16:59:10 +0200] rev 12205
[test] Pin some test dependencies We currently have CI failures because cubes used as test dependencies have been updated to new-style cube layout. To avoid this, pin them to previous released. Those dependencies should be removed but in the mean time this should be enough (and backported in all active branches).
Thu, 05 Oct 2017 17:24:29 +0200 [web/form] Relax condition for non-translating field names 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 05 Oct 2017 17:24:29 +0200] rev 12204
[web/form] Relax condition for non-translating field names we should test true condition instead of None, so if one raise a ValidationError using an empty string as 'no-field' marker instead of None, we don't get the PO file header that gettext likes to return when one attempt to translate an empty string.
Tue, 12 Sep 2017 09:49:30 +0200 Merge with 3.25 branch
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Sep 2017 09:49:30 +0200] rev 12203
Merge with 3.25 branch
Tue, 26 Sep 2017 10:46:43 +0200 [entities] Restore dc_ methods instead of __getattr__ proxy 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 26 Sep 2017 10:46:43 +0200] rev 12202
[entities] Restore dc_ methods instead of __getattr__ proxy In 8de62610cea2, a __getattr__ proxy was introduced to handle compatibility with dc_* methods being called on entity instances instead of through the IDublinCore adapter. Unfortunately, __getattr__ does not play well with super() and since the latter is often used by, we here restore all dc_ methods with an explicit proxy to the adapter. More verbose but should work. Closes #17103999.
Wed, 13 Sep 2017 17:19:42 +0200 [pkg] add missing unittest2 dependency to spec file 3.25
Samuel Trégouët <samuel.tregouet@logilab.fr> [Wed, 13 Sep 2017 17:19:42 +0200] rev 12201
[pkg] add missing unittest2 dependency to spec file
Tue, 12 Sep 2017 09:48:02 +0200 Added tag 3.25.2, debian/3.25.2-1, centos/3.25.2-1 for changeset 5010381099f1 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 12 Sep 2017 09:48:02 +0200] rev 12200
Added tag 3.25.2, debian/3.25.2-1, centos/3.25.2-1 for changeset 5010381099f1
Mon, 11 Sep 2017 16:19:00 +0200 [pkg] Prepare version 3.25.2 3.25 3.25.2 centos/3.25.2-1 debian/3.25.2-1
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 11 Sep 2017 16:19:00 +0200] rev 12199
[pkg] Prepare version 3.25.2
Thu, 22 Jun 2017 16:39:48 +0200 [cubicweb/pyramid] take into account two ignored CORS configuration items from all-in-one.conf 3.25
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 22 Jun 2017 16:39:48 +0200] rev 12198
[cubicweb/pyramid] take into account two ignored CORS configuration items from all-in-one.conf
Tue, 04 Apr 2017 10:50:49 +0200 [cwctl] upgrade: do delete the static data dir if verbosity is 0 (closes #17069749) 3.25
David Douard <david.douard@logilab.fr> [Tue, 04 Apr 2017 10:50:49 +0200] rev 12197
[cwctl] upgrade: do delete the static data dir if verbosity is 0 (closes #17069749)
Fri, 28 Jul 2017 08:35:01 +0000 [doc] Fix option_*() migration commands in doc 3.25
Jérôme Roy <jerome.roy@logilab.fr> [Fri, 28 Jul 2017 08:35:01 +0000] rev 12196
[doc] Fix option_*() migration commands in doc The function signature in the doc is not the same as in the code. Also option_removed should probably be removed from the doc since the function in migration.py is empty
Wed, 03 May 2017 21:58:48 +0200 [massive store] ensure the cwmassive_initialized table is deleted if needed 3.25
David Douard <david.douard@logilab.fr> [Wed, 03 May 2017 21:58:48 +0200] rev 12195
[massive store] ensure the cwmassive_initialized table is deleted if needed This may be necessary if a previous import did badly crached, leaving the cwmassive_initialized behind.
Wed, 03 May 2017 21:55:41 +0200 [server] fix deserialize_schema to handle properly pg schema (closes 17076486) 3.25
David Douard <david.douard@logilab.fr> [Wed, 03 May 2017 21:55:41 +0200] rev 12194
[server] fix deserialize_schema to handle properly pg schema (closes 17076486) Postgres behaviour is to look first for a table in the configured schema then fall back to 'public' if no table is found. This must be implemented in deserialize_schema when listing existing tables to check for computed relations (cw_cwcomputedrtype) otherwise computed relations may not work when using non-default pg schema.
Wed, 10 May 2017 15:07:18 +0200 [server/utils] update passlib API to 1.7 (closes #17054805) 3.25
David Douard <david.douard@logilab.fr> [Wed, 10 May 2017 15:07:18 +0200] rev 12193
[server/utils] update passlib API to 1.7 (closes #17054805) while keeping bw-compat with 1.6 - 2.7 is not available for all distributions, e.g. jessie. The dependancy has been bumped in 6186cd15a46d because of a change in bc9d901cb9e6. We may easily use the appropriate method depending on the version installed.
Mon, 10 Jul 2017 11:43:18 +0200 Merge with 3.25 branch
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 10 Jul 2017 11:43:18 +0200] rev 12192
Merge with 3.25 branch
Mon, 10 Jul 2017 11:41:20 +0200 Added tag 3.25.1, debian/3.25.1-1, centos/3.25.1-1 for changeset 5fe62978801a 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 10 Jul 2017 11:41:20 +0200] rev 12191
Added tag 3.25.1, debian/3.25.1-1, centos/3.25.1-1 for changeset 5fe62978801a
Mon, 10 Jul 2017 11:23:45 +0200 [pkg] Version 3.25.1 3.25 3.25.1 centos/3.25.1-1 debian/3.25.1-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 10 Jul 2017 11:23:45 +0200] rev 12190
[pkg] Version 3.25.1
Fri, 21 Apr 2017 14:01:46 +0200 [facets] Fix disappearance of navtop component on facet filtering
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 21 Apr 2017 14:01:46 +0200] rev 12189
[facets] Fix disappearance of navtop component on facet filtering which is because facets are replacing the whole #pageContent div, while this one contains other stuff than the view: * a type selector component that should be dropped for a while, * a computed title, * the page navigation. Then the view content itself is in a #contentmain div. The thing is that the navigation should be rebuilded on filtering (this is not the case for other bullets in the list above). This is currently handled specifically in the ajaxcontroller (except for the type selector which will disappear... who said it should be dropped at once?). So to fix this we: * put the page navigation into the "contentmain" div * don't replace anymore "pageContent" but "contentmain" After that we can even remove from the ajax controller the code that reimplements title handling similarly to the main template. Notice the part that changes the main template has to be ported to squareui. Closes #17074195
Mon, 19 Jun 2017 18:15:28 +0200 [web] Set response status to 400 when appropriate in ajax controller
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 19 Jun 2017 18:15:28 +0200] rev 12188
[web] Set response status to 400 when appropriate in ajax controller When this is clearly a client error, set status to 400. Otherwise, keep the default value for RemoteCallFailed (status=500).
Mon, 19 Jun 2017 18:00:26 +0200 [web] Only log exceptions in debug mode in Ajax controllers
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 19 Jun 2017 18:00:26 +0200] rev 12187
[web] Only log exceptions in debug mode in Ajax controllers When we raise a RemoteCallFailed error (erroneously turned into a '500 Internal Server Error' response, but that's another business). In production environment, we do not want to log the exception in most cases where it's actually a client error. So only log the exception in debug mode.
Tue, 06 Jun 2017 12:20:17 +0200 [pyramid] Only expose 'cubicweb.bwcompat' setting for "all-in-one" configuration type 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Jun 2017 12:20:17 +0200] rev 12186
[pyramid] Only expose 'cubicweb.bwcompat' setting for "all-in-one" configuration type The "pyramid" instance configuration does not work with "cubiwceb.bwcompat" mode (on purpose). Yet, having the setting exposed in development.ini file (generate by `cubicweb-ctl create --config pyramid <cube> <instance>` command) is misleading and we want to remove it. Thus, we only query this setting when cubicweb configuration is "all-in-one" and drop the setting line from templated development.ini file. If the option is found and True for any other configuration type, we issue a user warning (and ignore the option).
Thu, 27 Apr 2017 10:16:39 +0200 [migration] Only drop moved table entities if it does not exists 3.25
Yann Voté <yann.vote@logilab.fr> [Thu, 27 Apr 2017 10:16:39 +0200] rev 12185
[migration] Only drop moved table entities if it does not exists For very old instances (namely docaster), this table has never been created.
Fri, 05 May 2017 17:57:10 +0200 [web/views] delete: show composite entities in predictible order 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 05 May 2017 17:57:10 +0200] rev 12184
[web/views] delete: show composite entities in predictible order Iterate over relations type in alphabetical order, so the order is predictible dans does not depend on PYTHONHASHSEED.
Fri, 28 Apr 2017 09:49:37 +0200 [req] fix find() generating non-rewritable rql on non final relations
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 28 Apr 2017 09:49:37 +0200] rev 12183
[req] fix find() generating non-rewritable rql on non final relations When filtering on a relation, find() was generating rql like 'Any X WHERE X is ETYPE, X relation EID' which work without being rewritten (it should probably not), but when applying some rewrite (eg. permissions) it raise in rqlrewrite code. def _use_orig_term(self, snippet_varname, term): ... > self.rewritten[key] = term.name E AttributeError: 'Constant' object has no attribute 'name' Generate valid rql instead 'Any X WHERE X is ETYPE, X relation Y, Y eid EID'.
Wed, 26 Apr 2017 15:04:40 +0200 [req] raise KeyError instead of AssertionError in req.find()
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 26 Apr 2017 15:04:40 +0200] rev 12182
[req] raise KeyError instead of AssertionError in req.find()
Tue, 25 Apr 2017 17:31:24 +0200 [req] use format() instead of % substitution
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 25 Apr 2017 17:31:24 +0200] rev 12181
[req] use format() instead of % substitution For readability, avoid escaping using %% and use format() instead.
Tue, 25 Apr 2017 17:11:18 +0200 [test] make assertions on exception message
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 25 Apr 2017 17:11:18 +0200] rev 12180
[test] make assertions on exception message
Tue, 25 Apr 2017 17:10:16 +0200 [req] clearer exception message
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 25 Apr 2017 17:10:16 +0200] rev 12179
[req] clearer exception message Display what attribute trigger the NotImplementedError
Fri, 21 Apr 2017 10:29:44 +0200 [cleanup] Drop useless fake function
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 21 Apr 2017 10:29:44 +0200] rev 12178
[cleanup] Drop useless fake function actually not necessary.
Fri, 21 Apr 2017 10:29:07 +0200 [cleanup] Use plain unittest main in unittest_rqlrewrite
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 21 Apr 2017 10:29:07 +0200] rev 12177
[cleanup] Use plain unittest main in unittest_rqlrewrite
Tue, 25 Apr 2017 17:35:29 +0200 [cleanup] Fix flake8 error unittest_rqlrewrite
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 25 Apr 2017 17:35:29 +0200] rev 12176
[cleanup] Fix flake8 error unittest_rqlrewrite hard one!
Thu, 20 Apr 2017 18:05:06 +0200 [rqlrewrite] Enhance detection of need for Exists node
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 20 Apr 2017 18:05:06 +0200] rev 12175
[rqlrewrite] Enhance detection of need for Exists node We actually want one only if this is not a (`And` / `Or`) binary tree of `Not` or `Exists` nodes, so write a recursive function to tell so. Related to #17074119
Fri, 21 Apr 2017 09:57:04 +0200 [rqlrewrite] Fix rewrite on ambiguities introduced by NOT relation or "is IN" type restriction
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 21 Apr 2017 09:57:04 +0200] rev 12174
[rqlrewrite] Fix rewrite on ambiguities introduced by NOT relation or "is IN" type restriction When some inserted RQL snippet generate more solutions than the original RQL, the rewriter attempt to duplicate the snippet for each newly introduced solution. There are though some cases where we do not want this behaviour in case of ambiguities introduced by: * NOT(X relation Y) expression, since it won't be equivalent to NOT(X relation Y1, Y1 is Type1) OR NOT(X relation Y2, Y2 is Type2) ; * EXISTS(X relation Y, Y is IN (Type1, Type2) expression, since it's not actually necessary to split an explicitly introduced ambiguity (and it crash if we attempt to do so, so...). In test, we've to modify the `rewrite()` function because in the newly introduced test we need the same constraint to be applied to two variables in the original query, and this was not supported before. Notice the generated RQL in test is still *NOT CORRECT* "(EXISTS(NOT EXISTS() OR EXISTS(...))", or at least isn't optimal. This will be fixed in a forthcoming changeset. Related to #17074119
Wed, 19 Apr 2017 09:05:10 +0200 [dataimport] Add explanation about why external entities can't be inserted
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Apr 2017 09:05:10 +0200] rev 12173
[dataimport] Add explanation about why external entities can't be inserted By default after the import processed the importer indicates which external entities can't be inserted because they are missing dependency data (other entities, used in inlined or mandatory relations). It usually helps there to find out which extids / relations are missing, so add this to the log.
Thu, 20 Apr 2017 17:22:36 +0200 [querier] Fix typo in Unauthorized message exception
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 20 Apr 2017 17:22:36 +0200] rev 12172
[querier] Fix typo in Unauthorized message exception
Wed, 19 Apr 2017 15:09:31 +0200 [massive store] Ensure temporary metadata table get dropped
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Apr 2017 15:09:31 +0200] rev 12171
[massive store] Ensure temporary metadata table get dropped even if there is some integrity errors while inserting entity values or setting back index/constraints, or any other errors. In case of exception, rollback to ensure we're not committing undesired intermediate state.
Wed, 19 Apr 2017 10:09:25 +0200 [test] Stop using lgc.testlib.unittest_main in dataimport's test_sqlgenstore.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Apr 2017 10:09:25 +0200] rev 12170
[test] Stop using lgc.testlib.unittest_main in dataimport's test_sqlgenstore.py
Wed, 19 Apr 2017 10:08:59 +0200 [test/cleanup] Cleanup flake8 errors in dataimport's test_sqlgenstore
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Apr 2017 10:08:59 +0200] rev 12169
[test/cleanup] Cleanup flake8 errors in dataimport's test_sqlgenstore
Wed, 19 Apr 2017 10:18:47 +0200 [pkg] Fix path error in flake8-ok-files
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Apr 2017 10:18:47 +0200] rev 12168
[pkg] Fix path error in flake8-ok-files 'sources' is a subpackage of 'server'.
Wed, 19 Apr 2017 15:16:10 +0200 [cleanup] Fix undetected pep8 error
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Apr 2017 15:16:10 +0200] rev 12167
[cleanup] Fix undetected pep8 error
Wed, 19 Apr 2017 11:10:58 +0200 [doc] Set release date of 3.25 in changelog 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 19 Apr 2017 11:10:58 +0200] rev 12166
[doc] Set release date of 3.25 in changelog
Fri, 14 Apr 2017 17:17:12 +0200 [cwconfig] load appobjects subpackages recursively 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 14 Apr 2017 17:17:12 +0200] rev 12165
[cwconfig] load appobjects subpackages recursively This is a regression appeared in 3.25.0. Appobjects (entities, views etc) subpackages should be loaded recursively, this is the historical behavior, relevant code is in logilab.common.registry._toload_info(). To keep historical behavior schema subpackages should not be loaded, relevant code is in yams.reader.get_schema_files(). We may want to have a consistent behavior later on... Closes #17073706.
Fri, 14 Apr 2017 15:40:49 +0200 [pkg] Set version to 3.26.0.dev0
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 14 Apr 2017 15:40:49 +0200] rev 12164
[pkg] Set version to 3.26.0.dev0
Fri, 14 Apr 2017 15:40:15 +0200 Merge with 3.25 branch
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 14 Apr 2017 15:40:15 +0200] rev 12163
Merge with 3.25 branch
Fri, 14 Apr 2017 15:32:17 +0200 Added tag 3.25.0, debian/3.25.0-1, centos/3.25.0-1 for changeset dacc5b168e29 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 14 Apr 2017 15:32:17 +0200] rev 12162
Added tag 3.25.0, debian/3.25.0-1, centos/3.25.0-1 for changeset dacc5b168e29
Fri, 14 Apr 2017 15:15:27 +0200 [pkg] Version 3.25.0 3.25 3.25.0 centos/3.25.0-1 debian/3.25.0-1
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 14 Apr 2017 15:15:27 +0200] rev 12161
[pkg] Version 3.25.0
Thu, 13 Apr 2017 15:04:45 +0200 [entities] Fix backward compat of IDublinCore adapter wrt dc_long_title 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 13 Apr 2017 15:04:45 +0200] rev 12160
[entities] Fix backward compat of IDublinCore adapter wrt dc_long_title `entity.dc_long_title()` used to fallback to `dc_title()`, and most entity types were relying on this, thus only implementing the later. Since introduction of the IDublinCore adapter, if one call `entity.dc_long_title()` on an entity that only implements `dc_title()`, it will retrieve the adapter which will then call its own `title()` method instead of the `dc_title()` method of the entity as expected. Fix this by calling instead `entity.dc_title()` which will eventually kick in the backward compat layer if necessary.
Thu, 13 Apr 2017 13:57:32 +0200 [web] Do not try to rmtree symlinks in rmtreecontent() 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 13 Apr 2017 13:57:32 +0200] rev 12159
[web] Do not try to rmtree symlinks in rmtreecontent() There is a symlink in data directory (created by generate_static_dir() method) and trying to rmtree() it will fail with an OSError. So we unlink() it instead.
Thu, 13 Apr 2017 12:20:30 +0200 [pkg] Version 3.25.0rc3 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 13 Apr 2017 12:20:30 +0200] rev 12158
[pkg] Version 3.25.0rc3
Wed, 12 Apr 2017 16:14:46 +0200 [test] Stop using lgc.testlib 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 16:14:46 +0200] rev 12157
[test] Stop using lgc.testlib
Wed, 12 Apr 2017 16:14:10 +0200 Fix some flake8 errors 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 16:14:10 +0200] rev 12156
Fix some flake8 errors
Wed, 12 Apr 2017 16:12:51 +0200 [sources] Turn classmethod into standard method 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 16:12:51 +0200] rev 12155
[sources] Turn classmethod into standard method No need for a class method and easier to get proper logger including source's name.
Wed, 12 Apr 2017 16:11:56 +0200 [test] Add some tests for hooks.syncsources 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 16:11:56 +0200] rev 12154
[test] Add some tests for hooks.syncsources for parts which are not located in some source's check_config / check_urls method.
Wed, 12 Apr 2017 16:10:57 +0200 [sources] Check source's url attribute value on creation/modification 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 16:10:57 +0200] rev 12153
[sources] Check source's url attribute value on creation/modification Similarly as for config. Now, ldap source validation is properly done there instead of at initialization time.
Wed, 12 Apr 2017 16:07:25 +0200 [sources] Check sources configuration is fine on creation/modification 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 16:07:25 +0200] rev 12152
[sources] Check sources configuration is fine on creation/modification Reintroduce usage of 'source.check_config' which had almost disappeared, as well as tests for the currently detected errors. Part of the system source specific checking done in syncsources reimplemented in a specific check_config implementation. Tests are dispatched among ldap / datafeed and syncsources tests but are not strictly correctly located (notably syncsources tests behaviour of the native source's check_config). The system source url checking part which disappears from syncsources will be reintroduced in a follow-up.
Wed, 12 Apr 2017 17:26:27 +0200 [test] Fix option name in ldap wrong group test 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 17:26:27 +0200] rev 12151
[test] Fix option name in ldap wrong group test which wasn't actually testing what it expected (and nothing guarantee it does now, but that's another story). Fixing this will avoid failure once we properly check the configuration.
Wed, 12 Apr 2017 15:55:26 +0200 [sources] Enhance prototype of check_conf_dict 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 15:55:26 +0200] rev 12150
[sources] Enhance prototype of check_conf_dict * mark it private * explicit name * update docstring Private function is still called from syncsources but this will be updated in a follow-up.
Wed, 12 Apr 2017 15:38:32 +0200 [sources] Stop translating validation error 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 15:38:32 +0200] rev 12149
[sources] Stop translating validation error this should be done later in the web ui, where lang is properly set.
Wed, 12 Apr 2017 15:49:05 +0200 [sources] Simplify source's init method 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Apr 2017 15:49:05 +0200] rev 12148
[sources] Simplify source's init method Only call it when enabled instead of giving a boolean flag indicating whether it is or not (which were not correctly considered).
Wed, 12 Apr 2017 14:54:10 +0200 [server] Deprecate Repository.sources_by_eid 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 12 Apr 2017 14:54:10 +0200] rev 12147
[server] Deprecate Repository.sources_by_eid It's not used anymore within cubicweb itself.
Wed, 05 Apr 2017 14:59:09 +0200 [server] Add source_by_eid and source_by_uri methods to repository 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 14:59:09 +0200] rev 12146
[server] Add source_by_eid and source_by_uri methods to repository Most of the times we only need to retrieve one source (either by uri or eid) and querying sources_by_eid and sources_by_uri properties on repository just for one item is costly. So these methods query what's needed. We issue a ValueError (instead of KeyError for sources_by_{eid,uri} dict) in case the key is not found.
Tue, 04 Apr 2017 17:43:56 +0200 [hooks] Remove list() around repo.sources_by_uri 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 04 Apr 2017 17:43:56 +0200] rev 12145
[hooks] Remove list() around repo.sources_by_uri There's no need to convert it as a list anymore since sources_by_uri is a property and will not be modified.
Wed, 05 Apr 2017 14:31:44 +0200 [server] Inline _entity_update method into init method of AbstractSource 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 14:31:44 +0200] rev 12144
[server] Inline _entity_update method into init method of AbstractSource This _entity_update method does not make sense now that we do not update source from database information but always build them afresh.
Wed, 05 Apr 2017 14:02:58 +0200 [server] Drop update_config method of source 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 14:02:58 +0200] rev 12143
[server] Drop update_config method of source It does not make sense anymore to update the config of a source instance (subclass of cubicweb.server.sources.AbstractSource) now that they are always built from database information (CWSource). In datafeed and ldapfeed, we move all code from "update_config" method in "init" method. This changeset fixes LDAPFeedUserDeletionTC.test_a_filter_inactivate() failure (unittest_ldapsource.py) introduces in previous changeset.
Tue, 04 Apr 2017 16:28:50 +0200 [server] Make "sources_by_uri" and "sources_by_eid" properties of repository 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 04 Apr 2017 16:28:50 +0200] rev 12142
[server] Make "sources_by_uri" and "sources_by_eid" properties of repository I.e. do not populate these dict as repo initialization (bootstrap step) but always use information from database. This is needed because when multiple instances of the same application run, if one instance adds a CWSource the other ones will not see it. In particular, when using a scheduler instance, new CWSource will be added by the web instance and not seen by the scheduler which is supposed to update them. We thus define properties for sources_by_eid and sources_by_uri instead attributes on repository instance. CWSource entities are thus retrieved from database every time these properties are accessed. We factor out initialization of the "source" instance (subclass of cubicweb.server.source.AbstractSource) in a _sources() method. Note that this method takes care of calling "init" method on the source as well as "set_schema" (previously done in repo.set_schema(), which now only touches system_source). Accordingly the "init_sources_from_database" method is dropped along with "add_source"/"remove_source" methods. In syncsources hook, we thus drop: * SourceAddedOp operation which called repo.add_source() so that the SourceAddedHook only cares about checking source configuration now; * SourceRemovedOp and SourceRenamedOp operations for the same reason; * SourceConfigUpdatedOp as updating the live config of source is meaningless once we rely on them being retrieved from the database; * SourceHostConfigUpdatedHook hook which is now useless without call to SourceConfigUpdatedOp; In 3.10 migration script, remove usage of sources_by_uri repo attribute which, unless I'm missing something, appears useless (at least now). In tests: * unittest_datafeed: remove test_update_url method since we dropped respective hook; * unittest_ldapsource: LDAPFeedUserDeletionTC.test_a_filter_inactivate() currently fails because it still relies on live config being updated, this will be fixed in the next changeset once all "live source" logic will be removed.
Tue, 21 Feb 2017 11:04:19 +0100 Add a "Contributing" section to README with patch submission guidelines 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Feb 2017 11:04:19 +0100] rev 12141
Add a "Contributing" section to README with patch submission guidelines For the CubicWeb project and its dependencies, we now prefer patches submission and review by email on a public mailing list. We are thus moving away from the previous vcreview-based workflow taking place on the forge. This change is motivated by the following points: - the current reviewer assignment mechanism (pick a random reviewer, rely on reviewer availability rather than on willingness to review, send related patches to distinct people, etc.) is inefficient if not counter-productive; - most of the times, discussion only happens between the patch submitter and a reviewer with no easy way to increase the audience; - cubicweb-vcreview has no concept of patch series; - cubicweb-vcreview is not actively maintained anymore and its usability keeps deteriorating. We expect that email-based submission and review of patches will circumvent these limitations. Anybody interested in the project is welcome to subscribed to the mailing list and participate to the review process. This patch documents the basic workflow of patches submissions by email.
Tue, 04 Apr 2017 11:41:23 +0200 [cwctl] do only clean static data dir content (closes #17069762) 3.25
David Douard <david.douard@logilab.fr> [Tue, 04 Apr 2017 11:41:23 +0200] rev 12140
[cwctl] do only clean static data dir content (closes #17069762) deleting the directory itself is useless and may be a problem in automated deployment environments (user may not have permissions to delete or create that directory).
Mon, 03 Apr 2017 14:43:44 +0200 [cwctl] add a no-config-update option to the upgrade command (closes #17069607) 3.25
David Douard <david.douard@logilab.fr> [Mon, 03 Apr 2017 14:43:44 +0200] rev 12139
[cwctl] add a no-config-update option to the upgrade command (closes #17069607)
Fri, 07 Apr 2017 14:31:41 +0200 [cwconfig] Add "pyramid" config type to MCOMPAT dict 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 07 Apr 2017 14:31:41 +0200] rev 12138
[cwconfig] Add "pyramid" config type to MCOMPAT dict I don't know what this is for exactly, but the accept_mode method below queries this dict with the configuration type name. And if the latter is "pyramid", it crashes since there's no key in MCOMPAT dict. So add one with the same value as "all-in-one". This code is called during "upgrade" migration in particular.
Fri, 07 Apr 2017 15:23:38 +0200 [pyramid] Avoid shutting down the repository at exit if it's already shutting down 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 07 Apr 2017 15:23:38 +0200] rev 12137
[pyramid] Avoid shutting down the repository at exit if it's already shutting down For install `cubicweb-ctl pyramid` command will explicitly call `repo.shutdown()` so the atexit hook is redundant. Prevent the latter to be executed when the repository is already shutting down (otherwise one gets an assertion error).
Wed, 05 Apr 2017 14:42:30 +0200 [server/test] Extract a "ldapsource" function in unittest_ldapsource.py 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 14:42:30 +0200] rev 12136
[server/test] Extract a "ldapsource" function in unittest_ldapsource.py We will add more use of this pattern in forthcoming changesets, so avoid repetition.
Tue, 04 Apr 2017 16:07:52 +0200 [server] Move "system" source initialization into its own method 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 04 Apr 2017 16:07:52 +0200] rev 12135
[server] Move "system" source initialization into its own method
Wed, 05 Apr 2017 13:28:33 +0200 [entities] Make CWSource's dictconfig method clearer 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 13:28:33 +0200] rev 12134
[entities] Make CWSource's dictconfig method clearer
Wed, 05 Apr 2017 08:37:22 +0200 [entities] Move CWSource update_config method as a function in 3.15 migration script 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 08:37:22 +0200] rev 12133
[entities] Move CWSource update_config method as a function in 3.15 migration script This script is the only caller of this method. In the code of the function, drop "skip_unknown" argument and continue accordingly upon OptionError.
Wed, 05 Apr 2017 10:34:04 +0200 [server/test] Turn "pull" method of LDAPFeedTestBase into a staticmethod 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Apr 2017 10:34:04 +0200] rev 12132
[server/test] Turn "pull" method of LDAPFeedTestBase into a staticmethod Because it does not use reference to "self" (which should be "cls" for classmethod).
Tue, 04 Apr 2017 18:47:13 +0200 [py3] Use six.text_type instead of unicode in _CWSourceCfgMixIn.update_config() 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 04 Apr 2017 18:47:13 +0200] rev 12131
[py3] Use six.text_type instead of unicode in _CWSourceCfgMixIn.update_config()
Tue, 04 Apr 2017 16:06:44 +0200 [server] Drop condition on "3.10" migration in repo.init_sources_from_database() 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 04 Apr 2017 16:06:44 +0200] rev 12130
[server] Drop condition on "3.10" migration in repo.init_sources_from_database() We'll duplicate the code of this method in forthcoming changeset so clean it up a bit of old stuff.
Thu, 30 Mar 2017 16:18:12 +0200 [pkg] Version 3.25.0rc2 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 30 Mar 2017 16:18:12 +0200] rev 12129
[pkg] Version 3.25.0rc2
Thu, 30 Mar 2017 11:59:37 +0200 [doc] More release note about session data handling 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Mar 2017 11:59:37 +0200] rev 12128
[doc] More release note about session data handling mentionning deprecation of _cw.data and removal of get/set_shared_data.
Thu, 30 Mar 2017 11:59:01 +0200 [session] Drop long deprecated [get/set]_shared_data methods 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Mar 2017 11:59:01 +0200] rev 12127
[session] Drop long deprecated [get/set]_shared_data methods they are deprecated since 3.19 and access to the .data attribute itself deprecated in 3.25, so it's time to drop them.
Thu, 30 Mar 2017 11:58:02 +0200 [session] Drop the user session synchronization machinery 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Mar 2017 11:58:02 +0200] rev 12126
[session] Drop the user session synchronization machinery which should not be necessary anymore since groups and properties are fetched for each request (cache lives in transaction_data).
Thu, 30 Mar 2017 11:56:09 +0200 [session] Avoid deprecation warning on access to Connection.data 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Mar 2017 11:56:09 +0200] rev 12125
[session] Avoid deprecation warning on access to Connection.data this attribute has been deprecated during the session related rework, remove warning by explicitly storing data in .transaction_data since session data is not anymore reachable through Connection object. This will allows simplification of session synchronization hooks in a later cset. Also since we do not rely anymore on session data here, we may at some point rewrite those properties to rely on the ORM instead of such custom caching.
Thu, 30 Mar 2017 10:43:49 +0200 [doc] Add release note about change in uicfg 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Mar 2017 10:43:49 +0200] rev 12124
[doc] Add release note about change in uicfg
Thu, 30 Mar 2017 10:37:55 +0200 merge 3.25 heads 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Mar 2017 10:37:55 +0200] rev 12123
merge 3.25 heads
Wed, 29 Mar 2017 14:56:04 +0200 [hg] Add generated slapd.conf to hgignore 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Mar 2017 14:56:04 +0200] rev 12122
[hg] Add generated slapd.conf to hgignore
Wed, 29 Mar 2017 11:17:37 +0200 Fix flake8 errors in unittest_cwctl 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Mar 2017 11:17:37 +0200] rev 12121
Fix flake8 errors in unittest_cwctl
Wed, 29 Mar 2017 11:14:53 +0200 [cwctl] Drop 'cubicweb_' prefix when displaying cubes with 'cubicweb-ctl list' 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Mar 2017 11:14:53 +0200] rev 12120
[cwctl] Drop 'cubicweb_' prefix when displaying cubes with 'cubicweb-ctl list' consistently with newcube / create commands. This is an alternate implementation to backed out changeset fe995d56c949. Closes #17054738
Tue, 28 Mar 2017 17:12:47 +0200 Fix flake8 errors in unittest_cwconfig 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 28 Mar 2017 17:12:47 +0200] rev 12119
Fix flake8 errors in unittest_cwconfig
Wed, 29 Mar 2017 10:34:39 +0200 [config] Test loading of ccplugin modules 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Mar 2017 10:34:39 +0200] rev 12118
[config] Test loading of ccplugin modules to ensure ccplugin modules of cube as package aren't loaded twice, once as `cubicweb_<cube>.ccplugin`, once as `cubes.<cube>.ccplugin`. This test used to fail until fe995d56c949 has been backout. It requires calling `cleanup_sys_module` in `CubicWebConfigurationTC.tearDown` to remove any cube's submodule loaded during tests, so content of `sys.modules` may be tested.
Wed, 29 Mar 2017 10:34:16 +0200 [test] Extract out method-which-is-not-a-method mocking iter_entry_points 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Mar 2017 10:34:16 +0200] rev 12117
[test] Extract out method-which-is-not-a-method mocking iter_entry_points to ease reuse and improve readability.
Wed, 29 Mar 2017 10:32:24 +0200 [cwconfig] Add a docstring on available_cubes method 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Mar 2017 10:32:24 +0200] rev 12116
[cwconfig] Add a docstring on available_cubes method a renaming could be better at some point, but that's a start.
Tue, 28 Mar 2017 15:03:15 +0200 Backed out changeset fe995d56c949 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 28 Mar 2017 15:03:15 +0200] rev 12115
Backed out changeset fe995d56c949 available_cubes should not strip cubicweb_prefix but return actual package name for cube as package, since its output is also used to e.g. get ccplugin or site_cubicweb module name. Original aim of this set was to fix output of the "cubicweb-ctl list" command. This will be done by an alternate implementation in a later cset.
Wed, 29 Mar 2017 13:29:41 +0200 [hooks] Drop "logstats" hook 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Mar 2017 13:29:41 +0200] rev 12114
[hooks] Drop "logstats" hook It is now useless as its looping task would not run on a web instance because respective repository has no scheduler.
Wed, 29 Mar 2017 11:46:17 +0200 [hooks] Do not register "logstats" if repository has no scheduler 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Mar 2017 11:46:17 +0200] rev 12113
[hooks] Do not register "logstats" if repository has no scheduler
Wed, 29 Mar 2017 11:45:19 +0200 [server] Introduce an `has_scheduler` method on Repository 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Mar 2017 11:45:19 +0200] rev 12112
[server] Introduce an `has_scheduler` method on Repository This is to be used by client application to determine if looping tasks may be registered in the current process. By checking this, one will avoid the warning in looping_task method when the repository has no scheduler.
Wed, 29 Mar 2017 11:37:31 +0200 [server] Warn instead of failing when a looping task is registered and repo has no scheduler 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Mar 2017 11:37:31 +0200] rev 12111
[server] Warn instead of failing when a looping task is registered and repo has no scheduler We should provide a way for client code to detect if they should register the looping task or not. See next patch for that.
Wed, 29 Mar 2017 11:31:02 +0200 [server] Exit quickly when a looping task is registered in maintenance mode 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Mar 2017 11:31:02 +0200] rev 12110
[server] Exit quickly when a looping task is registered in maintenance mode In such cases the repository will not have a scheduler on purpose because the repository will not be kept running and will quickly shutdown after migration so that it's undesirable to have looping tasks being executed.
Fri, 24 Mar 2017 14:56:48 +0100 [config] Drop unused init_available_cubes method 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 24 Mar 2017 14:56:48 +0100] rev 12109
[config] Drop unused init_available_cubes method
Tue, 28 Mar 2017 11:26:48 +0200 [doc] Move content of former README.pyramid into relevant modules 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 28 Mar 2017 11:26:48 +0200] rev 12108
[doc] Move content of former README.pyramid into relevant modules
Fri, 24 Mar 2017 16:57:05 +0100 Drop README.pyramid.rst file 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Mar 2017 16:57:05 +0100] rev 12107
Drop README.pyramid.rst file It has been kept since 3.24 when we merged pyramid-cubicweb and cubicweb-pyramid repositories into cubicweb's one waiting for someone to move the information in some canonical place but this never happened and this information is probably not so useful or already existing elsewhere. So just drop the file.
Fri, 24 Mar 2017 17:22:02 +0100 Make entypo link a true URL in README 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Mar 2017 17:22:02 +0100] rev 12106
Make entypo link a true URL in README
Fri, 24 Mar 2017 17:21:37 +0100 Refer to cubicweb.readthedocs.io in README 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Mar 2017 17:21:37 +0100] rev 12105
Refer to cubicweb.readthedocs.io in README docs.cubicweb.org contains outdated documentation at the moment (and for quite some time); until it gets update, refer to the up-to-date documentation on readthedocs.
Mon, 27 Mar 2017 17:57:27 +0200 [server] don't catch exception from postcommit_event() if we are in test mode 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 27 Mar 2017 17:57:27 +0200] rev 12104
[server] don't catch exception from postcommit_event() if we are in test mode The historic behavior is to hide potential exception occurring in postcommit_event(). Unfortunately logging statements are hidden by default during tests and it become very hard to debug. At least raise if we are in test mode.
Fri, 24 Mar 2017 14:18:17 +0100 [pkg] Version 3.25.0rc1 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Mar 2017 14:18:17 +0100] rev 12103
[pkg] Version 3.25.0rc1
Wed, 22 Mar 2017 14:36:05 +0100 [tox] Simplify command line to build the doc 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 14:36:05 +0100] rev 12102
[tox] Simplify command line to build the doc
Fri, 24 Mar 2017 09:37:51 +0100 [pyramid] Drop warning about pyramid_debugtoolbar not found in debug mode 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Mar 2017 09:37:51 +0100] rev 12101
[pyramid] Drop warning about pyramid_debugtoolbar not found in debug mode Some people way want to run a pyramid server in debug mode without the toolbar. This warning is annoying for them. Others should just install and *include* the toolbar by hand.
Fri, 24 Mar 2017 11:21:39 +0100 [pkg] Add development.ini.tmpl to "cubicweb.pyramid" package data 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Mar 2017 11:21:39 +0100] rev 12100
[pkg] Add development.ini.tmpl to "cubicweb.pyramid" package data Otherwise the file is not installed and `cubicweb-ctl create -c pyramid` does not work.
Thu, 23 Mar 2017 10:30:48 +0100 [skeleton] Don't use system site packages in tox environment 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Mar 2017 10:30:48 +0100] rev 12099
[skeleton] Don't use system site packages in tox environment As we changed this in cubicweb, there is a consensus that this is not the best practice so let us change it as well for skeleton.
Wed, 22 Mar 2017 14:38:10 +0100 [doc] Update "settings" pyramid documentation 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 14:38:10 +0100] rev 12098
[doc] Update "settings" pyramid documentation Document that without "bwcompat" we can use a development.ini file directly and add a dedicated section to list configuration options.
Wed, 22 Mar 2017 14:37:04 +0100 [doc] Update the "quickstart" page of pyramid documentation 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 14:37:04 +0100] rev 12097
[doc] Update the "quickstart" page of pyramid documentation Again mentioning the two modes of operations and dropping references to prior implementation.
Wed, 22 Mar 2017 14:34:51 +0100 [doc] Rewrite "pyramid" index page in the book 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 14:34:51 +0100] rev 12096
[doc] Rewrite "pyramid" index page in the book We drop references to pyramid-cubicweb and cubicweb-pyramid, remaining of the merge in 3.24. We now mention the two possible operation modes (with bwcompat being true or false).
Wed, 22 Mar 2017 15:05:04 +0100 [doc] Drop documentation for cubicweb.pyramid.tools module 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 15:05:04 +0100] rev 12095
[doc] Drop documentation for cubicweb.pyramid.tools module Which, as documented, mostly consists of internals.
Wed, 22 Mar 2017 14:49:04 +0100 [doc] Drop reference to "make_cubicweb_application" in pyramid doc 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 14:49:04 +0100] rev 12094
[doc] Drop reference to "make_cubicweb_application" in pyramid doc This function got renamed into config_from_cwconfig and this is arguably an internal detail so should not appear in the API documentation.
Wed, 22 Mar 2017 14:06:03 +0100 [doc] Remove trailing whitespaces in doc/book/pyramid/index.rst 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 14:06:03 +0100] rev 12093
[doc] Remove trailing whitespaces in doc/book/pyramid/index.rst
Wed, 22 Mar 2017 15:43:20 +0100 [tox] Install "pyramid" dependencies in "doc" environment 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 15:43:20 +0100] rev 12092
[tox] Install "pyramid" dependencies in "doc" environment Otherwise most of the cubicweb.pyramid API doc fails to build. For this we skip installation in the "doc" environment and source the new requirements/doc.txt which will install cubicweb[pyramid], thus pulling cubicweb plus pyramid's dependencies. Furthermore this requirements/doc.txt would be useful to build to documentation on readthedocs.
Tue, 07 Mar 2017 13:13:23 +0100 [web/views] fix bad html in deleteconf with show_composite=True 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 07 Mar 2017 13:13:23 +0100] rev 12091
[web/views] fix bad html in deleteconf with show_composite=True On an entity with no composite an additional item "None" was displayed.
Thu, 23 Mar 2017 12:09:59 +0100 [web/views] display unique composite entities in deleteconf 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 23 Mar 2017 12:09:59 +0100] rev 12090
[web/views] display unique composite entities in deleteconf When the entity has two relations to the same composite, display it only once.
Thu, 23 Mar 2017 11:47:59 +0100 Really make rqlrewrite flake8 compliant 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Mar 2017 11:47:59 +0100] rev 12089
Really make rqlrewrite flake8 compliant
Wed, 22 Mar 2017 14:18:54 +0100 [pyramid] disable bwcompat by default in PyramidCWTest 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 22 Mar 2017 14:18:54 +0100] rev 12088
[pyramid] disable bwcompat by default in PyramidCWTest To avoid cubicweb exceptions handling.
Fri, 17 Mar 2017 10:15:16 +0100 Fix flake8 errors in rqlrewrite.py 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 17 Mar 2017 10:15:16 +0100] rev 12087
Fix flake8 errors in rqlrewrite.py
Wed, 01 Mar 2017 18:07:49 +0100 [rqlrewrite/schema] Avoid parsing computed relations for each query 3.25
Arthur Lutz <arthur.lutz@logilab.fr> [Wed, 01 Mar 2017 18:07:49 +0100] rev 12086
[rqlrewrite/schema] Avoid parsing computed relations for each query The RQLRelationRewriter is instanciated for each RQL query, it should avoid parsing computed relations formula by using a cache, which seems rightly located on the instance's schema. This brings a *huge* performance boost to some pages on application with a few computed relations (x4 observed on a client app). Kudos to Adrien, David and Sylvain. Closes #17059828
Wed, 22 Mar 2017 17:14:18 +0100 [pkg] Restrict yams version to be less than 0.45.0 3.23
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 22 Mar 2017 17:14:18 +0100] rev 12085
[pkg] Restrict yams version to be less than 0.45.0 This is a backport of 10d3bf220be2 on 3.23 branch
Wed, 22 Mar 2017 13:58:28 +0100 [pyramid] Remove pyramid_debugtoolbar from "pyramid.includes" 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Mar 2017 13:58:28 +0100] rev 12084
[pyramid] Remove pyramid_debugtoolbar from "pyramid.includes" Most of the times, the package is not installed (not pulled by cubicweb[pyramid] nor pyramid itself) in a fresh environment so that first start of a new instance will fail.
Wed, 22 Mar 2017 09:44:53 +0100 [doc] Add some details about rtag derivation and server api cleanup in release notes 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Mar 2017 09:44:53 +0100] rev 12083
[doc] Add some details about rtag derivation and server api cleanup in release notes
Wed, 22 Mar 2017 09:41:19 +0100 [doc] Simplify release notes section 3.25
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Mar 2017 09:41:19 +0100] rev 12082
[doc] Simplify release notes section Those are all about backward incompatibilities, keep only one section about that.
Mon, 20 Mar 2017 11:35:58 +0100 [doc] Fill release notes for 3.25 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 11:35:58 +0100] rev 12081
[doc] Fill release notes for 3.25
Mon, 20 Mar 2017 12:13:04 +0100 [devtools] Create "newcube" in current directory by default 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 12:13:04 +0100] rev 12080
[devtools] Create "newcube" in current directory by default Instead of using "cubes path", which in many cases will be something wrong (like <prefix>/share/cubicweb/cubes) now that cubes are regular Python packages.
Mon, 20 Mar 2017 14:39:22 +0100 [pyramid] Do not register repository.shutdown atexit in test mode 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 14:39:22 +0100] rev 12079
[pyramid] Do not register repository.shutdown atexit in test mode It seems that there already is a special shutdown step for repository in test mode and pyramid's atexit handler interferes with it leading to assertion error about 'shutting_down' attribute being True in Repository.shutdown().
Tue, 21 Mar 2017 14:17:26 +0100 [cwconfig] don't rely on _CubeImporter while loading cubes 3.25
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 21 Mar 2017 14:17:26 +0100] rev 12078
[cwconfig] don't rely on _CubeImporter while loading cubes _CubeImporter can load cube subpackages twice (there is a test for submodules in cubicweb.test.unittest_cubes.test_no_double_import() but not with a subpackage). Since _CubeImporter is for backward compatibility and is supposed to be deprecated as soon as possible, don't rely on it when loading cube schema or appobjects and always load the real modname (eg. cubicweb_<cube> if exists else cubes.<cube>).
Mon, 20 Mar 2017 17:38:43 +0100 Added tag 3.24.7, debian/3.24.7-1, centos/3.24.7-1 for changeset 58f1e8545a77 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 17:38:43 +0100] rev 12077
Added tag 3.24.7, debian/3.24.7-1, centos/3.24.7-1 for changeset 58f1e8545a77
Mon, 20 Mar 2017 17:04:10 +0100 [pkg] Version 3.24.7 3.24 3.24.7 centos/3.24.7-1 debian/3.24.7-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 17:04:10 +0100] rev 12076
[pkg] Version 3.24.7
Mon, 20 Mar 2017 16:51:41 +0100 [pkg] Restrict yams version to be less than 0.45.0 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 16:51:41 +0100] rev 12075
[pkg] Restrict yams version to be less than 0.45.0 Because of reader's API changes x and other subtle but hard to debug changes in appobjects registration in version 0.45.0. Closes #17065626.
Fri, 17 Mar 2017 16:29:38 +0100 [pkg] Version 3.25.0rc0 3.25
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 17 Mar 2017 16:29:38 +0100] rev 12074
[pkg] Version 3.25.0rc0 Let's make a release candidate version of CubicWeb 3.25.0 (only for the Python package), in the hope that some issues that we usually discover after release will be sorted out before.
Mon, 20 Mar 2017 11:16:11 +0100 [pyramid] Rename paste app factory to pyramid_main
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 11:16:11 +0100] rev 12073
[pyramid] Rename paste app factory to pyramid_main Making it clearer that this would build a Pyramid application, just in case we eventually provide other means to create a WSGI application than Pyramid.
Mon, 20 Mar 2017 09:08:44 +0100 [tox] Do not use site packages in testenv
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 09:08:44 +0100] rev 12072
[tox] Do not use site packages in testenv This is the normal way of running tox. We used to set this because some people liked to run tests using packages installed by other means (i.e. system-wide). Now, there seems to be a consensus that running tox without site packages is a better idea, in particular since many of our dependencies are now available as wheels and thus would install quickly provided one uses a recent pip/virtualenv.
Mon, 20 Mar 2017 10:25:04 +0100 [test] Add user-site to PYTHONPATH before installation of new cube in test_newcube_install
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 10:25:04 +0100] rev 12071
[test] Add user-site to PYTHONPATH before installation of new cube in test_newcube_install Otherwise, setuptools complains that the target installation directory (i.e. "user site" is not in PYTHONPATH). This is probably because we use a fake HOME with --user install option. Failure shows up when running tests through tox without system site packages (see next patch).
Fri, 17 Mar 2017 17:32:04 +0100 [pkg] Depends on yams >= 0.45.0
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 17 Mar 2017 17:32:04 +0100] rev 12070
[pkg] Depends on yams >= 0.45.0
Fri, 17 Mar 2017 17:31:10 +0100 [pkg] Depends on logilab-common >= 1.4.0
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 17 Mar 2017 17:31:10 +0100] rev 12069
[pkg] Depends on logilab-common >= 1.4.0
Mon, 20 Mar 2017 10:28:01 +0100 Merge with 3.24 branch
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 10:28:01 +0100] rev 12068
Merge with 3.24 branch
Mon, 20 Mar 2017 09:40:24 +0100 Added tag 3.24.6, debian/3.24.6-1, centos/3.24.6-1 for changeset 4029fb83a67d 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 09:40:24 +0100] rev 12067
Added tag 3.24.6, debian/3.24.6-1, centos/3.24.6-1 for changeset 4029fb83a67d
Mon, 20 Mar 2017 08:58:25 +0100 [pkg] Version 3.24.6 3.24 3.24.6 centos/3.24.6-1 debian/3.24.6-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 08:58:25 +0100] rev 12066
[pkg] Version 3.24.6
Mon, 20 Mar 2017 08:57:17 +0100 Merge public heads 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Mar 2017 08:57:17 +0100] rev 12065
Merge public heads
Wed, 15 Mar 2017 12:01:14 +0100 [web/views] deleteconf: ignore workflow when displaying composite entities
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 15 Mar 2017 12:01:14 +0100] rev 12064
[web/views] deleteconf: ignore workflow when displaying composite entities This hide TrInfo composite entities when deleting an workflowable entity.
Fri, 03 Mar 2017 14:06:27 +0100 [rset] Use RQL cache in syntax_tree method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Mar 2017 14:06:27 +0100] rev 12063
[rset] Use RQL cache in syntax_tree method This avoid several unnecessary parsings per HTTP request, since in most case rset's rql is in the rql cache (since it has just been executed), while yapps based parsing is known to be slow.
Fri, 17 Mar 2017 07:32:48 +0100 [repo] Introduce a clear_caches method on the Querier class
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 17 Mar 2017 07:32:48 +0100] rev 12062
[repo] Introduce a clear_caches method on the Querier class that is called from repository's clear_caches.
Wed, 15 Mar 2017 08:30:27 +0100 [repo] Consistent API for cache clearing
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 15 Mar 2017 08:30:27 +0100] rev 12061
[repo] Consistent API for cache clearing clear_caches, reset_caches, clear_eid_caches are now all named 'clear_caches' with optional eids/etypes arguments to clear eid specific cache entry,
Fri, 03 Mar 2017 13:09:11 +0100 [repo] Extract rql cache handling to a dedicated class
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Mar 2017 13:09:11 +0100] rev 12060
[repo] Extract rql cache handling to a dedicated class
Thu, 16 Mar 2017 17:25:07 +0100 [sobjects] Fix a trivial flake8 error
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 16 Mar 2017 17:25:07 +0100] rev 12059
[sobjects] Fix a trivial flake8 error
Wed, 15 Mar 2017 08:27:45 +0100 [repo] Drop cache clearing methods from the source interface
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 15 Mar 2017 08:27:45 +0100] rev 12058
[repo] Drop cache clearing methods from the source interface Those are actually system source specific.
Wed, 15 Mar 2017 08:04:58 +0100 [repo] Move and rename repo._clear_planning_cache
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 15 Mar 2017 08:04:58 +0100] rev 12057
[repo] Move and rename repo._clear_planning_cache to make it clearer it's clearing the @cache of source_defs method.
Fri, 10 Mar 2017 10:10:44 +0100 [sobjects] Fix flake8 errors in services.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 10:10:44 +0100] rev 12056
[sobjects] Fix flake8 errors in services.py
Wed, 15 Mar 2017 08:39:51 +0100 [test] Rename BaseQuerierTC._access to BaseQuerierTC.admin_access
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 15 Mar 2017 08:39:51 +0100] rev 12055
[test] Rename BaseQuerierTC._access to BaseQuerierTC.admin_access so it's consistent with CubicWebTC and avoid access to a protected attribute which has been exposed by the removal of the 'session' property a few csets earlier.
Wed, 15 Mar 2017 09:15:32 +0100 [repo] Fix flake8 error
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 15 Mar 2017 09:15:32 +0100] rev 12054
[repo] Fix flake8 error
Thu, 09 Mar 2017 16:36:33 +0100 [pyramid] Add a "pyramid" instance configuration type
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 09 Mar 2017 16:36:33 +0100] rev 12053
[pyramid] Add a "pyramid" instance configuration type In a new module 'cubicweb.pyramid.config' we define a "pyramid" instance configuration type. The noticeable feature of this configuration is that it manages a 'development.ini' file that gets installed in application home (along with `.conf` file). This file is templated and includes generated values for secrets of session and authtk tokens. This means that we can just call: pserve etc/cubicweb.d/<appname>/development.ini or gunicorn --paste etc/cubicweb.d/<appname>/development.ini -b :8080 just after instance creation to get a pyramid instance running without having to hack around a 'pyramid.ini' file. This patch drops 'development.ini' from skeleton and moves it in cubicweb/pyramid so that it gets installed at instance creation which is more appropriate than in cube creation. The new configuration class sets "cubicweb.bwcompat" setting to false so it is not intended to replace the "all-in-one" configuration type (which would require a bit more work). This configuration is close to the the 'repository' configuration type with just a couple of options from WebConfiguration that are needed for Pyramid (anonymous user/password plus some miscellaneous options that I'm not so sure are really needed). Note, in particular, that we do not pull CORS settings to be injected as a WSGI middleware like in wsgi_application_from_cwconfig() since I believe this should be left as an end-user responsibility and since this can be defined in a standard way in paste configuration. This configuration inherits from ServerConfiguration but registers the same appobjects as WebConfiguration. In cubicweb.web.request._CubicWebRequestBase, we guard against access to "uiprops" and "datadir_url" of the config because this new "pyramid" config does not have these (this does not make sense without bwcompat mode). At some point, we should either avoid using `cw_request`'s pyramid request attribute or make cubicweb's web request really independant of existing implementation and drop these assumptions.
Fri, 10 Mar 2017 12:02:41 +0100 [pyramid] Call repository's shutdown method atexit
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Mar 2017 12:02:41 +0100] rev 12052
[pyramid] Call repository's shutdown method atexit This way when run through a WSGI server (pserve, gunicorn, etc.) we make sure that the repository is properly shut down. In particular, this would wait for threads to terminate (otherwise, they'll be killed).
Fri, 03 Mar 2017 11:13:03 +0100 [querier] Turn repo.querier_cache_key into a private function
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Mar 2017 11:13:03 +0100] rev 12051
[querier] Turn repo.querier_cache_key into a private function of the querier module, only place where it's used.
Tue, 14 Mar 2017 10:34:03 +0100 [cleanup] Fix flake8 errors in web/application.py and associated test
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 14 Mar 2017 10:34:03 +0100] rev 12050
[cleanup] Fix flake8 errors in web/application.py and associated test
Tue, 14 Mar 2017 10:33:24 +0100 [test] Simplify CWTC's init_authentication and assertAuthSuccess
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 14 Mar 2017 10:33:24 +0100] rev 12049
[test] Simplify CWTC's init_authentication and assertAuthSuccess which shouldn't rely on removed .session attribute while it's not necessary and could be written in a simpler way.
Fri, 10 Mar 2017 18:26:05 +0100 [cleanup] Drop non sense sentence in docstring
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:26:05 +0100] rev 12048
[cleanup] Drop non sense sentence in docstring
Fri, 10 Mar 2017 18:23:29 +0100 [repo] Drop Session at last
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:23:29 +0100] rev 12047
[repo] Drop Session at last This is not used at all anymore.
Fri, 10 Mar 2017 18:21:22 +0100 Fix flake8 some errors
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:21:22 +0100] rev 12046
Fix flake8 some errors
Fri, 10 Mar 2017 18:18:51 +0100 [test] Use existing reference to repo_source
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:18:51 +0100] rev 12045
[test] Use existing reference to repo_source
Fri, 10 Mar 2017 18:04:25 +0100 [repo] Drop repo.new_session method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:04:25 +0100] rev 12044
[repo] Drop repo.new_session method we should not go through Session to create Connection anymore. This is unofficial API, no backward compat for now.
Tue, 14 Mar 2017 11:07:58 +0100 Stop using Session on the repository side
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 14 Mar 2017 11:07:58 +0100] rev 12043
Stop using Session on the repository side Only expect session on web request, and let the web session/authentication managers provide them. Access to cnx.data, which used to return session data, is deprecated: there is no more access to session data from the repository side, and they should be access from req.session.data from the web side.
Fri, 10 Mar 2017 18:00:13 +0100 [test] Drop unnecessary call to new_session
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:00:13 +0100] rev 12042
[test] Drop unnecessary call to new_session This is not unittest, the above call is enough.
Fri, 10 Mar 2017 17:58:25 +0100 [user] Drop ugly hack on CWUser entity class
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 17:58:25 +0100] rev 12041
[user] Drop ugly hack on CWUser entity class which should be not necessary anymore, beside two remaining usage in our own test suite.
Fri, 10 Mar 2017 17:57:13 +0100 [test] Use user_session_cache_key function
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 17:57:13 +0100] rev 12040
[test] Use user_session_cache_key function to generate cache key.
Fri, 10 Mar 2017 17:52:44 +0100 [session+test] Stop storing / accessing session when it's not necessary
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 17:52:44 +0100] rev 12039
[session+test] Stop storing / accessing session when it's not necessary
Fri, 10 Mar 2017 17:46:06 +0100 [devtools] Stop relying on Session to create connection in RepoAccess
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 17:46:06 +0100] rev 12038
[devtools] Stop relying on Session to create connection in RepoAccess
Fri, 10 Mar 2017 17:44:03 +0100 [devtools] Stop using repo.new_session
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 17:44:03 +0100] rev 12037
[devtools] Stop using repo.new_session
Fri, 10 Mar 2017 18:25:35 +0100 [session] Kill support for a 'session_open' hook event
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:25:35 +0100] rev 12036
[session] Kill support for a 'session_open' hook event To be consistent with dropping of the 'session_close' event, and also because this is already not called when using pyramid.
Fri, 10 Mar 2017 17:03:28 +0100 [devtools] Rename FakeSession into FakeConnection
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 17:03:28 +0100] rev 12035
[devtools] Rename FakeSession into FakeConnection because it is what it is.
Fri, 10 Mar 2017 16:55:57 +0100 [cleanup] Drop references to the old internal_session method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 16:55:57 +0100] rev 12034
[cleanup] Drop references to the old internal_session method dropped a while ago, no need to talk about it in a docstring nor to fake it.
Fri, 10 Mar 2017 16:31:08 +0100 [session] Drop unused class
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 16:31:08 +0100] rev 12033
[session] Drop unused class
Fri, 10 Mar 2017 16:14:05 +0100 [cleanup] Drop no more used parse_repo_uri function
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 16:14:05 +0100] rev 12032
[cleanup] Drop no more used parse_repo_uri function
Fri, 10 Mar 2017 14:07:15 +0100 [server] Fix flake8 error of test/data/hooks.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 14:07:15 +0100] rev 12031
[server] Fix flake8 error of test/data/hooks.py
Fri, 10 Mar 2017 14:02:31 +0100 [repo] Drop repo.connect backward compat
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 14:02:31 +0100] rev 12030
[repo] Drop repo.connect backward compat use new_session instead (introduced in 3.19 iirc)
Fri, 10 Mar 2017 14:01:45 +0100 [session] Drop no more necessary Session.sessionid and Connection.connectionid
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 14:01:45 +0100] rev 12029
[session] Drop no more necessary Session.sessionid and Connection.connectionid
Fri, 10 Mar 2017 14:04:26 +0100 [repo] Kill repo._sessions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 14:04:26 +0100] rev 12028
[repo] Kill repo._sessions and with it the need to have a looping task to clean it up, and with that all the session's timestamping machinery.
Fri, 10 Mar 2017 18:24:40 +0100 [repo] Stop closing session
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 18:24:40 +0100] rev 12027
[repo] Stop closing session The only point in "closing" session is to call the `session_close` event. Since I'm not aware of any application relying on it, I think this is too costly (in term of code) to maintain and propose to drop it.
Fri, 10 Mar 2017 12:07:29 +0100 [views] Stop giving stats / debug information relying on _sessions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 12:07:29 +0100] rev 12026
[views] Stop giving stats / debug information relying on _sessions This is already broken when using pyramid anyway.
Fri, 10 Mar 2017 16:41:10 +0100 [session] Stop relying on _sessions to synchronize living session
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 16:41:10 +0100] rev 12025
[session] Stop relying on _sessions to synchronize living session by doing what we currently do in pyramid. Also, attempt to synchronize CWUser's class sounds like a dark corner case handling that should be removed in favor of short lived user objects (beside it shouldn't occur except during migration).
Fri, 10 Mar 2017 12:01:31 +0100 [test] Drop useless access to repo._sessions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 12:01:31 +0100] rev 12024
[test] Drop useless access to repo._sessions test still succeed afterwards.
Fri, 10 Mar 2017 11:27:01 +0100 [repo] Fix flake8 errors in server/__init__.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 11:27:01 +0100] rev 12023
[repo] Fix flake8 errors in server/__init__.py
Fri, 10 Mar 2017 11:25:24 +0100 [repo] Drop no more used ShuttingDown exception
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 11:25:24 +0100] rev 12022
[repo] Drop no more used ShuttingDown exception
Fri, 10 Mar 2017 11:55:16 +0100 [repo] Drop _get_session method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Mar 2017 11:55:16 +0100] rev 12021
[repo] Drop _get_session method it's not actually necessary but holds underlying _sessions dict handling. Drop backward compat relying on it (which IMO should not be a problem). Drop import of unused QueryError along the way.
Thu, 09 Mar 2017 18:02:16 +0100 [test] Drop call to CubicWebConfiguration.load_cwctl_plugins in unittest_cwctl.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 09 Mar 2017 18:02:16 +0100] rev 12020
[test] Drop call to CubicWebConfiguration.load_cwctl_plugins in unittest_cwctl.py This is no longer need now that we call load_available_configurations() in the "list" command (see 5e7282bdf140).
Thu, 09 Mar 2017 16:35:58 +0100 [web] Extract a base class out WebConfiguration
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 09 Mar 2017 16:35:58 +0100] rev 12019
[web] Extract a base class out WebConfiguration This will be used to build a CubicWebPyramidConfiguration in following changeset.
Thu, 09 Mar 2017 16:41:18 +0100 [tox] Drop reference to removed init_instance.py file in flake8-ok-files.txt
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 09 Mar 2017 16:41:18 +0100] rev 12018
[tox] Drop reference to removed init_instance.py file in flake8-ok-files.txt The file got removed in 1b9fd8bda1cd.
Fri, 10 Mar 2017 09:39:18 +0100 [web] Put 'use-uicache' option in level 2
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Mar 2017 09:39:18 +0100] rev 12017
[web] Put 'use-uicache' option in level 2 So that users do not get prompted with this. Follow-up on c34590161082.
Tue, 21 Feb 2017 08:56:38 +0100 [server] Add a "scheduler" command to run repository scheduler
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Feb 2017 08:56:38 +0100] rev 12016
[server] Add a "scheduler" command to run repository scheduler This commands starts the repository scheduler as a standalone process that should complement a CubicWeb web instance running as a WSGI application. Added a log message in repository's shutdown method to help testing the command (i.e. make sure the method is called after the scheduler stopped). Related to #17057223.
Mon, 06 Mar 2017 15:13:44 +0100 [cwconfig] Do not instantiate a repo with a scheduler in repository method
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 15:13:44 +0100] rev 12015
[cwconfig] Do not instantiate a repo with a scheduler in repository method None of the caller of this method need the repository to have a scheduler and having a scheduler should be something that's explicitly requested.
Mon, 06 Mar 2017 14:50:00 +0100 [server] Make cubicweb/server/utils.py flake8-clean
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 14:50:00 +0100] rev 12014
[server] Make cubicweb/server/utils.py flake8-clean
Mon, 06 Mar 2017 14:38:52 +0100 [server] Drop utils's LoopTask and TasksManager classes not used anymore
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 14:38:52 +0100] rev 12013
[server] Drop utils's LoopTask and TasksManager classes not used anymore Related to 17057223.
Mon, 06 Mar 2017 13:23:33 +0100 [server] replace repository's tasks manager by a scheduler
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 13:23:33 +0100] rev 12012
[server] replace repository's tasks manager by a scheduler Repository() does not accept anymore a 'tasks_manager' argument but rather a 'scheduler' argument which is expected to be an instance of sched.scheduler class. The drop the _tasks_manager attribute of the repository and adjust all internal usages of it. In particular, in the 'repo_stats' service we do not export 'looping_tasks' statistics anymore as there's no way to retrieve this anymore from a web instance. Closes #17057223.
Mon, 06 Mar 2017 13:21:50 +0100 [server] introduce a scheduler class to run repository "looping tasks"
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 13:21:50 +0100] rev 12011
[server] introduce a scheduler class to run repository "looping tasks" We just use the sched module from the standard library and introduce a tiny Python2/3 compatibility layer (more for convenience actually). The "looping" aspect of tasks (previously in LoopTask class) is re-implemeted as a `schedule_periodic_task` function. This is a reasonably thin layer as compared to LoopTask/TasksManager classes. Only the "restart" aspect of LoopTask is no longer present as I'm not sure it's worth keeping. The advantage of using this (in addition to eventually dropping our custom code) is that this scheduler class provides a `run` method that blocks the process while running tasks in its queue. So we can rely on this to have a 'scheduler' ctl command (see forthcoming patch) that would only run "looping tasks" without having to implement the "blocking" aspect ourself. Related to #17057223.
Thu, 16 Feb 2017 11:15:23 +0100 web: add options to ignore css compilation and uicache
Samuel Trégouët <samuel.tregouet@logilab.fr> [Thu, 16 Feb 2017 11:15:23 +0100] rev 12010
web: add options to ignore css compilation and uicache
Thu, 16 Feb 2017 10:56:45 +0100 [skeleton] call includeme from new cube
Samuel Trégouët <samuel.tregouet@logilab.fr> [Thu, 16 Feb 2017 10:56:45 +0100] rev 12009
[skeleton] call includeme from new cube
Mon, 06 Mar 2017 14:19:20 +0100 [etwist] Do not call repository's start_looping_tasks anymore and warn about this
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 14:19:20 +0100] rev 12008
[etwist] Do not call repository's start_looping_tasks anymore and warn about this We are about to drop this method from Repository class and replace it by a blocking alternative. This is not compatible with how things currently work in a Twisted server implementation. So do not start repository "looping tasks" in Twisted server anymore and issue a warning about this. If someone is interested in restoring the "all-in-one" behavior where the repository runs within a Twisted server, they may start by implementing repository looping tasks using a Twisted mechanism such as, e.g., http://twistedmatrix.com/documents/current/core/howto/time.html and eventually provide the repository with a compatible scheduler instance so that is can register its periodic tasks. At the moment, we lack resources to do this (and maintain the Twisted server of CubicWeb in general). Related to #17057223.
Thu, 09 Mar 2017 09:16:00 +0100 [test] Flake8-clean and use stdlib unittest in cubicweb/server/test/unittest_utils.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 09 Mar 2017 09:16:00 +0100] rev 12007
[test] Flake8-clean and use stdlib unittest in cubicweb/server/test/unittest_utils.py
Tue, 07 Mar 2017 12:08:39 +0100 [web] Don't raise ProcessFormError if there is no value specified
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 07 Mar 2017 12:08:39 +0100] rev 12006
[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.
Tue, 07 Mar 2017 11:59:07 +0100 [test] Cleanup imports in unittest_form
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 07 Mar 2017 11:59:07 +0100] rev 12005
[test] Cleanup imports in unittest_form Remove unused and reorder, + use bare unittest along the way.
Tue, 07 Mar 2017 14:27:09 +0100 Fix log level parameter not taken into account in cwsource log table 3.23
Florent Cayré <florent.cayre@logilab.fr> [Tue, 07 Mar 2017 14:27:09 +0100] rev 12004
Fix log level parameter not taken into account in cwsource log table An error in the jquery selector of the html widget controlling the log level was the cause of this bug. Closes #15772634 (grafted from c9129aae884b476455c8ed1ad802efc3a26503a5)
Mon, 06 Mar 2017 13:49:51 +0100 [pyramid] Drop call to repository's start_looping_tasks method and warn about this
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 13:49:51 +0100] rev 12003
[pyramid] Drop call to repository's start_looping_tasks method and warn about this We are about to drop the start_looping_tasks method and running "looping tasks" along the WSGI application is not a very good idea. So issue a warning pointing to the forthcoming "scheduler" command. Related to #17057223.
Mon, 06 Mar 2017 15:22:16 +0100 [test] Make unittest_serverctl.py flake8-clean
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 15:22:16 +0100] rev 12002
[test] Make unittest_serverctl.py flake8-clean
Mon, 06 Mar 2017 13:15:51 +0100 [wsgi] Drop calls to repo.start_looping_tasks
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 13:15:51 +0100] rev 12001
[wsgi] Drop calls to repo.start_looping_tasks It's unlikely that these implementations were ever used so we do not bother with deprecation or a warning. We just drop the call to this method which should not be called from within a WSGI application. Related to #17057223.
Mon, 06 Mar 2017 15:16:53 +0100 [pyramid] Drop useless "init_instance" module
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 15:16:53 +0100] rev 12000
[pyramid] Drop useless "init_instance" module
Mon, 06 Mar 2017 15:01:41 +0100 [server] Drop inexistent "bootstrap" argument in Repository initialization
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Mar 2017 15:01:41 +0100] rev 11999
[server] Drop inexistent "bootstrap" argument in Repository initialization This is a missing bit from 5de78b6fff2e. Unfortunately this code appears to be uncovered by our test suite.
Wed, 08 Feb 2017 16:05:00 +0100 [server] fix a typo in a docstring
David Douard <david.douard@logilab.fr> [Wed, 08 Feb 2017 16:05:00 +0100] rev 11998
[server] fix a typo in a docstring
Fri, 24 Feb 2017 09:18:08 +0100 [ctl] Load available configurations in "cubicweb-ctl list" 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Feb 2017 09:18:08 +0100] rev 11997
[ctl] Load available configurations in "cubicweb-ctl list" Otherwise we rely on associated ctl plugins to be loaded which is arguably orthogonal to configurations.
Thu, 23 Feb 2017 10:59:56 +0100 [web/views] Fix a docstring
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 23 Feb 2017 10:59:56 +0100] rev 11996
[web/views] Fix a docstring
Thu, 23 Feb 2017 08:37:39 +0100 [server] Use looping_task method in Repository._prepare_startup()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 08:37:39 +0100] rev 11995
[server] Use looping_task method in Repository._prepare_startup()
Mon, 27 Feb 2017 17:13:45 +0100 [skeleton] Drop logging configuration from development.ini
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Feb 2017 17:13:45 +0100] rev 11994
[skeleton] Drop logging configuration from development.ini This is actually not useful as logging is already initialized and configure "somewhere else" where the repository is started.
Mon, 27 Feb 2017 14:49:32 +0100 [pyramid] Drop retrieval of auth/session secret in all-in-one.conf
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Feb 2017 14:49:32 +0100] rev 11993
[pyramid] Drop retrieval of auth/session secret in all-in-one.conf We actually never supported this in cubicweb, but only in pyramid-cubicweb.
Mon, 27 Feb 2017 09:06:23 +0100 [cwctl] Recommend 'pyramid' before 'wsgi' when twisted is not available
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Feb 2017 09:06:23 +0100] rev 11992
[cwctl] Recommend 'pyramid' before 'wsgi' when twisted is not available Not sure anyone ever really used the latter and the former is certainly more reliable/tested.
Mon, 27 Feb 2017 09:05:33 +0100 [cwctl] Drop message about 'the pyramid cube' in "start" command
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Feb 2017 09:05:33 +0100] rev 11991
[cwctl] Drop message about 'the pyramid cube' in "start" command This is shown when twisted is not importable and we suggest to use 'cubicweb pyramid <appid>' instead. Since 3.24, cubicweb-pyramid got merge in cubicweb so drop this reference in the message.
Mon, 27 Feb 2017 16:57:59 +0100 [cwconfig] Fix two NameError in load_available_configs()
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Feb 2017 16:57:59 +0100] rev 11990
[cwconfig] Fix two NameError in load_available_configs() This comes from a copy-paste in d92d75b17a85.
Mon, 27 Feb 2017 08:53:52 +0100 [etwist] Drop try/except around definitions of 'all-in-one' configuration and command handlers
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Feb 2017 08:53:52 +0100] rev 11989
[etwist] Drop try/except around definitions of 'all-in-one' configuration and command handlers cubicweb.server is no longer conditionally shipped, neither in python package nor in debian package since 3.24.
Tue, 28 Feb 2017 16:55:32 +0100 [server] Call 'server_startup' hooks at the end of repository "bootstrap"
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Feb 2017 16:55:32 +0100] rev 11988
[server] Call 'server_startup' hooks at the end of repository "bootstrap" Now that we have guarded all calls to Repository.looping_task() in 'server_startup' hooks we can execute this hooks category at bootstrap step. This way, repositories running without a tasks manager (i.e. those embedded into a WSGI application) will have these hooks triggered.
Tue, 28 Feb 2017 16:46:16 +0100 [pyramid] Drop module-level cache and cleanup looping tasks in tools
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Feb 2017 16:46:16 +0100] rev 11987
[pyramid] Drop module-level cache and cleanup looping tasks in tools And use a LRU cache over cached_build_user function. This looping task is problematic because it would not be run from within a WSGI application which does not have a repository with a tasks manager. This pulls an explicit dependency on 'repoze.lru' but it's not a big deal since pyramid already depends on this. RPM spec file not update since it does not even mention pyramid...
Tue, 28 Feb 2017 16:11:17 +0100 [hooks] Return early in server_startup hooks if the repository has not tasks manager
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Feb 2017 16:11:17 +0100] rev 11986
[hooks] Return early in server_startup hooks if the repository has not tasks manager
Tue, 28 Feb 2017 16:05:00 +0100 [server] Only register "clean_sessions" looping tasks if repository has a tasks manager
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Feb 2017 16:05:00 +0100] rev 11985
[server] Only register "clean_sessions" looping tasks if repository has a tasks manager This prepares for calling Repository's _prepare_startup() in bootstrap() so that repository instances without a tasks manager running can still have their 'server_startup' hooks triggered (this is particularly useful for BFSS storages).
Fri, 24 Feb 2017 10:16:17 +0100 [utils] Do not pass a tasks manager to Repository in admincnx()
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Feb 2017 10:16:17 +0100] rev 11984
[utils] Do not pass a tasks manager to Repository in admincnx() We do not call repo.start_looping_tasks() for the instantiated repository, so a tasks manager is useless.
Thu, 23 Feb 2017 18:02:33 +0100 [server] Separate repository bootstrap from initialization
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 18:02:33 +0100] rev 11983
[server] Separate repository bootstrap from initialization Thus we now call 'bootstrap' here and there explicitly and remove call of this method in Repository.__init__(). This way instantiation of a Repository does not *implicitly* triggers the "bootstrap" step, which is arguably not a trivial thing and thus deserves to be independent. In __init__, set 'shutting_down' attribute to None and then to False in bootstrap as a mean to indicate that, when initialized, a repository is neither shutting down nor started (not sure where this is used though).
Thu, 23 Feb 2017 17:51:11 +0100 [server] Also remove tmpdir in case of error during restore database command
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:51:11 +0100] rev 11982
[server] Also remove tmpdir in case of error during restore database command
Thu, 23 Feb 2017 17:47:18 +0100 [server] Rename Repository's init_cnxset_pool method bootstrap
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:47:18 +0100] rev 11981
[server] Rename Repository's init_cnxset_pool method bootstrap See the (removed) docstring for a rationale...
Thu, 23 Feb 2017 17:45:50 +0100 [server] Replace server config's init_cnxset_pool attribute by a "bootstrap" parameter in Repository
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:45:50 +0100] rev 11980
[server] Replace server config's init_cnxset_pool attribute by a "bootstrap" parameter in Repository This 'init_cnxset_pool' class attribute is actually used to control whether a Repository instance should be "bootstraped" (see Repository.init_cnxset_pool() for a definition of "bootstrap") or not. I seems clearer to me to have this controlled by a boolean "bootstrap" initialization parameter in Repository.
Thu, 23 Feb 2017 17:38:47 +0100 [server] Drop close/open steps in NativeSQLSource.restore()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:38:47 +0100] rev 11979
[server] Drop close/open steps in NativeSQLSource.restore() The only place where this is called is in ServerMigrationHelper.restore_database() where config.init_cnxset_pool is set to False. So these steps appear to be useless.
Tue, 07 Feb 2017 10:37:37 +0100 [skel] Fix rpm's .spec file skeleton
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 07 Feb 2017 10:37:37 +0100] rev 11978
[skel] Fix rpm's .spec file skeleton It's broken for new-style packages since it doesn't consider (even remove) python packages.
Thu, 23 Feb 2017 17:36:11 +0100 [server] Move "starting repository..." message where this actually happens
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:36:11 +0100] rev 11977
[server] Move "starting repository..." message where this actually happens
Thu, 23 Feb 2017 17:34:37 +0100 [server] Initialize Repository without a tasks manager in ServerMigrationHelper.restore_database()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:34:37 +0100] rev 11976
[server] Initialize Repository without a tasks manager in ServerMigrationHelper.restore_database() We don't need a tasks manager here I think. Thus instantiate the Repository from its class directly instead of using config.repository() which set a tasks manager.
Thu, 23 Feb 2017 17:34:12 +0100 [server] Fix a typo in log message in Repository.init_cnxset_pool()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 17:34:12 +0100] rev 11975
[server] Fix a typo in log message in Repository.init_cnxset_pool()
Fri, 24 Feb 2017 09:19:35 +0100 [cwconfig] Issue a warning if a configuration module cannot be loaded
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Feb 2017 09:19:35 +0100] rev 11974
[cwconfig] Issue a warning if a configuration module cannot be loaded We already do this when loading ctl plugin modules, so make things symmetrical for config modules.
Fri, 24 Feb 2017 09:18:08 +0100 [ctl] Load available configurations in "cubicweb-ctl list"
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Feb 2017 09:18:08 +0100] rev 11973
[ctl] Load available configurations in "cubicweb-ctl list" Otherwise we rely on associated ctl plugins to be loaded which is arguably orthogonal to configurations.
Thu, 23 Feb 2017 08:54:01 +0100 [skeleton] Set cubicweb.bwcompat to False in development.ini
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Feb 2017 08:54:01 +0100] rev 11972
[skeleton] Set cubicweb.bwcompat to False in development.ini Quite a few things from the default web UI do not work when running the application through pserve (in particular, data files are not apparently served). So better disable the "bwcompat" mode until we are sure it works properly (or it gets dropped ;)).
Tue, 21 Feb 2017 17:41:32 +0100 [pyramid] Use existing repo in PyramidCWTest
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Feb 2017 17:41:32 +0100] rev 11971
[pyramid] Use existing repo in PyramidCWTest We thus do not make use of config_from_cwconfig() and build the configurator instance by hand prior to include 'cubicweb.pyramid'.
Tue, 21 Feb 2017 17:35:16 +0100 [pyramid] Make it possible to setup CubicWeb instance from an existing repo in includeme()
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Feb 2017 17:35:16 +0100] rev 11970
[pyramid] Make it possible to setup CubicWeb instance from an existing repo in includeme()
Tue, 21 Feb 2017 17:42:46 +0100 [pyramid] Move loading of pyramid_debugtoolbar later in includeme()
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Feb 2017 17:42:46 +0100] rev 11969
[pyramid] Move loading of pyramid_debugtoolbar later in includeme() To gather cwconfig and repository instantiations.
Tue, 21 Feb 2017 08:54:20 +0100 [skeleton,pyramid] Move pyramid app definition in cubicweb.pyramid module
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Feb 2017 08:54:20 +0100] rev 11968
[skeleton,pyramid] Move pyramid app definition in cubicweb.pyramid module The application definition is actually not specific to the final "cube" being bootstrapped from skeleton. This patch thus move the pyramid application function into cubicweb.pyramid module and let cubicweb register the "paste.app_factory" entry point (instead of the bootstrapped cube). Useless call to `config.scan` is dropped along the way.
Fri, 10 Feb 2017 17:13:44 +0100 [pyramid] Add a copyright and docstring to all modules
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Feb 2017 17:13:44 +0100] rev 11967
[pyramid] Add a copyright and docstring to all modules We add copyright statements for both UNLISH (original author) and LOGILAB.
Wed, 08 Feb 2017 17:54:16 +0100 [cwconfig] Strip "cubicweb_" prefix from cube name in available_cubes()
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 08 Feb 2017 17:54:16 +0100] rev 11966
[cwconfig] Strip "cubicweb_" prefix from cube name in available_cubes() Closes #17054738.
Tue, 21 Feb 2017 10:12:47 +0100 [web] fix os.rename usage on windows when destination exists
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 21 Feb 2017 10:12:47 +0100] rev 11965
[web] fix os.rename usage on windows when destination exists os.rename on windows will raise OSError (or WindowsError subclass) when if destination file already exists. Also check that exception is EEXIST. There is an attempt to fix in f6ba947c but using IOError instead of OSError. Closes #14214794
Wed, 25 Jan 2017 14:28:20 +0100 [web/views] show composite entities in delete view
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 25 Jan 2017 14:28:20 +0100] rev 11964
[web/views] show composite entities in delete view Disabled by default, can be activated with show_composite = True Display first level of composite entities in a treeview, limited to the current (page_size - 1), so the maximum of displayed entities bump to page_size * (page_size - 1).
Mon, 11 May 2015 13:57:34 +0200 [workflow] Utilities for declarative definition of workflows
Christophe de Vienne <christophe@unlish.com> [Mon, 11 May 2015 13:57:34 +0200] rev 11963
[workflow] Utilities for declarative definition of workflows Closes #5337897
Mon, 20 Feb 2017 15:56:07 +0100 [server] Remove pseudo-handling of exceptions in Repository._delete_cascade_multi()
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Feb 2017 15:56:07 +0100] rev 11962
[server] Remove pseudo-handling of exceptions in Repository._delete_cascade_multi() It seems to me that we never want to pass on an exception here be it in "test" mode or not, so remove the last `except Exception:` clause. For instance, the actual implementation would pass on an IntegrityError and thus possibly hide it in a log message. Concerning the `except Unauthorized:`, as said by the log message this should not happen because we are within a `security_enabled(write=False)` context. So remove it as well. As far as I can tell, this strange handling of exceptions dates from 37668bf302f5 and there is no clear justification to it.
Tue, 21 Feb 2017 10:12:47 +0100 [web] fix os.rename usage on windows when destination exists 3.23
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 21 Feb 2017 10:12:47 +0100] rev 11961
[web] fix os.rename usage on windows when destination exists os.rename on windows will raise OSError (or WindowsError subclass) when if destination file already exists. Also check that exception is EEXIST. There is an attempt to fix in f6ba947c but using IOError instead of OSError. Closes #14214794
Thu, 09 Feb 2017 10:31:15 +0100 [skeleton] Add "cubicweb.session.secret" to development.ini
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 09 Feb 2017 10:31:15 +0100] rev 11960
[skeleton] Add "cubicweb.session.secret" to development.ini Commented as other "secret" settings. At least, now all settings are present in the development.ini file. [ci skip]
Fri, 10 Feb 2017 16:55:23 +0100 [pyramid] Include 'cubicweb.pyramid.predicates' where it is used
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Feb 2017 16:55:23 +0100] rev 11959
[pyramid] Include 'cubicweb.pyramid.predicates' where it is used It's only used in "rest_api" module.
Fri, 10 Feb 2017 16:33:16 +0100 [pyramid] Rename make_cubicweb_application function as config_from_cwconfig
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Feb 2017 16:33:16 +0100] rev 11958
[pyramid] Rename make_cubicweb_application function as config_from_cwconfig And update its docstring. This function does not actually "make a cubicweb application", it just builds a pyramid.config.Configurator instance from a CubicWeb config object.
Wed, 08 Feb 2017 17:49:25 +0100 [server] Reprase messages of db-check to avoid using "system" and "sources"
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 08 Feb 2017 17:49:25 +0100] rev 11957
[server] Reprase messages of db-check to avoid using "system" and "sources" And rather mention "entity type table" and "entities" table, which are clearer references.
Mon, 20 Feb 2017 16:39:07 +0100 [predicates] Fix reference to has_related_entities in partial_has_related_entities docstring
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 20 Feb 2017 16:39:07 +0100] rev 11956
[predicates] Fix reference to has_related_entities in partial_has_related_entities docstring
Tue, 07 Feb 2017 13:47:03 +0100 Fix possible double import of cubes modules
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 07 Feb 2017 13:47:03 +0100] rev 11955
Fix possible double import of cubes modules When cubes using the new layout are imported with 'cubicweb_<cube>' and with 'cubes.<cube>', the same module is imported twice. Handle this by adding 'cubes.<cube>' to sys.modules when importing from 'cubicweb_<cube>'. Move load_module() to a sub class _CubesLoader to share informations computed in find_modules(). Don't handle subpackages in _CubesImporter and rely on normal import machinery instead. Add a test and use unittest from cubicweb.devtools.testlib which resolve to unittest2 on PY2 with assertLogs() method.
Wed, 08 Feb 2017 10:31:26 +0100 Make load_module() return existing module if present in sys.modules
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 08 Feb 2017 10:31:26 +0100] rev 11954
Make load_module() return existing module if present in sys.modules Otherwise the reload() builtin will not work correctly: https://www.python.org/dev/peps/pep-0302/#specification-part-1-the-importer-protocol
Mon, 06 Feb 2017 15:43:19 +0100 [server] Ignore computed relations in "relations" integrity checker
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Feb 2017 15:43:19 +0100] rev 11953
[server] Ignore computed relations in "relations" integrity checker
Mon, 06 Feb 2017 15:40:39 +0100 [server] Use global registry variable of integrity checker functions
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Feb 2017 15:40:39 +0100] rev 11952
[server] Use global registry variable of integrity checker functions Instead of querying globals() in checkintegrity.check(), we maintain a _CHECKERS dict mapping checker name to function in checkintegrity module. This is later used to build the list of available checkers in 'db-check' command help.
Tue, 07 Feb 2017 18:18:22 +0100 [doc] Add 3.25 release notes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 07 Feb 2017 18:18:22 +0100] rev 11951
[doc] Add 3.25 release notes [ci skip]
Fri, 27 Jan 2017 18:09:56 +0100 [repository] possibility to disable connections pooling
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 27 Jan 2017 18:09:56 +0100] rev 11950
[repository] possibility to disable connections pooling Add a new configuration option 'connections-pooler-enabled' (default yes). If set to no, disable connection pooling and open new connections to the database on demand. This allow to use CubicWeb with other poolers (such as pgbouncer).
Thu, 02 Feb 2017 14:58:39 +0100 [js] Fix loading image URL 3.24
Florent Cayré <florent.cayre@logilab.fr> [Thu, 02 Feb 2017 14:58:39 +0100] rev 11949
[js] Fix loading image URL
Mon, 06 Feb 2017 11:21:31 +0100 [migration] Move pyramid-related migration after "entities" table modifications 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Feb 2017 11:21:31 +0100] rev 11948
[migration] Move pyramid-related migration after "entities" table modifications Otherwise, we getting into `add_entity_type('CWSession')` we try to insert a CWEType without any 'asource' column (per 3.24's schema) whereas the backend still wants it. Closes #17054035.
Fri, 03 Feb 2017 13:37:32 +0100 Merge 3.24.5 into default branch
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Feb 2017 13:37:32 +0100] rev 11947
Merge 3.24.5 into default branch
Tue, 10 Jan 2017 16:08:55 +0100 [entities] Introduce an IDublinCore adapter
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 10 Jan 2017 16:08:55 +0100] rev 11946
[entities] Introduce an IDublinCore adapter Move all dc_ methods from AnyEntity to the new IDublinCore adapter and proxy them through a __getattr__ method on AnyEntity. Current test suite should be enough. Closes #3119992.
Fri, 27 Jan 2017 11:05:07 +0100 [skeleton] Add an entry point and configuration for running a Pyramid application
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 27 Jan 2017 11:05:07 +0100] rev 11945
[skeleton] Add an entry point and configuration for running a Pyramid application We add a `pyramid_main` function in __init__.py that instantiate the WSGI application using "cubicweb.pyramid"; this is defined as an entry point (in setup.py) so that pserve_ can find it. Alongside comes a development.ini file which includes basic settings so that running a Pyramid+CubicWeb application works (only the "instance=<appid>" may be passed as a command-line argument). Logging is also configured there, but only includes the cube at stake and cubicweb (others could be added if needed). .. _perse: \ http://docs.pylonsproject.org/projects/pyramid/en/1.8-branch/pscripts/pserve.html
Fri, 27 Jan 2017 09:58:30 +0100 [cwconfig] Issue a warning when a "core" ctl plugin failed to load
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 27 Jan 2017 09:58:30 +0100] rev 11944
[cwconfig] Issue a warning when a "core" ctl plugin failed to load This is often because of a missing dependency, the warning would indicate this hopefully.
Fri, 27 Jan 2017 13:36:00 +0100 [dataimport] Fix "existing_relations" parameter name in ExtEntitiesImporter
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 27 Jan 2017 13:36:00 +0100] rev 11943
[dataimport] Fix "existing_relations" parameter name in ExtEntitiesImporter
Thu, 15 Jan 2015 18:01:28 +0100 [ical] Create ICal events or todos depending on component type returned by adapter
Olivier CAYROL (Logilab) <Olivier.Cayrol@logilab.fr> [Thu, 15 Jan 2015 18:01:28 +0100] rev 11942
[ical] Create ICal events or todos depending on component type returned by adapter
Tue, 31 Jan 2017 11:06:28 +0100 Added tag 3.24.5, debian/3.24.5-1, centos/3.24.5-1 for changeset 70d28e632206 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 31 Jan 2017 11:06:28 +0100] rev 11941
Added tag 3.24.5, debian/3.24.5-1, centos/3.24.5-1 for changeset 70d28e632206
Tue, 31 Jan 2017 10:41:04 +0100 Prepare 3.24.5 3.24 3.24.5 centos/3.24.5-1 debian/3.24.5-1
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 31 Jan 2017 10:41:04 +0100] rev 11940
Prepare 3.24.5
Mon, 30 Jan 2017 10:18:31 +0100 [devtools] Skip computed relations when attempting to auto-populate test database 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 30 Jan 2017 10:18:31 +0100] rev 11939
[devtools] Skip computed relations when attempting to auto-populate test database Fix the automatic database population underlying automatic test to avoid attempt to create computed relations.
Mon, 30 Jan 2017 18:14:45 +0100 [migration] Stop asking confirm to commit 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 30 Jan 2017 18:14:45 +0100] rev 11938
[migration] Stop asking confirm to commit
Mon, 30 Jan 2017 17:17:17 +0100 [migration] Fix crash on 3.24 migration 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 30 Jan 2017 17:17:17 +0100] rev 11937
[migration] Fix crash on 3.24 migration Some sql using a column droped the line above crash migration of cw < 3.24.
Mon, 30 Jan 2017 10:18:31 +0100 [devtools] Skip computed relations when attempting to auto-populate test database
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 30 Jan 2017 10:18:31 +0100] rev 11936
[devtools] Skip computed relations when attempting to auto-populate test database Fix the automatic database population underlying automatic test to avoid attempt to create computed relations.
Mon, 30 Jan 2017 11:23:13 +0100 [test] Use our BaseTestCase in unittest_rtags.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Jan 2017 11:23:13 +0100] rev 11935
[test] Use our BaseTestCase in unittest_rtags.py We need it DeprecatedInstanceWithoutModule for assertWarns method. Use this instead of unittest2 directly with a try/except block to get rid of flake8 error about import not being one top of file.
Mon, 30 Jan 2017 10:22:23 +0100 [server] Add a blank line before _CnxSetPool to fix PEP8 error
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Jan 2017 10:22:23 +0100] rev 11934
[server] Add a blank line before _CnxSetPool to fix PEP8 error
Mon, 30 Jan 2017 10:19:58 +0100 [pkg] Use logilab-common's master repository in dev requirements
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Jan 2017 10:19:58 +0100] rev 11933
[pkg] Use logilab-common's master repository in dev requirements Should follow-up on 7b2247098f58 after integration on logilab-common side.
Fri, 20 Jan 2017 16:39:44 +0100 [rtags] pass module name to RegistrableInstance
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 20 Jan 2017 16:39:44 +0100] rev 11932
[rtags] pass module name to RegistrableInstance Instantiate a RegistrableInstance without passing the module name is deprecated in https://www.logilab.org/patch/10047069
Fri, 27 Jan 2017 17:42:16 +0100 [repository] move cnxset pool handling to a helper class
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 27 Jan 2017 17:42:16 +0100] rev 11931
[repository] move cnxset pool handling to a helper class The class has responsability to handle connections pool operations in a single public attribute 'cnxsets'. On Repository _get_cnxset() and _free_cnxset() are replaced by cnxsets.get() and cnxsets.release(). Drop multiple access to private attributes and methods from outside of Repository.
Fri, 27 Jan 2017 15:53:15 +0100 [pkg] Fix some error on building documentation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 27 Jan 2017 15:53:15 +0100] rev 11930
[pkg] Fix some error on building documentation
Fri, 27 Jan 2017 16:26:09 +0100 Merge 3.24.4 into default branch
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 27 Jan 2017 16:26:09 +0100] rev 11929
Merge 3.24.4 into default branch
Fri, 27 Jan 2017 13:41:24 +0100 Added tag 3.24.4, debian/3.24.4-1, centos/3.24.4-1 for changeset 35fd54c0065d 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 27 Jan 2017 13:41:24 +0100] rev 11928
Added tag 3.24.4, debian/3.24.4-1, centos/3.24.4-1 for changeset 35fd54c0065d
Fri, 27 Jan 2017 13:30:24 +0100 Prepare 3.24.4 3.24 3.24.4 centos/3.24.4-1 debian/3.24.4-1
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 27 Jan 2017 13:30:24 +0100] rev 11927
Prepare 3.24.4
Fri, 20 Jan 2017 03:48:11 +0100 [source,native] Generalize the IntegrityError constraint parsing regex 3.24
Florent Cayré <florent.cayre@gmail.com> [Fri, 20 Jan 2017 03:48:11 +0100] rev 11926
[source,native] Generalize the IntegrityError constraint parsing regex This allows catching constraint-related errors that have been translated by psycopg2, replacing surrounding english quotes by french quotes + space for instance. Closes #17047951.
Wed, 18 Jan 2017 16:50:48 +0100 [pyramid] use pyramid.request `path_info` property instead of `path` 3.24
Samuel Trégouët <samuel.tregouet@logilab.fr> [Wed, 18 Jan 2017 16:50:48 +0100] rev 11925
[pyramid] use pyramid.request `path_info` property instead of `path` path is concatenation of SCRIPT_NAME and PATH_INFO we just need PATH_INFO here
Fri, 13 Jan 2017 11:36:51 +0100 [pyramid] fix login route with language-mode = url-prefix 3.24
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 13 Jan 2017 11:36:51 +0100] rev 11924
[pyramid] fix login route with language-mode = url-prefix
Fri, 18 Nov 2016 10:28:41 +0100 [devtools] Make timeout error in qunit tests configurable and use SkipTest in test_jscript.py 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 10:28:41 +0100] rev 11923
[devtools] Make timeout error in qunit tests configurable and use SkipTest in test_jscript.py This is grafted from 87443f279b0f in default branch (got tired of CI failing because of these unreliable tests).
Thu, 26 Jan 2017 16:34:56 +0100 [web] Handle unspecified value in TZDatetimeField 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 26 Jan 2017 16:34:56 +0100] rev 11922
[web] Handle unspecified value in TZDatetimeField `field._ensure_correctly_typed(self, form, value)` should return None if value is None. Closes #17050181.
Thu, 26 Jan 2017 16:33:15 +0100 [web] Handle unspecified 'date' or 'time' in JQueryDateTimePicker.process_field_data() 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 26 Jan 2017 16:33:15 +0100] rev 11921
[web] Handle unspecified 'date' or 'time' in JQueryDateTimePicker.process_field_data() dict.get() may return None, which has no attribute strip.
Mon, 23 Jan 2017 15:35:19 +0100 [cwconfig] create a virtual "cubes" package
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 23 Jan 2017 15:35:19 +0100] rev 11920
[cwconfig] create a virtual "cubes" package _CubesImporter now handle import of "cubes" and return a virtual module so that "cubes" is always importable without having to create a __init__.py in CUBES_DIR and add CUBES_DIR/.. to sys.path. Drop custom code in setup.py used to create CUBES_DIR/__init__.py and drop now useless warning when cubicweb is installed in develop mode Update test_cubes_path() and ensure 'cubes.file' is not loaded before testing its import. This test seems to have mistakes because cubes are loaded automatically when discovering cw commands (cubes.<x>.ccplugin), not sure how this should be fixed definitely.
Fri, 20 Jan 2017 18:17:04 +0100 Change hooks control (deny_all_hooks_but / allow_all_hooks_but) to be more predictable
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 Jan 2017 18:17:04 +0100] rev 11919
Change hooks control (deny_all_hooks_but / allow_all_hooks_but) to be more predictable Prior to this, if one execute code like: with cnx.hooks.deny_all_hooks_but('metadata'): with cnx.hooks.deny_all_hooks_but(): # mycode 'metadata' hooks will be activated anyway in the inner block, which is rather unexpected (of course in real life you only see the latest hooks control statement, the former being higher in the call stack). This is due to the underlying usage of old `enable_hook_categories` / `disable_hook_categories` methods, which were introduced much before the now official context manager based API (with `cnx.[deny|all]_all_hooks_but(...)`). To move on, this patch drop the two legacy methods, rename and privatize related internal state on the connection (`hooks_mode` becomes `_hooks_mode`, `disabled_hook_cats` and `enabled_hook_cats` become `_hooks_categories`) and reimplement the `_hooks_control` context manager to simply update them. See the added unit test for details.
Tue, 24 Jan 2017 14:09:13 +0100 [cwconfig] make appobjects_cubes_modnames() public
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 24 Jan 2017 14:09:13 +0100] rev 11918
[cwconfig] make appobjects_cubes_modnames() public The method is used in cubicweb.cwvreg without underscore and outside of the config class, so let's make this method public. Fix autoreload with twisted.
Fri, 20 Jan 2017 15:16:18 +0100 Fix str(Unauthorized) 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 Jan 2017 15:16:18 +0100] rev 11917
Fix str(Unauthorized) which is really problematic on python 3 where __unicode__ is never called anymore. This was caused because in PY3, CubicWebException.__str__ was referencing __unicode__ implementation of CubicWebException, not of its subclass that implements it. Fix a flake8 style warning about lambda assignment as a bonus.
Fri, 20 Jan 2017 09:55:08 +0100 [test] avoid using a deprecated feature of yams
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 20 Jan 2017 09:55:08 +0100] rev 11916
[test] avoid using a deprecated feature of yams handle_file() now require a module name (yams@d9120d7)
Tue, 12 May 2015 22:14:24 +0200 [test] add some tests to web.views.baseviews
Alain Leufroy <alain@leufroy.fr> [Tue, 12 May 2015 22:14:24 +0200] rev 11915
[test] add some tests to web.views.baseviews
Mon, 23 Jan 2017 10:44:00 +0100 [tox] Drop "touch {envdir}/share/cubicweb/cubes/__init__.py" command on py34 env
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 23 Jan 2017 10:44:00 +0100] rev 11914
[tox] Drop "touch {envdir}/share/cubicweb/cubes/__init__.py" command on py34 env This was useful when we installed cubicweb in "develop" mode but we do not do this anymore.
Mon, 23 Jan 2017 11:02:21 +0100 Drop support for https-url in all-in-one.conf
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Jan 2017 11:02:21 +0100] rev 11913
Drop support for https-url in all-in-one.conf This feature allowing an instance to have both anonymous and authenticated (https) url is not used anymore, let's drop it.
Fri, 20 Jan 2017 16:53:28 +0100 [test] use TemporaryDirectory context manager
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 20 Jan 2017 16:53:28 +0100] rev 11912
[test] use TemporaryDirectory context manager For consistency with others tests, use TemporaryDirectory from cubicweb.devtools.testlib.
Fri, 20 Jan 2017 14:32:34 +0100 [tox] Drop "exclude" option from flake8 config and adjust flake8-ok-files.txt accordingly
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 20 Jan 2017 14:32:34 +0100] rev 11911
[tox] Drop "exclude" option from flake8 config and adjust flake8-ok-files.txt accordingly Some files listed in flake8-ok-files.txt were excluded of flake8 run because of the "exclude" option in tox.ini. Some of them were non-existent files (moved), some others were actually non-flake8-compliant. In the latter case, we adjust trivial errors (blank lines, module import not on top of file) but remove others (like cubicweb/test/unittest_utils.py) from flake8-ok-files.txt.
Fri, 20 Jan 2017 10:31:04 +0100 [autoform] Go through guess_field even when field class is specified using uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 Jan 2017 10:31:04 +0100] rev 11910
[autoform] Go through guess_field even when field class is specified using uicfg guess_field does not only find the proper field class for some attribute/relation, but also do some basic configuration depending on e.g. constraints. Before this patch, if one was specifying explicitly the field class using uicfg.autoform_field, this automatic configuration wasn't happening. Change form.field_by_name and ff.guess_field so explicit class are also automatically configured now. Closes #14474840
Fri, 20 Jan 2017 03:54:43 +0100 [uilib] Fix incorrect serialization of python dicts into javascript objects 3.24
Florent Cayré <florent.cayre@gmail.com> [Fri, 20 Jan 2017 03:54:43 +0100] rev 11909
[uilib] Fix incorrect serialization of python dicts into javascript objects Valid javascript object keys must be surrounded by quotes unless they are valid javascript identifiers. Valid identifiers are a defined by complex and changing specs, so it is much simpler to always use quotes. Closes #17046704.
Thu, 12 Jan 2017 13:40:25 +0100 [repository] Fix connection-pool-size not set to 1 with quick_start enabled 3.24
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 12 Jan 2017 13:40:25 +0100] rev 11908
[repository] Fix connection-pool-size not set to 1 with quick_start enabled config.load_schema() and config.init_cube() reload configuration options from config file, so a manually set connections-pool-size (eg. when quick_start is enabled) wasn't working.
Thu, 19 Jan 2017 11:12:35 +0100 [migration] Enhance assertion message to get a chance to fix the problem 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 19 Jan 2017 11:12:35 +0100] rev 11907
[migration] Enhance assertion message to get a chance to fix the problem
Thu, 19 Jan 2017 11:12:07 +0100 [migration] Skip virtual rtypes when adding relation definition through add_cube 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 19 Jan 2017 11:12:07 +0100] rev 11906
[migration] Skip virtual rtypes when adding relation definition through add_cube Virtual rtypes should be skipped as they are added dynamically on loading schema. Those are skipped by e.g. schema serialisation or add_entity_type, do the same thing here.
Thu, 19 Jan 2017 11:10:47 +0100 [migration] Avoid unnecessary intermediary commit when migrating a schema 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 19 Jan 2017 11:10:47 +0100] rev 11905
[migration] Avoid unnecessary intermediary commit when migrating a schema Those are low-hanging fruit following changes in ac74476d686c (Fix addition of entity type including boundary constraints on its own attributes): this is no more necesary to commit the get a new relation type definition in the schema. At some point we could/should probably do more on this topic to avoid intermediary commit on e.g. entity type addition, but this requires more work.
Wed, 18 Jan 2017 15:04:27 +0100 [migration] Fix addition of entity type including boundary constraints on its own attributes 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 18 Jan 2017 15:04:27 +0100] rev 11904
[migration] Fix addition of entity type including boundary constraints on its own attributes This was failing because of the sequence of sql executing when adding an attribute: 1. add entity type <commit> 2. add relation type for attribute 1 <commit> 3. add attribute 1 and associated constraints <commit> etc. In the case of e.g. start/end constraint, we were trying to add the constraint before addition of the constrained attribute (e.g. add constraint on 'start' referencing 'end', but only 'start' has been added yet, not 'end'). This patch fix this by: * adding the relation type to the schema without having to commit, but keeping the operation to revert the addition if necessary - this allows to a single commit for all attributes of the entity type ; * using a LateOperation on constraint operation, so we ensure attributes are actually added before any constraint is added.
Thu, 19 Jan 2017 09:53:31 +0100 [schema sync] Refactor AfterAddCWRTypeHook and AfterAddCWComputedRTypeHook so the latter inherit from the former 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 19 Jan 2017 09:53:31 +0100] rev 11903
[schema sync] Refactor AfterAddCWRTypeHook and AfterAddCWComputedRTypeHook so the latter inherit from the former and enhance their docstring.
Wed, 18 Jan 2017 12:36:02 +0100 Drop embed-allowed option, gone away for a long time 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 18 Jan 2017 12:36:02 +0100] rev 11902
Drop embed-allowed option, gone away for a long time
Wed, 04 Jan 2017 10:02:05 +0100 Never record undo information for session or data import 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 04 Jan 2017 10:02:05 +0100] rev 11901
Never record undo information for session or data import for session, it may causes unlimited database size expansion while it makes no sense to undo this kind of changes. For data import, they are created programatically hence we may not want to undo this either.
Thu, 19 Jan 2017 14:53:05 +0100 [cwvreg] load registry using modules names instead of directories
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 19 Jan 2017 14:53:05 +0100] rev 11900
[cwvreg] load registry using modules names instead of directories Introspect cubicweb, cubes and apphome using pkgutil to generate the full list of modules names for loading registries. Avoiding using bogus logilab.common.modutils.modpath_from_file().
Thu, 19 Jan 2017 15:27:39 +0100 [schema] load schema from modules names instead of directories
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 19 Jan 2017 15:27:39 +0100] rev 11899
[schema] load schema from modules names instead of directories Introspect cubicweb, cubes and apphome using pkgutil to generate the full list of modules names for loading the schema. Keep historical behavior and check if source .py file exists if a module is found using python bytecode file (.pyc and .pyo) Loading schema from apphome require apphome to be present in sys.path and that "schema" module resolve to a file located in apphome. Update migraction tests to explicitely update sys.path when loading schema from different apps, use a contextmanager for this so it's more readable. Require updated logilab-common and yams
Wed, 18 Jan 2017 17:16:00 +0100 [devtools/test] Skip qunit tests in case of timeout
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 18 Jan 2017 17:16:00 +0100] rev 11898
[devtools/test] Skip qunit tests in case of timeout Follow-up on 87443f279b0f where other similar tests got adjusted not to fail (in particular in our CI environment).
Thu, 18 Feb 2016 14:22:07 +0100 [autoform] Avoid two calls to field.process_form for the same field in some cases
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 18 Feb 2016 14:22:07 +0100] rev 11897
[autoform] Avoid two calls to field.process_form for the same field in some cases when some entity is being created and data include non-inlined relations, the values for this relation are now stored for later usage, avoiding two calls to field's process_form method, which may be unexpected for custom fields. This has been discovered in saem_ref#f5444b1f9770. Reorganize imports in the test along the way.
Mon, 19 Dec 2016 17:22:48 +0100 [pyramid] Don't use unsafe_cnx_context_manager for write queries 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 19 Dec 2016 17:22:48 +0100] rev 11896
[pyramid] Don't use unsafe_cnx_context_manager for write queries we may have clumsy error that hide previous problems on attempting to commit the transaction. Closes #16753531
Wed, 14 Dec 2016 08:37:11 +0100 Repair database wrt indexes / unique constraints 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 14 Dec 2016 08:37:11 +0100] rev 11895
Repair database wrt indexes / unique constraints * recreate indexes dropped by 3.23 migration (but it's still unclear why) * attempt drop remaining extra indexes (there may be a bunch of these on old instances) * warn about missing expected indexes Closes #16666137
Wed, 14 Dec 2016 17:06:24 +0100 Enhance postgres index filter with values from real life 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 14 Dec 2016 17:06:24 +0100] rev 11894
Enhance postgres index filter with values from real life This has been found on fairly old instances of ours (cwo/elo). Dunno if we really want this in, it may lead to false negatives.
Wed, 14 Dec 2016 17:04:29 +0100 Extract functions to list expected/found database indexes from check_indexes 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 14 Dec 2016 17:04:29 +0100] rev 11893
Extract functions to list expected/found database indexes from check_indexes so they may be used from other contexts. Use consistent naming along the way: always use indexes, not indices.
Thu, 24 Nov 2016 15:36:26 +0100 Simplify and fix _cw.drop_entity_cache
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Nov 2016 15:36:26 +0100] rev 11892
Simplify and fix _cw.drop_entity_cache * it's never called with an eid as argument, beside in a useless case in test (removed) * the only place where it's called from outside the tests is in full-text reindexation in server.checkintegrity: we could removed the request implementation and move it in unittest_rset, byt I decided to keep it for consistency with all other entity cache handling methods * get back a fix from Julien Cristau for the connection's implementation, quoting is commit message: When removing an entity from the transaction's cache, clear the entity's own cache May avoid issues where an entity object is still accessible somewhere else (e.g. an operation) after dropping it from the transaction's cache, with a stale attribute or relation cache.
Fri, 18 Nov 2016 17:50:56 +0100 [entity/optimization] Cache rset when entity.related is called with entities=False
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Nov 2016 17:50:56 +0100] rev 11891
[entity/optimization] Cache rset when entity.related is called with entities=False If fail to see why we couldn't cache in this case, while this is important for optimization reason: when doing a single HTTP request, some queries are done two or three times because of predicates / uicfg or alike. Also always store tuple and not list in the cache, because: * else we get some regression * and inconsistent result type (tuple or list) * and it simply feels better to cache an unmutable object.
Wed, 14 Dec 2016 08:47:06 +0100 Ensure in 3.24 migration that entities from LDAP have consistent cwuri 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 14 Dec 2016 08:47:06 +0100] rev 11890
Ensure in 3.24 migration that entities from LDAP have consistent cwuri Closes #16666157
Wed, 14 Dec 2016 13:34:08 +0100 [doc/book] fix error in markup 3.24
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 14 Dec 2016 13:34:08 +0100] rev 11889
[doc/book] fix error in markup
Wed, 09 Nov 2016 16:14:17 +0100 [rtags] Allow to 'derive' rtags
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 16:14:17 +0100] rev 11888
[rtags] Allow to 'derive' rtags Since some releases, rtags (structure underlying uicfg) have selector and may be copied using something like: new_rtags = deepcopy(original_rtags) new_rtags.__module__ = __name__ new_rtags.__select__ = custom_selector The problem is that starting from that, both rtags wil diverge and changes in original_rtags won't be considered, while we usually want to set a few specific rules only in new_rtags. To fix this problem, this cset introduces the notion of "derivated/parent" rtag, eg: new_rtags = original_rtags.derive(__name__, custom_selector) Beside easier copying, when using the above method changes in original_rtags which are not overriden by new_rtags will be considered since it only hold its specific rules but look among its parent chain for non-found keys. Along the way, flake8 unittest_rtags. Closes #16164880
Wed, 09 Nov 2016 16:08:23 +0100 [test] Use bare unittest in unittest_rtags
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 16:08:23 +0100] rev 11887
[test] Use bare unittest in unittest_rtags
Wed, 09 Nov 2016 16:07:10 +0100 [rtags] Docstring fix
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 16:07:10 +0100] rev 11886
[rtags] Docstring fix
Wed, 09 Nov 2016 16:05:06 +0100 [cleanup] flake8 rtags.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 16:05:06 +0100] rev 11885
[cleanup] flake8 rtags.py
Wed, 14 Dec 2016 11:13:46 +0100 [pkg] Require passlib >= 1.7.0
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 14 Dec 2016 11:13:46 +0100] rev 11884
[pkg] Require passlib >= 1.7.0 Since bc9d901cb9e6 we use 1.7.0 API, update packaging accordingly.
Sun, 04 Dec 2016 23:45:52 +0100 [web/http_headers] do not crash when IfModifiedSince is empty string (closes #16527954) 3.24
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Sun, 04 Dec 2016 23:45:52 +0100] rev 11883
[web/http_headers] do not crash when IfModifiedSince is empty string (closes #16527954)
Wed, 07 Dec 2016 14:07:35 +0100 [pkg] Set an upper bound to passlib 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 07 Dec 2016 14:07:35 +0100] rev 11882
[pkg] Set an upper bound to passlib We're using a deprecated API and are getting the following deprecation warning: :: the method passlib.context.CryptContext.encrypt() is deprecated as of Passlib 1.7, and will be removed in Passlib 2.0, use CryptContext.hash() instead. So let's make sure we're getting a working library. [ci skip]
Fri, 09 Dec 2016 15:08:52 +0100 [cwconfig] Retrieve real path of cubes directory 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 09 Dec 2016 15:08:52 +0100] rev 11881
[cwconfig] Retrieve real path of cubes directory Since logilab-common 1.3.0, we have real path expansion modutils.modpath_from_file. But the extrapath parameter that is passed from cubicweb.schema reader may still have symlinks, so expand them here to hopefully have consistent comparison in modpath_from_file.
Wed, 07 Dec 2016 14:11:23 +0100 [server] Use CryptContext's hash method instead of deprecated encrypt method
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 07 Dec 2016 14:11:23 +0100] rev 11880
[server] Use CryptContext's hash method instead of deprecated encrypt method Getting rid of the following deprecation warning: :: the method passlib.context.CryptContext.encrypt() is deprecated as of Passlib 1.7, and will be removed in Passlib 2.0, use CryptContext.hash() instead.
Wed, 07 Dec 2016 14:13:20 +0100 Merge public heads 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 07 Dec 2016 14:13:20 +0100] rev 11879
Merge public heads
Thu, 22 Oct 2015 16:58:12 +0200 [cwctl] on upgrade, clear instance_md5_version cache
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Oct 2015 16:58:12 +0200] rev 11878
[cwctl] on upgrade, clear instance_md5_version cache The generate-static-datadir depends on a correct config.instance_md5_version(), and we just invalidated it by upgrading the instance.
Tue, 15 Dec 2015 08:35:13 +0100 [twisted] add request error handler to avoid finishing it twice
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Tue, 15 Dec 2015 08:35:13 +0100] rev 11877
[twisted] add request error handler to avoid finishing it twice And avoid stack traces like:: Traceback (most recent call last): File "/usr/lib/python2.7/threading.py", line 783, in __bootstrap self.__bootstrap_inner() File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner self.run() File "/usr/lib/python2.7/threading.py", line 763, in run self.__target(*self.__args, **self.__kwargs) --- <exception caught here> --- [...] File "/usr/lib/python2.7/dist-packages/twisted/python/threadpool.py", line 196, in _worker result = context.call(ctx, function, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext return func(*args,**kw) File "/home/me/envs/grshell-cw/cubicweb/statsd_logger.py", line 121, in __call__ return self.callable(*args, **kw) File "/home/me/envs/grshell-cw/cubicweb/etwist/server.py", line 131, in render_request code=500, twisted_request=request) File "/home/me/envs/grshell-cw/cubicweb/etwist/http.py", line 22, in __init__ self._finalize() File "/home/me/envs/grshell-cw/cubicweb/etwist/http.py", line 46, in _finalize self._twreq.finish() File "/usr/lib/python2.7/dist-packages/twisted/web/server.py", line 228, in finish return http.Request.finish(self) File "/usr/lib/python2.7/dist-packages/twisted/web/http.py", line 931, in finish "Request.finish called on a request after its connection was lost; " exceptions.RuntimeError: Request.finish called on a request after its connection was lost; use Request.notifyFinish to keep track of this.
Fri, 04 Sep 2015 18:05:51 +0200 [web/tests] Hide DeprecationWarnings
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 04 Sep 2015 18:05:51 +0200] rev 11876
[web/tests] Hide DeprecationWarnings
Thu, 19 Nov 2015 12:25:45 +0100 [web] remove next_tabindex()
Julien Cristau <julien.cristau@logilab.fr> [Thu, 19 Nov 2015 12:25:45 +0100] rev 11875
[web] remove next_tabindex() It's hard to see it work reliably in view of multiple server processes. If something like that is needed it should probably be built on the client (js) side.
Wed, 23 Nov 2016 17:19:51 +0100 [views/optimization] Ensure we call rset.possible_actions with the same argument
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 23 Nov 2016 17:19:51 +0100] rev 11874
[views/optimization] Ensure we call rset.possible_actions with the same argument rset.possible_actions (which should definitly not be an ResultSet method, but that's another story) has been designed to hold a cache to compute possible actions for a only once, since this may be a fairly costly operation (notably because of the 'has_editable_relations' predicates). But this has been broken by introduction of a new 'view' parameter which is not given by every call. To fix this, this cset adds the missing view argument where necessary and reimplements the rset's method to assert it's always called with the same key. Unfortunatly, those changes have to be ported to squareui and bootstrap cubes as well.
Fri, 18 Nov 2016 18:19:10 +0100 [schema/optimization] Ensure read permissions are deactivated when we're checking a permission
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Nov 2016 18:19:10 +0100] rev 11873
[schema/optimization] Ensure read permissions are deactivated when we're checking a permission When called from a web request, since we *are* checking some permission, read permissions don't have to be introduced in this query. We may avoid that since there now more any differences between web and repo connections, so let's do it.
Fri, 18 Nov 2016 18:16:21 +0100 [web] Enhance query log file
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Nov 2016 18:16:21 +0100] rev 11872
[web] Enhance query log file * Add an overall page generation time * Don't log URL without any query (e.g. static files)
Thu, 24 Nov 2016 14:26:12 +0100 [massive store] Don't store eids_seq_range as a store attribute
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Nov 2016 14:26:12 +0100] rev 11871
[massive store] Don't store eids_seq_range as a store attribute since it's not considered after object's initialization.
Thu, 24 Nov 2016 16:58:50 +0100 Flake8 bits with some copyright updates
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Nov 2016 16:58:50 +0100] rev 11870
Flake8 bits with some copyright updates
Thu, 24 Nov 2016 16:58:27 +0100 [test] Use plain unittest in unittest_views_forms.py
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Nov 2016 16:58:27 +0100] rev 11869
[test] Use plain unittest in unittest_views_forms.py
Thu, 24 Nov 2016 16:32:14 +0100 Some py3k related fixes: use text_type instead of unicode
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Nov 2016 16:32:14 +0100] rev 11868
Some py3k related fixes: use text_type instead of unicode
Thu, 24 Nov 2016 15:39:52 +0100 [cwctl] Kill deprecated ordered_instances method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Nov 2016 15:39:52 +0100] rev 11867
[cwctl] Kill deprecated ordered_instances method no need to keep bw compat for this.
Fri, 02 Dec 2016 10:10:58 +0100 [test/cleanup] Use plain unittest 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 02 Dec 2016 10:10:58 +0100] rev 11866
[test/cleanup] Use plain unittest
Fri, 02 Dec 2016 10:10:42 +0100 [test/cleanup] flake8 unittest_rqlannotation.py 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 02 Dec 2016 10:10:42 +0100] rev 11865
[test/cleanup] flake8 unittest_rqlannotation.py
Fri, 25 Nov 2016 13:10:10 +0100 [debian] logilab >= 1.2.2 in requires (only in build depends) 3.24
Arthur Lutz <arthur.lutz@logilab.fr> [Fri, 25 Nov 2016 13:10:10 +0100] rev 11864
[debian] logilab >= 1.2.2 in requires (only in build depends) Related to #16404515.
Fri, 25 Nov 2016 13:07:06 +0100 [debian] move unittest2 to requires not recommends closes #16404515 3.24
Arthur Lutz <arthur.lutz@logilab.fr> [Fri, 25 Nov 2016 13:07:06 +0100] rev 11863
[debian] move unittest2 to requires not recommends closes #16404515
Wed, 23 Nov 2016 17:25:31 +0100 [devtools] named context for boxes subTest for consistency 3.24
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 23 Nov 2016 17:25:31 +0100] rev 11862
[devtools] named context for boxes subTest for consistency
Wed, 23 Nov 2016 18:38:46 +0100 Added tag 3.24.3, debian/3.24.3-1, centos/3.24.3-1 for changeset bb5904cd284e 3.24
David Douard <david.douard@logilab.fr> [Wed, 23 Nov 2016 18:38:46 +0100] rev 11861
Added tag 3.24.3, debian/3.24.3-1, centos/3.24.3-1 for changeset bb5904cd284e
Wed, 23 Nov 2016 18:36:55 +0100 [pkg] 3.24.3 3.24 3.24.3 centos/3.24.3-1 debian/3.24.3-1
David Douard <david.douard@logilab.fr> [Wed, 23 Nov 2016 18:36:55 +0100] rev 11860
[pkg] 3.24.3
Wed, 23 Nov 2016 12:24:04 +0100 [cwconfig] ensure CubicWebNoAppConfiguration returns a typed value (closes #16364459) 3.24
David Douard <david.douard@logilab.fr> [Wed, 23 Nov 2016 12:24:04 +0100] rev 11859
[cwconfig] ensure CubicWebNoAppConfiguration returns a typed value (closes #16364459)
Fri, 18 Nov 2016 18:15:14 +0100 [views/optimization] Makes has_editable_relations predicate less costly by using generator
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Nov 2016 18:15:14 +0100] rev 11858
[views/optimization] Makes has_editable_relations predicate less costly by using generator The `has_editable_relations` predicate is used to say if the 'modify' action should appear. To do so, it checks if anything is editable (ie. something in the attributes, relations or inlined section of the automatic form). This may be costly since it may have to check several permissions. To optimize this a bit, this cset turns list into generator so that we'll avoid unnecessary work as soon as we find a match.
Thu, 17 Nov 2016 11:03:19 +0100 [cwconfig] Trim down allowed exceptions in gettext language setting
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 17 Nov 2016 11:03:19 +0100] rev 11857
[cwconfig] Trim down allowed exceptions in gettext language setting I can't see any valid reason to pass on ImportError and AttributeError. In particular, the latter shadowed a Python 3 error until 4f43e64603ef.
Mon, 21 Nov 2016 14:52:33 +0100 [pkg] Configure "universal" wheel build
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Nov 2016 14:52:33 +0100] rev 11856
[pkg] Configure "universal" wheel build According to https://packaging.python.org/distributing/#wheels, we should create universal wheels (no 2to3 step, no C extension). Configure this in setup.cfg. [ci skip]
Mon, 21 Nov 2016 15:17:32 +0100 [rqlrewrite] Test and fix potential NameError
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 21 Nov 2016 15:17:32 +0100] rev 11855
[rqlrewrite] Test and fix potential NameError We were referencing a loop variable, which may lead to a name error and show a potential error if there are several matching variables. To avoid this, introduce a list to hold every encountered variable and process all of them later.
Wed, 16 Nov 2016 15:55:35 +0100 flake8 uicfg
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 16 Nov 2016 15:55:35 +0100] rev 11854
flake8 uicfg
Wed, 16 Nov 2016 15:52:55 +0100 [uicfg] Remove unpredictability from autoform_section initialization
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 16 Nov 2016 15:52:55 +0100] rev 11853
[uicfg] Remove unpredictability from autoform_section initialization It was attempting to guess smart default values by looking at the opposite relation (neg_role), but depending on the (random) ordering of the schema, it may or may not have been set yet, leading to unpredictable result with varying hash seed. Remove those fuzzy lookup all at once, it may change some (unreliable) things in your app but at least it's still a bit easier to explain. Closes #16272968
Mon, 21 Nov 2016 14:55:27 +0100 [schema/optimization] Wrap rql expressions into EXISTS node when checking individual permissions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 21 Nov 2016 14:55:27 +0100] rev 11852
[schema/optimization] Wrap rql expressions into EXISTS node when checking individual permissions Some RQL expression may retrieve several results. It makes sense to wrap them into an EXISTS node to optimized things a bit. This is already done by security insertion of 'read' rql expressions.
Fri, 18 Nov 2016 17:44:52 +0100 [views/optimization] Prefetch state'names and comment format in wfhistory component
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Nov 2016 17:44:52 +0100] rev 11851
[views/optimization] Prefetch state'names and comment format in wfhistory component This will avoid later queries to retrieve them.
Fri, 18 Nov 2016 10:28:41 +0100 [devtools] Make timeout error in qunit tests configurable and use SkipTest in test_jscript.py
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 10:28:41 +0100] rev 11850
[devtools] Make timeout error in qunit tests configurable and use SkipTest in test_jscript.py The reason is that the latter tests quite often fail in our CI environment, possibly due to concurrent execution of the browser, and this makes it hard to identify a truly failing build there. So skip tests with a timeout error.
Mon, 21 Nov 2016 14:18:43 +0100 Added tag 3.24.2, debian/3.24.2-1, centos/3.24.2-1 for changeset 296077513782 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Nov 2016 14:18:43 +0100] rev 11849
Added tag 3.24.2, debian/3.24.2-1, centos/3.24.2-1 for changeset 296077513782 And drop erroneous 0.34.2 tag.
Mon, 21 Nov 2016 14:05:37 +0100 Added tag 0.34.2, debian/0.34.2-1, centos/0.34.2-1 for changeset 296077513782 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Nov 2016 14:05:37 +0100] rev 11848
Added tag 0.34.2, debian/0.34.2-1, centos/0.34.2-1 for changeset 296077513782
Mon, 21 Nov 2016 13:47:03 +0100 [pkg] Version 3.24.2 3.24 3.24.2 centos/3.24.2-1 debian/3.24.2-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Nov 2016 13:47:03 +0100] rev 11847
[pkg] Version 3.24.2
Mon, 21 Nov 2016 13:44:59 +0100 Merge with 3.23 head 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Nov 2016 13:44:59 +0100] rev 11846
Merge with 3.23 head
Thu, 17 Nov 2016 17:26:49 +0100 [migration] Fix 3.23.0 migration script, broken by a703f00718c2 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 17 Nov 2016 17:26:49 +0100] rev 11845
[migration] Fix 3.23.0 migration script, broken by a703f00718c2 * first query use "IN" where it should use "=" -> crash * second query is missing an interpolation -> crash * third query is attempting to remove constraint that have already been removed by the second query -> crash
Mon, 21 Nov 2016 09:29:52 +0100 [doc] Add 3.24 release date and reference in index pages 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Nov 2016 09:29:52 +0100] rev 11844
[doc] Add 3.24 release date and reference in index pages [ci skip]
Fri, 18 Nov 2016 17:08:35 +0100 Closing "oldstable" branch oldstable
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 17:08:35 +0100] rev 11843
Closing "oldstable" branch We now release-based branch naming.
Fri, 18 Nov 2016 17:07:43 +0100 Closing "stable" branch stable
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 17:07:43 +0100] rev 11842
Closing "stable" branch We now release-based branch naming.
Fri, 18 Nov 2016 15:42:10 +0100 Merge 3.24 branch
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 15:42:10 +0100] rev 11841
Merge 3.24 branch
Thu, 17 Nov 2016 11:00:01 +0100 [pkg] Bump version to 3.25.0.dev0
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 17 Nov 2016 11:00:01 +0100] rev 11840
[pkg] Bump version to 3.25.0.dev0
Fri, 18 Nov 2016 15:00:43 +0100 Added tag 3.24.1, debian/3.24.1-1, centos/3.24.1-1 for changeset da52fda6f15b 3.24
David Douard <david.douard@logilab.fr> [Fri, 18 Nov 2016 15:00:43 +0100] rev 11839
Added tag 3.24.1, debian/3.24.1-1, centos/3.24.1-1 for changeset da52fda6f15b
Fri, 18 Nov 2016 14:58:58 +0100 [debian] update changelog's time tag 3.24 3.24.1 centos/3.24.1-1 debian/3.24.1-1
David Douard <david.douard@logilab.fr> [Fri, 18 Nov 2016 14:58:58 +0100] rev 11838
[debian] update changelog's time tag
Fri, 18 Nov 2016 13:55:12 +0100 [pyramid] Drop reference to pyramid_cubicweb in ctl command docstring 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 13:55:12 +0100] rev 11837
[pyramid] Drop reference to pyramid_cubicweb in ctl command docstring [ci skip]
Thu, 17 Nov 2016 17:08:29 +0100 [debian] Rework split of cubicweb-ctl package 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 17 Nov 2016 17:08:29 +0100] rev 11836
[debian] Rework split of cubicweb-ctl package It does not appear simple to have the .install files work. So just copy cubicweb-ctl script in DESDIR of cubicweb-ctl binary package and remove .install files. Related to #16133259.
Fri, 18 Nov 2016 09:14:25 +0100 [skeleton] Rephrase long description of Debian package into something meaningful 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 09:14:25 +0100] rev 11835
[skeleton] Rephrase long description of Debian package into something meaningful [ci skip]
Fri, 18 Nov 2016 08:42:10 +0100 [skeleton] Depends on python-cubicweb in debian packaging 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 08:42:10 +0100] rev 11834
[skeleton] Depends on python-cubicweb in debian packaging [ci skip]
Fri, 18 Nov 2016 14:26:03 +0100 [debian] Have a single python-cubicweb binary for the library 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 18 Nov 2016 14:26:03 +0100] rev 11833
[debian] Have a single python-cubicweb binary for the library But keep distinct meta-packages for dependencies of the HTTP server (Twisted/Pyramid) and database backend. Related to #16133259.
Tue, 15 Nov 2016 10:13:47 +0100 [debian] Update debian packaging (closes #16133259) 3.24
David Douard <david.douard@logilab.fr> [Tue, 15 Nov 2016 10:13:47 +0100] rev 11832
[debian] Update debian packaging (closes #16133259) - use dh_python, pybuild and debhelper>=9, - refactor and simplify the debian/rules, - rename binary packages (but cubicweb-ctl) to python-xxx - remove daemon handling stuff (initscripts...) from cubicweb-ctl (one should now use a standard WSGI delivery method),
Thu, 17 Nov 2016 16:03:02 +0100 [pkg] Version 3.24.1 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 17 Nov 2016 16:03:02 +0100] rev 11831
[pkg] Version 3.24.1
Thu, 17 Nov 2016 16:14:21 +0100 [tox] Use `python -m check_manifest` instead of check-manifest program 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 17 Nov 2016 16:14:21 +0100] rev 11830
[tox] Use `python -m check_manifest` instead of check-manifest program To make sure we use Python from tox's virtualenv.
Mon, 14 Nov 2016 16:23:22 +0000 add debian buildpackage-generated files to hgignore 3.24
David Douard <david.douard@logilab.fr> [Mon, 14 Nov 2016 16:23:22 +0000] rev 11829
add debian buildpackage-generated files to hgignore
Tue, 15 Nov 2016 00:12:34 +0100 [test] Fix language negotiation test 3.24
Florent Cayré <florent.cayre@gmail.com> [Tue, 15 Nov 2016 00:12:34 +0100] rev 11828
[test] Fix language negotiation test At least when executed alone (there seems to be a test isolation problem which I could not figure out).
Thu, 10 Nov 2016 18:25:50 +0100 [pyramid] No more need for an internal connection when user is cached 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 10 Nov 2016 18:25:50 +0100] rev 11827
[pyramid] No more need for an internal connection when user is cached
Thu, 10 Nov 2016 18:23:45 +0100 [web] req.lang should be None or a non-empty string 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 10 Nov 2016 18:23:45 +0100] rev 11826
[web] req.lang should be None or a non-empty string
Thu, 17 Nov 2016 10:15:11 +0100 [web] Simplify a bit language handling 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 17 Nov 2016 10:15:11 +0100] rev 11825
[web] Simplify a bit language handling Drop `set_default_language` and `set_user_language` by considering that: * before being bound to the user, request will have the site's default language * cnx has the user's preferred language, hence get it back to the request when it's bound to a connection The first point requires some change to cubicweb's vreg faking so it doesn't break. That should be enough.
Thu, 17 Nov 2016 10:53:04 +0100 Fix AttributeError for "lang" on repo/client connections 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 17 Nov 2016 10:53:04 +0100] rev 11824
Fix AttributeError for "lang" on repo/client connections This is a regression introduced by b48020a80dc3, which removed call to set_language from the `req._set_user` method. This is fine, but we still want a language on connections, so we've to handle it if necesary in Connection.__enter__ (i.e. once connection is properly open). When using pyramid front-end, which has a users cache, we've to cache its language as well because we must not access its preferred_language method since it's not bound to a proper connection.
Thu, 17 Nov 2016 10:47:52 +0100 Alias ugettext to gettext method of cwGNUTranslations in Python 3 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 17 Nov 2016 10:47:52 +0100] rev 11823
Alias ugettext to gettext method of cwGNUTranslations in Python 3 The former does not exist in Python 3, but we rely on it. This fixes test_login_bad_password in cubicweb/pyramid/test/test_login.py which has never passed since being introduced in 6392f34fcdad.
Wed, 16 Nov 2016 14:38:11 +0100 [devctl] make i18n custom message extractors work with legacy layouts 3.24
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Wed, 16 Nov 2016 14:38:11 +0100] rev 11822
[devctl] make i18n custom message extractors work with legacy layouts distname needs to be "cubicweb_<cubename>", even with legacy layouts for pkg.load_entry_point() to work closes #16272177
Wed, 16 Nov 2016 17:12:09 +0100 Fix (new) flake8 errors 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 16 Nov 2016 17:12:09 +0100] rev 11821
Fix (new) flake8 errors They showed up on upgrade of flake8/pep8.
Tue, 15 Nov 2016 11:44:05 +0100 [pyramid] Try "eid" first when retrieving a subresource of ETypeResource 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 15 Nov 2016 11:44:05 +0100] rev 11820
[pyramid] Try "eid" first when retrieving a subresource of ETypeResource So that Pyramid traversal works as existing CubicWeb URL publishing.
Tue, 15 Nov 2016 12:20:02 +0100 Fix AttributeError on postcommit when db-create adds non-system CWSource entities 3.24
Florent Cayré <florent.cayre@logilab.fr> [Tue, 15 Nov 2016 12:20:02 +0100] rev 11819
Fix AttributeError on postcommit when db-create adds non-system CWSource entities In this case, `Repository.add_source` is called from an operation, not from `Repository.init_sources_from_database`, thus the attribute `sources_by_eid` does not exist. Closes #16251078.
Wed, 09 Nov 2016 23:00:00 +0100 [devctl] Optimize cleanup_sys_modules a bit 3.24
Florent Cayré <florent.cayre@gmail.com> [Wed, 09 Nov 2016 23:00:00 +0100] rev 11818
[devctl] Optimize cleanup_sys_modules a bit by moving out of a loop a costly computation that is constant. This at least benefits the `i18ncube` command. Related to #15789486.
Thu, 10 Nov 2016 10:05:14 +0100 [pyramid] Install file listing monitored files in application home 3.24
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 10 Nov 2016 10:05:14 +0100] rev 11817
[pyramid] Install file listing monitored files in application home Instead of using a temporary file, that never gets deleted. Closes #16159807.
Mon, 14 Nov 2016 17:48:10 +0100 [pyramid] Fix login error message language 3.24
Florent Cayré <florent.cayre@logilab.fr> [Mon, 14 Nov 2016 17:48:10 +0100] rev 11816
[pyramid] Fix login error message language Use http negotiation unless language is explicitly set for the site. Closes #16236485.
Mon, 14 Nov 2016 12:26:49 +0100 i18n update 3.24
Florent Cayré <florent.cayre@logilab.fr> [Mon, 14 Nov 2016 12:26:49 +0100] rev 11815
i18n update Pyramid-related messages were not translated. Closes #16236243.
Wed, 09 Nov 2016 11:46:03 +0100 [pyramid] Add action verb used in some messages displayed by the command 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 11:46:03 +0100] rev 11814
[pyramid] Add action verb used in some messages displayed by the command For instance we'll see 'instance started' instead of 'instance None', which is nicer.
Wed, 09 Nov 2016 11:45:19 +0100 [pyramid] No more need to check CW version since it's now shipped with it 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 11:45:19 +0100] rev 11813
[pyramid] No more need to check CW version since it's now shipped with it
Wed, 09 Nov 2016 11:44:27 +0100 [pyramid] Fix 404 handling 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 11:44:27 +0100] rev 11812
[pyramid] Fix 404 handling Avoid seeing a traceback in the UI by catching it before it reaches pyramid and restore usage of the '404' view. Closes #16159863
Wed, 09 Nov 2016 11:42:33 +0100 Fix broken flake8 configuration 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 11:42:33 +0100] rev 11811
Fix broken flake8 configuration and flake8 errors which were hidden by this breakage. flake8 --filename options doesn't work as expected: * it's expected to be a shell pattern, using stdlib's fnmatch.fnmatch function internally. This funciton thinks that 'cubicweb/x.py' doesn't match 'cubicweb/x.py' (there must be a reason but that's not the point), hence no file was actually checked ; * as this is a list of pattern, each encountered file is checked against each pattern, leading to run time explosion. So maintain list of files to check in a separated file and give this list to flake8 using unix's xarg command.
Tue, 30 Jun 2015 10:00:53 +0200 [entities] Fix typo in wfobjs debug message 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 30 Jun 2015 10:00:53 +0200] rev 11810
[entities] Fix typo in wfobjs debug message
Wed, 09 Nov 2016 09:07:42 +0100 [doc] Add my 3.24 release notes 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Nov 2016 09:07:42 +0100] rev 11809
[doc] Add my 3.24 release notes
Tue, 08 Nov 2016 18:37:47 +0100 [migration] Drop cw_schema relation first 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 08 Nov 2016 18:37:47 +0100] rev 11808
[migration] Drop cw_schema relation first without this, we ends up with the traceback shown at https://www.cubicweb.org/ticket/16130960. This is not the proper fix, which I have not been able to find. It seems due to this very rare case of deletion of such relation linked to CWRType vs order of execution of operation (in this case, the operation deleting the entity table is run before some other queries using it). As forcing this relation to be deleted before the entity type fixes the problem while this case seems rare enough, IMO this patch is "good enough". Closes #16130960
Tue, 08 Nov 2016 18:34:22 +0100 [hooks] Delete some properties cached on entities schema on schema updates 3.24
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 08 Nov 2016 18:34:22 +0100] rev 11807
[hooks] Delete some properties cached on entities schema on schema updates cubicweb.schema add two additional @cachedproperty that should be cleared when in-memory schema is modified. This may leads to e.g. attempt to delete some already dropped relations. Related to #16130960
Sun, 06 Nov 2016 16:43:27 +0100 [doc] Add some words in changelog about pyramid support in core + fix its title 3.24
Florent Cayré <florent.cayre@gmail.com> [Sun, 06 Nov 2016 16:43:27 +0100] rev 11806
[doc] Add some words in changelog about pyramid support in core + fix its title Closes #16121152.
Sun, 06 Nov 2016 16:35:57 +0100 [pkg] Fix extra packages not installable 3.24
Florent Cayré <florent.cayre@gmail.com> [Sun, 06 Nov 2016 16:35:57 +0100] rev 11805
[pkg] Fix extra packages not installable For instance `pip install -e ".[pyramid]"` should install the pyramid dependencies. A typo caused all these extra packages to not be found by pip. Closes #16121322.
Fri, 04 Nov 2016 16:45:54 +0100 Added tag 3.24.0, centos/3.24.0-1 for changeset 9f7949b63ab2
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 04 Nov 2016 16:45:54 +0100] rev 11804
Added tag 3.24.0, centos/3.24.0-1 for changeset 9f7949b63ab2
Wed, 02 Nov 2016 10:15:42 +0100 [views] simplify and fix the TreeView (closes #16055814) 3.24.0 centos/3.24.0-1
David Douard <david.douard@logilab.fr> [Wed, 02 Nov 2016 10:15:42 +0100] rev 11803
[views] simplify and fix the TreeView (closes #16055814) Simplify the (internal) TreeView._init_params() method to get rid of the useless 'initial_thru_ajax' argument. The ajax tree view was not working properly when loaded via ajax, for instance from a lazy tab. This was due to the buggy protection against double javascript/ css inclusion, which is no more needed server-side as it is now implemented client-side. Deprecate use of the initial_thru_ajax argument of the TreeView.call() method.
Thu, 13 Oct 2016 15:39:48 +0200 [massive store] remove unused code
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 13 Oct 2016 15:39:48 +0200] rev 11802
[massive store] remove unused code
Fri, 04 Nov 2016 11:19:29 +0100 Drop a cw 3.24 warning
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 04 Nov 2016 11:19:29 +0100] rev 11801
Drop a cw 3.24 warning
Fri, 04 Nov 2016 11:19:11 +0100 Fix unexpected req.relative_path() when calling CWTC.app_handle_request with path argument
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 04 Nov 2016 11:19:11 +0100] rev 11800
Fix unexpected req.relative_path() when calling CWTC.app_handle_request with path argument The _deprecated_path_arg decorator can not be used in this case, since it won't ensure backward compat if path value has been specified and is not similar as req's path (which is generally the case). This problem has been introduced by 904ee9cd0cf9.
Fri, 04 Nov 2016 13:12:10 +0100 [req,web/request] Move language prefix handling into web request
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 04 Nov 2016 13:12:10 +0100] rev 11799
[req,web/request] Move language prefix handling into web request This changes part of d8830e2bd2e0 by unsetting "lang" attribute of RequestSessionBase in particular (because it appears to break many downstream applications). The new implementation relies on a new "build_url_path" method on RequestSessionBase that is overridden in _CubicWebRequestBase to handle the language prefix in URL. As a consequence build_url in RequestSessionBase is not aware of this prefix anymore (contrary previous implementation from d8830e2bd2e0). Move respected tests from unittest_req.py into unittest_request.py. Commenting out part of test_handle_request_no_lang_negotiation_fixed_language in unittest_application.py because it now fails because of some obscure bug that cannot be resolved at the moment. Related to #15743487.
Fri, 04 Nov 2016 11:57:09 +0100 [test] Use stdlib unittest instead of lgc.testlib in unittest_request.py
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 04 Nov 2016 11:57:09 +0100] rev 11798
[test] Use stdlib unittest instead of lgc.testlib in unittest_request.py
Fri, 04 Nov 2016 11:56:00 +0100 [test] Distinguish "request" tests from accept parser ones in unittest_request.py
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 04 Nov 2016 11:56:00 +0100] rev 11797
[test] Distinguish "request" tests from accept parser ones in unittest_request.py
Fri, 04 Nov 2016 09:21:10 +0100 [pkg] Add setuptools to RPM build requirements
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 04 Nov 2016 09:21:10 +0100] rev 11796
[pkg] Add setuptools to RPM build requirements
Thu, 03 Nov 2016 18:22:47 +0100 [pkg] Version 3.24.0
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 03 Nov 2016 18:22:47 +0100] rev 11795
[pkg] Version 3.24.0
Thu, 03 Nov 2016 15:00:01 +0100 [req,web] Make it possible to handle page language from URL prefix
Laura Médioni <laura.medioni@logilab.fr>, Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 03 Nov 2016 15:00:01 +0100] rev 11794
[req,web] Make it possible to handle page language from URL prefix Adding a short language prefix to URL (like "/en" or "/fr") changes the language the pages are displayed in. This prefix is kept during navigation. This way it is not necessary to do language negotiation, nor to use user preferences to determine which language to apply. This behavior is controlled through a new configuration option "language-mode", which replaces "language-negociation" option and which values may be "http-negotiation", "url-prefix" or "" (to disable language setting and force using "ui.language" property). Migration from previous option is not handled because I could not manage to have it working (users will get prompted with the configuration file diff anyways). Add some tests checking various scenarios. Closes #15743487
Wed, 02 Nov 2016 15:59:39 +0100 [config] fix the load_site_cubicweb() method for to 'new-style' cubes (closes #16059402)
David Douard <david.douard@logilab.fr> [Wed, 02 Nov 2016 15:59:39 +0100] rev 11793
[config] fix the load_site_cubicweb() method for to 'new-style' cubes (closes #16059402) We first try to load the site_cubicweb module from the cubicweb_<cube> package, and if it fails, revert back to old cube path.
Thu, 13 Oct 2016 15:31:02 +0200 [massive store] remove on_commit / on_rollback parameters
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 13 Oct 2016 15:31:02 +0200] rev 11792
[massive store] remove on_commit / on_rollback parameters No actual use of this was found in client code. If one wants to control this behaviour, he can always override the commit method and add a try / except around flush_entities in its own store
Thu, 13 Oct 2016 15:16:38 +0200 [massive store] master_init should commit by default
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 13 Oct 2016 15:16:38 +0200] rev 11791
[massive store] master_init should commit by default Default client usage is to create a master store to control slave ones. They need to access cwmassive_initialized from another transaction
Thu, 13 Oct 2016 15:12:33 +0200 [massive store] isolate SQL statements that one may want to customize
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 13 Oct 2016 15:12:33 +0200] rev 11790
[massive store] isolate SQL statements that one may want to customize i.e. provide public methods for meta data insertions
Thu, 06 Oct 2016 12:12:04 +0200 [massive store] Store entities in temporary table as well
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 06 Oct 2016 12:12:04 +0200] rev 11789
[massive store] Store entities in temporary table as well * on some entity type is encountered by a slave, create a dedicated table for insertion of entities of this type by this slave, similarly to what is done for relation - this should lower changes of conflicts in master/slaves mode ; * delay drop of constraints and indexes to `finish` method, where copy from temporary tables to regular table is done ; * insertion of metadata is done by scanning temporary tables, which may be way shorter than theier associated regular table ; * drop drop_metadata_constraints with its constraint_dropped friend attribute, there are no more necessary since this is done once in the `finish`. Related to #15538303
Tue, 11 Oct 2016 10:24:13 +0200 [massive store] Drop useless check for empty buffer
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 11 Oct 2016 10:24:13 +0200] rev 11788
[massive store] Drop useless check for empty buffer If something went wrong, an error will be raised.
Tue, 11 Oct 2016 10:23:44 +0200 [massive store] Docstring / comment cleanups
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 11 Oct 2016 10:23:44 +0200] rev 11787
[massive store] Docstring / comment cleanups
Tue, 11 Oct 2016 10:23:06 +0200 [massive store] Turn a runtime error into an assertion
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 11 Oct 2016 10:23:06 +0200] rev 11786
[massive store] Turn a runtime error into an assertion geting there is a bug.
Wed, 05 Oct 2016 09:27:25 +0200 [massive store] Delay metadata attributes and default values handling to flush_entities
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 05 Oct 2016 09:27:25 +0200] rev 11785
[massive store] Delay metadata attributes and default values handling to flush_entities This may be done once for all there, instead of for each entity in prepare_insert_entity.
Wed, 05 Oct 2016 09:38:05 +0200 [massive store] Use a slave specific table for relation insertion in the massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 05 Oct 2016 09:38:05 +0200] rev 11784
[massive store] Use a slave specific table for relation insertion in the massive store * attribute a random id to the store * add a column containing this id in the cwmassive_initialized table * separate generic `master_init` which create the cwmassive_initialized table from rtype specific initialization which must be done in each slave now * delay removal of table indexes to `finish` * get back relations from each table on `finish` Similar work still has to be done for entities insertion - which will allow more cleanup to the constraints handling which is still rough for now. Related to #15538303
Tue, 04 Oct 2016 13:14:35 +0200 [massive store] docstring and __init__ cleanup
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 04 Oct 2016 13:14:35 +0200] rev 11783
[massive store] docstring and __init__ cleanup
Tue, 04 Oct 2016 13:14:18 +0200 [massive store] Drop dead code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 04 Oct 2016 13:14:18 +0200] rev 11782
[massive store] Drop dead code This function is never used
Fri, 30 Sep 2016 17:34:59 +0200 [massive store] Reintroduce methods that are necessary to properly handle master/slave configuration
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:34:59 +0200] rev 11781
[massive store] Reintroduce methods that are necessary to properly handle master/slave configuration Related to #15538303
Wed, 28 Sep 2016 09:02:14 +0200 [massive store] Follow configuration of the metadata generator
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 28 Sep 2016 09:02:14 +0200] rev 11780
[massive store] Follow configuration of the metadata generator Don't drop constraints and indexes for tables that are ignored by the metadata generator given to the store. One may now easily disable insertion of e.g. created_by / owned_by by removing them from the MetadataGenerator.META_RELATIONS set, in which case indexes for associated table won't be removed by the massive store.
Mon, 17 Oct 2016 16:53:28 +0200 [dataimport] make MetadataGenerator.META_RELATIONS customizable
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Mon, 17 Oct 2016 16:53:28 +0200] rev 11779
[dataimport] make MetadataGenerator.META_RELATIONS customizable This should be done on the instance rather than on the class
Wed, 28 Sep 2016 08:57:48 +0200 [massive store] Rework constraint/index handling
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 28 Sep 2016 08:57:48 +0200] rev 11778
[massive store] Rework constraint/index handling The basic idea is to keep the primary constraint on entities.eid since it's heavily used in metadata insertions. Other option would have been to drop / recreate but its very costly on big database, and the index is used for insertion into the entities table itself, so it's not worth droping it at a first glance. Also, keeping it avoids to systematically drop all constraints which depends on it. We may thus now lazily drop constraints, only on insertion of some etype/rtype for the related table. Related to #15538359
Tue, 27 Sep 2016 12:02:07 +0200 [massive store] Lazy removal of constraints and metadata indexes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 12:02:07 +0200] rev 11777
[massive store] Lazy removal of constraints and metadata indexes They should not be removed during store's init, because we may want to query the database with its index between store creation and call to prepare_insert* (e.g. to build the extid2eid map). Along the way: * rename drop_metadata_constraints into drop_metadata_indexes, because that's what it does * rework a bit impacted tests Closes #15538359
Mon, 17 Oct 2016 14:50:47 +0200 [repository] Drop the index on entities.type
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 17 Oct 2016 14:50:47 +0200] rev 11776
[repository] Drop the index on entities.type It should be now only used in maintenance queries in checkintegrity. Those are not worth maintaining it. Closes #15538317
Thu, 06 Oct 2016 12:11:23 +0200 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 06 Oct 2016 12:11:23 +0200] rev 11775
[source] Drop source mapping handling It was only used by the cwxmlparser which has been deleted. This is too complex for litle benefit, we don't want to maintain that in cubicweb.
Wed, 05 Oct 2016 15:30:10 +0200 [repository] Drop the entities.extid column and associated cache
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 05 Oct 2016 15:30:10 +0200] rev 11774
[repository] Drop the entities.extid column and associated cache This was not necessary anymore with promoted usage of the new data import API. Turn repository's _type_extid_cache to _type_cache with only the entity's type as key. This introduces an backward incompatible change: entity_metas dict doesn't contains anymore the extid key, but it doesn't seem used at all anywhere, so this sounds acceptable. Closes #15538317
Fri, 30 Sep 2016 17:38:12 +0200 [repository] Drop the entities.asource column
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:38:12 +0200] rev 11773
[repository] Drop the entities.asource column It not used anymore thanks to previous patches. Closes #15538288
Thu, 29 Sep 2016 22:54:26 +0200 [integrity check] Stop using entities.asource column in integrity checks
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 29 Sep 2016 22:54:26 +0200] rev 11772
[integrity check] Stop using entities.asource column in integrity checks Simply check if entities have a cw_source, and link it to the system source when not found. Related to #15538288
Mon, 17 Oct 2016 13:42:30 +0200 [rql2sql/test] Ensure test results predictability
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 17 Oct 2016 13:42:30 +0200] rev 11771
[rql2sql/test] Ensure test results predictability Without this, test were randomly failing within tox due to different order of solutions.
Thu, 06 Oct 2016 21:17:01 +0200 [rql2sql] Stop generating SQL query from RQL using entities.type
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 06 Oct 2016 21:17:01 +0200] rev 11770
[rql2sql] Stop generating SQL query from RQL using entities.type This was necessary in the "true multi-sources" time, it's not anymore, while maintaining this index is costly. Related to #15538317
Tue, 11 Oct 2016 10:30:59 +0200 [test] Remove some usages of lgc.testlib
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 11 Oct 2016 10:30:59 +0200] rev 11769
[test] Remove some usages of lgc.testlib
Thu, 06 Oct 2016 21:14:49 +0200 [test] Avoid pytest discovery warnings
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 06 Oct 2016 21:14:49 +0200] rev 11768
[test] Avoid pytest discovery warnings Having TestServerConfiguration and alike in the test module namespace causes pytest discovery errors, because it thinks it's a test class.
Fri, 30 Sep 2016 18:25:08 +0200 flake8 and all
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 18:25:08 +0200] rev 11767
flake8 and all * update some copyright * drop most __docformat__ declaration * fix some flake8 warnings / errors
Wed, 05 Oct 2016 15:28:43 +0200 [schema2sql] Drop deprecated comment
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 05 Oct 2016 15:28:43 +0200] rev 11766
[schema2sql] Drop deprecated comment
Sat, 01 Oct 2016 11:56:27 +0200 [cnx] Use entity_type instead of entity_metas()['type']
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sat, 01 Oct 2016 11:56:27 +0200] rev 11765
[cnx] Use entity_type instead of entity_metas()['type'] The latter is deprecated in favor of the former which has been introduced on cnx to replace it.
Thu, 06 Oct 2016 12:15:50 +0200 [entity] Reimplement and deprecate entity.cw_metainformation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 06 Oct 2016 12:15:50 +0200] rev 11764
[entity] Reimplement and deprecate entity.cw_metainformation It shouldn't rely anymore on cnx.entity_metas which is itself deprecated, and the cw_metainformation API is similarly not needed anymore, access directly to cwuri / cw_source if needed. Related to #15538288
Fri, 30 Sep 2016 17:39:17 +0200 [repository] Drop type_and_source_from_eid and rename related cache
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:39:17 +0200] rev 11763
[repository] Drop type_and_source_from_eid and rename related cache We don't want to handle anymore the entities.asource column so we shouldn't use those anymore. Also rename repository's _type_source_cache into _type_extid_cache as this is what it's containing now. Do similar renaming to the system source API. Related to #15538288
Fri, 30 Sep 2016 17:34:11 +0200 [entity] Stop returning source information in cw_metainformation()
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:34:11 +0200] rev 11762
[entity] Stop returning source information in cw_metainformation() We should not need that. It has been introduced to handle things we should not do and probably don't do anymore (e.g. attempting to grasp recursive import of several sites). Related to #15538288.
Fri, 30 Sep 2016 17:04:42 +0200 [json] Stop serializing cw_source into default json representation of an entity
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:04:42 +0200] rev 11761
[json] Stop serializing cw_source into default json representation of an entity Related to #15538288
Thu, 29 Sep 2016 23:11:38 +0200 Drop deprecated LDAP related script
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 29 Sep 2016 23:11:38 +0200] rev 11760
Drop deprecated LDAP related script both are relying on the 'entities.source' column which has been dropped in 3.19. They have been written with the old ldapsource in mind, which has been dropped at that time.
Fri, 30 Sep 2016 17:18:15 +0200 [entity] Stop linking to external site for external entities
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:18:15 +0200] rev 11759
[entity] Stop linking to external site for external entities This behaviour was ok when we had "true" multi-sources but its rather painful with datafeed sources. Also, it makes absolute_url() costlier than what it should. Besides, it relies on cw_metainformation()['source'] that is pending for removal. Instead, add a link to the original object in the metadata view (the one that displays eid and source at the bottom right corner of the primary view). Related to #15538288.
Thu, 29 Sep 2016 22:23:16 +0200 [datafeed] Drop entity deletion handling in the default source / parser
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 29 Sep 2016 22:23:16 +0200] rev 11758
[datafeed] Drop entity deletion handling in the default source / parser This should be handled by specific parser to avoid using "entities.asource". Reimplement it in the ldap parser. Related to #15538288
Thu, 29 Sep 2016 11:44:19 +0200 [sources] Drop 'moved_entities' table handling
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 29 Sep 2016 11:44:19 +0200] rev 11757
[sources] Drop 'moved_entities' table handling This was clumsy and could be handled using exturi / cwsource, as the ldap source now does.
Fri, 30 Sep 2016 17:36:40 +0200 [repository] Drop deprecated extid2eid API and friends
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:36:40 +0200] rev 11756
[repository] Drop deprecated extid2eid API and friends This will break cwxmlparser based sources. They should be rewritten using a specific parser, based on xml representation or on rqlio. This is harsh but allows a so big cleanup of the code base. Furthermore, it's necessary for asource/extid handling in the entities table which is costly for most app that don't care at all about that... In this cset, delete: * all extid2eid methods * repo._extid_cache handling * [before/after]_entity_insertion source callback * the cwxmlparser and update related tests, notably unittest_datafeed where 'repull' testing has been removed, since it's now handled by the dataimport API and should not be retested there. Related to #15538288 Closes #15538383
Fri, 30 Sep 2016 17:36:02 +0200 [ldap] Stop using entities table in ldap source authentication and parser
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:36:02 +0200] rev 11755
[ldap] Stop using entities table in ldap source authentication and parser We may used cwuri for the same purpose, and do one more step towards deletion of entities.extid column. Related to #15538288
Wed, 26 Oct 2016 11:24:57 +0200 [test] Use stdlib unittest in unittest_webconfig.py
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Oct 2016 11:24:57 +0200] rev 11754
[test] Use stdlib unittest in unittest_webconfig.py
Thu, 03 Nov 2016 12:15:42 +0100 [tox] Require ldap3 < 2 for server tests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 03 Nov 2016 12:15:42 +0100] rev 11753
[tox] Require ldap3 < 2 for server tests Apparently we are using some constants that got dropped/moved in ldap3 >= 2.0.0 (which came out last week). So stay with version 1.4 until this gets sorted out.
Wed, 02 Nov 2016 11:11:01 +0100 [setup] fix CWDevelop to keep compat with python 2.7
David Douard <david.douard@logilab.fr> [Wed, 02 Nov 2016 11:11:01 +0100] rev 11752
[setup] fix CWDevelop to keep compat with python 2.7 in Python, 2.7, setuptools.command.develop.develop is an old style class, thus it cannot be called with super.
Wed, 26 Oct 2016 08:34:34 +0200 [devtools] Make dependency on backports.tempfile (Python2) optional
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Oct 2016 08:34:34 +0200] rev 11751
[devtools] Make dependency on backports.tempfile (Python2) optional The package may not be available in all systems (e.g. no Debian package exist at the moment), and we should not crash with ImportError when importing testlib from client code. Follow up on a6dc650bc230 where the dependency was introduced.
Wed, 28 Sep 2016 22:17:36 +0200 [sources] Drop source support_entity / support_relation source API
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 28 Sep 2016 22:17:36 +0200] rev 11750
[sources] Drop source support_entity / support_relation source API this was used in the pre-datafeed area, it's not worth it anymore. Its only valid usage was in authentication to detect if the source was supporting CWUser, hence we now call it systematically and catch NotImplementedError.
Fri, 30 Sep 2016 18:24:17 +0200 [dataimport] Add a new NullStore
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 18:24:17 +0200] rev 11749
[dataimport] Add a new NullStore This is useful to do some import tests where you only want to test steps prior to the database insertion, as well as "dry-run" commands. Use it as a documenting base class.
Fri, 30 Sep 2016 17:03:33 +0200 [devtools] Properly reraise the exception
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Sep 2016 17:03:33 +0200] rev 11748
[devtools] Properly reraise the exception with previous implementation, the original exception wasn't visible in python 2.
Mon, 24 Oct 2016 14:41:36 +0200 [pkg] Do not install sql scripts in <prefix>/share/cubicweb/schemas
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 24 Oct 2016 14:41:36 +0200] rev 11747
[pkg] Do not install sql scripts in <prefix>/share/cubicweb/schemas These are already site-packages along with cubicweb package.
Mon, 24 Oct 2016 10:08:36 +0200 [devtools/qunit] Retain firefox process stdout to eventually print it
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 24 Oct 2016 10:08:36 +0200] rev 11746
[devtools/qunit] Retain firefox process stdout to eventually print it The bare RuntimeError that gets emitted upon timeout does not help much to diagnose the problem. Let's see if we can get more information from stdout by not dropping it.
Mon, 24 Oct 2016 09:45:38 +0200 [devtools/qunit] Turn FirefoxHelper into a context manager
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 24 Oct 2016 09:45:38 +0200] rev 11745
[devtools/qunit] Turn FirefoxHelper into a context manager So that stop() method always gets called. Also ensure temporary directory created on __init__ gets deleted as well upon exit.
Mon, 24 Oct 2016 09:31:55 +0200 [test] Replace logilab-common's with_tempdir by tempfile.TemporaryDirectory
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 24 Oct 2016 09:31:55 +0200] rev 11744
[test] Replace logilab-common's with_tempdir by tempfile.TemporaryDirectory logilab-common's with_tempdir decorator, which is considered harmful (see https://www.logilab.org/ticket/8267966). Rely on backports.tempfile to provide TemporaryDirectory on Python 2. Re-export it in testlib module for convenience.
Mon, 24 Oct 2016 09:29:08 +0200 [test] Use `with open` syntax in cwconfig "prefix" tests
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 24 Oct 2016 09:29:08 +0200] rev 11743
[test] Use `with open` syntax in cwconfig "prefix" tests
Mon, 24 Oct 2016 09:02:53 +0200 [test] Use stdlib unittest.main() in qunit
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 24 Oct 2016 09:02:53 +0200] rev 11742
[test] Use stdlib unittest.main() in qunit
Tue, 16 Aug 2016 16:00:32 +0200 [web] Clear "pending_others" session key after all relations got processed
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 16 Aug 2016 16:00:32 +0200] rev 11741
[web] Clear "pending_others" session key after all relations got processed The RelationField appends data to "pending_others" key while processing its posted information, but this key may already have been removed by the edit controller. So remove the key from session data only when all "others" relations have been processed using a while loop. A test case would be nice, but I could not build one easily unfortunately. Closes #4354551.
Wed, 28 Sep 2016 11:06:28 +0200 [datafeed] Complete the import log even if parser could not be found
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 28 Sep 2016 11:06:28 +0200] rev 11740
[datafeed] Complete the import log even if parser could not be found It happens that if the parser could not be found, _pull_data() would just return an empty dict without taking care to close the import log which it just opened. This leads to misleading information in the user interface where CWDataImport entities kept accumulating in the "imports" tab of CWSource primary view without anything else happening. So: * log an error message when parser cannot be found * always close (write logs and set "end_timestamp" attribute) import log when leaving _pull_data(). Closes #15505460.
Fri, 21 Oct 2016 18:03:06 +0200 [twconfig] Set default value for "interface" to 0.0.0.0
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 21 Oct 2016 18:03:06 +0200] rev 11739
[twconfig] Set default value for "interface" to 0.0.0.0 This value means "all IP addresses on this host", which seems to fit with "default to everywhere" that's documented. Closes #15135610.
Wed, 12 Oct 2016 17:03:02 +0200 [session] Allow self._open to be False in __enter__
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 12 Oct 2016 17:03:02 +0200] rev 11738
[session] Allow self._open to be False in __enter__ I do not understand why this assertion was there in the first place. And currently, it makes running any migration impossible. Hopefully, someone may be able to explain. See also commit b48020a80dc3 which mentions this assertion and suggests to remove it.
Fri, 21 Oct 2016 18:35:46 +0200 [pkg] Warn about "develop" command not installing legacy cubes directory
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 21 Oct 2016 18:35:46 +0200] rev 11737
[pkg] Warn about "develop" command not installing legacy cubes directory Not sure we can do better than a warning, which is better than nothing anyways. Closes #15785635.
Fri, 21 Oct 2016 18:43:13 +0200 [pkg] Cleanup MANIFEST.in from non-matching entries
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 21 Oct 2016 18:43:13 +0200] rev 11736
[pkg] Cleanup MANIFEST.in from non-matching entries This cleans up output of setup.py executions.
Fri, 21 Oct 2016 18:10:15 +0200 [devtools] make i18ncube customizable in a cube
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Fri, 21 Oct 2016 18:10:15 +0200] rev 11735
[devtools] make i18ncube customizable in a cube closes #15613724
Tue, 27 Sep 2016 12:28:39 +0200 [rql2sql] Drop deprecated __docformat__
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 12:28:39 +0200] rev 11734
[rql2sql] Drop deprecated __docformat__ it causes flake8 error on some of its versions.
Thu, 22 Sep 2016 16:21:51 +0200 [rql2sql] Handle comparison of eid on variables from an subquery
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 22 Sep 2016 16:21:51 +0200] rev 11733
[rql2sql] Handle comparison of eid on variables from an subquery We don't want to force using 'identity' in this case which may be easily handled by detecting variable is a `ColumnAlias` and relation is 'eid'. Closes #15393583
Wed, 01 Jun 2016 17:04:33 +0200 Take care that cnx may not be set in error view
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jun 2016 17:04:33 +0200] rev 11732
Take care that cnx may not be set in error view
Wed, 12 Oct 2016 10:59:18 +0200 [autoform] Ease overriding of inlined form renderer. Closes #15755515
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 12 Oct 2016 10:59:18 +0200] rev 11731
[autoform] Ease overriding of inlined form renderer. Closes #15755515
Wed, 19 Oct 2016 15:58:30 +0200 [ldapfeed] Use new MetadataGenerator api instead of deprecated MetaGenerator
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 15:58:30 +0200] rev 11730
[ldapfeed] Use new MetadataGenerator api instead of deprecated MetaGenerator
Wed, 19 Oct 2016 10:21:12 +0200 Fix typos
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 10:21:12 +0200] rev 11729
Fix typos
Mon, 10 Oct 2016 14:27:24 +0200 [devctl] make sure i18ncube always delete its tempdir
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Mon, 10 Oct 2016 14:27:24 +0200] rev 11728
[devctl] make sure i18ncube always delete its tempdir closes #15613724
Mon, 10 Oct 2016 14:34:41 +0200 i18ncube should ignore node_modules directory by default
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Mon, 10 Oct 2016 14:34:41 +0200] rev 11727
i18ncube should ignore node_modules directory by default related to #15613724
Wed, 05 Oct 2016 16:16:33 +0200 refactor i18n messages extraction
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Wed, 05 Oct 2016 16:16:33 +0200] rev 11726
refactor i18n messages extraction This refactoring will ease later implementation of i18n cube customization. related to #15613724
Fri, 21 Oct 2016 13:09:47 +0200 [web/application] remove `path` argument from CubicwebPublisher methods
Laura Médioni <laura.medioni@logilab.fr> [Fri, 21 Oct 2016 13:09:47 +0200] rev 11725
[web/application] remove `path` argument from CubicwebPublisher methods Path can actually be accessed from `req` object. This allows to avoid duplicating this information. This cset prepares the next ones that aim at adding the language as a prefix of the relative path.
Thu, 20 Oct 2016 18:28:46 +0200 Merge 3.23 branch
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 20 Oct 2016 18:28:46 +0200] rev 11724
Merge 3.23 branch
Thu, 20 Oct 2016 18:45:40 +0200 [pkg] Fix recursive-include missing a "*" in MANIFEST.in
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 20 Oct 2016 18:45:40 +0200] rev 11723
[pkg] Fix recursive-include missing a "*" in MANIFEST.in
Wed, 19 Oct 2016 22:31:32 +0200 Added tag 3.23.2, centos/3.23.2-1, debian/3.23.2-1 for changeset 8b287ad7b95b 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 22:31:32 +0200] rev 11722
Added tag 3.23.2, centos/3.23.2-1, debian/3.23.2-1 for changeset 8b287ad7b95b
Wed, 19 Oct 2016 19:29:24 +0200 Release 3.23.2 3.23 3.23.2 centos/3.23.2-1 debian/3.23.2-1
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 19:29:24 +0200] rev 11721
Release 3.23.2
Wed, 19 Oct 2016 21:08:04 +0200 [test] Add test method required by d41832121b29 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 21:08:04 +0200] rev 11720
[test] Add test method required by d41832121b29
Wed, 19 Oct 2016 15:57:52 +0200 [ldapfeed] Fix crash when user's password has to be generated 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 15:57:52 +0200] rev 11719
[ldapfeed] Fix crash when user's password has to be generated Binary isn't hashable hence can't be added to a set. Test added.
Wed, 19 Oct 2016 15:56:35 +0200 [test/ldapfeed] Drop unused constant 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 19 Oct 2016 15:56:35 +0200] rev 11718
[test/ldapfeed] Drop unused constant
Fri, 08 Jul 2016 10:17:14 +0200 [migration] Test and fix case of addition of an attribute with some serialized constraint 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Jul 2016 10:17:14 +0200] rev 11717
[migration] Test and fix case of addition of an attribute with some serialized constraint It was crashing on attempt to remove an unexisting constraint. This code may be removed safely as it's expected to be handled by the constraint removal hook. Notice that adding a vocabulary on shortpara makes yams change the varchar max size. This is arguable but not the point of this test, so simply adapt the max size defined in the schema coherently so we don't have to bother with that at this point. Grafted from f87da59faea1 in default branch.
Wed, 05 Oct 2016 10:12:23 +0200 [skeleton] Properly format debian/changelog using current datetime and author information
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 10:12:23 +0200] rev 11716
[skeleton] Properly format debian/changelog using current datetime and author information Reformat "context" dict to have it PEP8 compliant along the way (only white space changes).
Wed, 12 Oct 2016 11:07:10 +0200 [utils] Encode Binary value in base64 for JSON export
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 12 Oct 2016 11:07:10 +0200] rev 11715
[utils] Encode Binary value in base64 for JSON export In unittest_utils.py, use unittest2's TestCase instead of lgc.testlib one to benefit from subTest API. Closes #15409885.
Wed, 12 Oct 2016 11:09:08 +0200 [test] Make cubicweb/test/unittest_utils.py flake8-clean
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 12 Oct 2016 11:09:08 +0200] rev 11714
[test] Make cubicweb/test/unittest_utils.py flake8-clean
Fri, 07 Oct 2016 14:59:44 +0200 [skeleton] Set Debian distribution to "UNRELEASED" in changelog
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 07 Oct 2016 14:59:44 +0200] rev 11713
[skeleton] Set Debian distribution to "UNRELEASED" in changelog So to as to make it clear that changelog needs to be edited before the Debian package may be published.
Thu, 13 Oct 2016 12:51:12 +0200 Fix log level parameter not taken into account in cwsource log table
Florent Cayré <florent.cayre@logilab.fr> [Thu, 13 Oct 2016 12:51:12 +0200] rev 11712
Fix log level parameter not taken into account in cwsource log table An error in the jquery selector of the html widget controlling the log level was the cause of this bug. Closes #15772634
Tue, 11 Oct 2016 14:48:27 +0200 [config] Ignore cubicweb-pyramid in available_cubes()
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 11 Oct 2016 14:48:27 +0200] rev 11711
[config] Ignore cubicweb-pyramid in available_cubes() So that, in particular, its ccplugin.py does not get loaded (which would hide the "pyramid" command in cubicweb). Related to #14023058.
Thu, 06 Oct 2016 12:15:43 +0200 [config] Exclude "pyramid" cube when initializing application cubes
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 06 Oct 2016 12:15:43 +0200] rev 11710
[config] Exclude "pyramid" cube when initializing application cubes Related to #14023058.
Wed, 05 Oct 2016 16:20:52 +0200 [migration] Drop cubicweb-pyramid CWProperty in 3.24.0 migration
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 16:20:52 +0200] rev 11709
[migration] Drop cubicweb-pyramid CWProperty in 3.24.0 migration This does a partial "drop_cube('pyramid')" equivalent but only considering CWProperty. We cannot just drop the cube since we have introduced some mechanism to exclude pyramid cube from config's cubes list and that would make MigrationHelper.cmd_drop_cube() call not return "pyramid" cube. Related to #14023058.
Wed, 28 Sep 2016 08:48:20 +0200 [dataimport/test] Use minimal schema for massive import tests
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 28 Sep 2016 08:48:20 +0200] rev 11708
[dataimport/test] Use minimal schema for massive import tests Drop unused stuff.
Tue, 27 Sep 2016 12:23:19 +0200 [massive store] Drop deprecated code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 12:23:19 +0200] rev 11707
[massive store] Drop deprecated code This is not a desired part of the store API. Mapping between extid and eid should be done by the importer. This had been backported from the dataio cube, but not one seems to rely on it yet, so don't provide any backward compat.
Tue, 27 Sep 2016 12:01:24 +0200 [flake8] cubicweb/dataimport/test/test_massive_store.py is now flake8 friendly
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 12:01:24 +0200] rev 11706
[flake8] cubicweb/dataimport/test/test_massive_store.py is now flake8 friendly
Tue, 27 Sep 2016 12:00:42 +0200 [massive store] Drop buggy log call
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 12:00:42 +0200] rev 11705
[massive store] Drop buggy log call PGHelper has no logger, the store has.
Tue, 27 Sep 2016 12:00:17 +0200 [massive store] Drop duplicated log
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 12:00:17 +0200] rev 11704
[massive store] Drop duplicated log
Tue, 27 Sep 2016 11:23:51 +0200 [flake8] cubicweb/server/rqlannotation.py is now flake8 friendly
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 27 Sep 2016 11:23:51 +0200] rev 11703
[flake8] cubicweb/server/rqlannotation.py is now flake8 friendly
Thu, 06 Oct 2016 14:25:18 +0200 [pyramid] Override cubicweb.hooks.syncsession.get_user_sessions() for Pyramid
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 06 Oct 2016 14:25:18 +0200] rev 11702
[pyramid] Override cubicweb.hooks.syncsession.get_user_sessions() for Pyramid Closes #13436818
Mon, 06 Jun 2016 15:37:01 +0200 [pyramid] Retrieve user's groups using a custom RQL instead of user's groups property
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 15:37:01 +0200] rev 11701
[pyramid] Retrieve user's groups using a custom RQL instead of user's groups property With cubicweb 3.24, user.groups is set lazily and so retrieving it at this point will cause a traceback because the connection is not yet entered. Also, user doesn't accept anymore groups and properties arguments.
Mon, 06 Jun 2016 16:08:03 +0200 [hooks] Change get_user_sessions prototype, necessary for hijacking from other session implementations (e.g. pyramid)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 16:08:03 +0200] rev 11700
[hooks] Change get_user_sessions prototype, necessary for hijacking from other session implementations (e.g. pyramid)
Mon, 06 Jun 2016 15:26:49 +0200 Store user groups and properties as session data
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 15:26:49 +0200] rev 11699
Store user groups and properties as session data * stop retrieving them systematically, only when need, * reimplement session synchronization hooks with some cleanups along the way, * cleanup call to set language: not needed from the base request nor from the server side, only for the web request (on the server side, language is necessary only for notification and such code should set it explicitly). There is still a XXX remaining about one can only "enter" a connection once and this is a problem in some cases. IMO, this restriction could be removed. Closes #13500113.
Wed, 05 Oct 2016 10:17:39 +0200 [skeleton] Remove override_dh_python2
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 10:17:39 +0200] rev 11698
[skeleton] Remove override_dh_python2 We do not ship files as "data files" anymore. Related to #13001466.
Wed, 05 Oct 2016 09:56:26 +0200 [skeleton] Have setuptools install data files
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 09:56:26 +0200] rev 11697
[skeleton] Have setuptools install data files Just add `include_package_data=True` as recommended by `setuptools documentation`_ as this appears to be the simplest way to handle this. Related to #13001466. .. _`setuptools documentation`: \ http://setuptools.readthedocs.io/en/latest/setuptools.html#including-data-files
Wed, 05 Oct 2016 09:52:02 +0200 [skeleton] Update MANIFEST.in following new "package" layout
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 09:52:02 +0200] rev 11696
[skeleton] Update MANIFEST.in following new "package" layout Related to #13001466.
Wed, 05 Oct 2016 09:32:25 +0200 [skeleton] Add python-setuptools to Debian Build-Depends
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 09:32:25 +0200] rev 11695
[skeleton] Add python-setuptools to Debian Build-Depends Related to #13001466.
Wed, 05 Oct 2016 09:26:59 +0200 [skeleton] Add dh-python to Debian Build-Depends
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 09:26:59 +0200] rev 11694
[skeleton] Add dh-python to Debian Build-Depends Related to #13001466.
Wed, 05 Oct 2016 09:23:07 +0200 [skeleton] Copy files mode bits (debian/rules in particular)
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 09:23:07 +0200] rev 11693
[skeleton] Copy files mode bits (debian/rules in particular)
Wed, 05 Oct 2016 08:55:02 +0200 [skeleton] Do not exclude setup.py from flake8 check in tox.ini
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 05 Oct 2016 08:55:02 +0200] rev 11692
[skeleton] Do not exclude setup.py from flake8 check in tox.ini The file is flake8 compliant, actually.
Tue, 04 Oct 2016 11:04:34 +0200 Merge public heads
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 04 Oct 2016 11:04:34 +0200] rev 11691
Merge public heads
Mon, 26 Sep 2016 10:42:19 +0200 [doc] Document configuration override by environment variables
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 26 Sep 2016 10:42:19 +0200] rev 11690
[doc] Document configuration override by environment variables Related to #13889793.
Mon, 26 Sep 2016 10:32:44 +0200 [doc] Update book sections about cubes being Python packages
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 26 Sep 2016 10:32:44 +0200] rev 11689
[doc] Update book sections about cubes being Python packages Related to #1300146006.
Mon, 26 Sep 2016 09:57:15 +0200 [doc] Start filling changes/3.24.rst with recent changes
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 26 Sep 2016 09:57:15 +0200] rev 11688
[doc] Start filling changes/3.24.rst with recent changes
Mon, 26 Sep 2016 10:17:10 +0200 [doc] Drop commented mention of "live-server" command
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 26 Sep 2016 10:17:10 +0200] rev 11687
[doc] Drop commented mention of "live-server" command Follow-up for d83676aaea21.
Mon, 26 Sep 2016 18:21:43 +0200 [pyramid] Drop guard of old cubicweb version
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 26 Sep 2016 18:21:43 +0200] rev 11686
[pyramid] Drop guard of old cubicweb version
Mon, 26 Sep 2016 18:20:53 +0200 [pkg] Declare extras (optional) dependencies
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 26 Sep 2016 18:20:53 +0200] rev 11685
[pkg] Declare extras (optional) dependencies This is primary to extract "pyramid" dependencies out of install_requires as they are actually optional. Along the way, resurrect all things in __pkginfo__.__recommends__ which were not used at all and convert them into extra_requires. It appears that __depends__ and __recommends__ in __pkginfo__.py are not useful so drop them and inline dependencies as install_requires/extra_requires in setup function call. For pyramid tests to continue working, add respective dependencies to test-misc.txt requirements file.
Thu, 29 Sep 2016 11:19:30 +0200 [tox] Exclude all files in symlinked directories from check-manifest call
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 29 Sep 2016 11:19:30 +0200] rev 11684
[tox] Exclude all files in symlinked directories from check-manifest call
Wed, 28 Sep 2016 14:40:58 +0200 [tox] Get rid of "touch test-results.xml" for flake8 and check-manifest environments
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 28 Sep 2016 14:40:58 +0200] rev 11683
[tox] Get rid of "touch test-results.xml" for flake8 and check-manifest environments CI server does not rely on this anymore.
Mon, 26 Sep 2016 16:53:33 +0200 [debian] cubicweb-pyramid conflicts and replaces pyramid-cubicweb
Yann Voté <yann.vote@logilab.fr> [Mon, 26 Sep 2016 16:53:33 +0200] rev 11682
[debian] cubicweb-pyramid conflicts and replaces pyramid-cubicweb Related to #14023058.
Mon, 26 Sep 2016 16:45:30 +0200 Merge cubicweb-pyramid cube
Yann Voté <yann.vote@logilab.fr> [Mon, 26 Sep 2016 16:45:30 +0200] rev 11681
Merge cubicweb-pyramid cube Only keep the CWSession schema definition and the ctl command, now in cubicweb/pyramid/pyramidctl.py Related to #14023058.
Thu, 02 Jun 2016 11:59:32 +0200 [ccplugin] flake8
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 02 Jun 2016 11:59:32 +0200] rev 11680
[ccplugin] flake8
Thu, 02 Jun 2016 11:59:25 +0200 [ccplugin] docstring clarification
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 02 Jun 2016 11:59:25 +0200] rev 11679
[ccplugin] docstring clarification
Wed, 11 May 2016 11:27:50 +0200 [doc] improve a bit the README to explain how to allow login in dev mode
David Douard <david.douard@logilab.fr> [Wed, 11 May 2016 11:27:50 +0200] rev 11678
[doc] improve a bit the README to explain how to allow login in dev mode
Thu, 24 Mar 2016 14:09:29 +0100 Added tag 0.4.0, debian/0.4.0-1, centos/0.4.0-1 for changeset c0c98e5ba55e
David Douard <david.douard@logilab.fr> [Thu, 24 Mar 2016 14:09:29 +0100] rev 11677
Added tag 0.4.0, debian/0.4.0-1, centos/0.4.0-1 for changeset c0c98e5ba55e
Thu, 24 Mar 2016 13:57:47 +0100 [pkg] typo
David Douard <david.douard@logilab.fr> [Thu, 24 Mar 2016 13:57:47 +0100] rev 11676
[pkg] typo
Mon, 22 Feb 2016 16:06:00 +0100 [pkg] 0.4.0
David Douard <david.douard@logilab.fr> [Mon, 22 Feb 2016 16:06:00 +0100] rev 11675
[pkg] 0.4.0
Tue, 23 Feb 2016 11:14:22 +0100 [doc] add a bit more infos in the README
David Douard <david.douard@logilab.fr> [Tue, 23 Feb 2016 11:14:22 +0100] rev 11674
[doc] add a bit more infos in the README
Mon, 22 Feb 2016 15:57:10 +0100 [cfg] remove the pyramid-{auth,session}-secret config options (closes #11027189)
David Douard <david.douard@logilab.fr> [Mon, 22 Feb 2016 15:57:10 +0100] rev 11673
[cfg] remove the pyramid-{auth,session}-secret config options (closes #11027189) these should now be set in the pyramid.ini config file.
Tue, 15 Dec 2015 12:14:47 +0100 [cc] add a dbglevel cmdline option to specify the DBG_XXX flags to set
David Douard <david.douard@logilab.fr> [Tue, 15 Dec 2015 12:14:47 +0100] rev 11672
[cc] add a dbglevel cmdline option to specify the DBG_XXX flags to set also display the list of valid loglevel values in the help message.
Thu, 18 Feb 2016 16:38:11 +0100 Added tag centos/0.3.2-1 for changeset c9daf54738fd
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 18 Feb 2016 16:38:11 +0100] rev 11671
Added tag centos/0.3.2-1 for changeset c9daf54738fd
Fri, 29 Jan 2016 15:32:52 +0100 [pkg] add spec file
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 29 Jan 2016 15:32:52 +0100] rev 11670
[pkg] add spec file
Wed, 23 Dec 2015 11:53:04 +0100 Added tag 0.3.2, debian/0.3.2-1 for changeset ab4c5509407f
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 11:53:04 +0100] rev 11669
Added tag 0.3.2, debian/0.3.2-1 for changeset ab4c5509407f
Wed, 23 Dec 2015 11:45:49 +0100 [pkg] fixup debian control metadata
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 11:45:49 +0100] rev 11668
[pkg] fixup debian control metadata add Homepage field, replace deprecated XS-Python-Version with X-Python-Version.
Wed, 23 Dec 2015 11:41:52 +0100 [pkg] add debian watch file
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 11:41:52 +0100] rev 11667
[pkg] add debian watch file
Wed, 23 Dec 2015 11:40:30 +0100 [pkg] don't remove egg_info from debian package
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 11:40:30 +0100] rev 11666
[pkg] don't remove egg_info from debian package
Wed, 23 Dec 2015 11:32:15 +0100 [pkg] 0.3.2
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 11:32:15 +0100] rev 11665
[pkg] 0.3.2
Tue, 22 Dec 2015 19:37:49 +0100 [ccplugin] get the cw repo from the wsgi app
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 19:37:49 +0100] rev 11664
[ccplugin] get the cw repo from the wsgi app Otherwise with cubicweb 3.22 we end up re-creating a new repo from scratch, which ends up in tears.
Wed, 04 Nov 2015 16:41:36 +0100 [ccplugin] print_function
Julien Cristau <julien.cristau@logilab.fr> [Wed, 04 Nov 2015 16:41:36 +0100] rev 11663
[ccplugin] print_function
Thu, 30 Jul 2015 09:55:36 +0200 Move tag debian/0.3.1-1 on changeset ab68206f765b
David Douard <david.douard@logilab.fr> [Thu, 30 Jul 2015 09:55:36 +0200] rev 11662
Move tag debian/0.3.1-1 on changeset ab68206f765b
Thu, 30 Jul 2015 09:55:03 +0200 [debian] typo in debian/changelog
David Douard <david.douard@logilab.fr> [Thu, 30 Jul 2015 09:55:03 +0200] rev 11661
[debian] typo in debian/changelog
Thu, 30 Jul 2015 09:51:39 +0200 Added tag 0.3.1, debian/0.3.1-1 for changeset 9d82848e82a7
David Douard <david.douard@logilab.fr> [Thu, 30 Jul 2015 09:51:39 +0200] rev 11660
Added tag 0.3.1, debian/0.3.1-1 for changeset 9d82848e82a7
Thu, 30 Jul 2015 09:49:15 +0200 [pkg] 0.3.1
David Douard <david.douard@logilab.fr> [Thu, 30 Jul 2015 09:49:15 +0200] rev 11659
[pkg] 0.3.1
Thu, 23 Jul 2015 16:59:46 +0200 [ccplugin] fix a bug introduced in e95725d7ce90 (closes #5731783)
David Douard <david.douard@logilab.fr> [Thu, 23 Jul 2015 16:59:46 +0200] rev 11658
[ccplugin] fix a bug introduced in e95725d7ce90 (closes #5731783)
Wed, 22 Jul 2015 17:41:40 +0200 Added tag 0.3.0, debian/0.3.0-1 for changeset 7fbeb77fe690
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 17:41:40 +0200] rev 11657
Added tag 0.3.0, debian/0.3.0-1 for changeset 7fbeb77fe690
Wed, 22 Jul 2015 17:22:16 +0200 [pkg] 0.3.0
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 17:22:16 +0200] rev 11656
[pkg] 0.3.0
Wed, 22 Jul 2015 17:18:56 +0200 [debian] add missing dependency on pyramid-cubicweb and python-wsgicors
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 17:18:56 +0200] rev 11655
[debian] add missing dependency on pyramid-cubicweb and python-wsgicors
Wed, 22 Jul 2015 17:12:12 +0200 [pkg] depends on waitress (closes #5576180)
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 17:12:12 +0200] rev 11654
[pkg] depends on waitress (closes #5576180)
Wed, 22 Jul 2015 17:03:43 +0200 [pkg] update to dh9 and dh_python2
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 17:03:43 +0200] rev 11653
[pkg] update to dh9 and dh_python2
Thu, 25 Jun 2015 22:57:15 +0200 Allow to override config file options by cmdline arguments (closes #5724484)
David Douard <david.douard@logilab.fr> [Thu, 25 Jun 2015 22:57:15 +0200] rev 11652
Allow to override config file options by cmdline arguments (closes #5724484) For the sake of consistency with cw, the 'profile' option's short name has been removed, so we can use the lower 'p' for this purpose (for consistency with cubicweb). Requires CubicWeb 3.21 to work.
Wed, 21 Jan 2015 13:51:33 +0100 Added tag cubicweb-pyramid-version-0.2.0, cubicweb-pyramid-debian-version-0.2.0-1 for changeset 4c16305d5825
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 13:51:33 +0100] rev 11651
Added tag cubicweb-pyramid-version-0.2.0, cubicweb-pyramid-debian-version-0.2.0-1 for changeset 4c16305d5825
Wed, 21 Jan 2015 13:28:36 +0100 set debian version 0.2.0-1
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 13:28:36 +0100] rev 11650
set debian version 0.2.0-1
Wed, 21 Jan 2015 11:02:33 +0100 Set version 0.2.0
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 11:02:33 +0100] rev 11649
Set version 0.2.0 And requires pyramid-cubicweb 0.2.0
Sat, 03 Jan 2015 17:07:21 +0100 Add profiling options
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 17:07:21 +0100] rev 11648
Add profiling options
Sat, 03 Jan 2015 02:39:43 +0100 Monitor more configuration files
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 02:39:43 +0100] rev 11647
Monitor more configuration files Closes #4811352
Tue, 23 Dec 2014 10:19:12 +0100 Set version 0.1.1
Christophe de Vienne <christophe@unlish.com> [Tue, 23 Dec 2014 10:19:12 +0100] rev 11646
Set version 0.1.1
Tue, 23 Dec 2014 10:16:13 +0100 --debug now activates all debug options
Christophe de Vienne <christophe@unlish.com> [Tue, 23 Dec 2014 10:16:13 +0100] rev 11645
--debug now activates all debug options Added a --debug-mode so the debug toolbar can be activated without switching reload on. Closes #4783342
Thu, 06 Nov 2014 22:07:06 +0100 Move the cors middleware initialisation to pyramid-cubicweb to reduce code duplication
Christophe de Vienne <christophe@unlish.com> [Thu, 06 Nov 2014 22:07:06 +0100] rev 11644
Move the cors middleware initialisation to pyramid-cubicweb to reduce code duplication
Thu, 23 Oct 2014 17:30:15 +0200 Added tag cubicweb-pyramid-version-0.1.0, cubicweb-pyramid-debian-version-0.1.0-1 for changeset 3defbb0f147a
Christophe de Vienne <christophe@unlish.com> [Thu, 23 Oct 2014 17:30:15 +0200] rev 11643
Added tag cubicweb-pyramid-version-0.1.0, cubicweb-pyramid-debian-version-0.1.0-1 for changeset 3defbb0f147a
Thu, 23 Oct 2014 16:38:28 +0200 Prepare release
Christophe de Vienne <christophe@unlish.com> [Thu, 23 Oct 2014 16:38:28 +0200] rev 11642
Prepare release
Fri, 19 Sep 2014 19:55:33 +0200 Add a --no-daemon option
Christophe de Vienne <christophe@unlish.com> [Fri, 19 Sep 2014 19:55:33 +0200] rev 11641
Add a --no-daemon option
Fri, 19 Sep 2014 19:20:35 +0200 Use 'wsgicors' for CORS handling.
Christophe de Vienne <christophe@unlish.com> [Fri, 19 Sep 2014 19:20:35 +0200] rev 11640
Use 'wsgicors' for CORS handling. The CW CORS handling (in web/cors.py) is only able to work on cubicweb requests. When a request is not handled by bwcompat, we need a proper solution. The `wsgicors` library provides what we need as a wsgi middleware.
Fri, 19 Sep 2014 18:23:57 +0200 Watch for i18n files changes for auto-reload
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 19 Sep 2014 18:23:57 +0200] rev 11639
Watch for i18n files changes for auto-reload
Fri, 19 Sep 2014 11:44:13 +0200 Auto-reload now survives failed reload
Christophe de Vienne <christophe@unlish.com> [Fri, 19 Sep 2014 11:44:13 +0200] rev 11638
Auto-reload now survives failed reload When the server stops within the reloader and let a list of files that were monitored, the reloader waits for any of these files to change and re-attempt to start the server. This work well when a syntax error is saved to a file: there is no need to restart manually the server anymore.
Thu, 18 Sep 2014 22:33:04 +0200 Implements auto-reload and daemon mode.
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 22:33:04 +0200] rev 11637
Implements auto-reload and daemon mode. Heavily inspired by pyramid pserve, with pieces of code taken from it. auto-reload Start the server in a subprocess that auto-stops when a file is modified, and exit with a specific code. daemon mode Uses some code from pserve, but use the cw configuratione so the command is compatible with 'status' and 'stop' commands.
Thu, 18 Sep 2014 12:03:25 +0200 Add the 'pyramid-auth-secret' option to all-in-one.conf
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 12:03:25 +0200] rev 11636
Add the 'pyramid-auth-secret' option to all-in-one.conf
Thu, 18 Sep 2014 11:17:57 +0200 Add the 'pyramid-session-secret' option to all-in-one.conf
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 11:17:57 +0200] rev 11635
Add the 'pyramid-session-secret' option to all-in-one.conf This value is used by pyramid_cubicweb to initialize the cookie factory.
Fri, 05 Sep 2014 18:48:33 +0200 Add a CWSession entity.
Christophe de Vienne <christophe@unlish.com> [Fri, 05 Sep 2014 18:48:33 +0200] rev 11634
Add a CWSession entity. It is a subset of the CWSession that will be added to cubicweb in a future version. Closes #4317363
Fri, 05 Sep 2014 12:38:13 +0200 Implements the 'pyramid' command.
Christophe de Vienne <christophe@unlish.com> [Fri, 05 Sep 2014 12:38:13 +0200] rev 11633
Implements the 'pyramid' command. It load an instance config, and load in the pyramid scaffolding provided by pyramid_cubicweb. The application is then served by a waitress server. Closes #4317312
Fri, 05 Sep 2014 12:32:03 +0200 Project structure
Christophe de Vienne <christophe@unlish.com> [Fri, 05 Sep 2014 12:32:03 +0200] rev 11632
Project structure
Mon, 26 Sep 2016 14:52:12 +0200 Merge with pyramid-cubicweb
Yann Voté <yann.vote@logilab.fr> [Mon, 26 Sep 2016 14:52:12 +0200] rev 11631
Merge with pyramid-cubicweb The following tasks have been done: - merge packaging files - merge documentation - move pyramid_cubicweb package at cubicweb/pyramid and update imports accordingly - rename tests directory into test - move pyramid-cubicweb README.rst into README.pyramid.rst until better idea - add a test dependency on unreleased cubicweb-pyramid to have both py27 and py34 tests pass Closes #14023058.
Thu, 07 Jul 2016 14:30:32 +0200 Port to Python3 (closes #14159555)
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 07 Jul 2016 14:30:32 +0200] rev 11630
Port to Python3 (closes #14159555) Add py34 environments to tox configuration (only for CubicWeb >= 3.23). And depend on hg version of cubicweb-pyramid since it is not currently Python3-compatible.
Tue, 28 Jun 2016 11:03:20 +0200 Use opened connections as much as possible
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 28 Jun 2016 11:03:20 +0200] rev 11629
Use opened connections as much as possible instead of opening a new internal connection to set the session cookie or retrieve the session data, which may exhaust the connection pools.
Wed, 01 Jun 2016 17:27:29 +0200 Test and fix status code and content of the login form on authentication error
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jun 2016 17:27:29 +0200] rev 11628
Test and fix status code and content of the login form on authentication error The status code was 200 and is now fixed to 403, but the content part of the test will fail until cset 02328f8cbd5c is integrated in cubicweb.
Tue, 28 Jun 2016 09:44:08 +0200 Added tag 0.7.0, debian/0.7.0-1, centos/0.7.0-1 for changeset 0cf2972d2011
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Jun 2016 09:44:08 +0200] rev 11627
Added tag 0.7.0, debian/0.7.0-1, centos/0.7.0-1 for changeset 0cf2972d2011
Tue, 28 Jun 2016 09:33:20 +0200 [pkg] Version 0.7.0
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Jun 2016 09:33:20 +0200] rev 11626
[pkg] Version 0.7.0
Fri, 03 Jun 2016 17:59:49 +0200 retrieve session data in a single query
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Jun 2016 17:59:49 +0200] rev 11625
retrieve session data in a single query instead of two (one for the session object, the other for its cwsessiondata attribute).
Tue, 28 Jun 2016 09:07:12 +0200 [tox] Update CubicWeb version targets
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Jun 2016 09:07:12 +0200] rev 11624
[tox] Update CubicWeb version targets * In -release, no need to specify cubicweb dependency, its pulled by setup.py. * Use 3.22 as -compat. * Point to "default" branch for -dev. Also remove test directory from posargs.
Thu, 16 Jun 2016 16:25:32 +0200 wsgi: clearer exception when CW_INSTANCE is missing
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 16 Jun 2016 16:25:32 +0200] rev 11623
wsgi: clearer exception when CW_INSTANCE is missing instance_name is mandatory for cwcfg.config_for() Raise with a KeyError: 'CW_INSTANCE' instead of hard to read exception.
Fri, 03 Jun 2016 17:58:43 +0200 typo
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 03 Jun 2016 17:58:43 +0200] rev 11622
typo
Wed, 11 May 2016 11:26:16 +0200 [doc] update a bit the documentation
David Douard <david.douard@logilab.fr> [Wed, 11 May 2016 11:26:16 +0200] rev 11621
[doc] update a bit the documentation Also convert the README in rst (so it can be properly displayed on cubicweb.org).
Fri, 17 Jun 2016 17:57:11 +0200 split collecting setting before using them, so the function can be reused when inserting WSGI middlewares
Arthur Lutz <arthur.lutz@logilab.fr> [Fri, 17 Jun 2016 17:57:11 +0200] rev 11620
split collecting setting before using them, so the function can be reused when inserting WSGI middlewares
Thu, 02 Jun 2016 12:11:07 +0200 [bwcompat] log execption even when cubicweb.bwcompat.errorhandler = True (closes #13421901)
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 02 Jun 2016 12:11:07 +0200] rev 11619
[bwcompat] log execption even when cubicweb.bwcompat.errorhandler = True (closes #13421901)
Fri, 27 May 2016 10:49:27 +0200 [pkg] add spec file
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 27 May 2016 10:49:27 +0200] rev 11618
[pkg] add spec file
Tue, 12 Apr 2016 16:17:06 +0200 Added tag 0.6.1, debian/0.6.1-1 for changeset 2621daafa10c
David Douard <david.douard@logilab.fr> [Tue, 12 Apr 2016 16:17:06 +0200] rev 11617
Added tag 0.6.1, debian/0.6.1-1 for changeset 2621daafa10c
Tue, 12 Apr 2016 15:41:09 +0200 [pkg] 0.6.1
David Douard <david.douard@logilab.fr> [Tue, 12 Apr 2016 15:41:09 +0200] rev 11616
[pkg] 0.6.1
Fri, 01 Apr 2016 16:50:12 +0200 [bwcompat] send 403 on authentication errors (closes #12219849)
Julien Cristau <julien.cristau@logilab.fr> [Fri, 01 Apr 2016 16:50:12 +0200] rev 11615
[bwcompat] send 403 on authentication errors (closes #12219849) 200 is just wrong.
Fri, 01 Apr 2016 16:48:14 +0200 [bwcompat] set response headers on AuthenticationError (closes #12219860)
Julien Cristau <julien.cristau@logilab.fr> [Fri, 01 Apr 2016 16:48:14 +0200] rev 11614
[bwcompat] set response headers on AuthenticationError (closes #12219860) Turns out sending a response without a Content-Type header (among others) is suboptimal. 5b36399b6b21 was not good enough.
Thu, 24 Mar 2016 12:08:59 +0100 Added tag 0.6.0, debian/0.6.0-1 for changeset 94d1a024b3bf
David Douard <david.douard@logilab.fr> [Thu, 24 Mar 2016 12:08:59 +0100] rev 11613
Added tag 0.6.0, debian/0.6.0-1 for changeset 94d1a024b3bf
Fri, 18 Mar 2016 17:34:13 +0100 [pkg] 0.6.0
David Douard <david.douard@logilab.fr> [Fri, 18 Mar 2016 17:34:13 +0100] rev 11612
[pkg] 0.6.0
Tue, 22 Mar 2016 14:01:44 +0100 [tests] add a __main__ handler
David Douard <david.douard@logilab.fr> [Tue, 22 Mar 2016 14:01:44 +0100] rev 11611
[tests] add a __main__ handler the relative import in test_rest_api.py needs to be modified to prevent a ValueError: Attempted relative import in non-package
Tue, 22 Mar 2016 13:58:38 +0100 [pkg] add a requirements-test.txt file
David Douard <david.douard@logilab.fr> [Tue, 22 Mar 2016 13:58:38 +0100] rev 11610
[pkg] add a requirements-test.txt file for test dependencies on WebTest and cubicweb-pyramid
Fri, 18 Mar 2016 17:13:43 +0100 [login] fix the redirect url after login (closes #11689118)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Mar 2016 17:13:43 +0100] rev 11609
[login] fix the redirect url after login (closes #11689118) redirecting to '/' by default after login doesn't work properly when a prefix is used, whether we're sitting behind a PrefixMiddleware or not. To fix this, rely on cubicweb's build_url to turn any relative path into an absolute url.
Tue, 08 Mar 2016 16:12:01 +0100 keep track of all traceback in error handling, not just the exception message (closes #11689093)
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Tue, 08 Mar 2016 16:12:01 +0100] rev 11608
keep track of all traceback in error handling, not just the exception message (closes #11689093)
Wed, 25 Nov 2015 12:32:59 +0100 [bwcompat] also set response headers in error cases
Julien Cristau <julien.cristau@logilab.fr> [Wed, 25 Nov 2015 12:32:59 +0100] rev 11607
[bwcompat] also set response headers in error cases I had this sitting around in my local copy, I don't remember why I needed this but it seems correct.
Mon, 29 Feb 2016 16:16:33 +0100 [config] move config of the secret used to encrypt session's data ID in pyramid.ini (closes #11689082)
David Douard <david.douard@logilab.fr> [Mon, 29 Feb 2016 16:16:33 +0100] rev 11606
[config] move config of the secret used to encrypt session's data ID in pyramid.ini (closes #11689082) Introduce a new config entry (in pyramid.ini) for this (cubicweb.session.secret) to replace the (now deprecated) pyramid-session-secret (in all-in-one.conf). So we have now 3 secrets to configure: - cubicweb.session.secret: to encrypt session's data ID stored in a cookie, - cubicweb.auth.authtkt.session.secret: to encrypt auth cookie - cubicweb.auth.authtkt.persistent.secret: to encrypt persistent session auth cookie
Mon, 07 Mar 2016 10:47:11 +0100 Document how to configure the "secure" flag for authentication policies
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 07 Mar 2016 10:47:11 +0100] rev 11605
Document how to configure the "secure" flag for authentication policies Closes #11376233.
Thu, 21 Jan 2016 15:20:55 +0100 [tox] Let posargs override py.test args
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Jan 2016 15:20:55 +0100] rev 11604
[tox] Let posargs override py.test args
Fri, 11 Dec 2015 17:21:58 +0100 [tox] Use py.test
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 11 Dec 2015 17:21:58 +0100] rev 11603
[tox] Use py.test Rename test view so that py.test does not consider it as a test function.
Wed, 25 Nov 2015 13:39:53 +0100 Add a tox configuration
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 25 Nov 2015 13:39:53 +0100] rev 11602
Add a tox configuration
Wed, 16 Sep 2015 16:39:53 +0200 Register predicates from the predicates module
Christophe de Vienne <cdevienne@gmail.com> [Wed, 16 Sep 2015 16:39:53 +0200] rev 11601
Register predicates from the predicates module
Fri, 24 Jul 2015 13:39:18 +0200 [refactoring] Move MatchIsETypePredicate to a separate module
Rabah Meradi <rabah.meradi@logilab.fr> [Fri, 24 Jul 2015 13:39:18 +0200] rev 11600
[refactoring] Move MatchIsETypePredicate to a separate module
Fri, 24 Jul 2015 13:40:36 +0200 [refactoring] Move EntityResource and ETypeResource to a separate module
Rabah Meradi <rabah.meradi@logilab.fr> [Fri, 24 Jul 2015 13:40:36 +0200] rev 11599
[refactoring] Move EntityResource and ETypeResource to a separate module
Mon, 15 Jun 2015 09:31:37 +0200 use CubicWeb request to execute RQL
Rabah Meradi <rabah.meradi@logilab.fr> [Mon, 15 Jun 2015 09:31:37 +0200] rev 11598
use CubicWeb request to execute RQL rset should be retrieved with cw_request, as it's then bound to it and propagate to all entities created from this rset (._cw). From there it may reach code expecting a request, not a connection (view, selector, etc).
Thu, 27 Aug 2015 11:25:42 +0200 [views] Rename entities to rest_api
Rabah Meradi <rabah.meradi@logilab.fr> [Thu, 27 Aug 2015 11:25:42 +0200] rev 11597
[views] Rename entities to rest_api
Tue, 09 Jun 2015 11:34:17 +0200 [routes] Add a 'cwentities' route with traversal
Christophe de Vienne <christophe@unlish.com> [Tue, 09 Jun 2015 11:34:17 +0200] rev 11596
[routes] Add a 'cwentities' route with traversal The route uses a factory that produces ETypeResource and EntityResource as a context. A 'delete' view serve as a test and demonstration. The module being experimental, it has to be explicitely included.
Wed, 16 Sep 2015 15:48:37 +0200 Added tag 0.5.0, debian/0.5.0-1 for changeset 61f69ac2d6bc
Christophe de Vienne <cdevienne@gmail.com> [Wed, 16 Sep 2015 15:48:37 +0200] rev 11595
Added tag 0.5.0, debian/0.5.0-1 for changeset 61f69ac2d6bc
Mon, 10 Aug 2015 17:42:47 +0200 [pkg] 0.5.0
Christophe de Vienne <cdevienne@gmail.com> [Mon, 10 Aug 2015 17:42:47 +0200] rev 11594
[pkg] 0.5.0
Fri, 07 Aug 2015 11:59:07 +0200 [auth] Authtkt http_only and secure by default
Christophe de Vienne <cdevienne@gmail.com> [Fri, 07 Aug 2015 11:59:07 +0200] rev 11593
[auth] Authtkt http_only and secure by default The test suite is now full 'https'. Closes #4731765
Fri, 07 Aug 2015 11:52:08 +0200 [auth] Make the configuration cookies completely configurable
Christophe de Vienne <cdevienne@gmail.com> [Fri, 07 Aug 2015 11:52:08 +0200] rev 11592
[auth] Make the configuration cookies completely configurable Also transfert the secret setting from all-in-one.conf to pyramid.ini, with backward compatibility. Closes #5999625
Mon, 03 Aug 2015 18:11:10 +0200 Added tag 0.4.1, debian/0.4.1-1 for changeset 398b2c840e14
Julien Cristau <julien.cristau@logilab.fr> [Mon, 03 Aug 2015 18:11:10 +0200] rev 11591
Added tag 0.4.1, debian/0.4.1-1 for changeset 398b2c840e14
Mon, 03 Aug 2015 16:27:16 +0200 [pkg] 0.4.1
Christophe de Vienne <christophe@unlish.com> [Mon, 03 Aug 2015 16:27:16 +0200] rev 11590
[pkg] 0.4.1
Fri, 24 Jul 2015 16:59:13 +0200 [core] Adjust cw<3.21 compatibility
Christophe de Vienne <christophe@unlish.com> [Fri, 24 Jul 2015 16:59:13 +0200] rev 11589
[core] Adjust cw<3.21 compatibility Most of cubibweb < 3.21 expects a ClientConnection as the main connection. Related to #5731814 Closes #5878592
Fri, 24 Jul 2015 14:21:13 +0200 [bwcompat] Make the error handler optional
Christophe de Vienne <christophe@unlish.com> [Fri, 24 Jul 2015 14:21:13 +0200] rev 11588
[bwcompat] Make the error handler optional Closes #5739625
Mon, 06 Jul 2015 14:51:06 +0200 [doc] Document embedding in a pyramid app
Christophe de Vienne <christophe@unlish.com> [Mon, 06 Jul 2015 14:51:06 +0200] rev 11587
[doc] Document embedding in a pyramid app
Mon, 06 Jul 2015 14:16:55 +0200 [config] Move most config code to a includeme()
Christophe de Vienne <christophe@unlish.com> [Mon, 06 Jul 2015 14:16:55 +0200] rev 11586
[config] Move most config code to a includeme() The goal is to make it easier to use pyramid_cubicweb from a pyramid application.
Mon, 06 Jul 2015 13:17:07 +0200 [doc] Anonymous access is not mandatory anymore
Christophe de Vienne <christophe@unlish.com> [Mon, 06 Jul 2015 13:17:07 +0200] rev 11585
[doc] Anonymous access is not mandatory anymore
Thu, 23 Jul 2015 17:56:59 +0200 Added tag 0.4.0, debian/0.4.0-1 for changeset 897a149e8208
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Jul 2015 17:56:59 +0200] rev 11584
Added tag 0.4.0, debian/0.4.0-1 for changeset 897a149e8208
Thu, 23 Jul 2015 17:56:32 +0200 [pkg] add debian/watch
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Jul 2015 17:56:32 +0200] rev 11583
[pkg] add debian/watch
Thu, 23 Jul 2015 17:48:39 +0200 [pkg] 0.4.0
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Jul 2015 17:48:39 +0200] rev 11582
[pkg] 0.4.0
Thu, 23 Jul 2015 17:45:37 +0200 [pkg] add python-pyramid-multiauth dependency to debian package
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Jul 2015 17:45:37 +0200] rev 11581
[pkg] add python-pyramid-multiauth dependency to debian package Closes #5576182
Thu, 25 Jun 2015 09:51:32 +0200 [core] adjust cnx handling for cubicweb 3.21
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Jun 2015 09:51:32 +0200] rev 11580
[core] adjust cnx handling for cubicweb 3.21 Closes #5731814
Tue, 30 Jun 2015 11:15:03 +0200 set httponly on session cookie
Julien Cristau <julien.cristau@logilab.fr> [Tue, 30 Jun 2015 11:15:03 +0200] rev 11579
set httponly on session cookie
Tue, 30 Jun 2015 11:15:54 +0200 [bwcompat] use cubicweb error views (closes #4545130)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 30 Jun 2015 11:15:54 +0200] rev 11578
[bwcompat] use cubicweb error views (closes #4545130)
Thu, 18 Jun 2015 10:49:34 +0200 Added tag 0.3.1, debian/0.3.1-1 for changeset 6df91cb85ecc
David Douard <david.douard@logilab.fr> [Thu, 18 Jun 2015 10:49:34 +0200] rev 11577
Added tag 0.3.1, debian/0.3.1-1 for changeset 6df91cb85ecc
Thu, 18 Jun 2015 10:46:09 +0200 [pkg] 0.3.1
David Douard <david.douard@logilab.fr> [Thu, 18 Jun 2015 10:46:09 +0200] rev 11576
[pkg] 0.3.1
Wed, 29 Apr 2015 22:46:17 +0200 Handle absence of anonymous user
Denis Laxalde <denis@laxalde.org> [Wed, 29 Apr 2015 22:46:17 +0200] rev 11575
Handle absence of anonymous user Set cw_session and then cw_cnx request attributes to None in case anonymous connection is not allowed (i.e. no "anon" user in config). Then catch AuthenticationError in CubicWebPyramidHandler and return the 'login' view. Closes #4751862.
Tue, 19 May 2015 08:38:08 +0200 [debian] Add python-wsgicors dependency as it is now available
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 19 May 2015 08:38:08 +0200] rev 11574
[debian] Add python-wsgicors dependency as it is now available
Mon, 11 May 2015 17:06:36 +0200 Update Changes for version 0.3.0
Christophe de Vienne <christophe@unlish.com> [Mon, 11 May 2015 17:06:36 +0200] rev 11573
Update Changes for version 0.3.0
Mon, 11 May 2015 15:45:14 +0200 Added tag pyramid-cubicweb-version-0.3.0, pyramid-cubicweb-debian-version-0.3.0-1 for changeset a80e076d3f42
Christophe de Vienne <christophe@unlish.com> [Mon, 11 May 2015 15:45:14 +0200] rev 11572
Added tag pyramid-cubicweb-version-0.3.0, pyramid-cubicweb-debian-version-0.3.0-1 for changeset a80e076d3f42
Mon, 11 May 2015 15:34:05 +0200 Fix debugtoolbar pkg name
Christophe de Vienne <christophe@unlish.com> [Mon, 11 May 2015 15:34:05 +0200] rev 11571
Fix debugtoolbar pkg name
Mon, 11 May 2015 15:22:24 +0200 Set version 0.3.0
Christophe de Vienne <christophe@unlish.com> [Mon, 11 May 2015 15:22:24 +0200] rev 11570
Set version 0.3.0
Tue, 24 Feb 2015 17:19:58 +0100 [doc] update changes list
Christophe de Vienne <christophe@unlish.com> [Tue, 24 Feb 2015 17:19:58 +0100] rev 11569
[doc] update changes list
Fri, 08 May 2015 11:38:07 +0200 Rollback 'uncommitable' cnx
Christophe de Vienne <christophe@unlish.com> [Fri, 08 May 2015 11:38:07 +0200] rev 11568
Rollback 'uncommitable' cnx Closes #5343870
Wed, 29 Apr 2015 13:09:06 +0200 [debug] The debug mode now set pyramid.reload_templates
Christophe de Vienne <christophe@unlish.com> [Wed, 29 Apr 2015 13:09:06 +0200] rev 11567
[debug] The debug mode now set pyramid.reload_templates
Sat, 25 Apr 2015 20:50:57 +0200 Use pyramid flash queue for messages
Christophe de Vienne <christophe@unlish.com> [Sat, 25 Apr 2015 20:50:57 +0200] rev 11566
Use pyramid flash queue for messages Use a 'cubicweb' flash queue and make sure it contains only one message so that the behavior is the same as cubicweb. Also, the 'message' property now returns both the cubicweb flash queue and the default flash queue. One big difference with the former behaviour is that messages set with set_message will survive a redirection, making set_redirect_message useless in most case. Closes #5298654
Wed, 25 Feb 2015 22:40:39 +0100 [doc] Document the new authentication stack
Christophe de Vienne <christophe@unlish.com> [Wed, 25 Feb 2015 22:40:39 +0100] rev 11565
[doc] Document the new authentication stack
Tue, 28 Apr 2015 11:04:03 +0200 Allow tests to override pyramid_settings
Christophe de Vienne <christophe@unlish.com> [Tue, 28 Apr 2015 11:04:03 +0200] rev 11564
Allow tests to override pyramid_settings Closes #5307426
Wed, 29 Apr 2015 11:39:35 +0200 Make debug mode usable without pyramid_debugtoolbar
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Apr 2015 11:39:35 +0200] rev 11563
Make debug mode usable without pyramid_debugtoolbar Add the latter in Debian recommends along the way. Closes #5310434.
Thu, 26 Feb 2015 00:56:32 +0100 [auth] Use a second authtkt policy for 'rememberme'
Christophe de Vienne <christophe@unlish.com> [Thu, 26 Feb 2015 00:56:32 +0100] rev 11562
[auth] Use a second authtkt policy for 'rememberme' The former solution was buggy because the expire time of the auth cookie, if set through 'remember', was lost on the first cookie reissuing. The new approach, make possible thanks to multiauth, use two different cookies. One for session bounded authentication (no 'rememberme'), and one for long lasting authentication (w 'rememberme'). The choice between the two of them is done by adding a 'persistent' argument to the top-level 'security.remember' call. Passing this argument will inhibate a policy or the other. The two policies are (a little) configurable through the 'cubicweb.auth.authtkt.[session|persistent].*' variables. Related to #4985962
Thu, 12 Feb 2015 19:21:39 +0100 [auth] Use pyramid_multiauth
Christophe de Vienne <christophe@unlish.com> [Thu, 12 Feb 2015 19:21:39 +0100] rev 11561
[auth] Use pyramid_multiauth It makes it easier to finely tune what parts of the default authentication stack we want to use or not. It also makes it possible for any cube to add its own policy in addition to the others. Related to #4985962
Thu, 09 Apr 2015 23:58:38 +0200 [auth] remove dead code (closes #5230746)
David Douard <david.douard@logilab.fr> [Thu, 09 Apr 2015 23:58:38 +0200] rev 11560
[auth] remove dead code (closes #5230746)
Mon, 23 Feb 2015 17:17:43 +0100 [login] Test the login views
Christophe de Vienne <christophe@unlish.com> [Mon, 23 Feb 2015 17:17:43 +0100] rev 11559
[login] Test the login views
Tue, 24 Feb 2015 17:19:37 +0100 Fix project homepage url
Christophe de Vienne <christophe@unlish.com> [Tue, 24 Feb 2015 17:19:37 +0100] rev 11558
Fix project homepage url
Wed, 21 Jan 2015 14:31:30 +0100 Replace the '_' with '-' in the package name
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 14:31:30 +0100] rev 11557
Replace the '_' with '-' in the package name The change was made manually on pypi (see https://sourceforge.net/p/pypi/support-requests/459/)
Tue, 10 Feb 2015 16:35:06 +0100 On exceptions from CW, copy headers
Christophe de Vienne <christophe@unlish.com> [Tue, 10 Feb 2015 16:35:06 +0100] rev 11556
On exceptions from CW, copy headers Closes #4939219
Tue, 10 Feb 2015 10:23:20 +0100 [doc] fix pyramid-auth-secret conf sample
Christophe de Vienne <christophe@unlish.com> [Tue, 10 Feb 2015 10:23:20 +0100] rev 11555
[doc] fix pyramid-auth-secret conf sample
Mon, 02 Feb 2015 13:46:28 +0100 [doc] Update change list
Christophe de Vienne <christophe@unlish.com> [Mon, 02 Feb 2015 13:46:28 +0100] rev 11554
[doc] Update change list
Wed, 28 Jan 2015 00:00:05 +0100 [core] Protect session data from unwanted loading.
Christophe de Vienne <christophe@unlish.com> [Wed, 28 Jan 2015 00:00:05 +0100] rev 11553
[core] Protect session data from unwanted loading. Use specialised Session and Connection types that forward their 'data' and 'session_data' attributes to the pyramid request.session attribute. This forwarding is done with properties, instead of copying a reference, which allow to access request.session (and the session factory) if and only if Session.data or Connection.session_data is accessed. In some cases, most notably the static resources requests, it can mean no access the session during the request handling, which saves a request to the session persistence layer. Closes #4891437
Mon, 26 Jan 2015 18:06:58 +0100 [core] Use tools.cached_user_build for better performances
Christophe de Vienne <christophe@unlish.com> [Mon, 26 Jan 2015 18:06:58 +0100] rev 11552
[core] Use tools.cached_user_build for better performances Closes #4870347
Mon, 26 Jan 2015 18:04:57 +0100 [doc] Document tools
Christophe de Vienne <christophe@unlish.com> [Mon, 26 Jan 2015 18:04:57 +0100] rev 11551
[doc] Document tools Related to #4870347
Mon, 26 Jan 2015 17:59:10 +0100 [tools] Provide a faster build_user
Christophe de Vienne <christophe@unlish.com> [Mon, 26 Jan 2015 17:59:10 +0100] rev 11550
[tools] Provide a faster build_user The main trick is to use a cache of user entities. To do so, a few tools are needed since the entities are not supposed to be copied around between connexions. Related to #4870347
Fri, 23 Jan 2015 14:00:02 +0100 Added tag pyramid_cubicweb-version-0.2.1, pyramid_cubicweb-debian-version-0.2.1-1 for changeset 1ae61c25299a
Christophe de Vienne <christophe@unlish.com> [Fri, 23 Jan 2015 14:00:02 +0100] rev 11549
Added tag pyramid_cubicweb-version-0.2.1, pyramid_cubicweb-debian-version-0.2.1-1 for changeset 1ae61c25299a
Fri, 23 Jan 2015 12:57:16 +0100 Prepare version 0.2.1
Christophe de Vienne <christophe@unlish.com> [Fri, 23 Jan 2015 12:57:16 +0100] rev 11548
Prepare version 0.2.1
Wed, 21 Jan 2015 17:28:30 +0100 [cors] Fix 'headers' and 'methods' parameters
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 17:28:30 +0100] rev 11547
[cors] Fix 'headers' and 'methods' parameters Closes #4849874
Wed, 21 Jan 2015 15:14:11 +0100 Fix the 0.2.0 release date
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 15:14:11 +0100] rev 11546
Fix the 0.2.0 release date
Wed, 21 Jan 2015 15:13:43 +0100 Change project url
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 15:13:43 +0100] rev 11545
Change project url
Wed, 21 Jan 2015 13:45:35 +0100 Added tag pyramid_cubicweb-version-0.2.0, pyramid_cubicweb-debian-version-0.2.0-1 for changeset cd8308245d20
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 13:45:35 +0100] rev 11544
Added tag pyramid_cubicweb-version-0.2.0, pyramid_cubicweb-debian-version-0.2.0-1 for changeset cd8308245d20
Wed, 21 Jan 2015 13:27:54 +0100 set debian version
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 13:27:54 +0100] rev 11543
set debian version
Wed, 21 Jan 2015 11:11:28 +0100 Prepare version 0.2.0
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 11:11:28 +0100] rev 11542
Prepare version 0.2.0
Wed, 21 Jan 2015 10:24:42 +0100 Document the changes
Christophe de Vienne <christophe@unlish.com> [Wed, 21 Jan 2015 10:24:42 +0100] rev 11541
Document the changes
Fri, 16 Jan 2015 22:50:05 +0100 Fix configuration loading when 'cubicweb.includes' is not set
Christophe de Vienne <christophe@unlish.com> [Fri, 16 Jan 2015 22:50:05 +0100] rev 11540
Fix configuration loading when 'cubicweb.includes' is not set Closes #4849314
Mon, 05 Jan 2015 15:54:12 +0100 pep8
Christophe de Vienne <christophe@unlish.com> [Mon, 05 Jan 2015 15:54:12 +0100] rev 11539
pep8
Sun, 04 Jan 2015 00:12:29 +0100 Provides requirements for rtd
Christophe de Vienne <christophe@unlish.com> [Sun, 04 Jan 2015 00:12:29 +0100] rev 11538
Provides requirements for rtd Related to #4849313
Sat, 03 Jan 2015 22:06:03 +0100 Initial documentation.
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 22:06:03 +0100] rev 11537
Initial documentation. Closes #4849313
Mon, 05 Jan 2015 12:02:01 +0100 Remove dead code
Christophe de Vienne <christophe@unlish.com> [Mon, 05 Jan 2015 12:02:01 +0100] rev 11536
Remove dead code
Sat, 03 Jan 2015 16:51:32 +0100 [profile] Add a profiling tool
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 16:51:32 +0100] rev 11535
[profile] Add a profiling tool
Sat, 03 Jan 2015 02:36:06 +0100 [config] Read pyramid settings in a 'pyramid.ini' file
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 02:36:06 +0100] rev 11534
[config] Read pyramid settings in a 'pyramid.ini' file If a 'pyramid-debug.ini' file is present, it will be used instead when debugmode is on. Closes #4811298
Sat, 03 Jan 2015 01:24:38 +0100 Move auth-related configuration to a dedicated module.
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 01:24:38 +0100] rev 11533
Move auth-related configuration to a dedicated module.
Tue, 23 Dec 2014 10:22:49 +0100 Fix cors 'origin' parameter passing
Christophe de Vienne <christophe@unlish.com> [Tue, 23 Dec 2014 10:22:49 +0100] rev 11532
Fix cors 'origin' parameter passing Closes #4783343
Sat, 03 Jan 2015 00:14:06 +0100 [auth] Fix the config option name in the warning message
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 00:14:06 +0100] rev 11531
[auth] Fix the config option name in the warning message
Tue, 02 Dec 2014 15:21:29 +0100 session -> cnx
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 02 Dec 2014 15:21:29 +0100] rev 11530
session -> cnx
Mon, 08 Dec 2014 20:38:32 +0100 Added tag pyramid_cubicweb-debian-version-0.1.3-1, pyramid_cubicweb-version-0.1.3 for changeset 0a7769e583c2
Christophe de Vienne <christophe@unlish.com> [Mon, 08 Dec 2014 20:38:32 +0100] rev 11529
Added tag pyramid_cubicweb-debian-version-0.1.3-1, pyramid_cubicweb-version-0.1.3 for changeset 0a7769e583c2
Mon, 08 Dec 2014 20:25:31 +0100 Set version 0.1.3
Christophe de Vienne <christophe@unlish.com> [Mon, 08 Dec 2014 20:25:31 +0100] rev 11528
Set version 0.1.3
Mon, 08 Dec 2014 20:21:55 +0100 Cookie 'max_age' must be a integer, not a string.
Christophe de Vienne <christophe@unlish.com> [Mon, 08 Dec 2014 20:21:55 +0100] rev 11527
Cookie 'max_age' must be a integer, not a string. If not, the value is used verbatim for the 'expires' of the cookie, which is invalid. Closes #4731764.
Sat, 15 Nov 2014 21:07:25 +0100 Added tag pyramid_cubicweb-version-0.1.2, pyramid_cubicweb-debian-version-0.1.2-1 for changeset 5eb4e27e9998
Christophe de Vienne <christophe@unlish.com> [Sat, 15 Nov 2014 21:07:25 +0100] rev 11526
Added tag pyramid_cubicweb-version-0.1.2, pyramid_cubicweb-debian-version-0.1.2-1 for changeset 5eb4e27e9998
Sat, 15 Nov 2014 20:26:15 +0100 Update debian changelog
Christophe de Vienne <christophe@unlish.com> [Sat, 15 Nov 2014 20:26:15 +0100] rev 11525
Update debian changelog
Sat, 08 Nov 2014 23:07:20 +0100 Don't rollback if exception is HTTPSuccessful or HTTPRedirection
Christophe de Vienne <christophe@unlish.com> [Sat, 08 Nov 2014 23:07:20 +0100] rev 11524
Don't rollback if exception is HTTPSuccessful or HTTPRedirection In the request finishing, the 'cleanup' callback set by _cw_cnx automatically commit the transaction except is an exception is set on the request. Problem is, redirections and successul http return code can raise exceptions. This patch detects such exceptions and avoid rolling back the transaction. Closes #4566482
Thu, 06 Nov 2014 22:26:16 +0100 Set version to 0.1.2
Christophe de Vienne <christophe@unlish.com> [Thu, 06 Nov 2014 22:26:16 +0100] rev 11523
Set version to 0.1.2
Thu, 06 Nov 2014 22:08:57 +0100 Provides a full wsgi cubicweb application builder
Christophe de Vienne <christophe@unlish.com> [Thu, 06 Nov 2014 22:08:57 +0100] rev 11522
Provides a full wsgi cubicweb application builder
Sun, 02 Nov 2014 23:36:22 +0100 Added tag pyramid_cubicweb-version-0.1.1, pyramid_cubicweb-debian-0.1.1-1 for changeset 9f3b9e610c3d
Christophe de Vienne <christophe@unlish.com> [Sun, 02 Nov 2014 23:36:22 +0100] rev 11521
Added tag pyramid_cubicweb-version-0.1.1, pyramid_cubicweb-debian-0.1.1-1 for changeset 9f3b9e610c3d
Sun, 02 Nov 2014 23:31:34 +0100 Set version 0.1.1
Christophe de Vienne <christophe@unlish.com> [Sun, 02 Nov 2014 23:31:34 +0100] rev 11520
Set version 0.1.1
Sun, 02 Nov 2014 22:54:24 +0100 [auth] Make last_login_time updated.
Christophe de Vienne <christophe@unlish.com> [Sun, 02 Nov 2014 22:54:24 +0100] rev 11519
[auth] Make last_login_time updated. The update is done when the user logs in, then every time the authentication is reissued. Closes #4549891
Thu, 23 Oct 2014 16:29:44 +0200 Added tag pyramid_cubicweb-version-0.1.0, pyramid_cubicweb-debian-version-0.1.0-1 for changeset 3d60138100d6
Christophe de Vienne <christophe@unlish.com> [Thu, 23 Oct 2014 16:29:44 +0200] rev 11518
Added tag pyramid_cubicweb-version-0.1.0, pyramid_cubicweb-debian-version-0.1.0-1 for changeset 3d60138100d6
Thu, 23 Oct 2014 16:15:58 +0200 Add a description to the debian package
Christophe de Vienne <christophe@unlish.com> [Thu, 23 Oct 2014 16:15:58 +0200] rev 11517
Add a description to the debian package
Thu, 23 Oct 2014 15:41:43 +0200 Set version to 0.1.0
Christophe de Vienne <christophe@unlish.com> [Thu, 23 Oct 2014 15:41:43 +0200] rev 11516
Set version to 0.1.0
Mon, 06 Oct 2014 10:32:38 +0200 Initial debian packaging
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Oct 2014 10:32:38 +0200] rev 11515
Initial debian packaging missing at least a long description and wsgicors dependency.
Wed, 22 Oct 2014 16:15:54 +0200 Move PyramidCWTest to pyramid_cubicweb.tests
Christophe de Vienne <christophe@unlish.com> [Wed, 22 Oct 2014 16:15:54 +0200] rev 11514
Move PyramidCWTest to pyramid_cubicweb.tests
Mon, 22 Sep 2014 12:15:31 +0200 Optimise repo_connect by skipping authenticate_user
Christophe de Vienne <christophe@unlish.com> [Mon, 22 Sep 2014 12:15:31 +0200] rev 11513
Optimise repo_connect by skipping authenticate_user The authentication being handled by pyramid itself, going through the authentication stack to recreate the temporary session at each request is very costly. On my desktop, for a mostly static front page, the total time for delivering the page drops from 100ms to 47ms.
Mon, 22 Sep 2014 09:40:43 +0200 Use lightweight sessions
Christophe de Vienne <christophe@unlish.com> [Mon, 22 Sep 2014 09:40:43 +0200] rev 11512
Use lightweight sessions Provides a lightweight version of repo.connect() that does not keep track of opened sessions. The speed gain on a mostly static front page is about 5% Warning ! This means that, for now, the "session_open" and "session_close" hooks are NOT called anymore.
Fri, 19 Sep 2014 19:17:50 +0200 Use 'wsgicors' for CORS handling.
Christophe de Vienne <christophe@unlish.com> [Fri, 19 Sep 2014 19:17:50 +0200] rev 11511
Use 'wsgicors' for CORS handling. The CW CORS handling (in web/cors.py) is only able to work on cubicweb requests. When a request is not handled by bwcompat, we need a proper solution. The `wsgicors` library provides what we need as a wsgi middleware.
Thu, 18 Sep 2014 17:18:09 +0200 Add requirements
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 17:18:09 +0200] rev 11510
Add requirements
Thu, 18 Sep 2014 16:51:55 +0200 Handle '__setauthcookie'
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 16:51:55 +0200] rev 11509
Handle '__setauthcookie' '__setauthcookie' is a form parameter added by the 'rememberme' cube. If present and equals to '1', the cookie max_age will be set to 7 days instead of being a session cookie. To make sure the auth cookie is renewed, the reissue_time is set to 1h.
Thu, 18 Sep 2014 15:07:02 +0200 Fix POST handling.
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 15:07:02 +0200] rev 11508
Fix POST handling. The issues where revealed by the unittests, which are ported from the cubicweb wsgi tests.
Thu, 18 Sep 2014 11:43:45 +0200 Use AuthTktAuthenticationPolicy
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Sep 2014 11:43:45 +0200] rev 11507
Use AuthTktAuthenticationPolicy
Fri, 19 Sep 2014 14:26:55 +0200 DB-saved session data
Christophe de Vienne <christophe@unlish.com> [Fri, 19 Sep 2014 14:26:55 +0200] rev 11506
DB-saved session data Related to #4291173
Tue, 02 Sep 2014 20:50:33 +0200 Handle properly the '/https/*' urls
Christophe de Vienne <christophe@unlish.com> [Tue, 02 Sep 2014 20:50:33 +0200] rev 11505
Handle properly the '/https/*' urls CW uses a url prefix to detect https behing a reverse-proxy. A more proper way to do that is documented here in the waitress documentation (waitress is the default pyramid wsgi server): https://waitress.readthedocs.org/en/latest/#using-behind-a-reverse-proxy A later version should implement this, or use waitress in the 'pyramid' command. Related to #4291181
Tue, 02 Sep 2014 20:49:57 +0200 Correctly pass the multiple parameters to the cubicweb request
Christophe de Vienne <christophe@unlish.com> [Tue, 02 Sep 2014 20:49:57 +0200] rev 11504
Correctly pass the multiple parameters to the cubicweb request When naively converted to a dict, the webob MultiDict will not set the multiple parameters (a same name with several values) in a way CW can understand. MultiDict.mixed() however, does exactly what CW needs: list values for keys with multiple values, and single value for the others. Related to #4291181
Thu, 28 Aug 2014 15:42:51 +0200 Add a wsgi application factory suitable for wsgi servers.
Christophe de Vienne <christophe@unlish.com> [Thu, 28 Aug 2014 15:42:51 +0200] rev 11503
Add a wsgi application factory suitable for wsgi servers. This factory can generate a wsgi application for a cubicweb instance. It reads the instance name from the CW_INSTANCE environment variable, and activates the debugmode if CW_DEBUG is defined in environment. It is usable by uwsgi as the 'module' parameter : CW_INSTANCE=test uwsgi --plugins python,http --http 0.0.0.0:8080 --module pyramid_cubicweb:wsgi_application()
Wed, 27 Aug 2014 19:26:44 +0200 If any cube has a 'includeme' attribute, call config.include on it
Christophe de Vienne <christophe@unlish.com> [Wed, 27 Aug 2014 19:26:44 +0200] rev 11502
If any cube has a 'includeme' attribute, call config.include on it Related to #4291181
Thu, 21 Aug 2014 21:55:58 +0200 Add a make_cubicweb_application function
Christophe de Vienne <christophe@unlish.com> [Thu, 21 Aug 2014 21:55:58 +0200] rev 11501
Add a make_cubicweb_application function This function will be used by the 'pyramid' cubicweb-ctl command. Related to #4291173
Thu, 21 Aug 2014 22:26:42 +0200 Fix session closing for cubicweb 3.19
Christophe de Vienne <christophe@unlish.com> [Thu, 21 Aug 2014 22:26:42 +0200] rev 11500
Fix session closing for cubicweb 3.19 Related to #4291173
Thu, 21 Aug 2014 21:43:24 +0200 Convert cubicweb.NotFound to HTTPNotFound
Christophe de Vienne <christophe@unlish.com> [Thu, 21 Aug 2014 21:43:24 +0200] rev 11499
Convert cubicweb.NotFound to HTTPNotFound Related to #4291173
Wed, 06 Aug 2014 19:06:32 +0200 Use registry['cubicweb.registry'] instead of registry['cubicweb.appli'].vreg because the application may not be present.
Christophe de Vienne <christophe@unlish.com> [Wed, 06 Aug 2014 19:06:32 +0200] rev 11498
Use registry['cubicweb.registry'] instead of registry['cubicweb.appli'].vreg because the application may not be present. Related to #4291173
Thu, 21 Aug 2014 22:16:51 +0200 Use a predicate based view selection for handling /login
Christophe de Vienne <christophe@unlish.com> [Thu, 21 Aug 2014 22:16:51 +0200] rev 11497
Use a predicate based view selection for handling /login This will allow easy addition of login handlers from the application or cubes Related to #4291173
Wed, 06 Aug 2014 19:04:25 +0200 Use a tween application instead of a catchall route.
Christophe de Vienne <christophe@unlish.com> [Wed, 06 Aug 2014 19:04:25 +0200] rev 11496
Use a tween application instead of a catchall route. Using a catchall route has some drawbacks. Especially, we have no mean to have a route that would match only if no other one does AND no view matches either. Said differently, our default handler cannot be plugged on the route level nor the view level, because it is has to be activated only if nothing else works in the pyramid application. Using a tween application allow to handle requests that raises a HTTPNotFound error, while having the pyramid error handler still active between our tween app and the outside world. Related to #4291173
Mon, 04 Aug 2014 15:52:04 +0200 Document the view problem hypothesis.
Christophe de Vienne <christophe@unlish.com> [Mon, 04 Aug 2014 15:52:04 +0200] rev 11495
Document the view problem hypothesis. Related to #4291173
Mon, 04 Aug 2014 13:06:32 +0200 If the postlogin_path is 'login', redirect to '/' instead
Christophe de Vienne <christophe@unlish.com> [Mon, 04 Aug 2014 13:06:32 +0200] rev 11494
If the postlogin_path is 'login', redirect to '/' instead Related to #4291173
Mon, 04 Aug 2014 13:04:19 +0200 Put the login view in a separate module.
Christophe de Vienne <christophe@unlish.com> [Mon, 04 Aug 2014 13:04:19 +0200] rev 11493
Put the login view in a separate module. Related to #4291173
Thu, 31 Jul 2014 17:48:32 +0200 Separate into 4 modules
Christophe de Vienne <christophe@unlish.com> [Thu, 31 Jul 2014 17:48:32 +0200] rev 11492
Separate into 4 modules * init_instance: load the cubicweb repository from the `pyramid_cubicweb.instance` configuration key * defaults: provides cw-like defaults for the authentication and session management * core: make cubicweb use the authentication and session management of pyramid. It assumes the application provides the auth policies and session factory, and that the `cubicweb.*` registry entries are correctly initialised. This is this only required module or pyramid_cubicweb, the other ones are optional if the application provides its own versions of what they do. * bwcompat: provides a catchall route that delegate the request handling to an old-fashion cubicweb publisher (ie using url_resolver and controllers). Related to #4291173
Tue, 22 Jul 2014 23:46:09 +0200 Update the TODO list
Christophe de Vienne <christophe@unlish.com> [Tue, 22 Jul 2014 23:46:09 +0200] rev 11491
Update the TODO list Related to #4291173
Tue, 22 Jul 2014 23:45:11 +0200 Provide instructions and a requirements list to quickly start the sample
Christophe de Vienne <christophe@unlish.com> [Tue, 22 Jul 2014 23:45:11 +0200] rev 11490
Provide instructions and a requirements list to quickly start the sample application. Related to #4291173
Tue, 15 Jul 2014 18:25:48 +0200 Use the pyramid session object as the cubiweb session.data (needs a patched cw 3.19)
Christophe de Vienne <christophe@unlish.com> [Tue, 15 Jul 2014 18:25:48 +0200] rev 11489
Use the pyramid session object as the cubiweb session.data (needs a patched cw 3.19) Related to #4291173
Tue, 15 Jul 2014 18:13:57 +0200 Add comments on parts we want to reconsider later
Christophe de Vienne <christophe@unlish.com> [Tue, 15 Jul 2014 18:13:57 +0200] rev 11488
Add comments on parts we want to reconsider later Related to #4291173
Tue, 15 Jul 2014 17:37:50 +0200 Skip core_handle, add a context manager to handle cubicweb errors
Christophe de Vienne <christophe@unlish.com> [Tue, 15 Jul 2014 17:37:50 +0200] rev 11487
Skip core_handle, add a context manager to handle cubicweb errors The context manager is also used to catch errors in render_view. It handles the 'external' errors raised by cubicweb code. The more internal errors, the one that should occur only in url resolving and cubicweb controllers, are handled directly in CubicWebPyramidHandler. ValidationError is handled by CubicWebPyramidHandler for now, but should probably be handled by cw_to_pyramid Related to #4291173
Tue, 15 Jul 2014 15:30:49 +0200 Documents dependencies on a ubuntu system
Christophe de Vienne <christophe@unlish.com> [Tue, 15 Jul 2014 15:30:49 +0200] rev 11486
Documents dependencies on a ubuntu system Related to #4291173
Tue, 15 Jul 2014 14:25:15 +0200 Use short-lived cubicweb sessions to let pyramid actually handle the web sessions
Christophe de Vienne <christophe@unlish.com> [Tue, 15 Jul 2014 14:25:15 +0200] rev 11485
Use short-lived cubicweb sessions to let pyramid actually handle the web sessions Related to #4291173
Wed, 09 Jul 2014 17:14:32 +0200 Isolate the default handler and extend its role
Christophe de Vienne <christophe@unlish.com> [Wed, 09 Jul 2014 17:14:32 +0200] rev 11484
Isolate the default handler and extend its role The handler now does the job of CubicWebPublisher.main_handle_request() and calls CubicWebPublisher.core_handle(). Instead of using config.add_notfound_view, a catchall route is defined and the handler plugged to it. Related to #4291173
Sun, 06 Jul 2014 18:25:31 +0200 Add a basic sample application
Christophe de Vienne <christophe@unlish.com> [Sun, 06 Jul 2014 18:25:31 +0200] rev 11483
Add a basic sample application Related to #4291173
Sun, 06 Jul 2014 18:06:10 +0200 Integration pyramid and cubicweb authentication.
Christophe de Vienne <christophe@unlish.com> [Sun, 06 Jul 2014 18:06:10 +0200] rev 11482
Integration pyramid and cubicweb authentication. We use pyramid sessions to store the cubicweb sessionid so we can reuse it when needed, or regenerate it if it was lost. The cubicweb sessionid is obtained from a login in the repo OR directly from the user identified by pyramid. Related to #4291173
Fri, 12 Sep 2014 09:28:32 +0200 [doc] Escape _ in README.md
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Sep 2014 09:28:32 +0200] rev 11481
[doc] Escape _ in README.md So that the Markdown is okay.
Thu, 28 Aug 2014 11:20:57 +0200 Initial implementation
Christophe de Vienne <christophe@unlish.com> [Thu, 28 Aug 2014 11:20:57 +0200] rev 11480
Initial implementation Set up a default route that passes requests to a cubicweb instance. The requests are wrapped in an adequate adapter so that cubicweb works with no change. Related to #4291173
Wed, 02 Jul 2014 19:07:39 +0200 Project Structure
Christophe de Vienne <christophe@unlish.com> [Wed, 02 Jul 2014 19:07:39 +0200] rev 11479
Project Structure Related to #4291173
Fri, 23 Sep 2016 16:04:32 +0200 [tox] Have less test environments
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 23 Sep 2016 16:04:32 +0200] rev 11478
[tox] Have less test environments This is to reduce the load on CI server because of parallel clones of the repository in Docker containers. Only keep "server", and "web" environments separated. All other prior environments are in "misc". To avoid duplicate entries in requirements files, move them all in a "requirements" directory (this appears to be a "common" practice, see e.g. Celery). Adjustments in tests: * Rename cubicweb/hooks/test/unittest_notification.py so that it does not conflict with cubicweb/sobjects/test/unittest_notification.py during test discovery as they would have the same module name but different __file__ attribute. * Add "comment" cube to the list of expected cubes in unittest_cwconfig.py as this cube is pulled by requirements/test-mist.txt. Closes #15440662.
Thu, 26 May 2016 15:38:39 +0200 [repo] Don't crash on start when fs schema is missing some db schema entities
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 26 May 2016 15:38:39 +0200] rev 11477
[repo] Don't crash on start when fs schema is missing some db schema entities This occurs usually while developping and we don't want systematically to rebuild the database to start the instance or run e.g. i18ninstance.
Fri, 23 Sep 2016 13:36:06 +0200 Let configuration option be overridden by environment variables
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 23 Sep 2016 13:36:06 +0200] rev 11476
Let configuration option be overridden by environment variables Related to #13889793.
Fri, 23 Sep 2016 09:51:10 +0200 [tox] Add a dummy test-results.xml file in check-manifest and flake8 environments
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 23 Sep 2016 09:51:10 +0200] rev 11475
[tox] Add a dummy test-results.xml file in check-manifest and flake8 environments This is to work around Jenkins Junit plugin that does not apparently account for the absence of this file (though it accepts it to be empty).
Fri, 23 Sep 2016 09:50:16 +0200 [tox] Basic flake8 config
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 23 Sep 2016 09:50:16 +0200] rev 11474
[tox] Basic flake8 config
Thu, 15 Sep 2016 21:22:53 +0200 Use pkgutil.ImpLoader instead of a custom loader for cubes import redirection
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 15 Sep 2016 21:22:53 +0200] rev 11473
Use pkgutil.ImpLoader instead of a custom loader for cubes import redirection It just works fine (same implementation of load_module method as _CubesLoader introduced in d404fd8499dd) and is complete w.r.t. PEP 302 (all methods implemented). Related to #13001466.
Tue, 13 Sep 2016 10:16:00 +0200 [config] Make available_cubes aware of cubes installed as packages
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 13 Sep 2016 10:16:00 +0200] rev 11472
[config] Make available_cubes aware of cubes installed as packages For this add a "cubicweb.cubes" entry points group which will be scanned through to find out installed cubes. Entries in this group are expected to expose the module name of a cube (i.e. `cubicweb_foo`). Note that CubicWebConfiguration's available_cubes method will return the module name of cubes as packages (cubicweb_foo), so we had to add a special "key" sorting function to keep cubes sorted as before, despite possible different distribution schemes. This makes it possible to handle loading of CTL plugins in an almost similar manner as before (just tweaking the package name from cube name in load_cwctl_plugins method). I had to tweak (again?) the test_cubes_path method in unittest_cwconfig.py but did not find out why. Apart from unforeseen bugs and pending documentation, this finishes the work on porting cubes to standard Python packages. Closes #13001466.
Wed, 14 Sep 2016 17:12:37 +0200 [skeleton] Use distname directly in setup.py
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 14 Sep 2016 17:12:37 +0200] rev 11471
[skeleton] Use distname directly in setup.py distname is part of required metadata and modname cannot actually be used in place of it.
Wed, 14 Sep 2016 17:03:46 +0200 [skeleton] Fix modname in __pkginfo__
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 14 Sep 2016 17:03:46 +0200] rev 11470
[skeleton] Fix modname in __pkginfo__
Mon, 12 Sep 2016 09:13:22 +0200 [test] Use plain unittest in unittest_cwctl.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 12 Sep 2016 09:13:22 +0200] rev 11469
[test] Use plain unittest in unittest_cwctl.py
Mon, 12 Sep 2016 09:03:07 +0200 [devctl] Remove commented LiveServerCommand
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 12 Sep 2016 09:03:07 +0200] rev 11468
[devctl] Remove commented LiveServerCommand The code got commented in 2010 (changeset 5ab3f63b06ad)...
Mon, 12 Sep 2016 09:01:47 +0200 [pkg] Inline call to setup() in setup.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 12 Sep 2016 09:01:47 +0200] rev 11467
[pkg] Inline call to setup() in setup.py The point of having this "install" function, called in "main" mode is not clear. Better stick to standard practices.
Mon, 12 Sep 2016 08:41:33 +0200 [pkg] Drop old checks in setup.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 12 Sep 2016 08:41:33 +0200] rev 11466
[pkg] Drop old checks in setup.py
Tue, 13 Sep 2016 17:06:35 +0200 [tox] Exclude symlinks from check-manifest call
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 13 Sep 2016 17:06:35 +0200] rev 11465
[tox] Exclude symlinks from check-manifest call These are not handled by check-manifest, see https://github.com/mgedmin/check-manifest/issues/69.
Thu, 21 Jul 2016 15:32:36 +0200 Drop the only reference to an '__insert' form key
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 21 Jul 2016 15:32:36 +0200] rev 11464
Drop the only reference to an '__insert' form key
Fri, 08 Jul 2016 10:13:15 +0200 Drop bits from the past (no more dbapi isolated installation)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Jul 2016 10:13:15 +0200] rev 11463
Drop bits from the past (no more dbapi isolated installation)
Mon, 29 Aug 2016 12:05:11 +0200 [devtools] CWTC.request is gone, don't attempt to use it in CWTC.view
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 29 Aug 2016 12:05:11 +0200] rev 11462
[devtools] CWTC.request is gone, don't attempt to use it in CWTC.view So one will have to provide at least one of `rset` or `req` argument of the `view` method.
Thu, 08 Sep 2016 11:40:50 +0200 Merge 3.22 into 3.23 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 08 Sep 2016 11:40:50 +0200] rev 11461
Merge 3.22 into 3.23 Some fixes there are necessary for client work depending on cubicweb 3.23.
Wed, 08 Jun 2016 21:59:34 +0200 [devtools] Handle i18ncube command for "cubes as packages"
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 08 Jun 2016 21:59:34 +0200] rev 11460
[devtools] Handle i18ncube command for "cubes as packages" And add a test so that both layouts are tested. Move the test cube into a package. Related to #13001466.
Tue, 07 Jun 2016 18:21:13 +0200 Handle cubes as packages in cwconfig
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 07 Jun 2016 18:21:13 +0200] rev 11459
Handle cubes as packages in cwconfig Rely on importlib.import_module in several places in cwconfig.py, so this would not work with python 2.6. Method available_cubes will not list cubes installed as package for now. I'm not sure it's worth implementing this method (used in `cubicweb-ctl list cubes` command) for new cubes layout as the same result can basically be obtained with `pip freeze | grep cubicweb_`. In unittest_cwconfig.py, duplicate CubicWebConfigurationTC test case to test both the "cubes as packages" layout and the "legacy cubes" layout. The former having a custom sys.path set (pointing to datapath('libpython') where all cubes' packages live) and the latter having the previous config attribute setup. All test data cubes are moved to packages in libpython directory and symlinks are introduced in the cubes directory. Related to #13001466.
Tue, 12 Jul 2016 16:17:57 +0200 [cwconfig] Reorder imports by alphabetic order
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Jul 2016 16:17:57 +0200] rev 11458
[cwconfig] Reorder imports by alphabetic order
Wed, 31 Aug 2016 11:53:21 +0200 Add an import redirect hook from "cubes.<name>" to "cubicweb_<name>"
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 31 Aug 2016 11:53:21 +0200] rev 11457
Add an import redirect hook from "cubes.<name>" to "cubicweb_<name>" The hook consists of a finder and a loader implemented following PEP-302; it is responsible for loading cubes distributed as packages (i.e. installed as ``cubicweb_<name>`` in site-packages) but imported (in client code) as ``from cubes.<name> import ...``. So this is a transitional mechanism allowing cubes following the new layout to be used by old-style cubes/applications. The importer is installed upon calling CubicWebConfiguration's cls_adjust_sys_path method (also called in cubicweb.devtools.__init__.py, which is a prerequisite for importing any "legacy" cube. The loading of old-style cubes is still handled by the CubicWeb configuration, based on adjustment of sys.path etc. Related to #13001466.
Wed, 06 Jul 2016 17:46:39 +0200 [devtools] Update skeleton's setup.py to install cube as a package
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 06 Jul 2016 17:46:39 +0200] rev 11456
[devtools] Update skeleton's setup.py to install cube as a package Most of the prior logic of skeleton's setup.py gets dropped as installing a cube as a "classic package" (i.e. in site-packages) is just the default behavior of distutils. Also add a test checking installation of new cube. Related to #13001466.
Thu, 19 May 2016 14:57:41 +0200 [devtools] Adjust skeleton setup.py to have it read information from __pkginfo__.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 19 May 2016 14:57:41 +0200] rev 11455
[devtools] Adjust skeleton setup.py to have it read information from __pkginfo__.py Since the later is now installed in cubicweb_<CUBENAME> directory. Add a test ensuring that `python setup.py sdist` works on newly created cube (which should at least verify that setup.py is valid). Related to #13001466.
Thu, 19 May 2016 14:27:28 +0200 [devtools] Update skeleton and newcube command to cube as package layout
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 19 May 2016 14:27:28 +0200] rev 11454
[devtools] Update skeleton and newcube command to cube as package layout Related to #13001466.
Thu, 08 Sep 2016 11:57:46 +0200 [pkg] Add missing entries to MANIFEST.in
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 08 Sep 2016 11:57:46 +0200] rev 11453
[pkg] Add missing entries to MANIFEST.in Detected by running `check-manifest <https://github.com/mgedmin/check-manifest>`_. Add a tox environment accordingly. Closes #15229018.
Fri, 26 Aug 2016 14:31:25 +0200 [test] Add a test for toolsutils.read_config
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 26 Aug 2016 14:31:25 +0200] rev 11452
[test] Add a test for toolsutils.read_config
Fri, 26 Aug 2016 13:56:59 +0200 [test] Use plain unittest in unittest_toolsutils
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 26 Aug 2016 13:56:59 +0200] rev 11451
[test] Use plain unittest in unittest_toolsutils
Mon, 30 May 2016 21:35:50 +0200 [skeleton] Remove test/pytestconf.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 May 2016 21:35:50 +0200] rev 11450
[skeleton] Remove test/pytestconf.py
Wed, 08 Jun 2016 22:49:21 +0200 [pkg] Make it clearer which entries of __pkginfo__ are actually used
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 08 Jun 2016 22:49:21 +0200] rev 11449
[pkg] Make it clearer which entries of __pkginfo__ are actually used
Tue, 12 Jul 2016 15:30:07 +0200 [test] Avoid usage of lgc.testlib TestCase in unittest_cwconfig.py
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Jul 2016 15:30:07 +0200] rev 11448
[test] Avoid usage of lgc.testlib TestCase in unittest_cwconfig.py
Mon, 18 Jul 2016 13:59:47 +0200 [test] Move setup of spa2rql tests into setUpClass method
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 18 Jul 2016 13:59:47 +0200] rev 11447
[test] Move setup of spa2rql tests into setUpClass method Thus avoiding cryptic errors upon unittest discovery.
Mon, 18 Jul 2016 20:08:48 +0200 [schema] Set CubicWebSchemaLoader's extrapath using config eponymous property
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 18 Jul 2016 20:08:48 +0200] rev 11446
[schema] Set CubicWebSchemaLoader's extrapath using config eponymous property
Tue, 16 Aug 2016 14:26:41 +0200 [doc] Document change of instances location in virtualenv installation 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 16 Aug 2016 14:26:41 +0200] rev 11445
[doc] Document change of instances location in virtualenv installation Closes #14789440.
Tue, 16 Aug 2016 14:16:10 +0200 [cwconfig] Do not override user-defined CW_MODE in virtualenv setup 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 16 Aug 2016 14:16:10 +0200] rev 11444
[cwconfig] Do not override user-defined CW_MODE in virtualenv setup And thus consider `_forced_mode` first. Related to #14789440.
Fri, 22 Jul 2016 19:02:52 +0200 Added tag 3.22.4, debian/3.22.4-1, centos/3.22.4-1 for changeset 92db0bb8e26d 3.22
David Douard <david.douard@logilab.fr> [Fri, 22 Jul 2016 19:02:52 +0200] rev 11443
Added tag 3.22.4, debian/3.22.4-1, centos/3.22.4-1 for changeset 92db0bb8e26d
Fri, 22 Jul 2016 18:26:17 +0200 [pkg] remove .dev0 from version 3.22 3.22.4 centos/3.22.4-1 debian/3.22.4-1
David Douard <david.douard@logilab.fr> [Fri, 22 Jul 2016 18:26:17 +0200] rev 11442
[pkg] remove .dev0 from version
Thu, 21 Jul 2016 21:03:25 +0200 [pkg] 3.22.4 3.22
David Douard <david.douard@logilab.fr> [Thu, 21 Jul 2016 21:03:25 +0200] rev 11441
[pkg] 3.22.4
Wed, 06 Jul 2016 20:14:55 +0200 [session] Ensure access to rql varmaker always mark the session as dirty 3.22
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Jul 2016 20:14:55 +0200] rev 11440
[session] Ensure access to rql varmaker always mark the session as dirty When one accesses the rql_varmaker, that's usually to use it. The pb was that when the varmaker was already in page's data (which is stored as session data), session storage such as redis won't see that the session data is dirty and has to be stored back at the end of the request. To fix this, systematically call set_page_data. (grafted from 3432f0e2540d)
Wed, 16 Mar 2016 00:42:40 +0100 [test] fix test_printable_value_bytes with current pygments 3.22
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Mar 2016 00:42:40 +0100] rev 11439
[test] fix test_printable_value_bytes with current pygments An empty span was added in https://bitbucket.org/birkenfeld/pygments-main/commits/164574c13533195a555181a2b9c685fea2470403 (grafted from 74b04a88d28a)
Tue, 19 Jul 2016 19:30:10 +0200 [webctl] set uid of file produced by gen-static-datadir (closes #11298794) 3.22
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 19:30:10 +0200] rev 11438
[webctl] set uid of file produced by gen-static-datadir (closes #11298794)
Tue, 19 Jul 2016 19:54:59 +0200 [webconfig] ensure uicache content has correct uid (related to #11298794) 3.22
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 19:54:59 +0200] rev 11437
[webconfig] ensure uicache content has correct uid (related to #11298794)
Tue, 19 Jul 2016 19:50:48 +0200 [cwconfig] add the CubicWebConfiguration.ensure_uid_directory() method (related to #11298794) 3.22
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 19:50:48 +0200] rev 11436
[cwconfig] add the CubicWebConfiguration.ensure_uid_directory() method (related to #11298794) that recursively enforce uid on files.
Tue, 19 Jul 2016 19:26:20 +0200 [cwconfig] extract uid file setting code from check_writeable_uid_directory (related to #11298794) 3.22
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 19:26:20 +0200] rev 11435
[cwconfig] extract uid file setting code from check_writeable_uid_directory (related to #11298794) into an ensure_uid() method
Tue, 19 Jul 2016 15:53:58 +0200 [web] Fix bug with usage of os.rename under windows environment 3.22
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 19 Jul 2016 15:53:58 +0200] rev 11434
[web] Fix bug with usage of os.rename under windows environment In 7c386161ebd6 we removed cache handling from property sheet and introduced usage of a tempfile + os.rename to get atomic generation of files. The pb is that this is not portable, since under windows os.rename will raise an exception if the file already exists (because there is no way to write a file atomatically in such case). This kind of thing should be out of the CW scope anyway, so implements a quick & dirty fix in the mean time. Closes #14214794
Wed, 06 Jul 2016 20:28:51 +0200 [migration] More resilient migration script 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Jul 2016 20:28:51 +0200] rev 11433
[migration] More resilient migration script Query the information schema to retrieve existing constraint (primary key and unique) and drop them. Thus don't use anymore DROP CONSTRAINT IF EXISTS (not implemented by e.g. old versions of sqlserver). To do so a missing DISTINCT was necessary to avoid duplicates.
Wed, 06 Jul 2016 20:14:55 +0200 [session] Ensure access to rql varmaker always mark the session as dirty 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 06 Jul 2016 20:14:55 +0200] rev 11432
[session] Ensure access to rql varmaker always mark the session as dirty When one accesses the rql_varmaker, that's usually to use it. The pb was that when the varmaker was already in page's data (which is stored as session data), session storage such as redis won't see that the session data is dirty and has to be stored back at the end of the request. To fix this, systematically call set_page_data.
Wed, 20 Jul 2016 09:40:04 +0200 typo 3.22
David Douard <david.douard@logilab.fr> [Wed, 20 Jul 2016 09:40:04 +0200] rev 11431
typo
Wed, 20 Jul 2016 09:21:51 +0200 [native] Use cnx.system_sql instead of doexec method in syntax_tree_search
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 20 Jul 2016 09:21:51 +0200] rev 11430
[native] Use cnx.system_sql instead of doexec method in syntax_tree_search The latter handles connection issues and tries to reconnect. Method syntax_tree_search appears to be called from quite a few place where it seems useful to be resilient to connection issues (authentication for instance). This reconnection logic appears to have disappeared at some point when working on https://www.cubicweb.org/2919309. Could not find the exact reason though...
Wed, 20 Jul 2016 09:09:34 +0200 Remove usage of cnx.ensure_cnx_set context manager
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 20 Jul 2016 09:09:34 +0200] rev 11429
Remove usage of cnx.ensure_cnx_set context manager It has been deprecated since 3.21, no reason to keep using it internally.
Fri, 26 Jun 2015 10:26:00 +0200 [hooks/test/synschema] remove an unneeded skipTest.
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Fri, 26 Jun 2015 10:26:00 +0200] rev 11428
[hooks/test/synschema] remove an unneeded skipTest. Related to #5557633.
Tue, 19 Jul 2016 10:47:29 +0200 [test] Check retcode of subprocesses in devctl tests
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 19 Jul 2016 10:47:29 +0200] rev 11427
[test] Check retcode of subprocesses in devctl tests And display decoded stdout in case of failure.
Wed, 20 Jul 2016 17:58:49 +0200 merge 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 20 Jul 2016 17:58:49 +0200] rev 11426
merge 3.23
Fri, 08 Jul 2016 13:40:50 +0200 [pkg] Bump version to 3.24.0.dev0
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Jul 2016 13:40:50 +0200] rev 11425
[pkg] Bump version to 3.24.0.dev0
Wed, 29 Jun 2016 10:35:22 +0200 [pkg] Drop NO_SETUPTOOLS option
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Jun 2016 10:35:22 +0200] rev 11424
[pkg] Drop NO_SETUPTOOLS option setuptools is the defacto standard nowadays. The only place where NO_SETUPTOOLS option was used is during packaging (RPM, Debian) and even in this context, it seems that setuptools is the way to go (see https://wiki.debian.org/Python/LibraryStyleGuide).
Tue, 12 Jul 2016 12:21:41 +0200 [debian] update cubicweb-dev.lintian-overrides 3.23
David Douard <david.douard@logilab.fr> [Tue, 12 Jul 2016 12:21:41 +0200] rev 11423
[debian] update cubicweb-dev.lintian-overrides cubicweb/skeleton/debian/rules.tmpl is now cubicweb/skeleton/debian/rules prevent lintian from complaining
Tue, 05 Jul 2016 13:27:19 +0200 [pkg] Properly export data files in setup.py and adjust "newcube" test 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Jul 2016 13:27:19 +0200] rev 11422
[pkg] Properly export data files in setup.py and adjust "newcube" test With the new package layout (everything under "cubicweb" package), the custom install_lib rule which makes use of include_dirs defined in __pkginfo__.py did not prepend the package name to source directories to be copied. Fixing this. Also, in setup.py's export() function, the destination directories' path to be created during source tree walk was wrong. All this makes cubicweb/skeleton directory (which is not a package) properly installed by setup.py. The test in cubicweb/devtools/test/unittest_devctl.py wasn't properly implemented because it used an installation of cubicweb in "develop" mode which shadows such packaging issues. Also it used "python -m cubicweb" instead of directly "cubicweb-ctl" and the former appears to fall back to using the cubicweb package *from sources* instead of the installed one. Now that this test runs against the installed version of cubicweb, fix MANIFEST.in to include tox.ini files (cubicweb's and skeleton's) as this is expected from the test. Closes #14127941.
Tue, 05 Jul 2016 10:44:05 +0200 [pkg] Handle verbose option in setup.py's export function 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Jul 2016 10:44:05 +0200] rev 11421
[pkg] Handle verbose option in setup.py's export function Make debugging easier.
Tue, 05 Jul 2016 10:20:33 +0200 [pkg] Drop unused EMPTY_FILE global variable 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Jul 2016 10:20:33 +0200] rev 11420
[pkg] Drop unused EMPTY_FILE global variable
Tue, 05 Jul 2016 13:00:38 +0200 [tox] Do not install package in "develop" 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Jul 2016 13:00:38 +0200] rev 11419
[tox] Do not install package in "develop" This might shadow so packaging issues. And user can still pass --develop to tox.
Tue, 05 Jul 2016 13:02:14 +0200 [pkg] Bump version to 3.23.2 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Jul 2016 13:02:14 +0200] rev 11418
[pkg] Bump version to 3.23.2
Fri, 08 Jul 2016 09:59:18 +0200 pep8 bits
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Jul 2016 09:59:18 +0200] rev 11417
pep8 bits
Fri, 08 Jul 2016 10:17:42 +0200 [schema] Add a method on yams constraints to compute its unique name
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Jul 2016 10:17:42 +0200] rev 11416
[schema] Add a method on yams constraints to compute its unique name used to identify it in the DB backend.
Fri, 08 Jul 2016 10:17:14 +0200 [migration] Test and fix case of addition of an attribute with some serialized constraint
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Jul 2016 10:17:14 +0200] rev 11415
[migration] Test and fix case of addition of an attribute with some serialized constraint It was crashing on attempt to remove an unexisting constraint. This code may be removed safely as it's expected to be handled by the constraint removal hook. Notice that adding a vocabulary on shortpara makes yams change the varchar max size. This is arguable but not the point of this test, so simply adapt the max size defined in the schema coherently so we don't have to bother with that at this point.
Thu, 07 Jul 2016 14:10:45 +0200 [test] Add a migration test for update of a static vocabulary constraint
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 07 Jul 2016 14:10:45 +0200] rev 11414
[test] Add a migration test for update of a static vocabulary constraint This is a constraint serialized to be checked by the DB backend, hence ensure the old constraint is dropped and the new one is created.
Thu, 30 Jun 2016 13:42:16 +0200 [schema2sql] Avoid "parsing" SQL statements for database initialization
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Jun 2016 13:42:16 +0200] rev 11413
[schema2sql] Avoid "parsing" SQL statements for database initialization A big SQL string was generated, then splitted. This caused bug if some value in the schema (eg vocabulary, default) contained the separator (';'). To properly fix this, yield each individual statement instead of generating a string. Closes #14050899
Thu, 30 Jun 2016 11:18:01 +0200 [schema2sql] Drop most of the DB DROP related code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Jun 2016 11:18:01 +0200] rev 11412
[schema2sql] Drop most of the DB DROP related code This code is dead for a while, it has been superseded by `sql_drop_all_user_tables`. Related to #14050899
Thu, 30 Jun 2016 11:00:08 +0200 [hooks] Use already imported module alias
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Jun 2016 11:00:08 +0200] rev 11411
[hooks] Use already imported module alias
Wed, 13 Jul 2016 12:18:32 +0200 [schema2sql] Rename as_sql to constraint_value_as_sql
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Jul 2016 12:18:32 +0200] rev 11410
[schema2sql] Rename as_sql to constraint_value_as_sql which is easier to grasp independantly of the context.
Wed, 13 Jul 2016 12:17:37 +0200 [schema2sql] Drop unused indent argument on aschema2sql
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 13 Jul 2016 12:17:37 +0200] rev 11409
[schema2sql] Drop unused indent argument on aschema2sql Related to #14050899
Thu, 30 Jun 2016 13:26:36 +0200 [schema2sql] More docstrings and minor API improvements
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Jun 2016 13:26:36 +0200] rev 11408
[schema2sql] More docstrings and minor API improvements Along the way, renamed local `column` variable to `attr` where we're NOT manipulating a DB column name but a schema attribute. Related to #14050899
Thu, 30 Jun 2016 10:47:03 +0200 [schema2sql] inline eschema_attrs method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Jun 2016 10:47:03 +0200] rev 11407
[schema2sql] inline eschema_attrs method * not a public API * doesn't makes things easier to grasp -> useless Related to #14050899
Thu, 30 Jun 2016 13:25:43 +0200 [schema2sql] Give a rdef to check_constraint
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 30 Jun 2016 13:25:43 +0200] rev 11406
[schema2sql] Give a rdef to check_constraint This simplifies the API. Related to #14050899
Tue, 19 Jul 2016 18:08:06 +0200 merge 3.20.16 in 3.22 3.22
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 18:08:06 +0200] rev 11405
merge 3.20.16 in 3.22
Tue, 19 Jul 2016 16:13:12 +0200 merge 3.20.16 in 3.21 3.21
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 16:13:12 +0200] rev 11404
merge 3.20.16 in 3.21
Tue, 19 Jul 2016 15:59:02 +0200 Added tag 3.20.16, debian/3.20.16-1, centos/3.20.16-1 for changeset e60a8e5d29ef 3.20
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 15:59:02 +0200] rev 11403
Added tag 3.20.16, debian/3.20.16-1, centos/3.20.16-1 for changeset e60a8e5d29ef
Tue, 12 Jul 2016 12:29:29 +0200 [debian] add a lintian override for source-is-missing about jquery.flot.js 3.20 3.20.16 centos/3.20.16-1 debian/3.20.16-1
David Douard <david.douard@logilab.fr> [Tue, 12 Jul 2016 12:29:29 +0200] rev 11402
[debian] add a lintian override for source-is-missing about jquery.flot.js
Tue, 19 Jul 2016 12:49:19 +0200 [pkg] 3.20.16 3.20
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 12:49:19 +0200] rev 11401
[pkg] 3.20.16
Tue, 19 Jul 2016 12:47:28 +0200 [dataimport] fix count_lines function (closes #14407650) 3.20
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 12:47:28 +0200] rev 11400
[dataimport] fix count_lines function (closes #14407650) ensure i allways exists whatever f content is
Tue, 19 Jul 2016 13:50:56 +0200 [captcha] improve a bit the redability of generated captcha images (closes #13500378) 3.20
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 13:50:56 +0200] rev 11399
[captcha] improve a bit the redability of generated captcha images (closes #13500378)
Tue, 19 Jul 2016 13:56:40 +0200 3.20 branch 3.20
David Douard <david.douard@logilab.fr> [Tue, 19 Jul 2016 13:56:40 +0200] rev 11398
3.20 branch
Wed, 29 Jun 2016 15:07:55 +0200 merge 3.23 changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Jun 2016 15:07:55 +0200] rev 11397
merge 3.23 changes
Wed, 29 Jun 2016 13:52:25 +0200 Added tag 3.23.1, centos/3.23.1-1, debian/3.23.1-1 for changeset 8f035d5d5953 3.23
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Jun 2016 13:52:25 +0200] rev 11396
Added tag 3.23.1, centos/3.23.1-1, debian/3.23.1-1 for changeset 8f035d5d5953
Wed, 29 Jun 2016 13:51:25 +0200 prepare 3.23.1 3.23 3.23.1 centos/3.23.1-1 debian/3.23.1-1
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 29 Jun 2016 13:51:25 +0200] rev 11395
prepare 3.23.1
Wed, 29 Jun 2016 11:06:25 +0200 [debian] Adjust symlink to cubicweb package so that documention builds fine 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Jun 2016 11:06:25 +0200] rev 11394
[debian] Adjust symlink to cubicweb package so that documention builds fine Broken since source tree re-organization.
Wed, 29 Jun 2016 09:12:02 +0200 [dataimport] Restore handling of Binary in ExtEntity's values 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 29 Jun 2016 09:12:02 +0200] rev 11393
[dataimport] Restore handling of Binary in ExtEntity's values Broken since 62a7100d774b. Closes #13973741.
Tue, 28 Jun 2016 15:02:04 +0200 [tox] Ensure virtualenv's python is used to build the documentation 3.22
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Jun 2016 15:02:04 +0200] rev 11392
[tox] Ensure virtualenv's python is used to build the documentation
Tue, 28 Jun 2016 15:01:40 +0200 [doc] Reference 3.23 page in changelog 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Jun 2016 15:01:40 +0200] rev 11391
[doc] Reference 3.23 page in changelog
Tue, 28 Jun 2016 15:02:04 +0200 [tox] Ensure virtualenv's python is used to build the documentation 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 28 Jun 2016 15:02:04 +0200] rev 11390
[tox] Ensure virtualenv's python is used to build the documentation
Mon, 27 Jun 2016 14:17:19 +0200 Backed out changeset b288debc6736 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Jun 2016 14:17:19 +0200] rev 11389
Backed out changeset b288debc6736 Only superusers can set lc_messages variable. This prevents connection in many cases. Closes #14010345.
Mon, 27 Jun 2016 13:51:58 +0200 Merge with 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Jun 2016 13:51:58 +0200] rev 11388
Merge with 3.23
Fri, 24 Jun 2016 13:08:52 +0200 [pkg] Bump version to 3.22.4.dev0 3.22
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 13:08:52 +0200] rev 11387
[pkg] Bump version to 3.22.4.dev0
Mon, 27 Jun 2016 09:45:46 +0200 Added tag 3.23.0, centos/3.23.0-1, debian/3.23.0-1 for changeset 4b07f2a79021 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Jun 2016 09:45:46 +0200] rev 11386
Added tag 3.23.0, centos/3.23.0-1, debian/3.23.0-1 for changeset 4b07f2a79021
Mon, 27 Jun 2016 09:12:00 +0200 [doc] Fix symlinks of sphinx theme images 3.23 3.23.0 centos/3.23.0-1 debian/3.23.0-1
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 27 Jun 2016 09:12:00 +0200] rev 11385
[doc] Fix symlinks of sphinx theme images
Fri, 24 Jun 2016 17:45:10 +0200 Added tag 3.23.0, centos/3.23.0-1, debian/3.23.0-1 for changeset 93b0f836cb07 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 17:45:10 +0200] rev 11384
Added tag 3.23.0, centos/3.23.0-1, debian/3.23.0-1 for changeset 93b0f836cb07
Fri, 24 Jun 2016 17:18:57 +0200 [debian] Move python-unittest2 >= 0.7.0 as runtime dependency 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 17:18:57 +0200] rev 11383
[debian] Move python-unittest2 >= 0.7.0 as runtime dependency It seems to me that this is not used during Debian package build (tests are not run), but should be needed at runtime with the cubicweb-dev package. Also, at the moment, we have no pbuilder setting with this package available and it blocks the release.
Fri, 24 Jun 2016 15:43:13 +0200 Symlink __pkginfo__.py at root 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 15:43:13 +0200] rev 11382
Symlink __pkginfo__.py at root Maybe this will make apycot work again...
Fri, 24 Jun 2016 13:35:58 +0200 [3.23] More release notes 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 13:35:58 +0200] rev 11381
[3.23] More release notes
Fri, 24 Jun 2016 12:21:48 +0200 i18n update 3.23
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 12:21:48 +0200] rev 11380
i18n update
Fri, 24 Jun 2016 11:12:36 +0200 [doc/changes] CubicWebTC.set_description no longer available
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 11:12:36 +0200] rev 11379
[doc/changes] CubicWebTC.set_description no longer available
Fri, 24 Jun 2016 11:50:31 +0200 Add some release notes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 24 Jun 2016 11:50:31 +0200] rev 11378
Add some release notes
Thu, 23 Jun 2016 16:29:03 +0200 [pkg] Version 3.23.0
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 16:29:03 +0200] rev 11377
[pkg] Version 3.23.0
Fri, 24 Jun 2016 10:25:50 +0200 [pkg] Bump yams version in cubicweb-common Debian package
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 24 Jun 2016 10:25:50 +0200] rev 11376
[pkg] Bump yams version in cubicweb-common Debian package
Thu, 23 Jun 2016 16:11:00 +0200 [tox] Drop yams from dev-requirements.txt
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 16:11:00 +0200] rev 11375
[tox] Drop yams from dev-requirements.txt Yams 0.44.0 got released.
Thu, 23 Jun 2016 15:52:04 +0200 Merge with 3.22
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 15:52:04 +0200] rev 11374
Merge with 3.22
Thu, 23 Jun 2016 15:48:39 +0200 Merge with 3.21
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 15:48:39 +0200] rev 11373
Merge with 3.21
Tue, 21 Jun 2016 07:44:35 +0200 backport 3.21 changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 21 Jun 2016 07:44:35 +0200] rev 11372
backport 3.21 changes
Tue, 21 Jun 2016 07:42:30 +0200 backport 3.20 changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 21 Jun 2016 07:42:30 +0200] rev 11371
backport 3.20 changes
Thu, 23 Jun 2016 08:53:21 +0200 [sobjects] Drop custom unique constraint checks in user registration service
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 08:53:21 +0200] rev 11370
[sobjects] Drop custom unique constraint checks in user registration service This constraints (on unique CWUser's login and EmailAddress's login) are handled by the backend. This follows "[hooks/integrity] kill CheckUniqueHook". Extend test for the ValidationError along the way.
Thu, 23 Jun 2016 11:30:10 +0200 [test] Add a test for user registration unicity constraint on email
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 11:30:10 +0200] rev 11369
[test] Add a test for user registration unicity constraint on email
Thu, 23 Jun 2016 11:27:43 +0200 [test] Clarify user registration service tests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 11:27:43 +0200] rev 11368
[test] Clarify user registration service tests * split permissions test appart * avoid usage of internal_cnx as this does not seem need
Thu, 23 Jun 2016 11:05:31 +0200 [test/hooks] pep8 and unittest.main instead in unittest_hooks.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jun 2016 11:05:31 +0200] rev 11367
[test/hooks] pep8 and unittest.main instead in unittest_hooks.py
Mon, 13 Apr 2015 14:34:11 +0200 [hooks/integrity] kill CheckUniqueHook
Julien Cristau <julien.cristau@logilab.fr> [Mon, 13 Apr 2015 14:34:11 +0200] rev 11366
[hooks/integrity] kill CheckUniqueHook It's the backend's job. The noticeable consequence (as can be seen in tests updated here) is that error message are a bit less user-friendly.
Mon, 20 Jun 2016 15:10:24 +0200 [migration] drop identity_relation if it exists
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jun 2016 15:10:24 +0200] rev 11365
[migration] drop identity_relation if it exists It has been generated erroneously for a while, then fixed but not properly deleted from old databases. Don't use IF EXISTS for sqlserver compat.
Wed, 22 Jun 2016 14:35:43 +0200 [migration] Reserialize all constraints since yams introduce new JSON serializing format
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Jun 2016 14:35:43 +0200] rev 11364
[migration] Reserialize all constraints since yams introduce new JSON serializing format So we may drop support for older format in yams at some point.
Thu, 23 Jun 2016 15:45:30 +0200 [migration] Add IF EXISTS on DROP CONSTRAINT
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 23 Jun 2016 15:45:30 +0200] rev 11363
[migration] Add IF EXISTS on DROP CONSTRAINT problem encountered on migration of a legacy database
Mon, 20 Jun 2016 18:00:00 +0200 [schema sync] Rename index when an entity type is renamed
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jun 2016 18:00:00 +0200] rev 11362
[schema sync] Rename index when an entity type is renamed So we may still find them later using their expected name, and avoid collisions. Closes #13822045
Fri, 17 Jun 2016 13:26:13 +0200 [c-c] Add a command to check database index
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 17 Jun 2016 13:26:13 +0200] rev 11361
[c-c] Add a command to check database index List indices expected by the schema but not in the database and vice-versa Closes #13822027
Wed, 22 Jun 2016 07:57:13 +0200 [sql gen] Control size of index name using an md5 hash
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Jun 2016 07:57:13 +0200] rev 11360
[sql gen] Control size of index name using an md5 hash When using concatenation of table and column, we may hit the backend size limit on index names, which results on truncated name (64 for postgres). Then we may have conflict or be unable to find expected index on later synchronization attempt. This is done by monkeypatching lgdb for now to avoid dependancy problems. Unique and primary key indices of entity types handling is left to the backend, as they are not explicitly named. See https://www.logilab.org/ticket/4789189 Closes #13821949
Mon, 20 Jun 2016 17:59:43 +0200 [sql gen] Explicitly name unique index
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jun 2016 17:59:43 +0200] rev 11359
[sql gen] Explicitly name unique index This patch hotfix logilab database for https://www.logilab.org/6662663 and fix database creation to stop using UNIQUE in the table schema but rather create the index later on, so its name is under control. Also consider this change in schema synchronization hooks. This is preliminary work related to #13822045
Wed, 22 Jun 2016 17:13:10 +0200 Update to yams 0.44 API
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Jun 2016 17:13:10 +0200] rev 11358
Update to yams 0.44 API
Mon, 20 Jun 2016 17:56:49 +0200 [test] Fix randomness in tests
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jun 2016 17:56:49 +0200] rev 11357
[test] Fix randomness in tests
Wed, 22 Jun 2016 07:56:51 +0200 [test] Drop unused import
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Jun 2016 07:56:51 +0200] rev 11356
[test] Drop unused import
Wed, 22 Jun 2016 11:38:53 +0200 [serverctl] allow to sync multiple and all sources in source-sync command
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 22 Jun 2016 11:38:53 +0200] rev 11355
[serverctl] allow to sync multiple and all sources in source-sync command Breaking change: by default source are not synced anymore if it is fresh (regards to synchronization-interval). To get the previous behavior an option --force is added. Closes #13886467
Wed, 22 Jun 2016 15:57:17 +0200 [tox] Split migractions tests from server environment
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jun 2016 15:57:17 +0200] rev 11354
[tox] Split migractions tests from server environment These are the longest tests in this environment, so running them apart (in parallel of others) would hopefully speed up the whole suite.
Thu, 23 Jun 2016 10:24:11 +0200 [dataimport] Fix rdef loopup in importer
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 23 Jun 2016 10:24:11 +0200] rev 11353
[dataimport] Fix rdef loopup in importer
Wed, 22 Jun 2016 16:23:11 +0200 [py3k] left-over unicode() in authobjs.py
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jun 2016 16:23:11 +0200] rev 11352
[py3k] left-over unicode() in authobjs.py
Tue, 10 May 2016 16:09:34 +0200 [server] Improve massive deletion of entities
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 10 May 2016 16:09:34 +0200] rev 11351
[server] Improve massive deletion of entities sqlserver is limited on the "IN" array size and produce an error "The query processor ran out of internal resources and could not produce a query plan". The exact limitation is unclear but can occur with > 10000 item in the array. See https://support.microsoft.com/en-us/kb/288095 Now we process the deletion by batch of 10000, some quick benchmarks show that there is no performance impact: delete_in(50000): 46.765182972 delete_in_batch(50000): 46.3242430687 delete_in(100000): 62.2969429493 delete_in_batch(100000): 61.8402349949
Mon, 06 Jun 2016 15:18:12 +0200 [hooks] Add a bunch of tests for session synchronization
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 15:18:12 +0200] rev 11350
[hooks] Add a bunch of tests for session synchronization And change unicode into six.text_type in authobjs.py spotted by new tests.
Mon, 06 Jun 2016 15:17:23 +0200 [entities] Drop very old backward compat
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 15:17:23 +0200] rev 11349
[entities] Drop very old backward compat from erudi time (even the standard datetime type didn't exist at that time)
Mon, 06 Jun 2016 15:28:35 +0200 pep8 + docstrings and comments improvments
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 15:28:35 +0200] rev 11348
pep8 + docstrings and comments improvments
Mon, 06 Jun 2016 21:17:33 +0200 [server] some pep8 in rql2sql
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 21:17:33 +0200] rev 11347
[server] some pep8 in rql2sql
Tue, 21 Jun 2016 17:51:11 +0200 [dataimport] Deprecate SQLGenObjectStore
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 17:51:11 +0200] rev 11346
[dataimport] Deprecate SQLGenObjectStore Closes #10338709.
Thu, 18 Feb 2016 17:51:12 +0100 [datafeed] attempt to acquire synchronization lock even when force is given
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 18 Feb 2016 17:51:12 +0100] rev 11345
[datafeed] attempt to acquire synchronization lock even when force is given instead of the implementation in e717da3dc164, raise an error if the lock is already grabbed and catch this error in the caller. See discussion on https://www.cubicweb.org/revision/10790765 Closes #10451635
Mon, 30 May 2016 17:41:12 +0200 [schema] Cache RQL expressions on schema loading
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 30 May 2016 17:41:12 +0200] rev 11344
[schema] Cache RQL expressions on schema loading Add a mapping rql string to rql statement Deserializing schema is ~36% faster with a lot (> 4000) expressions like those generated by cubicweb-container.
Tue, 07 Jun 2016 12:04:21 +0200 [schema] Avoid parsing RQL expressions twice on schema loading
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 07 Jun 2016 12:04:21 +0200] rev 11343
[schema] Avoid parsing RQL expressions twice on schema loading Kill full_rql (unnecessary) Use snippet_rql rather than rqlst when possible Don't access to rqlst cachedproperty from __init__ Deserializing schema is ~40% faster with a lot (> 4000) expressions like those generated by cubicweb-container.
Wed, 22 Jun 2016 10:22:37 +0200 [dataimport] Handle Bytes data in ExtEntity and convert them to Binary
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jun 2016 10:22:37 +0200] rev 11342
[dataimport] Handle Bytes data in ExtEntity and convert them to Binary Closes #13887276.
Tue, 21 Jun 2016 18:11:40 +0200 [test] Avoid assertCountEqual in unittest_syncschema.py
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 18:11:40 +0200] rev 11341
[test] Avoid assertCountEqual in unittest_syncschema.py It's not clear why this happens, but it seems that assertCountEqual does strange things with unittest2 on Python 2 for equality comparison (trying to sort constraint objects, even though BaseConstraint raise NotImplemented in __lt__ from Yams 0.43). So just avoid using it to get this test passing.
Wed, 22 Jun 2016 11:01:16 +0200 [packaging] Bump version number
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 22 Jun 2016 11:01:16 +0200] rev 11340
[packaging] Bump version number
Mon, 29 Feb 2016 17:07:56 +0100 [web/session] make sure not to modify an inner value of session.data (closes #11217958)
David Douard <david.douard@logilab.fr> [Mon, 29 Feb 2016 17:07:56 +0100] rev 11339
[web/session] make sure not to modify an inner value of session.data (closes #11217958) When we modify a mutable value stored in the session's data (dict-like object) we prevent an alternative session data handler (eg. pyramid-redis-session) from detecting this update and synchronizing it in its backend (like redis).
Fri, 19 Feb 2016 12:11:31 +0100 [book] improve a bit the documentation of the database setup
David Douard <david.douard@logilab.fr> [Fri, 19 Feb 2016 12:11:31 +0100] rev 11338
[book] improve a bit the documentation of the database setup also remove the MySQL section.
Tue, 22 Dec 2015 11:26:49 +0100 [doc] add documentation for specializing translation of other cubes in an application cube
Alexandre Richardson <alexandre.richardson@logilab.fr> [Tue, 22 Dec 2015 11:26:49 +0100] rev 11337
[doc] add documentation for specializing translation of other cubes in an application cube
Fri, 21 Aug 2015 11:25:50 +0200 [doc] fix some URLs (cs to test jenkins autobuild )
Arthur Lutz <arthur.lutz@logilab.fr> [Fri, 21 Aug 2015 11:25:50 +0200] rev 11336
[doc] fix some URLs (cs to test jenkins autobuild )
Thu, 26 May 2016 15:37:28 +0200 [uicfg] Fix typo in set_fields_order
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 26 May 2016 15:37:28 +0200] rev 11335
[uicfg] Fix typo in set_fields_order
Mon, 23 May 2016 17:40:31 +0200 [forms] We don't want cwjs-edition-cancel class on reledit's cancel button
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 May 2016 17:40:31 +0200] rev 11334
[forms] We don't want cwjs-edition-cancel class on reledit's cancel button Else it's bound to a js function that collides with onclick provided by reledit code. Closes #13120795
Tue, 21 Jun 2016 13:49:32 +0200 [test] Prefer unittest.main
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 21 Jun 2016 13:49:32 +0200] rev 11333
[test] Prefer unittest.main
Tue, 21 Jun 2016 13:49:15 +0200 [test] py.test related fix
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 21 Jun 2016 13:49:15 +0200] rev 11332
[test] py.test related fix We ought not import a concrete test case from a sibling module, else it ends up partially initialized at some point and later raise assertion error in setUpClass.
Tue, 02 Feb 2016 12:08:49 +0100 [dataimport] add a bit of extra-documentation on the massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 02 Feb 2016 12:08:49 +0100] rev 11331
[dataimport] add a bit of extra-documentation on the massive store about prepare_insert_relation limitation on inlined relation and lack of full-text indexation.
Fri, 29 Jan 2016 18:57:30 +0100 [dataimport] no need to call .keys()
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 29 Jan 2016 18:57:30 +0100] rev 11330
[dataimport] no need to call .keys()
Mon, 01 Feb 2016 17:50:05 +0100 [dataimport] drop massive store's flush_metadata method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 01 Feb 2016 17:50:05 +0100] rev 11329
[dataimport] drop massive store's flush_metadata method This method handle a temporary table which sounds useless, and even buggy in some cases (metadata for a single entity types will be only flushed once even if flush is called several time). Instead, simply call the method-doing-the job after entities have been inserted (and make it private along the way).
Tue, 02 Feb 2016 12:10:42 +0100 [dataimport] test and fix external source support for the massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 02 Feb 2016 12:10:42 +0100] rev 11328
[dataimport] test and fix external source support for the massive store
Tue, 21 Jun 2016 13:51:19 +0200 [dataimport] add new test for nohook store importing in a custom source
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 21 Jun 2016 13:51:19 +0200] rev 11327
[dataimport] add new test for nohook store importing in a custom source
Mon, 01 Feb 2016 17:29:59 +0100 [dataimport] introduce usage of MetadataGenerator into the massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 01 Feb 2016 17:29:59 +0100] rev 11326
[dataimport] introduce usage of MetadataGenerator into the massive store This allows more flexibility and code sharing w/ nohook store. Closes #10338621
Thu, 28 Jan 2016 18:14:27 +0100 [dataimport] rename massive store's metagen_push_relation method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:14:27 +0100] rev 11325
[dataimport] rename massive store's metagen_push_relation method to _insert_meta_relation.
Thu, 28 Jan 2016 18:14:55 +0100 [dataimport] meta_data -> metadata
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:14:55 +0100] rev 11324
[dataimport] meta_data -> metadata
Thu, 28 Jan 2016 16:08:08 +0100 [dataimport] use sql shortcut
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 16:08:08 +0100] rev 11323
[dataimport] use sql shortcut
Thu, 28 Jan 2016 18:16:47 +0100 [dataimport] move cwmassive_constraint temporary table handling to the PGHelper class
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:16:47 +0100] rev 11322
[dataimport] move cwmassive_constraint temporary table handling to the PGHelper class with consistent renaming and some rationalization to avoid doing things several times and have code slightly easier to grasp.
Thu, 28 Jan 2016 18:17:08 +0100 [dataimport] inline some methods of the massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:17:08 +0100] rev 11321
[dataimport] inline some methods of the massive store
Thu, 28 Jan 2016 15:25:32 +0100 [dataimport] move everything related to the "URI handling" feature of the massive store together
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 15:25:32 +0100] rev 11320
[dataimport] move everything related to the "URI handling" feature of the massive store together
Thu, 28 Jan 2016 15:13:39 +0100 [dataimport] test for a value is in a set and insertion in a set should live together
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 15:13:39 +0100] rev 11319
[dataimport] test for a value is in a set and insertion in a set should live together also inline some methods on the way, in the hope to make the public api clearer at some point, and only put valuable values in those sets so we don't have to endlessly test for consistency.
Thu, 28 Jan 2016 15:08:16 +0100 [dataimport] use a single _initialized set instead of _entities / _rtypes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 15:08:16 +0100] rev 11318
[dataimport] use a single _initialized set instead of _entities / _rtypes and rework a bit methods using them so that 'in' test and set insertion leave in the same method.
Thu, 28 Jan 2016 14:34:47 +0100 [dataimport] drop massive store etype to eid index
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 14:34:47 +0100] rev 11317
[dataimport] drop massive store etype to eid index and fix potential problem with is_instance_of relation insertion in case where the class of inserted entity has some (yams) parent.
Thu, 28 Jan 2016 14:00:50 +0100 [dataimport] add a .schema shortcut attribute on the massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 14:00:50 +0100] rev 11316
[dataimport] add a .schema shortcut attribute on the massive store also rephrase a bit a method along the way
Thu, 28 Jan 2016 13:41:39 +0100 [dataimport] rework massive store's __init__
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 13:41:39 +0100] rev 11315
[dataimport] rework massive store's __init__ * _cnx is set by the parent class * count_cwuri is not used * group related things together
Thu, 28 Jan 2016 18:18:20 +0100 [dataimport] rework PGHelper class
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:18:20 +0100] rev 11314
[dataimport] rework PGHelper class
Thu, 28 Jan 2016 18:18:44 +0100 [dataimport] flake8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:18:44 +0100] rev 11313
[dataimport] flake8
Thu, 28 Jan 2016 14:02:31 +0100 [dataimport] enhance a bit sql queries readability
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 14:02:31 +0100] rev 11312
[dataimport] enhance a bit sql queries readability
Thu, 28 Jan 2016 14:14:57 +0100 [dataimport] use IF EXISTS when possible
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 14:14:57 +0100] rev 11311
[dataimport] use IF EXISTS when possible it's better than try/except and avoid potential concurrency problems.
Thu, 28 Jan 2016 11:32:12 +0100 [dataimport] PGHelper should be responsible to retrieve the database schema
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 11:32:12 +0100] rev 11310
[dataimport] PGHelper should be responsible to retrieve the database schema
Mon, 01 Feb 2016 17:31:35 +0100 [dataimport] introduce a new MetadataGenerator to replace former MetaGenerator
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 01 Feb 2016 17:31:35 +0100] rev 11309
[dataimport] introduce a new MetadataGenerator to replace former MetaGenerator with a similar-but-different API that will allow its usage by the massive store (no more entity object manipulation), while making it a bit more flexible for customization by subclasses (experience taken from client code). Related to #10338621
Tue, 21 Jun 2016 16:37:17 +0200 [dataimport] Prefer now(pytz.utc) to utcnow
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 21 Jun 2016 16:37:17 +0200] rev 11308
[dataimport] Prefer now(pytz.utc) to utcnow
Fri, 29 Jan 2016 15:08:13 +0100 [dataimport] rename nohook store .source attribute
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 29 Jan 2016 15:08:13 +0100] rev 11307
[dataimport] rename nohook store .source attribute so it's clearly not the samething as metagenerator.source. Also add a bit of doc along the way.
Thu, 28 Jan 2016 11:17:31 +0100 [dataimport] make rql store test easier to read and test a few more thing, then reuse it to test nohook start which had no tests at all
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 11:17:31 +0100] rev 11306
[dataimport] make rql store test easier to read and test a few more thing, then reuse it to test nohook start which had no tests at all
Wed, 27 Jan 2016 21:59:34 +0100 [dataimport] remove useless assignment in massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 27 Jan 2016 21:59:34 +0100] rev 11305
[dataimport] remove useless assignment in massive store
Wed, 27 Jan 2016 08:42:28 +0100 [dataimport] move eid attribution from the metagenerator back to the nohook store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 27 Jan 2016 08:42:28 +0100] rev 11304
[dataimport] move eid attribution from the metagenerator back to the nohook store
Wed, 27 Jan 2016 08:38:04 +0100 [dataimport] rephrase minor bits of the meta generator
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 27 Jan 2016 08:38:04 +0100] rev 11303
[dataimport] rephrase minor bits of the meta generator
Tue, 21 Jun 2016 15:25:36 +0200 [pkg] Depends on logilab-common >= 1.2.2
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 15:25:36 +0200] rev 11302
[pkg] Depends on logilab-common >= 1.2.2
Tue, 21 Jun 2016 16:35:21 +0200 Merge with 3.22.3
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 16:35:21 +0200] rev 11301
Merge with 3.22.3
Tue, 21 Jun 2016 14:13:54 +0200 [pkg] Depends on yams >= 0.43
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 14:13:54 +0200] rev 11300
[pkg] Depends on yams >= 0.43 RPM spec file and debian/control got updated previously.
Tue, 21 Jun 2016 16:21:07 +0200 Added tag 3.22.3, debian/3.22.3-1, centos/3.22.3-1 for changeset b1e7de000536
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 16:21:07 +0200] rev 11299
Added tag 3.22.3, debian/3.22.3-1, centos/3.22.3-1 for changeset b1e7de000536
Tue, 21 Jun 2016 15:32:51 +0200 [pkg] Version 3.22.3 3.22.3 centos/3.22.3-1 debian/3.22.3-1
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 15:32:51 +0200] rev 11298
[pkg] Version 3.22.3
Tue, 21 Jun 2016 13:45:12 +0200 [pkg] Depends on yams < 0.43
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 13:45:12 +0200] rev 11297
[pkg] Depends on yams < 0.43
Wed, 01 Jun 2016 15:17:09 +0200 Define BASE_URL and DATA_URL js variables in the login template. Closes #13385185
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jun 2016 15:17:09 +0200] rev 11296
Define BASE_URL and DATA_URL js variables in the login template. Closes #13385185 Those are expected to be defined in almost every js files. They were not before this patch because login form doesn't use the regular main template.
Fri, 10 Jun 2016 13:21:31 +0200 [web] Remove some unused imports in editforms
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Jun 2016 13:21:31 +0200] rev 11295
[web] Remove some unused imports in editforms
Fri, 10 Jun 2016 13:21:13 +0200 Fix cancel action on deletion confirmation form
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 10 Jun 2016 13:21:13 +0200] rev 11294
Fix cancel action on deletion confirmation form Currently crashed with RequestError: invalid action '__action_cancel'. It's broken as of https://hg.logilab.org/master/cubicweb/rev/cb217b2b3 This fix is similar as the one done in https://hg.logilab.org/master/cubicweb/rev/9f1c89e7426d Closes #13521493
Mon, 06 Jun 2016 21:19:04 +0200 [rql2sql] Test and fix some case of sql generation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Jun 2016 21:19:04 +0200] rev 11293
[rql2sql] Test and fix some case of sql generation when an unstable variable (ie whose type change from one solution to another) is used in an EXISTS node but belongs to an outer scope. Closes #13518646.
Tue, 21 Jun 2016 13:22:00 +0200 [test] Add missing os import in unittest_migractions.py
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 21 Jun 2016 13:22:00 +0200] rev 11292
[test] Add missing os import in unittest_migractions.py Dropped in ^ merge.
Mon, 20 Jun 2016 15:04:14 +0200 backport 3.22 changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jun 2016 15:04:14 +0200] rev 11291
backport 3.22 changes
Fri, 15 Apr 2016 10:20:34 +0200 [entity] Make it possible to specify sorting terms in cw_related_rqlst method
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 15 Apr 2016 10:20:34 +0200] rev 11290
[entity] Make it possible to specify sorting terms in cw_related_rqlst method Closes #12306543.
Thu, 16 Jun 2016 17:45:16 +0200 [sql gen] Properly create UNIQUE index on non string column. Closes #13728492
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 16 Jun 2016 17:45:16 +0200] rev 11289
[sql gen] Properly create UNIQUE index on non string column. Closes #13728492 Unique was previously detected in a loop triggered only for String columns.
Fri, 17 Jun 2016 14:44:59 +0200 [server] some pep8 changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 17 Jun 2016 14:44:59 +0200] rev 11288
[server] some pep8 changes
Thu, 16 Jun 2016 17:35:39 +0200 pep8 schema2sql
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 16 Jun 2016 17:35:39 +0200] rev 11287
pep8 schema2sql
Thu, 02 Jun 2016 17:52:43 +0200 [migration] Drop custom "readfunc" for code.interact in shell
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 02 Jun 2016 17:52:43 +0200] rev 11286
[migration] Drop custom "readfunc" for code.interact in shell As the referenced bug http://bugs.python.org/issue1288615 got fixed in Python 2.6, this is no longer needed. Furthermore the implementation is not Python 3 compatible (raw_input, unicode).
Thu, 02 Jun 2016 09:41:24 +0200 [tox] Put development dependencies into a dev-requirements.txt file
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 02 Jun 2016 09:41:24 +0200] rev 11285
[tox] Put development dependencies into a dev-requirements.txt file The latter being sourced in tox.ini. For now this contains references to hg repositories for some dependencies but under normal circumstances it should only contain pytest. This is useful when developping cubicweb itself without using tox but working with a virtualenv so that one can simply do: :: $ virtualenv --system-site-packages venv $ . venv/bin/activate $ pip install -r dev-requirements.txt $ python setup.py develop
Thu, 02 Jun 2016 10:27:34 +0200 [py3k] Fix config-level comparison in "cubicweb-ctl create" command
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 02 Jun 2016 10:27:34 +0200] rev 11284
[py3k] Fix config-level comparison in "cubicweb-ctl create" command dict.get -> None, and None cannot compare to an int in Python 3.
Mon, 06 Jun 2016 09:19:38 +0200 [pkg] PEP8 fixes in __pkginfo__.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Jun 2016 09:19:38 +0200] rev 11283
[pkg] PEP8 fixes in __pkginfo__.py
Mon, 06 Jun 2016 09:17:06 +0200 [pkg] Drop "support" of unused subpackage_of option in setup.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 06 Jun 2016 09:17:06 +0200] rev 11282
[pkg] Drop "support" of unused subpackage_of option in setup.py __pkginfo__ does not declare subpackage_of.
Thu, 16 Jun 2016 17:09:11 +0200 Add missing import, eaten by previous merge
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 16 Jun 2016 17:09:11 +0200] rev 11281
Add missing import, eaten by previous merge
Wed, 01 Jun 2016 17:05:16 +0200 Only access once to _cw.message in the login form
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jun 2016 17:05:16 +0200] rev 11280
Only access once to _cw.message in the login form else the first access may pop the message and the second won't get anything to display. This works on default message implementation but doesn't on the pyramid's one, leading to no message displayed on erroneous authentication attempt, which is not very user friendly.
Thu, 16 Jun 2016 15:53:01 +0200 backport 3.22 changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 16 Jun 2016 15:53:01 +0200] rev 11279
backport 3.22 changes
Thu, 16 Jun 2016 14:19:20 +0200 backport changes from 3.21
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 16 Jun 2016 14:19:20 +0200] rev 11278
backport changes from 3.21
Fri, 10 Jun 2016 16:45:20 +0200 [server,bfss] fix bfss migration test for python 3 (related #13519541)
Alexandre Richardson <alexandre.richardson@logilab.fr> [Fri, 10 Jun 2016 16:45:20 +0200] rev 11277
[server,bfss] fix bfss migration test for python 3 (related #13519541)
Fri, 10 Jun 2016 13:23:54 +0200 [pkg] Use io.open with utf-8 encoding to read long description from README
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Jun 2016 13:23:54 +0200] rev 11276
[pkg] Use io.open with utf-8 encoding to read long description from README This forces decoding so that this is consistent between Python 2 and 3 as, in Python 3, decoding which would occur anyways and may fail depending on the environment locale settings.
Wed, 04 May 2016 23:52:36 +0200 [dataimport] order of ExtEntities should be irrelevant (closes #13117472)
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 04 May 2016 23:52:36 +0200] rev 11275
[dataimport] order of ExtEntities should be irrelevant (closes #13117472)
Wed, 01 Jun 2016 15:36:18 +0200 Test and fix "pickleability" of Binary objects
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jun 2016 15:36:18 +0200] rev 11274
Test and fix "pickleability" of Binary objects which has been recently broken while some cubes rely on this (eg fastimport). Do some licensing/pep8 cleanup along the way. Closes #13385274
Tue, 07 Jun 2016 10:05:30 +0200 [server,bfss] fix storage migration when Bytes attributes is None (closes #13519541)
Alexandre Richardson <alexandre.richardson@logilab.fr> [Tue, 07 Jun 2016 10:05:30 +0200] rev 11273
[server,bfss] fix storage migration when Bytes attributes is None (closes #13519541) When a Bytes attributes is None before the BFSS storage migration, the migration crashes. A Bytes attribute can be None, when the attribute is not required and there is no default value. In this case, the attributes should remained None after migration and no file is stored on the disk.
Wed, 25 May 2016 09:51:51 +0200 Let hg Ignore py.test's .cache directory
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 25 May 2016 09:51:51 +0200] rev 11272
Let hg Ignore py.test's .cache directory And drop rule for .svn along the way.
Fri, 15 Apr 2016 08:59:53 +0200 [entity] Add a cw_related_rqlst method returning the RQL select node of cw_related method
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 15 Apr 2016 08:59:53 +0200] rev 11271
[entity] Add a cw_related_rqlst method returning the RQL select node of cw_related method This is useful if one wants to modify the query before execution. A bit a PEP8 style fix in tests along the way. Related to #12306543.
Fri, 20 May 2016 17:05:39 +0200 [devtools] set .config in setUpClass instead of using a cache in a classproperty
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 17:05:39 +0200] rev 11270
[devtools] set .config in setUpClass instead of using a cache in a classproperty This is much clearer and avoid problem with py.test introspection that triggered creation and caching of the configuration before actual test execution. This caused pb in unittest_postgres.PostgresStatementTimeoutTC where configuration was built before module's setup, hence source configuration was missing information about where to find the pg cluster.
Fri, 20 May 2016 12:01:42 +0200 [devtools] Simplify test configuration's init
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 12:01:42 +0200] rev 11269
[devtools] Simplify test configuration's init Specify module's __file__ instead of apphome. __file__ is saved on the class as it will be used later (eg to find the proper pg cluster without relying on shared dictionnary modifications). This will require some tests update, but it should be less common in cubes than in cubicweb itself.
Thu, 11 Sep 2014 14:22:02 +0200 [web] Have the LoginController return 403 on failed auth (closes #11569950)
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 11 Sep 2014 14:22:02 +0200] rev 11268
[web] Have the LoginController return 403 on failed auth (closes #11569950)
Fri, 20 May 2016 11:32:23 +0200 [devtools] Drop old init_test_database backward compat
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 11:32:23 +0200] rev 11267
[devtools] Drop old init_test_database backward compat
Fri, 20 May 2016 14:43:19 +0200 [devtools] show DeprecationWarning during test execution
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 14:43:19 +0200] rev 11266
[devtools] show DeprecationWarning during test execution They are not shown by default since python 2.7
Fri, 20 May 2016 11:09:46 +0200 [devtools] deprecate usage of sources file for test
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 11:09:46 +0200] rev 11265
[devtools] deprecate usage of sources file for test This is old support which clutters the code and should no more be used. As this is rarely used (if it is) and test only, it feels ok to drop support at once without a deprecation phase.
Fri, 20 May 2016 13:07:21 +0200 [devtools] Set dumb value for postgres's db-host to avoid unexpected connection to a local server
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 13:07:21 +0200] rev 11264
[devtools] Set dumb value for postgres's db-host to avoid unexpected connection to a local server Currently, if something goes wrong (eg config built before call to startpgcluster) while a pg server is running on localhost, it may connect to this server and run the test in there unexepectedly.
Wed, 25 May 2016 17:19:14 +0200 [ldapfeed] ldap3 do not raise an exception in case of failure of cnx.bind()
David Douard <david.douard@logilab.fr> [Wed, 25 May 2016 17:19:14 +0200] rev 11263
[ldapfeed] ldap3 do not raise an exception in case of failure of cnx.bind() but return 'False' instead.
Wed, 25 May 2016 17:43:53 +0200 [test] add a test to ensure we get an AuthenticationError with ldapfeed
David Douard <david.douard@logilab.fr> [Wed, 25 May 2016 17:43:53 +0200] rev 11262
[test] add a test to ensure we get an AuthenticationError with ldapfeed when using (correct login, wrong password) credentials
Fri, 22 Apr 2016 16:16:09 +0200 [entity] Exclude computed relations from Entity.copy_relations
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Apr 2016 16:16:09 +0200] rev 11261
[entity] Exclude computed relations from Entity.copy_relations Closes #12481591.
Thu, 19 May 2016 10:51:33 +0200 [pkg] Set version to 3.22.2.dev0
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 19 May 2016 10:51:33 +0200] rev 11260
[pkg] Set version to 3.22.2.dev0 So that cubes used in test dependencies do not install a released CubicWeb.
Fri, 20 May 2016 12:05:29 +0200 [devtools] pep8 a bit package's __init__
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 20 May 2016 12:05:29 +0200] rev 11259
[devtools] pep8 a bit package's __init__
Thu, 19 May 2016 17:57:43 +0200 [test/server] Only use configcls with statement timeout when needed
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 19 May 2016 17:57:43 +0200] rev 11258
[test/server] Only use configcls with statement timeout when needed Other tests in PostgresFTITC class apparently do not make use of this particular configuration.
Thu, 19 May 2016 17:55:26 +0200 [server/test] Add an assertion in test_statement_timeout
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 19 May 2016 17:55:26 +0200] rev 11257
[server/test] Add an assertion in test_statement_timeout
Wed, 01 Jul 2015 08:58:39 +0200 [datafeed] minor cleanups to cwxml parser
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jul 2015 08:58:39 +0200] rev 11256
[datafeed] minor cleanups to cwxml parser
Wed, 23 Sep 2015 10:59:56 +0200 [datafeed] don't allow arbitrary kwargs on DatafeedParser initializer
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 23 Sep 2015 10:59:56 +0200] rev 11255
[datafeed] don't allow arbitrary kwargs on DatafeedParser initializer else they will be handled nicely by appobject base class, while we rather want an error in the case of a source parser (arguable).
Wed, 01 Jul 2015 08:53:29 +0200 [datafeed] gives information about moved entities to the parser
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jul 2015 08:53:29 +0200] rev 11254
[datafeed] gives information about moved entities to the parser Also, don't support anymore arbitrary parameters at parser initialization. Related to #5414754
Wed, 01 Jul 2015 08:45:29 +0200 [datafeed] simplify SQL query used to retrieve information about entities from an external source
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jul 2015 08:45:29 +0200] rev 11253
[datafeed] simplify SQL query used to retrieve information about entities from an external source no need to join on cw_source
Wed, 01 Jul 2015 08:42:44 +0200 [datafeed] rename parser.sourceuris to source_uris
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jul 2015 08:42:44 +0200] rev 11252
[datafeed] rename parser.sourceuris to source_uris Its more readable. Also, uniformize related method and local identifier names.
Tue, 30 Jun 2015 10:05:46 +0200 [datafeed] move process_urls to the parser
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 30 Jun 2015 10:05:46 +0200] rev 11251
[datafeed] move process_urls to the parser
Thu, 14 Jan 2016 17:14:16 +0100 [tox] Use py.test to run tests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Jan 2016 17:14:16 +0100] rev 11250
[tox] Use py.test to run tests In unittest_rqlrewrite.py and repotest.py, rename utility functions so that they are not considered as "test functions" by py.test.
Thu, 19 May 2016 14:21:21 +0200 [test] Fix devtools unittest_i18n when ran without pytest
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 19 May 2016 14:21:21 +0200] rev 11249
[test] Fix devtools unittest_i18n when ran without pytest There is currently some weird error, requiring both to hack cubicweb.__path__ and to stop using load_module_from_name to load the registry. Introduce a dependency on to-be-released version of logilab common integrating fix for https://www.logilab.org/ticket/6085650 Do some extra import cleanups along the way.
Fri, 05 Feb 2016 14:48:23 +0100 [server] explicitly set postgres LC_MESSAGES variable to C on connection
Julien Cristau <julien.cristau@logilab.fr> [Fri, 05 Feb 2016 14:48:23 +0100] rev 11248
[server] explicitly set postgres LC_MESSAGES variable to C on connection We parse some error messages so we need them to be in English. It's not clear to me exactly when that's not the case, but this fixes running unittest_postgres' "test_constraint_validationerror" with py.test for Sylvain.
Thu, 19 Mar 2015 21:19:52 +0100 [web] cleanup xmlrss view
Julien Cristau <julien.cristau@logilab.fr> [Thu, 19 Mar 2015 21:19:52 +0100] rev 11247
[web] cleanup xmlrss view Don't trigger exceptions unnecessarily, and add line breaks to the output.
Wed, 17 Feb 2016 14:01:35 +0100 [migration] add rollback when replace_eid_sequence_with_eid_numrange fails
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Feb 2016 14:01:35 +0100] rev 11246
[migration] add rollback when replace_eid_sequence_with_eid_numrange fails If we get here, the current transaction is aborted, so if we are to assume everything is fine and continue we need to rollback first.
Wed, 17 Feb 2016 14:03:56 +0100 [migration] move CWComputedRType later
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Feb 2016 14:03:56 +0100] rev 11245
[migration] move CWComputedRType later The ordering in this file is a mess, and things don't actually work this way (when upgrading from 3.17).
Thu, 19 May 2016 09:18:56 +0200 docstring fix
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 19 May 2016 09:18:56 +0200] rev 11244
docstring fix
Tue, 12 Apr 2016 10:35:06 +0200 [cwctl] make cwctl not depends on cubicweb.wsgi (closes #12210063)
David Douard <david.douard@logilab.fr> [Tue, 12 Apr 2016 10:35:06 +0200] rev 11243
[cwctl] make cwctl not depends on cubicweb.wsgi (closes #12210063) cubicweb.wsgi may not be available at all on Debian.
Wed, 07 Oct 2015 18:24:49 +0200 [hooks/workflow] pass eids, not entities, from hooks to operations
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Oct 2015 18:24:49 +0200] rev 11242
[hooks/workflow] pass eids, not entities, from hooks to operations Passing entity objects around runs the risk of getting out of date data from caches.
Wed, 09 Mar 2016 14:53:33 +0100 [web/httpcache] fix Last-Modified generation
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Mar 2016 14:53:33 +0100] rev 11241
[web/httpcache] fix Last-Modified generation time.mktime takes a time tuple in *local* time. We have an UTC datetime coming from the last_modified method, which we were interpreting as local time, leading to hilarity. Use calendar.timegm instead. Add tests for Last-Modified generation of the 'download' and 'manage' views.
Wed, 04 May 2016 17:07:41 +0200 [forms] Fix edition of TZDatetime attributes
Florent Cayré <florent.cayre@logilab.fr> [Wed, 04 May 2016 17:07:41 +0200] rev 11240
[forms] Fix edition of TZDatetime attributes Parse the submitted web form values into a timezone-aware datetime (by default, UTC) when such an attribute is edited. This is done using an automatically-selected (by `web.formfield.guess_field`) field named `TZDatetimeField`. Closes #12666598.
Mon, 02 May 2016 17:14:43 +0200 [doc] fix abstract and example of data import
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Mon, 02 May 2016 17:14:43 +0200] rev 11239
[doc] fix abstract and example of data import
Sun, 01 May 2016 22:00:14 +0200 [doc] fix abstract of data import
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Sun, 01 May 2016 22:00:14 +0200] rev 11238
[doc] fix abstract of data import
Fri, 29 Apr 2016 12:39:08 +0200 [repository] drop remanescence of old multi-sources code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 29 Apr 2016 12:39:08 +0200] rev 11237
[repository] drop remanescence of old multi-sources code we don't use anymore this inputmap/varmap thing.
Mon, 09 May 2016 17:24:03 +0200 Added tag 3.20.15, debian/3.20.15-1, centos/3.20.15-1 for changeset 636a83e65870
David Douard <david.douard@logilab.fr> [Mon, 09 May 2016 17:24:03 +0200] rev 11236
Added tag 3.20.15, debian/3.20.15-1, centos/3.20.15-1 for changeset 636a83e65870
Mon, 09 May 2016 17:05:14 +0200 [pkg] 3.20.15 3.20.15 centos/3.20.15-1 debian/3.20.15-1
David Douard <david.douard@logilab.fr> [Mon, 09 May 2016 17:05:14 +0200] rev 11235
[pkg] 3.20.15
Wed, 20 Apr 2016 14:43:48 +0200 [views] do not eat the self._cw.message in LogFormView (closes #12421177)
David Douard <david.douard@logilab.fr> [Wed, 20 Apr 2016 14:43:48 +0200] rev 11234
[views] do not eat the self._cw.message in LogFormView (closes #12421177) accessing self._cw.message now(?) eat the message, so don't call "self._cw.message" twice.
Tue, 19 Apr 2016 13:57:12 +0200 [server] make InternalManager.name() return an empty string (closes #12418708)
David Douard <david.douard@logilab.fr> [Tue, 19 Apr 2016 13:57:12 +0200] rev 11233
[server] make InternalManager.name() return an empty string (closes #12418708) Otherwise the notification emails sent via an internal_session never honor the EMAIL.sender-name configuration option.
Mon, 21 Mar 2016 17:10:08 +0100 [test/migractions] work around drop_cube not deleting final etypes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Mar 2016 17:10:08 +0100] rev 11232
[test/migractions] work around drop_cube not deleting final etypes Closes #10096736
Mon, 21 Mar 2016 17:09:41 +0100 [hooks] deleting a final entity type shouldn't try dropping an sql table
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Mar 2016 17:09:41 +0100] rev 11231
[hooks] deleting a final entity type shouldn't try dropping an sql table
Tue, 05 Apr 2016 09:10:17 +0200 [tox] Use a revision on proper branch for Yams
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Apr 2016 09:10:17 +0200] rev 11230
[tox] Use a revision on proper branch for Yams "default" is not good when some bug fix release suddenly comes out...
Tue, 29 Mar 2016 14:35:28 +0200 [webconfig] disable generate-staticdir by default
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Mar 2016 14:35:28 +0200] rev 11229
[webconfig] disable generate-staticdir by default Its side effects mean it can be inconvenient, and using it requires manual (web server) config changes anyway, so there's no reason it needs to be enabled by default.
Mon, 21 Mar 2016 15:24:17 +0100 [test] Skip test_deserialization_base (unittest_repository.SchemaDeserialTC)
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Mar 2016 15:24:17 +0100] rev 11228
[test] Skip test_deserialization_base (unittest_repository.SchemaDeserialTC) See ticket #10096736.
Tue, 29 Mar 2016 17:00:13 +0200 [devtools] drop unused DumbOrderedDict2 class
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Mar 2016 17:00:13 +0200] rev 11227
[devtools] drop unused DumbOrderedDict2 class
Tue, 29 Mar 2016 16:56:59 +0200 [devtools] fix sorting in ExecutionPlan._check_permissions on python3
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Mar 2016 16:56:59 +0200] rev 11226
[devtools] fix sorting in ExecutionPlan._check_permissions on python3 Sort lists instead of dict_items objects to get predictable results. With this change, unittest_querier.UtilsTC.test_preprocess_security passes every time instead of once in a blue moon. Closes #11759133.
Mon, 21 Mar 2016 13:55:29 +0100 [test] assertItemsEqual → assertCountEqual in unittest_repository.py
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 21 Mar 2016 13:55:29 +0100] rev 11225
[test] assertItemsEqual → assertCountEqual in unittest_repository.py
Thu, 24 Mar 2016 09:43:25 +0100 merge 3.20.14 in 3.21 branch
Julien Cristau <julien.cristau@logilab.fr> [Thu, 24 Mar 2016 09:43:25 +0100] rev 11224
merge 3.20.14 in 3.21 branch
Mon, 21 Mar 2016 18:08:47 +0100 Added tag 3.20.14, debian/3.20.14-1, centos/3.20.14-1 for changeset f66a4895759e
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Mar 2016 18:08:47 +0100] rev 11223
Added tag 3.20.14, debian/3.20.14-1, centos/3.20.14-1 for changeset f66a4895759e
Mon, 21 Mar 2016 17:59:40 +0100 [pkg] 3.20.14 3.20.14 centos/3.20.14-1 debian/3.20.14-1
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Mar 2016 17:59:40 +0100] rev 11222
[pkg] 3.20.14
Mon, 21 Mar 2016 10:53:44 +0100 [tox] use master URL for yams repository
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Mar 2016 10:53:44 +0100] rev 11221
[tox] use master URL for yams repository No need to clone from review. This should help get consistent results.
Tue, 19 Jan 2016 16:11:16 +0100 [pylint] Avoid invalid-name on schema relation class names
Laura Médioni <laura.medioni@logilab.fr> [Tue, 19 Jan 2016 16:11:16 +0100] rev 11220
[pylint] Avoid invalid-name on schema relation class names
Wed, 20 Jan 2016 08:26:30 +0100 [pylint] more work on the pylint support
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 20 Jan 2016 08:26:30 +0100] rev 11219
[pylint] more work on the pylint support * uniformize usage of ClassDef and simplify related import * don't insert in the ast a python function but an astroid representation of that function * ignore __pkginfo__ file * drop attr-rgx, variable-rgx and argument-rgx, put the name in good-names instead * drop additional-builtins * add cell_call to the list of methods for which we don't want 'abstract-method'
Tue, 19 Jan 2016 14:07:59 +0100 [pylint] remove abstract-method warning
Laura Médioni <laura.medioni@logilab.fr> [Tue, 19 Jan 2016 14:07:59 +0100] rev 11218
[pylint] remove abstract-method warning This kind of message is targeted: "Method 'entity_call' is abstract in class 'EntityView' but is not overridden (abstract-method)" For now, only "entity_call" and "render_body" are dealt with, the list can be extended.
Tue, 19 Jan 2016 11:43:52 +0100 [pylint] upgrade pylintext plugin
Laura Médioni <laura.medioni@logilab.fr> [Tue, 19 Jan 2016 11:43:52 +0100] rev 11217
[pylint] upgrade pylintext plugin
Tue, 19 Jan 2016 13:24:44 +0100 update and enhance pylintrc
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 19 Jan 2016 13:24:44 +0100] rev 11216
update and enhance pylintrc
Wed, 16 Mar 2016 11:56:32 +0100 [schema] use json to serialize constraints
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Mar 2016 11:56:32 +0100] rev 11215
[schema] use json to serialize constraints Require yams 0.43: constraints are serialized to json, which means we need to recreate the actual checks in the database on upgrade. Temporary deps in tox.ini to pull respective changes in yams.
Wed, 16 Mar 2016 17:59:10 +0100 [pkg] fix cubicweb.spec syntax
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Mar 2016 17:59:10 +0100] rev 11214
[pkg] fix cubicweb.spec syntax (grafted from 3309ddb970594cd54529f5c205d1ea5b5da4131e)
Wed, 16 Mar 2016 10:06:18 +0100 [pkg] Use Twisted < 16.0.0
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 16 Mar 2016 10:06:18 +0100] rev 11213
[pkg] Use Twisted < 16.0.0 We have some test failures with 16.0.0, such as: - test_put_content (unittest_server.ETwistHTTPTC) - test_base_url (unittest_httptest.TwistedCWAnonTC) (grafted from 10c12f31d0fe38c2e8814176fc42bf2ea210efdf)
Wed, 16 Mar 2016 17:59:10 +0100 [pkg] fix cubicweb.spec syntax
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Mar 2016 17:59:10 +0100] rev 11212
[pkg] fix cubicweb.spec syntax
Wed, 16 Mar 2016 15:55:56 +0100 [cwconfig] Use imp.load_source instead of exec() to load site_cubicweb.py from apphome
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Mar 2016 15:55:56 +0100] rev 11211
[cwconfig] Use imp.load_source instead of exec() to load site_cubicweb.py from apphome Lets us return a module object and go back to the previous code in CubicWebConfiguration._load_site_cubicweb.
Tue, 15 Mar 2016 11:24:51 +0100 [cwconfig] Stop using lgc.modutils to load *config.py and *ctl.py files
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Mar 2016 11:24:51 +0100] rev 11210
[cwconfig] Stop using lgc.modutils to load *config.py and *ctl.py files
Wed, 16 Mar 2016 13:53:03 +0100 [cwconfig] Stop using lgc.modutils to load site_cubicweb.py files
Rémi Cardona <remi.cardona@logilab.fr>, Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 16 Mar 2016 13:53:03 +0100] rev 11209
[cwconfig] Stop using lgc.modutils to load site_cubicweb.py files config.load_site_cubicweb function now takes a list of cubes (instead of paths) and default to all known cubes.
Wed, 16 Mar 2016 11:31:40 +0100 [test] Use a Popen in i18n tests
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 16 Mar 2016 11:31:40 +0100] rev 11208
[test] Use a Popen in i18n tests Instead of check_call, so that we clearly see the failure. A bit of flake8 along the way.
Tue, 06 May 2014 17:45:37 +0200 [forms] Fix HTableFormRenderer _render_fields method behavior when display_label is False.
Vladimir Popescu <vladimir.popescu@logilab.fr> [Tue, 06 May 2014 17:45:37 +0200] rev 11207
[forms] Fix HTableFormRenderer _render_fields method behavior when display_label is False. Indeed, now the extra <tr><th>...</th></tr> are not inserted anymore unless display_label is True. Closes #3811325.
Tue, 17 Mar 2015 15:21:29 +0100 [connection] remove a dead counter
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 17 Mar 2015 15:21:29 +0100] rev 11206
[connection] remove a dead counter Related to #1381328.
Wed, 16 Jul 2014 17:34:21 +0200 [session] drop .is_repo_in_memory
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Jul 2014 17:34:21 +0200] rev 11205
[session] drop .is_repo_in_memory This is deader than a dead dog's bone buried down a blind alley off a dead-end street in a ghost town. Related to #1381328.
Wed, 16 Mar 2016 11:39:24 +0100 [session] drop session-as-a-context-manager
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Mar 2016 11:39:24 +0100] rev 11204
[session] drop session-as-a-context-manager It made little sense in the 3.19 - session-as-cnx-bw-compat era, maybe. Related to #1381328.
Thu, 12 Jun 2014 18:37:29 +0200 [devtools/repotest] use the RepoAccess object
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 12 Jun 2014 18:37:29 +0200] rev 11203
[devtools/repotest] use the RepoAccess object Quite better than playing tricks with the Repo._sessions. Related to #1381328.
Tue, 01 Jul 2014 18:25:20 +0200 [devtools] adapt stresstester to current APIs
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 01 Jul 2014 18:25:20 +0200] rev 11202
[devtools] adapt stresstester to current APIs
Wed, 16 Mar 2016 12:11:18 +0100 [session] retire session.vreg
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Mar 2016 12:11:18 +0100] rev 11201
[session] retire session.vreg Related to #1381328.
Wed, 16 Jul 2014 16:26:16 +0200 [session] fix super call in Connection.__init__
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Jul 2014 16:26:16 +0200] rev 11200
[session] fix super call in Connection.__init__ The vile hacks in test fixtures are fixed.
Wed, 16 Jul 2014 15:30:16 +0200 [session,repo] remove last trace of "cnxprops"
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Jul 2014 15:30:16 +0200] rev 11199
[session,repo] remove last trace of "cnxprops" Related to #1381328.
Wed, 16 Mar 2016 10:06:18 +0100 [pkg] Use Twisted < 16.0.0
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 16 Mar 2016 10:06:18 +0100] rev 11198
[pkg] Use Twisted < 16.0.0 We have some test failures with 16.0.0, such as: - test_put_content (unittest_server.ETwistHTTPTC) - test_base_url (unittest_httptest.TwistedCWAnonTC)
Tue, 15 Mar 2016 16:58:50 +0100 [web/views] stop using cwaction='cancel'
Julien Cristau <julien.cristau@logilab.fr> [Tue, 15 Mar 2016 16:58:50 +0100] rev 11197
[web/views] stop using cwaction='cancel' It's broken as of https://hg.logilab.org/master/cubicweb/rev/cb217b2b3
Wed, 16 Mar 2016 00:42:40 +0100 [test] fix test_printable_value_bytes with current pygments
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Mar 2016 00:42:40 +0100] rev 11196
[test] fix test_printable_value_bytes with current pygments An empty span was added in https://bitbucket.org/birkenfeld/pygments-main/commits/164574c13533195a555181a2b9c685fea2470403
Thu, 12 Jun 2014 15:54:44 +0200 [session, repository] deprecate repo.connect and move .close reponsibility to session object
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 12 Jun 2014 15:54:44 +0200] rev 11195
[session, repository] deprecate repo.connect and move .close reponsibility to session object Repository.new_session just returns a plain session object, and `.connect` (which returns a sessionid) is deprecated. For .close:: session.close() # done ! The session will bear the responsibility to call the "session_close" event but that's better than the previous idiom:: repo.close(session.sessionid) which involves both objects. Related to #1381328. Related to #2919309.
Wed, 09 Mar 2016 14:11:47 +0100 [web/test] fix typo in doc string
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Mar 2016 14:11:47 +0100] rev 11194
[web/test] fix typo in doc string
Wed, 09 Mar 2016 19:00:09 +0100 [web/httpcache] send weak ETags
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Mar 2016 19:00:09 +0100] rev 11193
[web/httpcache] send weak ETags There's no way we can provide a strong validator in general (especially considering how ETags are generated by the current EtagHTTPCacheManager and EntityHTTPCacheManager). So mark our entity-tags as weak.
Fri, 04 Mar 2016 12:17:58 +0100 [server] print backend exception if we fail to execute an sql script
Julien Cristau <julien.cristau@logilab.fr> [Fri, 04 Mar 2016 12:17:58 +0100] rev 11192
[server] print backend exception if we fail to execute an sql script It's more useful to see could not open extension control file "/usr/share/postgresql/9.4/extension/postgis.control": No such file or directory rather than merely -> ERROR, skipping /usr/share/cubicweb/cubes/postgis/schema/_ext.postgres.sql
Tue, 15 Mar 2016 14:59:24 +0100 [cwctl] drop unnecessary admincnx call from 'shell'
Julien Cristau <julien.cristau@logilab.fr> [Tue, 15 Mar 2016 14:59:24 +0100] rev 11191
[cwctl] drop unnecessary admincnx call from 'shell' The connection is done by the migration helper.
Mon, 07 Mar 2016 17:51:30 +0100 [serverctl] allow schema-diff when db and fs are not in sync
Julien Cristau <julien.cristau@logilab.fr> [Mon, 07 Mar 2016 17:51:30 +0100] rev 11190
[serverctl] allow schema-diff when db and fs are not in sync
Wed, 09 Jul 2014 16:33:08 +0200 [cwctl] remove networked remote shell
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 16:33:08 +0200] rev 11189
[cwctl] remove networked remote shell This was a dbapi leftover. Related to #3933480.
Tue, 15 Mar 2016 14:30:21 +0100 [web/calendar] fix regression in previous changeset
Julien Cristau <julien.cristau@logilab.fr> [Tue, 15 Mar 2016 14:30:21 +0100] rev 11188
[web/calendar] fix regression in previous changeset "Enables css customization in CalendarView" was untested, and introduced a crash: TypeError: not all arguments converted during string formatting
Mon, 17 Mar 2014 15:21:47 +0100 Enables css customization in CalendarView
Laura Médioni <laura.medioni@logilab.fr> [Mon, 17 Mar 2014 15:21:47 +0100] rev 11187
Enables css customization in CalendarView now a custom css class can be set on the calendar div (closes #3654043).
Thu, 17 Sep 2015 12:47:39 +0200 refactor a bit breadcrumbs to ease overriding of the root's display
Alexandre Richardson <alexandre.richardson@logilab.fr> [Thu, 17 Sep 2015 12:47:39 +0200] rev 11186
refactor a bit breadcrumbs to ease overriding of the root's display
Wed, 14 Jan 2015 13:35:22 +0100 Add migration helper function to delete entity types faster
Julien Cristau <julien.cristau@logilab.fr> [Wed, 14 Jan 2015 13:35:22 +0100] rev 11185
Add migration helper function to delete entity types faster Bypasses all hooks and (for now) ignores any composite relations.
Mon, 14 Mar 2016 15:38:03 +0100 [testlib] Import nocoverage from logilab.common.testlib
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 14 Mar 2016 15:38:03 +0100] rev 11184
[testlib] Import nocoverage from logilab.common.testlib This depends on a change in logilab-common 1.2.0
Mon, 14 Mar 2016 21:28:44 +0100 [web/test] replace unicode with six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Mar 2016 21:28:44 +0100] rev 11183
[web/test] replace unicode with six.text_type Some uses of unicode reappeared when merging changes from 3.19.14.
Thu, 18 Feb 2016 10:23:05 +0100 [devtools/testlib] Issue a RuntimeError when a generative tests is detected
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 18 Feb 2016 10:23:05 +0100] rev 11182
[devtools/testlib] Issue a RuntimeError when a generative tests is detected Otherwise, generative tests *à la logilab-common* in CubicWebTC test cases would silently not run (at least using logilab.common.pytest runner).
Thu, 18 Feb 2016 09:30:58 +0100 [devtools] stop using lgc.testlib.TestCase
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Feb 2016 09:30:58 +0100] rev 11181
[devtools] stop using lgc.testlib.TestCase It's become incompatible with unittest(2).TestCase due to generative tests. Just keep the datadir/datapath and assertCountEqual bits in our BaseTestCase.
Thu, 03 Mar 2016 10:25:32 +0100 [test] Replace remaining generative tests by subtests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 03 Mar 2016 10:25:32 +0100] rev 11180
[test] Replace remaining generative tests by subtests
Mon, 14 Mar 2016 18:15:09 +0100 [tox] Enable all applicable py34 environments
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 14 Mar 2016 18:15:09 +0100] rev 11179
[tox] Enable all applicable py34 environments All except etwist. Comes with a few tricks in tox.ini: * add ``-e.`` to force installing of cubicweb in development because dependency cubes would otherwise install cubicweb 3.22 (the latest release), which is not python3 installable. * "install" cubes/__init__.py because the file is not installed in develop mode; maybe this file should be managed by cubes themselves...
Wed, 09 Mar 2016 17:01:42 +0100 [migration/3.10] fix AttributeError
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Mar 2016 17:01:42 +0100] rev 11178
[migration/3.10] fix AttributeError 'Connection' object has no attribute 'HOOKS_DENY_ALL'
Mon, 07 Mar 2016 17:53:20 +0100 [server/sources] Fix authenticate on pre-3.10 database
Julien Cristau <julien.cristau@logilab.fr> [Mon, 07 Mar 2016 17:53:20 +0100] rev 11177
[server/sources] Fix authenticate on pre-3.10 database When migrating from a pre-3.10 database, the CWSource entity type and cw_source relation type are not known, but authenticate should still work to be able to add them.
Fri, 29 Jan 2016 17:11:17 +0100 [test] Add a test ensuring new cube built from skeleton is flake8-compliant
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 29 Jan 2016 17:11:17 +0100] rev 11176
[test] Add a test ensuring new cube built from skeleton is flake8-compliant And make skeleton files actually flake8-compliant henceforth.
Mon, 25 Jan 2016 08:28:16 +0100 [skeleton] Ship a tox.ini file upon new cube
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 25 Jan 2016 08:28:16 +0100] rev 11175
[skeleton] Ship a tox.ini file upon new cube
Thu, 10 Mar 2016 13:47:20 +0100 [web] fix headers on 304 responses (closes #11466875)
Julien Cristau <julien.cristau@logilab.fr> [Thu, 10 Mar 2016 13:47:20 +0100] rev 11174
[web] fix headers on 304 responses (closes #11466875) The response MUST include the following header fields: [...] - ETag and/or Content-Location, if the header would have been sent in a 200 response to the same request https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.5 Unfortunately we weren't copying headers from what would have been the 200 response, but from the request.
Wed, 09 Mar 2016 18:01:44 +0100 [web/httpcache] GMTOFFSET no longer exists
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Mar 2016 18:01:44 +0100] rev 11173
[web/httpcache] GMTOFFSET no longer exists
Thu, 10 Mar 2016 13:47:20 +0100 [web] fix headers on 304 responses (closes #11466875)
Julien Cristau <julien.cristau@logilab.fr> [Thu, 10 Mar 2016 13:47:20 +0100] rev 11172
[web] fix headers on 304 responses (closes #11466875) The response MUST include the following header fields: [...] - ETag and/or Content-Location, if the header would have been sent in a 200 response to the same request https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.5 Unfortunately we weren't copying headers from what would have been the 200 response, but from the request.
Mon, 29 Feb 2016 12:32:52 +0100 [rset] fix infinite recursion introduced in c1eb5a676c80
Julien Cristau <julien.cristau@logilab.fr> [Mon, 29 Feb 2016 12:32:52 +0100] rev 11171
[rset] fix infinite recursion introduced in c1eb5a676c80 The mechanism to avoid loops in c1eb5a676c80 "[rset] Always complete attribute/relation caches in ResultSet.get_entity" breaks down: we would loop forever if two entities that were already in the cache were linked by a relation with ? or 1 cardinality in both directions. To avoid that, keep a set of already-considered columns. Related to #9942503.
Wed, 17 Feb 2016 10:02:03 +0100 pep8 unittest_application and unittest_formfields
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 17 Feb 2016 10:02:03 +0100] rev 11170
pep8 unittest_application and unittest_formfields
Tue, 12 Jan 2016 14:31:14 +0100 [rset] Always complete attribute/relation caches in ResultSet.get_entity
Alexandre Richardson <alexandre.richardson@logilab.fr> [Tue, 12 Jan 2016 14:31:14 +0100] rev 11169
[rset] Always complete attribute/relation caches in ResultSet.get_entity RQL queries are often designed to fill up the ORM's caches when fetching entities out of the result set. Until now, if an entry already existed in the entity cache, ResultSet.get_entity would return it unchanged, not using the new ResultSet's contents to update the attribute cache, breaking expectations (if the attributes are needed, they'd then be fetched later one at a time, one entity at a time), resulting in loads of DB accesses. So we change ResultSet.get_entity so that: * if the entity is already cached and has been instantiated from the same rset, it is returned as-is (to avoid loops) * if the entity is not yet cached, it is instantiated * if the entity is cached via another rset, its attribute/relation caches are completed Closes #9942503
Tue, 12 Jan 2016 17:36:28 +0100 [rset] refactoring of _build_entity method
Alexandre Richardson <alexandre.richardson@logilab.fr> [Tue, 12 Jan 2016 17:36:28 +0100] rev 11168
[rset] refactoring of _build_entity method define a method for entity instantiation and storage in cache (related to #9942503)
Thu, 25 Feb 2016 09:28:21 +0100 [entity] comparing two entities returns NotImplemented
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Feb 2016 09:28:21 +0100] rev 11167
[entity] comparing two entities returns NotImplemented Fixes a test when using some versions of unittest2, where assertItemsEqual tries a sort and expects TypeError, which it doesn't get if we directly raise NotImplementedError. The NotImplemented value is treated specially by the interpreter: https://docs.python.org/3.4/library/constants.html#NotImplemented
Thu, 18 Feb 2016 09:24:43 +0100 [test] replace one use of lgc.testlib.unittest_main with unittest.main
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Feb 2016 09:24:43 +0100] rev 11166
[test] replace one use of lgc.testlib.unittest_main with unittest.main
Thu, 18 Feb 2016 09:23:18 +0100 [test] stop using TestCase.set_description
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Feb 2016 09:23:18 +0100] rev 11165
[test] stop using TestCase.set_description It's a lgc-ism.
Thu, 18 Feb 2016 09:20:57 +0100 [test] convert a lgc-style generative test into unittest2-style
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Feb 2016 09:20:57 +0100] rev 11164
[test] convert a lgc-style generative test into unittest2-style
Mon, 08 Feb 2016 16:10:22 +0100 [web/application] fix query log handling on python3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 16:10:22 +0100] rev 11163
[web/application] fix query log handling on python3 Writing bytes to a file opened in text mode doesn't work.
Mon, 08 Feb 2016 16:32:36 +0100 [devtools/test] duplicate CubicWebServerTC tests for CubicWebWsgiTC
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 16:32:36 +0100] rev 11162
[devtools/test] duplicate CubicWebServerTC tests for CubicWebWsgiTC
Mon, 08 Feb 2016 16:32:07 +0100 [devtools/test] fix bytes vs text in test_base_url
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 16:32:07 +0100] rev 11161
[devtools/test] fix bytes vs text in test_base_url Needed for python3 with the next changeset
Wed, 24 Feb 2016 17:34:56 +0100 [devtools] skip CubicWebServerTC on python3
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Feb 2016 17:34:56 +0100] rev 11160
[devtools] skip CubicWebServerTC on python3 People should migrate to wsgi if they're going to use CubicWeb on python3.
Mon, 08 Feb 2016 16:10:51 +0100 [web/test] switch unittest_web from twisted to wsgi
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 16:10:51 +0100] rev 11159
[web/test] switch unittest_web from twisted to wsgi And make it pass on python3 while at it.
Wed, 24 Feb 2016 17:31:56 +0100 [devtools] add CubicWebWsgiTC
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Feb 2016 17:31:56 +0100] rev 11158
[devtools] add CubicWebWsgiTC Similar to CubicWebServerTC, except using wsgiref instead of twisted as an http server.
Mon, 08 Feb 2016 15:37:52 +0100 [web/test] return the hash of uploaded files in FileUploadTC instead of their contents
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 15:37:52 +0100] rev 11157
[web/test] return the hash of uploaded files in FileUploadTC instead of their contents json must be unicode, which doesn't go well with arbitrary file contents. Compute the file hash instead, as we know the hexdigest is (ascii) text.
Mon, 08 Feb 2016 15:29:06 +0100 [web/test] open() as a context manager
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 15:29:06 +0100] rev 11156
[web/test] open() as a context manager
Mon, 08 Feb 2016 15:28:14 +0100 [web/test] json.loads expects text, not bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 15:28:14 +0100] rev 11155
[web/test] json.loads expects text, not bytes
Mon, 08 Feb 2016 16:39:51 +0100 [wsgi] fix handling of multiple posted files
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 16:39:51 +0100] rev 11154
[wsgi] fix handling of multiple posted files We were only keeping the last received file.
Fri, 05 Feb 2016 18:23:00 +0100 [web/test] Reword doc string for fileupload ajaxfunc
Julien Cristau <julien.cristau@logilab.fr> [Fri, 05 Feb 2016 18:23:00 +0100] rev 11153
[web/test] Reword doc string for fileupload ajaxfunc
Tue, 03 Mar 2015 12:26:47 +0100 [skeleton] do not import the __pkginfo__.py module to make cubes installable via setuptools
David Douard <david.douard@logilab.fr> [Tue, 03 Mar 2015 12:26:47 +0100] rev 11152
[skeleton] do not import the __pkginfo__.py module to make cubes installable via setuptools When using a simple "import" statement, running 'python setup.py install' for a cube fails in a fresh virtualenv due to the fact the install of the dependencies (here cubicweb iteself) is done by the python process doing the cube's installation, so the __pkginfo__ module from the cube is already loaded (thus used) when installing cubicweb... So we apply the third technique from: https://packaging.python.org/en/latest/single_source_version.html
Tue, 23 Feb 2016 12:18:47 +0100 merge changes from 3.22.2
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Feb 2016 12:18:47 +0100] rev 11151
merge changes from 3.22.2
Tue, 23 Feb 2016 12:09:01 +0100 Added tag 3.22.2, debian/3.22.2-1, centos/3.22.2-1 for changeset 1b93ff37755b
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Feb 2016 12:09:01 +0100] rev 11150
Added tag 3.22.2, debian/3.22.2-1, centos/3.22.2-1 for changeset 1b93ff37755b
Tue, 23 Feb 2016 11:45:54 +0100 [pkg] 3.22.2 3.22.2 centos/3.22.2-1 debian/3.22.2-1
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Feb 2016 11:45:54 +0100] rev 11149
[pkg] 3.22.2
Fri, 19 Feb 2016 11:23:11 +0100 [pkg] fix centos install
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 19 Feb 2016 11:23:11 +0100] rev 11148
[pkg] fix centos install
Fri, 19 Feb 2016 11:03:32 +0100 [datafeed] do NOT call commit in DataFeedXMLParser.process() (closes #10928592)
David Douard <david.douard@logilab.fr> [Fri, 19 Feb 2016 11:03:32 +0100] rev 11147
[datafeed] do NOT call commit in DataFeedXMLParser.process() (closes #10928592) and so, remove more useless code. Doing a commit in DataFeedXMLParser.process() is a bad idea because this method is called for every imported/updated entity, before handling deletions. So if we commit here, odds are quite high that we're violating some integrity constraint and end up with a ValidationError.
Wed, 17 Feb 2016 14:00:39 +0100 [schema] restore constraint checking when running on old sqlite
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Feb 2016 14:00:39 +0100] rev 11146
[schema] restore constraint checking when running on old sqlite Old sqlite3 doesn't provide CHECK constraint names in error messages, preventing us from translating a backend integrity error into a ValidationError. This was added in 2012, but the sqlite3 version in RHEL6 is older; so if we run on old sqlite, keep checking the constraints in python rather than only in SQL. Closes #10927494
Wed, 17 Feb 2016 17:20:29 +0100 [web/autoform] fix regression introduced by #5758ba784ebd
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 17 Feb 2016 17:20:29 +0100] rev 11145
[web/autoform] fix regression introduced by #5758ba784ebd The changes from cset 5758ba784ebd "[autoform] when building inlined-form view for a relation, consider related entities intead of other views" lead to an unexpected 'add new' link on creation of an entity with inlined form for a relation of cardinality 1. To avoid this, we should consider formviews and not existing relations when the entity is being created. Closes #10860258
Tue, 22 Dec 2015 09:23:00 +0100 [tox] Generate test environments for Python 2.7 and 3.4
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 22 Dec 2015 09:23:00 +0100] rev 11144
[tox] Generate test environments for Python 2.7 and 3.4 Test commands for each environment are written down explicitly since I could not find a way to extract the "package" name (e.g. "hooks") from the environment name (e.g. "py34-hooks"). For Python 3.4 interpreter, only environments (subpackages) that do not depend on cubes for their tests are listed since those test dependency cubes are not yet installable with Python 3.x. etwist is also not included since the Python 3 port is not complete at the moment. From local testing, py34 tests pass for the following subpackages: - dataimport - entities - ext - hooks - wsgi
Tue, 26 Jan 2016 18:04:00 +0100 [notification] avoid using InternalManager when we've got a CWUser
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 26 Jan 2016 18:04:00 +0100] rev 11143
[notification] avoid using InternalManager when we've got a CWUser This will avoid potential information leak due to missed security restriction and is more compatible with legacy code (pb encountered in some client code). Closes #10294761
Wed, 27 Jan 2016 08:35:51 +0100 [dataimport] rename .time to .now attribute of meta generator
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 27 Jan 2016 08:35:51 +0100] rev 11142
[dataimport] rename .time to .now attribute of meta generator
Thu, 18 Feb 2016 14:36:39 +0100 [pkg] Set version to 3.22.2.dev0
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 18 Feb 2016 14:36:39 +0100] rev 11141
[pkg] Set version to 3.22.2.dev0 So that cubes used in test dependencies do not install a released CubicWeb.
Fri, 29 Jan 2016 15:08:34 +0100 [dataimport] cleanup a bit nohook store, mostly protecting some attributes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 29 Jan 2016 15:08:34 +0100] rev 11140
[dataimport] cleanup a bit nohook store, mostly protecting some attributes
Wed, 03 Feb 2016 11:13:51 +0100 [dataimport] add a filter function to not fail if some extentity has several values for an attribute of final relation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 03 Feb 2016 11:13:51 +0100] rev 11139
[dataimport] add a filter function to not fail if some extentity has several values for an attribute of final relation the function will simply record a warning in the import log and keep a value randomly. Notice the function has to be explicitly inserted in the transformation stream.
Wed, 03 Feb 2016 11:12:09 +0100 [sources] synchronize source asynchronously when started from the UI
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 03 Feb 2016 11:12:09 +0100] rev 11138
[sources] synchronize source asynchronously when started from the UI and redirect to the forthcoming import log, for a better user experience (there is still a lot more to do there though). Closes #10468967
Fri, 19 Feb 2016 12:35:22 +0100 [test] fix unittest_devctl on python3.4
Julien Cristau <julien.cristau@logilab.fr> [Fri, 19 Feb 2016 12:35:22 +0100] rev 11137
[test] fix unittest_devctl on python3.4
Thu, 21 Jan 2016 09:24:04 +0100 [test] Make sure that newcube command test produces expected files
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Jan 2016 09:24:04 +0100] rev 11136
[test] Make sure that newcube command test produces expected files
Fri, 29 Jan 2016 10:04:35 +0100 [server] remove some pre 3.10 compat
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 29 Jan 2016 10:04:35 +0100] rev 11135
[server] remove some pre 3.10 compat Let's assume nobody will try upgrading an instance from pre-3.10 cubicweb to 3.23+. If they do, they're setting themselves up for a lot of pain anyway.
Wed, 17 Feb 2016 10:25:51 +0100 [pkg] use https URLs to pypi.{python.org,debian.net}
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Feb 2016 10:25:51 +0100] rev 11134
[pkg] use https URLs to pypi.{python.org,debian.net}
Wed, 17 Feb 2016 10:19:14 +0100 [pkg] use https URL for www.cubicweb.org
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Feb 2016 10:19:14 +0100] rev 11133
[pkg] use https URL for www.cubicweb.org
Wed, 17 Feb 2016 10:18:34 +0100 README: use https URLs for docs.cubicweb.org
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Feb 2016 10:18:34 +0100] rev 11132
README: use https URLs for docs.cubicweb.org
Thu, 11 Feb 2016 10:03:51 +0100 pep8 bits
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 11 Feb 2016 10:03:51 +0100] rev 11131
pep8 bits
Thu, 11 Feb 2016 10:03:31 +0100 [i18n] enhance text formats french translation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 11 Feb 2016 10:03:31 +0100] rev 11130
[i18n] enhance text formats french translation
Wed, 17 Feb 2016 13:45:34 +0100 Merge with 3.22 branch
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 17 Feb 2016 13:45:34 +0100] rev 11129
Merge with 3.22 branch The merge was clean, just dropped cubicweb/web/data/cubicweb.goa.js.
Thu, 11 Feb 2016 21:59:49 +0100 [dataimport] update example to use standard importer
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 11 Feb 2016 21:59:49 +0100] rev 11128
[dataimport] update example to use standard importer
Tue, 16 Feb 2016 19:18:37 +0100 merge changes from 3.21.6
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 19:18:37 +0100] rev 11127
merge changes from 3.21.6
Tue, 02 Feb 2016 17:19:13 +0100 flake8 serverctl
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 02 Feb 2016 17:19:13 +0100] rev 11126
flake8 serverctl
Tue, 16 Feb 2016 10:52:00 +0100 c-c source-sync now actually force synchronization
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 16 Feb 2016 10:52:00 +0100] rev 11125
c-c source-sync now actually force synchronization as advertized by its help message. This was because "force" argument wasn't considered by acquire_synchronization_lock().
Tue, 16 Feb 2016 19:15:48 +0100 Added tag 3.21.6, debian/3.21.6-1, centos/3.21.6-1 for changeset b3cbbb7690b6
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 19:15:48 +0100] rev 11124
Added tag 3.21.6, debian/3.21.6-1, centos/3.21.6-1 for changeset b3cbbb7690b6
Tue, 16 Feb 2016 18:53:27 +0100 [pkg] 3.21.6 3.21.6 centos/3.21.6-1 debian/3.21.6-1
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 18:53:27 +0100] rev 11123
[pkg] 3.21.6
Tue, 16 Feb 2016 18:41:40 +0100 merge changes from 3.20.13
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 18:41:40 +0100] rev 11122
merge changes from 3.20.13
Tue, 16 Feb 2016 18:17:35 +0100 Added tag 3.20.13, debian/3.20.13-1, centos/3.20.13-1 for changeset 8c5dabbcd4d9
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 18:17:35 +0100] rev 11121
Added tag 3.20.13, debian/3.20.13-1, centos/3.20.13-1 for changeset 8c5dabbcd4d9
Tue, 16 Feb 2016 17:54:17 +0100 [pkg] 3.20.13 3.20.13 centos/3.20.13-1 debian/3.20.13-1
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 17:54:17 +0100] rev 11120
[pkg] 3.20.13
Mon, 04 Jan 2016 10:43:35 +0100 [pkg] Yams >= 0.42 breaks CubicWeb < 3.21
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 04 Jan 2016 10:43:35 +0100] rev 11119
[pkg] Yams >= 0.42 breaks CubicWeb < 3.21 Closes #9720390.
Tue, 16 Feb 2016 17:16:45 +0100 merge changes from 3.19.14
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 17:16:45 +0100] rev 11118
merge changes from 3.19.14
Tue, 16 Feb 2016 14:52:28 +0100 Added tag 3.19.14, debian/3.19.14-1, centos/3.19.14-1 for changeset 72a0f70879ac
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 14:52:28 +0100] rev 11117
Added tag 3.19.14, debian/3.19.14-1, centos/3.19.14-1 for changeset 72a0f70879ac
Tue, 16 Feb 2016 11:02:04 +0100 [pkg] 3.19.14 3.19.14 centos/3.19.14-1 debian/3.19.14-1
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 11:02:04 +0100] rev 11116
[pkg] 3.19.14
Tue, 16 Feb 2016 11:01:09 +0100 [sources/native] remove extra space before colon
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 11:01:09 +0100] rev 11115
[sources/native] remove extra space before colon This isn't French.
Tue, 16 Feb 2016 10:52:38 +0100 [web/views] fix editcontroller regression
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Feb 2016 10:52:38 +0100] rev 11114
[web/views] fix editcontroller regression unittest_views_basecontrollers.py's EditControllerTC.test_edit_mandatory_inlined3_object regressed with changeset dcbb64d3a1d9 because it relied on POSTing nonexisting eids. This seems like a silly idea, but let's keep the behaviour unchanged.
Fri, 12 Feb 2016 16:13:43 +0100 Added tag 3.22.1, debian/3.22.1-1, centos/3.22.1-1 for changeset d0d86803a804
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Feb 2016 16:13:43 +0100] rev 11113
Added tag 3.22.1, debian/3.22.1-1, centos/3.22.1-1 for changeset d0d86803a804
Fri, 12 Feb 2016 15:31:48 +0100 fix test broken by #012e6c7d02ef 3.22.1 centos/3.22.1-1 debian/3.22.1-1
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 12 Feb 2016 15:31:48 +0100] rev 11112
fix test broken by #012e6c7d02ef
Fri, 12 Feb 2016 15:21:21 +0100 [pkg] Attempt to fix rhel6 build
Julien Cristau <julien.cristau@logilab.fr> [Fri, 12 Feb 2016 15:21:21 +0100] rev 11111
[pkg] Attempt to fix rhel6 build I don't know what I'm doing, but this seems to work.
Fri, 12 Feb 2016 15:19:59 +0100 [dataimport/test] fix python2.6 syntax error
Julien Cristau <julien.cristau@logilab.fr> [Fri, 12 Feb 2016 15:19:59 +0100] rev 11110
[dataimport/test] fix python2.6 syntax error Don't use braces for set literals.
Fri, 12 Feb 2016 14:09:38 +0100 Remove unused import in entity.py
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Feb 2016 14:09:38 +0100] rev 11109
Remove unused import in entity.py
Fri, 12 Feb 2016 10:09:13 +0100 [migration] don't ask confirm for those sql queries
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 12 Feb 2016 10:09:13 +0100] rev 11108
[migration] don't ask confirm for those sql queries
Fri, 12 Feb 2016 10:06:03 +0100 quick fix which closes #0673348 - see comment for more info
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 12 Feb 2016 10:06:03 +0100] rev 11107
quick fix which closes #0673348 - see comment for more info
Fri, 12 Feb 2016 10:39:24 +0100 [migration] test if entity type has been in the deleted in the transaction should protect both clauses
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 12 Feb 2016 10:39:24 +0100] rev 11106
[migration] test if entity type has been in the deleted in the transaction should protect both clauses else we may attempt to execute the UPDATE query on a table which has been deleted. Closes #10692374
Fri, 12 Feb 2016 10:39:14 +0100 [pkg] 3.22.1
Julien Cristau <julien.cristau@logilab.fr> [Fri, 12 Feb 2016 10:39:14 +0100] rev 11105
[pkg] 3.22.1
Mon, 06 Jul 2015 11:04:42 +0200 [cwctl] remove support for startorder file in /etc/cubicweb.d (closes #5618947)
David Douard <david.douard@logilab.fr> [Mon, 06 Jul 2015 11:04:42 +0200] rev 11104
[cwctl] remove support for startorder file in /etc/cubicweb.d (closes #5618947) It's now useless.
Wed, 10 Feb 2016 14:43:05 +0100 [exceptions] fix string conversion for Unauthorized exception
Arthur Lutz <arthur.lutz@logilab.fr> [Wed, 10 Feb 2016 14:43:05 +0100] rev 11103
[exceptions] fix string conversion for Unauthorized exception changeset 3cb87b61b067 changed CubicWebException to define __unicode__ as the main entry point for string conversion, but left Unauthorized's __str__ definition unchanged, leading to a mismatch. Closes #10646396.
Mon, 08 Feb 2016 11:01:46 +0100 Fix Binary on python < 2.7.4 (closes #10593811)
Julien Cristau <julien.cristau@logilab.fr> [Mon, 08 Feb 2016 11:01:46 +0100] rev 11102
Fix Binary on python < 2.7.4 (closes #10593811) Before the fix for http://bugs.python.org/issue10211 we can't pass a buffer object to BytesIO, so keep using StringIO in that case. And because StringIO is an old-style class, we can't use super().
Thu, 11 Feb 2016 22:00:48 +0100 [migration] fix crash on 3.22 upgrade if entity type doesn't exist in fsschema (pending removal)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 11 Feb 2016 22:00:48 +0100] rev 11101
[migration] fix crash on 3.22 upgrade if entity type doesn't exist in fsschema (pending removal)
Thu, 04 Feb 2016 12:00:23 +0100 [autoform] when building inlined-form view for a relation, consider related entities intead of other views
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 04 Feb 2016 12:00:23 +0100] rev 11100
[autoform] when building inlined-form view for a relation, consider related entities intead of other views by considering previous form-views, we may miss that there exists related entities but which are not editable. Closes #10495602
Fri, 29 Jan 2016 17:22:25 +0100 Add a __main__ to cubicweb
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 29 Jan 2016 17:22:25 +0100] rev 11099
Add a __main__ to cubicweb This avoids calling cubicweb-ctl relatively in tests and could be useful in virtualenv. This is just a copy of bin/cubicweb-ctl file, which should probably be generated from a setuptools entry points.
Wed, 03 Feb 2016 15:12:32 +0100 merge 3.19 heads
Julien Cristau <julien.cristau@logilab.fr> [Wed, 03 Feb 2016 15:12:32 +0100] rev 11098
merge 3.19 heads Getting an unexpected test error though: ERROR: test_edit_mandatory_inlined3_object (unittest_views_basecontrollers.EditControllerTC)
Sat, 30 Jan 2016 23:06:18 +0100 [cwvreg] Fix propertyvalues hot updates
Christophe de Vienne <christophe@unlish.com> [Sat, 30 Jan 2016 23:06:18 +0100] rev 11097
[cwvreg] Fix propertyvalues hot updates When CWProperty instances are touched, the corresponding value gets updated in vreg['propertyvalues'], but their type was ignored.
Fri, 05 Feb 2016 16:49:22 +0100 [pkg] remove useless python >= 3.4 dependency
Julien Cristau <julien.cristau@logilab.fr> [Fri, 05 Feb 2016 16:49:22 +0100] rev 11096
[pkg] remove useless python >= 3.4 dependency python is python2 is never >= 3.4.
Fri, 05 Feb 2016 16:32:20 +0100 [dataimport/test] fix test failures since 35b29f1eb37a
Julien Cristau <julien.cristau@logilab.fr> [Fri, 05 Feb 2016 16:32:20 +0100] rev 11095
[dataimport/test] fix test failures since 35b29f1eb37a The index name changed, so we need to follow suit.
Fri, 05 Feb 2016 12:26:28 +0100 [pkg] do not include toplevel directories in rpm (closes #10362119)
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 05 Feb 2016 12:26:28 +0100] rev 11094
[pkg] do not include toplevel directories in rpm (closes #10362119) Our spec file conflicts with the filesystem package in centos7: we set permissions to 0755 for /usr/bin and /usr/lib whereas filesystem sets them to 0555. So to be compatible with both centos7 and others we simply ignore these directories.
Fri, 05 Feb 2016 10:30:01 +0100 [devtools] fix config.repository signature
Julien Cristau <julien.cristau@logilab.fr> [Fri, 05 Feb 2016 10:30:01 +0100] rev 11093
[devtools] fix config.repository signature Its argument is called 'vreg', not 'x'. Closes #10515113.
Wed, 03 Feb 2016 16:23:34 +0100 [predicates] fix paginated_rset when the class has no page_size_property
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 03 Feb 2016 16:23:34 +0100] rev 11092
[predicates] fix paginated_rset when the class has no page_size_property Fixes test failure introduced by 70733b2dfd2a, which assumed paginated_rset would only be called on a class with a page_size_property attribute.
Wed, 03 Feb 2016 14:23:17 +0100 [repository] drop usage of no more necessary eschema_eid function
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 03 Feb 2016 14:23:17 +0100] rev 11091
[repository] drop usage of no more necessary eschema_eid function since the previous cset, we are guaranteed that repository's entity schema will have their eid attribute properly set, so we don't have anymore to check everytime if some entity schema's .eid attributes is set or not (and retrieve it if not). Related to #10450092
Thu, 28 Jan 2016 18:17:30 +0100 [repository] set .eid on eschema when schema is loaded from the filesystem
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:17:30 +0100] rev 11090
[repository] set .eid on eschema when schema is loaded from the filesystem enforcing the contract that a repository's schema should have .eid attribute of entity schema set to the eid of the entity used to serialize them in the db. Before this cset, this was not true during tests or for some c-c commands where 'quick_start' is set (eg db-restore, i18ncube...). The change in server __init__ makes this assumption true during instance creation: the serializing code was actually setting eid on schema object, but a reference to a previously built schema was given instead of the one for the latest created repository. Closes #10450092
Fri, 29 Jan 2016 10:06:36 +0100 [dataimport] simplify SQLGenSourceWrapper.add_info
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 29 Jan 2016 10:06:36 +0100] rev 11089
[dataimport] simplify SQLGenSourceWrapper.add_info At this point 'CWSource' is a thing (we're not in the middle of a migration), and source.eid won't be None (we read it from the db)
Mon, 01 Feb 2016 15:10:35 +0100 ensure .tox is blacklisted when recursing on the fs to get some files
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 01 Feb 2016 15:10:35 +0100] rev 11088
ensure .tox is blacklisted when recursing on the fs to get some files among others, avoid crash when using 'c-c i18ncube' on a cube using tox. Closes #10429317
Wed, 03 Feb 2016 11:12:58 +0100 drop a note about usage of sqls_create_multicol_unique_index and avoid a lgdb warning
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 03 Feb 2016 11:12:58 +0100] rev 11087
drop a note about usage of sqls_create_multicol_unique_index and avoid a lgdb warning
Thu, 21 Jan 2016 16:08:17 +0100 [devtools] don't auto-populate virtual relations
Julien Cristau <julien.cristau@logilab.fr> [Thu, 21 Jan 2016 16:08:17 +0100] rev 11086
[devtools] don't auto-populate virtual relations
Fri, 29 Jan 2016 16:48:58 +0100 [skeleton] Restore verbose output in setup.py
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 29 Jan 2016 16:48:58 +0100] rev 11085
[skeleton] Restore verbose output in setup.py This part of commit fdadf59be612 missing the integration window.
Tue, 01 Dec 2015 16:10:18 +0100 [hooks] Skip modification_date attribute in "notifentityupdated" hook
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 01 Dec 2015 16:10:18 +0100] rev 11084
[hooks] Skip modification_date attribute in "notifentityupdated" hook Depending on the call order of hooks, "modification_date" may come in entity.cw_edited or not (from "metaattrsupdate" hook usually). It should however not be considered in the notification context. Closes #8842064.
Tue, 01 Dec 2015 14:44:55 +0100 [test] Gather tests about mail module
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 01 Dec 2015 14:44:55 +0100] rev 11083
[test] Gather tests about mail module From sobjects/test/unittest_notification.py to test/unittest_mail.py where other tests for mail.py are already. Some style fixes along the way.
Tue, 05 Jan 2016 10:36:17 +0100 [web/component] guard against invalid page_size form parameter
Julien Cristau <julien.cristau@logilab.fr> [Tue, 05 Jan 2016 10:36:17 +0100] rev 11082
[web/component] guard against invalid page_size form parameter Same as dff28956f37e, except the almost same code exists in two places (yay us).
Tue, 05 Jan 2016 10:31:29 +0100 [predicates] fix paginated_rset for components that change page_size_property
Julien Cristau <julien.cristau@logilab.fr> [Tue, 05 Jan 2016 10:31:29 +0100] rev 11081
[predicates] fix paginated_rset for components that change page_size_property The predicate and component had better agree on the page size.
Wed, 06 Jan 2016 11:47:08 +0100 [devtools] fix get_bounds
Julien Cristau <julien.cristau@logilab.fr> [Wed, 06 Jan 2016 11:47:08 +0100] rev 11080
[devtools] fix get_bounds Say an attribute has two IntervalBoundConstraints, one with minvalue=0 and the other with maxvalue=10 (not literally, or that could be a single constraint, but e.g. with references to other attributes). We don't want to override the minvalue of the former with None just because the latter happens last in the constraints list. This doesn't fix the case where two constraints both have a min or a max value. Meh.
Wed, 06 Jan 2016 15:27:59 +0100 [devtools] "fix" boundary condition for autofill
Julien Cristau <julien.cristau@logilab.fr> [Wed, 06 Jan 2016 15:27:59 +0100] rev 11079
[devtools] "fix" boundary condition for autofill maxvalue in an IntervalBoundConstraint is inclusive. If the min and max values happened to coincide, we would call random.choice on an empty list, which it didn't like. This is still broken in the case of BoundaryConstraint('>', minvalue), as we assume the minvalue is in the range, but that's something for another time.
Tue, 19 Jan 2016 16:44:34 +0100 [test] Use stdlib doctest module instead of logilab-common class
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 19 Jan 2016 16:44:34 +0100] rev 11078
[test] Use stdlib doctest module instead of logilab-common class The former just works fine now but the later does not play well with py.test.
Thu, 14 Jan 2016 17:42:22 +0100 [test] Re-implement generative tests with subtests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Jan 2016 17:42:22 +0100] rev 11077
[test] Re-implement generative tests with subtests
Thu, 14 Jan 2016 18:35:07 +0100 [devtools] Re-implement generative tests using subtests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Jan 2016 18:35:07 +0100] rev 11076
[devtools] Re-implement generative tests using subtests Generative tests as implemented in logilab.common.testib are not compatible with tests runner other than lgc.pytest and this implementation differs from the standard library, which has support for subtests_ since Python 3.4. Use unittest2 to bridge the gap. Maybe it'd be good to implement this on logilab.common.testlib side at some point. Let's see how this gets received here first. .. _subtests: https://docs.python.org/3/library/unittest.html#subtests
Thu, 28 Jan 2016 18:02:49 +0100 cleanups
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Jan 2016 18:02:49 +0100] rev 11075
cleanups
Tue, 26 Jan 2016 11:49:25 +0100 [pkg] python-tz does not exist in centos should be pytz (closes #10290056)
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 26 Jan 2016 11:49:25 +0100] rev 11074
[pkg] python-tz does not exist in centos should be pytz (closes #10290056)
Tue, 19 Jan 2016 10:03:16 +0100 [test] Skip LDAP tests if any of the underlying programs is not found
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 19 Jan 2016 10:03:16 +0100] rev 11073
[test] Skip LDAP tests if any of the underlying programs is not found Some programs are in ldap-utils or ldapscripts, which may not be installed despite slapd may. Follow-up on 282880f81311.
Mon, 18 Jan 2016 09:23:07 +0100 Handle virtualenv development mode
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 18 Jan 2016 09:23:07 +0100] rev 11072
Handle virtualenv development mode Looking for VIRTUAL_ENV environment variable as a sign of virtualenv activation. This at least works for developing CubicWeb itself (not sure yet about cubes). And it makes `tox --develop` work as well. Add a test for cwconfig._find_prefix within a virtualenv. In tox.ini, use `develop option`_ accordingly. This makes tox running significantly faster since it avoids building and installing the sdist. Aside, the "develop" install is now performed *after* all test requirements are processed, which means that the cubicweb package should always be the one from source -- instead of a released version pulled by a cube through test dependencies, which may occur in "recreate" step. .. _`develop option`: <http://tox.readthedocs.org/en/latest/config.html#confval-usedevelop=BOOL
Thu, 14 Jan 2016 18:17:23 +0100 [skeleton] Use os.walk in setup.py for Python3 compatibility
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Jan 2016 18:17:23 +0100] rev 11071
[skeleton] Use os.walk in setup.py for Python3 compatibility
Thu, 14 Jan 2016 18:39:27 +0100 [skeleton] Use unittest.main directly
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Jan 2016 18:39:27 +0100] rev 11070
[skeleton] Use unittest.main directly Instead of lgc.testlib.unittest_main as they are identical.
Thu, 14 Jan 2016 16:24:01 +0100 [devtools/testlib] Disable pause trace in setUp
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Jan 2016 16:24:01 +0100] rev 11069
[devtools/testlib] Disable pause trace in setUp Closes #9856028.
Tue, 12 Jan 2016 19:50:57 +0100 [test] Remove dependency on person cube in devtools package
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 12 Jan 2016 19:50:57 +0100] rev 11068
[test] Remove dependency on person cube in devtools package
Tue, 26 Jan 2016 11:46:41 +0100 [pkg] add missing python-tz dependency
Julien Cristau <julien.cristau@logilab.fr> [Tue, 26 Jan 2016 11:46:41 +0100] rev 11067
[pkg] add missing python-tz dependency
Tue, 26 Jan 2016 14:04:45 +0100 [edit controller] Fix composite entity reparenting when inlined
Florent Cayré <florent.cayre@logilab.fr> [Tue, 26 Jan 2016 14:04:45 +0100] rev 11066
[edit controller] Fix composite entity reparenting when inlined This implies handling the reparenting case sooner, otherwise the child entity modifications are cancelled (see 113e9da47afc). Add a new test to ensure non-regression in all previous tests. Closes #10291977.
Mon, 14 Dec 2015 14:29:22 +0100 [forms] Do not raise errors on composite required relation being deleted
Florent Cayré <florent.cayre@logilab.fr> [Mon, 14 Dec 2015 14:29:22 +0100] rev 11065
[forms] Do not raise errors on composite required relation being deleted The entity included in the composite will be deleted in such a case, so the field is not required even when the cardinality is '1' or '+'. Related to #8529868
Mon, 07 Dec 2015 11:58:17 +0100 [edit controller] Cancel RQL queries to be performed on entities to be deleted
Florent Cayré <florent.cayre@logilab.fr> [Mon, 07 Dec 2015 11:58:17 +0100] rev 11064
[edit controller] Cancel RQL queries to be performed on entities to be deleted Composite relation removal via the EditController trigger an entity removal. Changes on such a to-be-removed entity must be cancelled as they may trigger integrity errors before the deletion occurs. Closes #8529868.
Fri, 04 Dec 2015 14:56:20 +0100 [edit controller] fix handling of removal of subentities from an edit form
Florent Cayré <florent.cayre@logilab.fr> [Fri, 04 Dec 2015 14:56:20 +0100] rev 11063
[edit controller] fix handling of removal of subentities from an edit form In CubicWeb 3.18 the semantics of dropping a composite relation were changed. It had before the effect of deleting the subentities. Now the edit controller must handle this by itself (it was not adapted then by mistake). So if it detects the removal of a composite relation (on the browser side, the user clicked on the "remove" action), the subentity is now explicitly deleted. It was chosen not to change the form generation but the EditController: - to ensure pre-3.18 forms backward compat - to avoid the introduction of a specific entity-deletion API (RQL is probably our best API for complex DB operations) Related to #8529868.
Wed, 25 Nov 2015 16:28:41 +0100 remove unused import
Florent Cayré <florent.cayre@logilab.fr> [Wed, 25 Nov 2015 16:28:41 +0100] rev 11062
remove unused import
Fri, 20 Nov 2015 12:29:13 +0100 [editcontroller] a slight code reorganisation, in preparation for a fix
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Fri, 20 Nov 2015 12:29:13 +0100] rev 11061
[editcontroller] a slight code reorganisation, in preparation for a fix * `entity` defined at method entry * a combined `continue` and a dedent of the next big block * some vertical white space Related to #8529868.
Tue, 20 Oct 2015 16:05:36 +0200 [sources/native] ask permission to continue restoring even if metadata do not match (closes #7771864)
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Tue, 20 Oct 2015 16:05:36 +0200] rev 11060
[sources/native] ask permission to continue restoring even if metadata do not match (closes #7771864) Moreover we try to clarify the message (Expected/Found was never too clear for users).
Mon, 27 Jul 2015 10:00:32 +0200 [views] fix ProcessInformationView: SESSION_MANAGER can be None (closes #5753280)
David Douard <david.douard@logilab.fr> [Mon, 27 Jul 2015 10:00:32 +0200] rev 11059
[views] fix ProcessInformationView: SESSION_MANAGER can be None (closes #5753280) eg. with pyramid. (grafted from 6a07c2dc3d85f4de0cf48221607e02c4473e11e4)
Wed, 16 Dec 2015 18:08:37 +0100 [web] Move "display all"/ "back to pagination" link generation into the navigation component
Florent Cayré <florent.cayre@logilab.fr> [Wed, 16 Dec 2015 18:08:37 +0100] rev 11058
[web] Move "display all"/ "back to pagination" link generation into the navigation component This makes the html generation customizable. Closes #9219057
Sat, 16 Jan 2016 13:48:51 +0100 Reorganize source tree to have a "cubicweb" top-level package
Denis Laxalde <denis.laxalde@logilab.fr> [Sat, 16 Jan 2016 13:48:51 +0100] rev 11057
Reorganize source tree to have a "cubicweb" top-level package Basically: mkdir cubicweb hg mv *.py -X setup.py cubicweb hg mv dataimport devtools entities etwist ext hooks i18n misc schemas server skeleton sobjects test web wsgi cubicweb Other changes: * adjust path to cubicweb-ctl in devtools tests * update setup.py to avoid importing __pkginfo__ (exec it instead), replace os.path.walk by os.walk and prepend `modname` here and there * update tox.ini to account for new test locations * update doc/conf.py so that it still finds __pkginfo__.py and CWDIR in doc/Makefile
Mon, 04 Jan 2016 11:12:30 +0100 clean some remaining dust from goa time
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 04 Jan 2016 11:12:30 +0100] rev 11056
clean some remaining dust from goa time
Wed, 06 Jan 2016 08:58:43 +0100 [datafeed] io.BytesIO requires a buffer, not a unicode (closes #9783743)
David Douard <david.douard@logilab.fr> [Wed, 06 Jan 2016 08:58:43 +0100] rev 11055
[datafeed] io.BytesIO requires a buffer, not a unicode (closes #9783743) The URLLibResponseAdapter should probably be refactored (or killed?)
Thu, 07 Jan 2016 12:20:50 +0100 [pkg] rql 0.34 and logilab-database 1.15 break cubicweb 3.21
David Douard <david.douard@logilab.fr> [Thu, 07 Jan 2016 12:20:50 +0100] rev 11054
[pkg] rql 0.34 and logilab-database 1.15 break cubicweb 3.21
Thu, 07 Jan 2016 12:20:50 +0100 [pkg] rql 0.34 and logilab-database 1.15 break cubicweb 3.21
David Douard <david.douard@logilab.fr> [Thu, 07 Jan 2016 12:20:50 +0100] rev 11053
[pkg] rql 0.34 and logilab-database 1.15 break cubicweb 3.21
Mon, 04 Jan 2016 18:40:30 +0100 Added tag 3.22.0, debian/3.22.0-1, centos/3.22.0-1 for changeset de472896fc0a
Julien Cristau <julien.cristau@logilab.fr> [Mon, 04 Jan 2016 18:40:30 +0100] rev 11052
Added tag 3.22.0, debian/3.22.0-1, centos/3.22.0-1 for changeset de472896fc0a
Mon, 04 Jan 2016 17:57:14 +0100 [pkg] 3.22.0 3.22.0 centos/3.22.0-1 debian/3.22.0-1
Julien Cristau <julien.cristau@logilab.fr> [Mon, 04 Jan 2016 17:57:14 +0100] rev 11051
[pkg] 3.22.0
Mon, 04 Jan 2016 17:23:36 +0100 merge
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 04 Jan 2016 17:23:36 +0100] rev 11050
merge
Wed, 09 Dec 2015 08:44:45 +0100 [formwidgets] a bit of pep8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 08:44:45 +0100] rev 11049
[formwidgets] a bit of pep8
Thu, 26 Mar 2015 11:13:12 +0100 [views] improve JQueryDatePicker so that a date field can be defined as the min/max of an other one
Erica Marco <erica.marco@logilab.fr> [Thu, 26 Mar 2015 11:13:12 +0100] rev 11048
[views] improve JQueryDatePicker so that a date field can be defined as the min/max of an other one closes #5169039
Fri, 18 Dec 2015 17:49:45 +0100 [entity] don't look at fetch order recursively
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Dec 2015 17:49:45 +0100] rev 11047
[entity] don't look at fetch order recursively If fetch_attrs includes relations, stop including the entities on the other side in our sorting. Fixes regression from 73ea636a5562 where we would sort on the target entity before the attribute we wanted if the relation's name sorted before the attribute's. This showed up in the forge/tracker cubes with Version entities being sorted by their State's name in preference to their version number.
Mon, 21 Dec 2015 10:36:08 +0100 [pkg] fix paths in debian doc-base control file
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 10:36:08 +0100] rev 11046
[pkg] fix paths in debian doc-base control file
Mon, 04 Jan 2016 10:36:57 +0100 [ldapfeed] extid and cwuri aren't the same thing
Julien Cristau <julien.cristau@logilab.fr> [Mon, 04 Jan 2016 10:36:57 +0100] rev 11045
[ldapfeed] extid and cwuri aren't the same thing Historically, we used a ldap://... URI as cwuri attribute, not just the dn. The extid field, OTOH, was always the dn. So when initializing our dict of known entities from an ldap source, look at existing extids, not cwuris, to avoid importing already-existing users (and violated unicity constraints).
Wed, 23 Dec 2015 15:44:28 +0100 [entities] add eid to ISerializableAdapter
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 15:44:28 +0100] rev 11044
[entities] add eid to ISerializableAdapter Life without an eid is made of sadness.
Wed, 23 Dec 2015 10:52:55 +0100 [doc] 3.22 release notes update
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Dec 2015 10:52:55 +0100] rev 11043
[doc] 3.22 release notes update
Tue, 22 Dec 2015 18:25:37 +0100 [datafeed] use tz-aware datetime objects
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 18:25:37 +0100] rev 11042
[datafeed] use tz-aware datetime objects Avoid TypeError when comparing tz-naive and tz-aware objects in fresh() method.
Tue, 22 Dec 2015 17:36:50 +0100 [pkg] fix syntax error in debian/control
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 17:36:50 +0100] rev 11041
[pkg] fix syntax error in debian/control
Tue, 22 Dec 2015 17:35:39 +0100 [pkg] remove no-longer-used addresses from debian control file
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 17:35:39 +0100] rev 11040
[pkg] remove no-longer-used addresses from debian control file
Tue, 22 Dec 2015 11:35:43 +0100 [schema] rebuild computed attributes on schema reload
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 11:35:43 +0100] rev 11039
[schema] rebuild computed attributes on schema reload If we have new computed attributes we need to set their formula_select attribute or things get sad.
Tue, 22 Dec 2015 10:39:05 +0100 [hooks] fix extra_props handling on python3
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 10:39:05 +0100] rev 11038
[hooks] fix extra_props handling on python3 The json module expects str, not bytes, so we need to do the decoding.
Tue, 22 Dec 2015 16:16:07 +0100 [py3k/ldapparser] avoid confusion between unicode and bytes
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Dec 2015 16:16:07 +0100] rev 11037
[py3k/ldapparser] avoid confusion between unicode and bytes - ldap3 dicts contain unicode strings - extid must be bytes
Tue, 22 Dec 2015 17:00:03 +0100 [pkg] use correct lgdb version for tz rework
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Dec 2015 17:00:03 +0100] rev 11036
[pkg] use correct lgdb version for tz rework Related to #4848923.
Fri, 18 Dec 2015 09:36:58 +0100 pep8 bits
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:36:58 +0100] rev 11035
pep8 bits
Tue, 22 Dec 2015 15:35:10 +0100 [server] improve TZDatetime support
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 22 Dec 2015 15:35:10 +0100] rev 11034
[server] improve TZDatetime support by depending on logilab-database 1.15.0 including https://www.logilab.org/ticket/1485893, we can now keep the tzinfo attribute on datetime objects for TZDatetime attributes, so one knows that this is a tz-aware datetime. To easily make it work with backends that have no tz support, we keep converting tz-aware datetime objects into utc naive datetime objects before sending them to the database.
Fri, 18 Dec 2015 09:23:23 +0100 [schema] Use TZDatetime for creation_date and modification_date
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:23:23 +0100] rev 11033
[schema] Use TZDatetime for creation_date and modification_date No work has been done for form fields/widgets since creation_date / modification_date are by default not editable through the default UI. One may want to add such feature at some point. Time will be displayed as UTC, let the end-application decide otherwise by customizing the tzdatetime printer if desired. Closes #4848923
Fri, 18 Dec 2015 09:37:15 +0100 [server] fix SQLite patch to ensure TZDatetime are properly typed
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:37:15 +0100] rev 11032
[server] fix SQLite patch to ensure TZDatetime are properly typed NB: at this point, the TZ info is completely ignored. It will be properly handled in later commits.
Fri, 18 Dec 2015 09:10:20 +0100 [server] fix name and add docstring to connection initialization functions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:10:20 +0100] rev 11031
[server] fix name and add docstring to connection initialization functions
Fri, 18 Dec 2015 09:07:33 +0100 [server] always monkeypatch QuerierHelper to handle dates and times on SQLite
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:07:33 +0100] rev 11030
[server] always monkeypatch QuerierHelper to handle dates and times on SQLite The patch prevents problems due to a SQLite bug causing some values to be returned as strings instead of properly typed objects. This should probably be improved to use SQLite connection hooks. But the major improvement is that the monkeypatch is now done all the time, and not just for tests.
Thu, 17 Dec 2015 15:17:45 +0100 [testlib] put postgres test database in test/data/database directory
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 17 Dec 2015 15:17:45 +0100] rev 11029
[testlib] put postgres test database in test/data/database directory with other (sqlite) test databases. Closes #9240765 Simplify .hgignore in passing.
Wed, 02 Dec 2015 15:24:03 +0100 [dataimport] make eids_seq_range as massive store instance attribute again
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 15:24:03 +0100] rev 11028
[dataimport] make eids_seq_range as massive store instance attribute again I changed it to a class attribute recently, but on further thought (and prompting from Adrien) it seems to make more sense as an instance attribute.
Wed, 02 Dec 2015 15:20:52 +0100 [dataimport] stop supporting None as eids_seq_range
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 15:20:52 +0100] rev 11027
[dataimport] stop supporting None as eids_seq_range It couldn't work as-is because entities_id_seq is not a sequence object.
Wed, 02 Dec 2015 15:19:24 +0100 [dataimport] remove eids_seq_start attribute from massive store
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 15:19:24 +0100] rev 11026
[dataimport] remove eids_seq_start attribute from massive store Instead provide a utility function to reset the eid sequence.
Wed, 02 Dec 2015 14:57:03 +0100 [dataimport] massive store in slave mode shouldn't flush metadata
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 14:57:03 +0100] rev 11025
[dataimport] massive store in slave mode shouldn't flush metadata The metadata insertion is to be done only by the master-mode store.
Mon, 21 Dec 2015 12:29:50 +0100 [dataimport] check that MassiveObjectStore restores the db schema properly
Samuel Trégouët <samuel.tregouet@logilab.fr> [Mon, 21 Dec 2015 12:29:50 +0100] rev 11024
[dataimport] check that MassiveObjectStore restores the db schema properly Ideally we'd use "pg_dump --schema-only" to compare before/after, but when restoring a constraint such as: cstr48f9ceae537d68859b62c601681c8d3e CHECK (((cw_type)::text = ANY ((ARRAY['normal'::character varying, 'auto'::character varying])::text[]))) postgres will convert the text cast on array to a cast on each cell of array cstr48f9ceae537d68859b62c601681c8d3e CHECK (cw_type::text = ANY (ARRAY['normal'::character varying::text, 'auto'::character varying::text]))
Mon, 21 Dec 2015 12:41:30 +0100 [dataimport] split out listing indices/constraints from getting the corresponding query
Samuel Trégouët <samuel.tregouet@logilab.fr> [Mon, 21 Dec 2015 12:41:30 +0100] rev 11023
[dataimport] split out listing indices/constraints from getting the corresponding query
Tue, 15 Dec 2015 10:41:26 +0100 [dataimport] massive_store: do not drop constraints multiple times
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:41:26 +0100] rev 11022
[dataimport] massive_store: do not drop constraints multiple times It is now done in __init__.
Tue, 15 Dec 2015 10:13:55 +0100 [dataimport] massive_store: do not drop constraints with `cascade` since it breaks things
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:13:55 +0100] rev 11021
[dataimport] massive_store: do not drop constraints with `cascade` since it breaks things We want to be able to restore constraints at the end of the import. If they are silently dropped due to a CASCADE, we can't do that.
Mon, 21 Dec 2015 12:16:12 +0100 [dataimport] massive_store: drop all constraints in __init__ and restore all in finish
Samuel Trégouët <samuel.tregouet@logilab.fr> [Mon, 21 Dec 2015 12:16:12 +0100] rev 11020
[dataimport] massive_store: drop all constraints in __init__ and restore all in finish This should avoid dependency issues when dropping specific constraints (e.g. when dropping a primary constraint referenced by a foreign key constraint). We only do this in master mode, slave mode stores are supposed to work with an initialized db already.
Tue, 15 Dec 2015 10:32:53 +0100 [dataimport] massive_store: ignore primary key when requesting indexes on a table
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:32:53 +0100] rev 11019
[dataimport] massive_store: ignore primary key when requesting indexes on a table Primary keys show up in both lists of constraints and indexes. Pick a side and stick to it.
Tue, 15 Dec 2015 10:28:39 +0100 [dataimport] massive_store: reformat sql query
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:28:39 +0100] rev 11018
[dataimport] massive_store: reformat sql query
Mon, 21 Dec 2015 12:47:35 +0100 [devtools] Use super() in TestServerConfiguration.__init__()
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 12:47:35 +0100] rev 11017
[devtools] Use super() in TestServerConfiguration.__init__() While cleaning up the use of init_config() in WSGIAppTC, I wondered why the method was trying to set the 'https_uiprops' and 'https_datadir_url' attributes on the config, when WebConfiguration's __init__ should be taking care of setting them. WSGIAppTC uses the default configuration - one that derives from ApptestConfiguration (noted as G below). The issue is that the class hierarchy of ApptestConfiguration includes TestServerConfiguration (C in the graph below) which calls ServerConfiguration's __init__ directly (B below). As B does not have an __init__ method, CubicWebConfiguration's __init__ is called directly (A below). This has the unintended consequence of preventing WebConfiguration's __init__ from being called. A / \ B D | | C E \ / F | G | ... A: cwconfig.CubicWebConfiguration B: server.serverconfig.ServerConfiguration C: devtools.TestServerConfiguration D: web.webconfig.WebConfiguration E: etwist.twconfig.WebConfigurationBase F: devtools.BaseApptestConfiguration G: devtools.ApptestConfiguration NB: unittest_wsgi wasn't really broken, as it's the only test in wsgi/test/, but I figured I might as well clean it up. Related to #9297611.
Mon, 21 Dec 2015 10:08:13 +0100 [devtools] Fix database creation issues for CubicWebTestTC tests
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 10:08:13 +0100] rev 11016
[devtools] Fix database creation issues for CubicWebTestTC tests To reproduce (with a purged repo): * python web/test/test_jscript.py * python web/test/unittest_views_xmlrss.py The '__default_empty_db__' will contain the wrong 'base_url' configuration, thus breaking URLs in the xmlrss tests. Closes #9297611.
Mon, 21 Dec 2015 09:55:14 +0100 [devtools] Fix database creation issues for CubicWebServerTC tests
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 09:55:14 +0100] rev 11015
[devtools] Fix database creation issues for CubicWebServerTC tests To reproduce (with a purged repo): * python web/test/unittest_web.py MiscOptionsTC * python web/test/unittest_views_xmlrss.py The core issue is that CubicWebServerConfig.default_base_url() is called inside init_config(), which is called during the equivalent of 'db-create'. The '__default_empty_db__' will contain the wrong 'base_url' configuration, thus breaking URLs in the xmlrss tests. Related to #9297611.
Mon, 21 Dec 2015 09:59:45 +0100 [devtools] Move attribute docstring to correct location
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 09:59:45 +0100] rev 11014
[devtools] Move attribute docstring to correct location
Sun, 20 Dec 2015 19:08:19 +0100 [web] Make tests pass if tal isn't available
Rémi Cardona <remi.cardona@free.fr> [Sun, 20 Dec 2015 19:08:19 +0100] rev 11013
[web] Make tests pass if tal isn't available
Mon, 21 Dec 2015 15:52:41 +0100 [py3k] fix cubicweb.mail.parse_message_id
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:52:41 +0100] rev 11012
[py3k] fix cubicweb.mail.parse_message_id base64.b64decode returns bytes. Fixes sobjects/test/unittest_notification.py.
Mon, 21 Dec 2015 15:46:36 +0100 [test/py3k] fix test_recipients_finder
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:46:36 +0100] rev 11011
[test/py3k] fix test_recipients_finder AssertionError: <zip object at 0x7f1dfb0230c8> != [('abcd@logilab.fr', 'en'), ('efgh@logilab.fr', 'en')]
Mon, 21 Dec 2015 15:44:20 +0100 [dataimport] fix SQLGenObjectStore's add_info for python3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:44:20 +0100] rev 11010
[dataimport] fix SQLGenObjectStore's add_info for python3
Mon, 21 Dec 2015 15:43:49 +0100 [dataimport] py3k doesn't like + on dict_items objects
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:43:49 +0100] rev 11009
[dataimport] py3k doesn't like + on dict_items objects
Wed, 16 Jul 2014 10:48:47 +0200 [repository] remove unused check_session method and its test
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Jul 2014 10:48:47 +0200] rev 11008
[repository] remove unused check_session method and its test Related to #1381328.
Tue, 15 Dec 2015 10:20:26 +0100 [migration/test] avoid test interdependency by removing fakecustomtype cube
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 15 Dec 2015 10:20:26 +0100] rev 11007
[migration/test] avoid test interdependency by removing fakecustomtype cube There is still a failing test afterward but it doesn't seem related to changes in this series.
Wed, 09 Dec 2015 17:44:18 +0100 [migration/test] use numeric(precision, scale) instead of geometry
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Dec 2015 17:44:18 +0100] rev 11006
[migration/test] use numeric(precision, scale) instead of geometry The latter requires the postgis extension which is overkill for this test.
Wed, 09 Dec 2015 17:44:18 +0100 [server, hooks] allow callable in dbh.TYPE_MAPPING
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:18 +0100] rev 11005
[server, hooks] allow callable in dbh.TYPE_MAPPING This is necessary for cubes introducing new custom final types whose generated sql may depend on some extra configuration, avoiding ugly-buggy hack as done currently by the postgis cube. Closes #7569998
Wed, 09 Dec 2015 17:44:17 +0100 [migration] consider extra_props in rdef created during attribute creation hook
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:17 +0100] rev 11004
[migration] consider extra_props in rdef created during attribute creation hook else we may miss important data such as type parametrization (see postgis.Geometry for instance). Related to #7569998
Wed, 09 Dec 2015 17:44:17 +0100 [migration] only define variable if needed
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:17 +0100] rev 11003
[migration] only define variable if needed
Thu, 17 Dec 2015 17:14:08 +0100 [migration] handle non-existing attribute type when adding an entity type
Julien Cristau <julien.cristau@logilab.fr> [Thu, 17 Dec 2015 17:14:08 +0100] rev 11002
[migration] handle non-existing attribute type when adding an entity type The final type needs to be added to the schema first. Related to #7569998.
Wed, 09 Dec 2015 17:44:17 +0100 [migration] handle the case where new final entity type is not yet in the schema
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:17 +0100] rev 11001
[migration] handle the case where new final entity type is not yet in the schema This may occur on new cube addition. Related to #7569998.
Wed, 09 Dec 2015 17:44:16 +0100 [migration] config.add_cubes should ensure site_cubicweb of new cubes is called
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:16 +0100] rev 11000
[migration] config.add_cubes should ensure site_cubicweb of new cubes is called Related to #7569998
Wed, 09 Dec 2015 17:44:16 +0100 [migration] test addition of a cube providing a custom final type
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:16 +0100] rev 10999
[migration] test addition of a cube providing a custom final type This does not work yet. Related to #7569998
Wed, 16 Sep 2015 10:56:36 +0200 [server] add test demonstrating cache update pb since cw > 3.21
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 16 Sep 2015 10:56:36 +0200] rev 10998
[server] add test demonstrating cache update pb since cw > 3.21 Fixed by the previous changeset.
Thu, 10 Dec 2015 16:58:45 +0100 Bring back the separate web-side entity cache
Julien Cristau <julien.cristau@logilab.fr> [Thu, 10 Dec 2015 16:58:45 +0100] rev 10997
Bring back the separate web-side entity cache Prior to changeset 635cfac73d28 "[repoapi] fold ClientConnection into Connection", we had two entity caches: one on the client/dbapi/web side, and one on the server/repo side. This is a waste, but it is actually needed as long as we have the magic _cw attribute on entities which must sometimes be a request and sometimes a cnx. Removing the duplication caused weird problems with entity._cw alternating between both types of objects, which is unexpected by both the repo and the web sides. We add an entity cache on ConnectionCubicWebRequestBase, separate from the Connection's, and bring back the _cw_update_attr_cache/dont-cache-attrs mechanism, to let the server/edition code let caches know which attributes have been modified Entity.as_rset can be cached again, as ResultSet no longer modifies the entity when fetching it from a cache. Contrary to the pre-3.21 code, _cw_update_attr_cache now handles web requests and connections in the same way (otherwise the cache ends up with wrong values if a hook modifies attributes), but dont-cache-attrs is never set for (inlined) relations. Closes #6863543
Wed, 09 Dec 2015 18:21:55 +0100 Backout "[entity,storage] remove hackish code from the bfss path
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Dec 2015 18:21:55 +0100] rev 10996
Backout "[entity,storage] remove hackish code from the bfss path The merge of the repo-side and web-side entity caches doesn't actually work, because entities have a _cw attribute which is sometimes a connection and sometimes a web request, and whose nature changes not-really-predictably whenever ResultSet.get_entity() is called and brings it out of the cache. This reverts commit 59a79300f213.
Thu, 17 Dec 2015 15:34:05 +0100 merge with 3.21.5-2
Julien Cristau <julien.cristau@logilab.fr> [Thu, 17 Dec 2015 15:34:05 +0100] rev 10995
merge with 3.21.5-2
Thu, 10 Dec 2015 17:34:37 +0100 [doc] add documentation about drop_cube
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 10 Dec 2015 17:34:37 +0100] rev 10994
[doc] add documentation about drop_cube
Thu, 17 Dec 2015 15:16:14 +0100 Added tag debian/3.21.5-2 for changeset 228b6d2777e4
Julien Cristau <julien.cristau@logilab.fr> [Thu, 17 Dec 2015 15:16:14 +0100] rev 10993
Added tag debian/3.21.5-2 for changeset 228b6d2777e4
Thu, 17 Dec 2015 14:55:18 +0100 [pkg] don't install dataimport/test in both cubicweb-server and cubicweb-dev debian/3.21.5-2
Julien Cristau <julien.cristau@logilab.fr> [Thu, 17 Dec 2015 14:55:18 +0100] rev 10992
[pkg] don't install dataimport/test in both cubicweb-server and cubicweb-dev Closes #9239572
Wed, 16 Dec 2015 11:23:48 +0100 merge with 3.21.5
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Dec 2015 11:23:48 +0100] rev 10991
merge with 3.21.5
Tue, 15 Dec 2015 19:05:41 +0100 Added tag 3.21.5, debian/3.21.5-1, centos/3.21.5-1 for changeset e0572a786e6b
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 19:05:41 +0100] rev 10990
Added tag 3.21.5, debian/3.21.5-1, centos/3.21.5-1 for changeset e0572a786e6b
Tue, 15 Dec 2015 18:15:08 +0100 [pkg] 3.21.5 3.21.5 centos/3.21.5-1 debian/3.21.5-1
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 18:15:08 +0100] rev 10989
[pkg] 3.21.5
Thu, 03 Dec 2015 10:12:37 +0100 [js] Fix a ReferenceError in cubicweb.preferences.js
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 03 Dec 2015 10:12:37 +0100] rev 10988
[js] Fix a ReferenceError in cubicweb.preferences.js Rename function using proper English along the way. Closes #8864731.
Mon, 14 Dec 2015 14:55:10 +0100 [dataimport] add tests for SQLGenObjectStore (closes #9177565)
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Dec 2015 14:55:10 +0100] rev 10987
[dataimport] add tests for SQLGenObjectStore (closes #9177565) Stolen from the massive import store, with the irrelevant bits removed. Remove redundant tests from test_pgstore.py.
Mon, 14 Dec 2015 14:54:23 +0100 [dataimport] separate entities table from other metadata in SQLGenObjectStore
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Dec 2015 14:54:23 +0100] rev 10986
[dataimport] separate entities table from other metadata in SQLGenObjectStore 'entities' needs to be updated first as every other table has references to its rows. Remove use of thread-local storage in the process. related to #9177565.
Mon, 14 Dec 2015 14:53:02 +0100 [dataimport] remove threading support from SQLGenObjectStore
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Dec 2015 14:53:02 +0100] rev 10985
[dataimport] remove threading support from SQLGenObjectStore It's untested and does not actually work at the moment with nb_threads > 1. related to #9177565.
Thu, 03 Dec 2015 14:55:10 +0100 [dataimport] prepare_insert_entity should not crash with SQLGenObjectStore
Samuel Trégouët <samuel.tregouet@logilab.fr> [Thu, 03 Dec 2015 14:55:10 +0100] rev 10984
[dataimport] prepare_insert_entity should not crash with SQLGenObjectStore grafted from 1079d68130e1e780791ceb2050e8a8b7a910f48d (3.22) related to #9177565.
Tue, 01 Dec 2015 13:39:17 +0100 [dataimport] Fix method signature
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 01 Dec 2015 13:39:17 +0100] rev 10983
[dataimport] Fix method signature Since d4bd28d5fca8, _storage_handler expect 4 args. grafted from b089858c49a2806b6ea8a7ee66773436701e947c (3.22) related to #9177565.
Tue, 01 Dec 2015 13:38:21 +0100 [dataimport] add missing import 'eschema_eid'
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 01 Dec 2015 13:38:21 +0100] rev 10982
[dataimport] add missing import 'eschema_eid' grafted from e3ec46b5c710067a0cecca53cc593a0dd4bd927e (3.22) related to #9177565
Tue, 15 Dec 2015 14:12:59 +0100 merge with 3.21.4
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 14:12:59 +0100] rev 10981
merge with 3.21.4
Tue, 15 Dec 2015 12:37:04 +0100 Added tag 3.21.4, debian/3.21.4-1, centos/3.21.4-1 for changeset d3b92d3a7db0
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 12:37:04 +0100] rev 10980
Added tag 3.21.4, debian/3.21.4-1, centos/3.21.4-1 for changeset d3b92d3a7db0
Tue, 15 Dec 2015 12:00:31 +0100 [pkg] 3.21.4 3.21.4 centos/3.21.4-1 debian/3.21.4-1
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 12:00:31 +0100] rev 10979
[pkg] 3.21.4
Tue, 15 Dec 2015 11:41:25 +0100 merge with 3.20.12
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 11:41:25 +0100] rev 10978
merge with 3.20.12
Tue, 15 Dec 2015 11:24:52 +0100 Added tag 3.20.12, debian/3.20.12-1, centos/3.20.12-1 for changeset 03e8fc9f79a6
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Dec 2015 11:24:52 +0100] rev 10977
Added tag 3.20.12, debian/3.20.12-1, centos/3.20.12-1 for changeset 03e8fc9f79a6
Fri, 11 Dec 2015 14:07:51 +0100 [tox] Ensure pytest gets run with virtualenv's python
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 11 Dec 2015 14:07:51 +0100] rev 10976
[tox] Ensure pytest gets run with virtualenv's python
Mon, 09 Nov 2015 11:34:28 +0100 [tox] Use generating environments
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 09 Nov 2015 11:34:28 +0100] rev 10975
[tox] Use generating environments Drop the "env" option, which is unknown, and set a generative_ "envlist". Then use conditional dependencies based on factors_ to avoid repeating environment sections. The only singular one is the "cubicweb" environment because of its "commands". At some point, it'd be nice to find a way to have python version prefixes (py27-hooks or py34-web) for environment names but I could not find a way to extract the package name from such names. .. _generative: http://tox.readthedocs.org/en/latest/config.html#generative-envlist .. _factors: http://tox.readthedocs.org/en/latest/config.html#factors-and-factor-conditional-settings
Wed, 09 Dec 2015 16:32:57 +0100 a bit of pep8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 16:32:57 +0100] rev 10974
a bit of pep8
Tue, 15 Dec 2015 08:55:58 +0100 [adapters] Use an adapter for serializing entities to a bare python structure
Rabah Meradi <rabah.meradi@logilab.fr> [Tue, 15 Dec 2015 08:55:58 +0100] rev 10973
[adapters] Use an adapter for serializing entities to a bare python structure which may be used for e.g. JSON export or other and allow to have different serializations for each entity types. Closes #6378035
Mon, 14 Dec 2015 16:29:19 +0100 [pkg] 3.20.12 3.20.12 centos/3.20.12-1 debian/3.20.12-1
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Dec 2015 16:29:19 +0100] rev 10972
[pkg] 3.20.12
Mon, 14 Dec 2015 16:19:52 +0100 [dataimport] Fallback from COPY to executemany (closes #9135780)
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Dec 2015 16:19:52 +0100] rev 10971
[dataimport] Fallback from COPY to executemany (closes #9135780) If we can't build a suitable COPY command (e.g. because data has unsupported type), use executemany instead. Regression introduced in 3.20.0.
Mon, 14 Dec 2015 12:11:44 +0100 [web/views] unlink svg temp file after we're done
Julien Cristau <julien.cristau@logilab.fr> [Mon, 14 Dec 2015 12:11:44 +0100] rev 10970
[web/views] unlink svg temp file after we're done Otherwise we fill up the tempdir. Closes #9133268.
Tue, 08 Dec 2015 16:28:20 +0100 Use cubicweb._
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 08 Dec 2015 16:28:20 +0100] rev 10969
Use cubicweb._
Tue, 08 Dec 2015 16:27:05 +0100 [web/views] Controllers should always return bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 08 Dec 2015 16:27:05 +0100] rev 10968
[web/views] Controllers should always return bytes Previous code breaks only on py3k.
Wed, 09 Dec 2015 15:51:20 +0100 [devtools] Fix 'newcube' on py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Dec 2015 15:51:20 +0100] rev 10967
[devtools] Fix 'newcube' on py3k
Thu, 10 Dec 2015 17:57:55 +0100 [toolsutils] Small fixes to fill_templated_file()
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 10 Dec 2015 17:57:55 +0100] rev 10966
[toolsutils] Small fixes to fill_templated_file() * Use context managers to close _both_ files * Use io.open to enforce text mode on both python 2 and 3
Thu, 10 Dec 2015 18:00:41 +0100 [skeleton] Fix broken spec file template
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 10 Dec 2015 18:00:41 +0100] rev 10965
[skeleton] Fix broken spec file template Broken in commit 73c1c9cf6bda.
Thu, 10 Dec 2015 17:50:46 +0100 [devtools] Fix fd leak in tests
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 10 Dec 2015 17:50:46 +0100] rev 10964
[devtools] Fix fd leak in tests
Wed, 09 Dec 2015 14:20:30 +0100 [devtools] stop using datetime.now() in cwctl newcube and i18ncube
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Dec 2015 14:20:30 +0100] rev 10963
[devtools] stop using datetime.now() in cwctl newcube and i18ncube
Wed, 09 Dec 2015 14:06:43 +0100 [hooks] fix timestamp confusion in DataImportsCleanupStartupHook
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Dec 2015 14:06:43 +0100] rev 10962
[hooks] fix timestamp confusion in DataImportsCleanupStartupHook CWDataImport.start_timestamp is inserted as datetime.utcnow(), in server/sources/datafeed.py:DataFeedSourceinit_import_log. Don't compare it to datetime.now().
Wed, 09 Dec 2015 13:58:03 +0100 [hooks] fix timestamp confusion in TransactionsCleanupStartupHook
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Dec 2015 13:58:03 +0100] rev 10961
[hooks] fix timestamp confusion in TransactionsCleanupStartupHook transactions.tx_time is inserted as datetime.utcnow(), in server/sources/native.py:NativeSQLSource.start_undoable_transaction. Don't compare it to datetime.now().
Thu, 10 Dec 2015 12:34:15 +0100 merge with 3.21.3
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 10 Dec 2015 12:34:15 +0100] rev 10960
merge with 3.21.3 The change in unittest_serverctl.py is needed because of daef7ce08fea (from 3.20.11) and 3914388b2d0f (from the 3.22 branch). Due to both changes, CubicWebTC.config.repository no longer creates a new repository (and thus, a new connection). Since both DBDumpCommand and CubicWebTC.tearDown try to shutdown the repo, tearDown breaks apart. The solution is to temporarily disable ServerConfiguration's config cache. By forcing DBDumpCommand to get a new configuration object, it then gets its own Repo object, allowing tearDown and DBDumpCommand to work independently.
Wed, 09 Dec 2015 18:42:13 +0100 Added tag 3.21.3, debian/3.21.3-1, centos/3.21.3-1 for changeset 9edfe9429209
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Dec 2015 18:42:13 +0100] rev 10959
Added tag 3.21.3, debian/3.21.3-1, centos/3.21.3-1 for changeset 9edfe9429209
Wed, 09 Dec 2015 18:29:59 +0100 [pkg] 3.21.3 3.21.3 centos/3.21.3-1 debian/3.21.3-1
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Dec 2015 18:29:59 +0100] rev 10958
[pkg] 3.21.3
Wed, 09 Dec 2015 18:24:09 +0100 merge with 3.20.11
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Dec 2015 18:24:09 +0100] rev 10957
merge with 3.20.11
Tue, 08 Sep 2015 09:05:31 +0200 update repo sources on update of source's entities .url attribute
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 08 Sep 2015 09:05:31 +0200] rev 10956
update repo sources on update of source's entities .url attribute
Wed, 09 Dec 2015 16:36:17 +0100 Added tag 3.20.11, debian/3.20.11-1, centos/3.20.11-1 for changeset c44930ac9579
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Dec 2015 16:36:17 +0100] rev 10955
Added tag 3.20.11, debian/3.20.11-1, centos/3.20.11-1 for changeset c44930ac9579
Wed, 09 Dec 2015 16:28:34 +0100 [pkg] 3.20.11 3.20.11 centos/3.20.11-1 debian/3.20.11-1
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Dec 2015 16:28:34 +0100] rev 10954
[pkg] 3.20.11
Tue, 08 Dec 2015 17:59:54 +0100 [rest] a bit of pep8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 08 Dec 2015 17:59:54 +0100] rev 10953
[rest] a bit of pep8
Tue, 08 Dec 2015 10:24:44 +0100 [rest] avoid field on two lines if name is above some size limit. Closes #8961835
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 08 Dec 2015 10:24:44 +0100] rev 10952
[rest] avoid field on two lines if name is above some size limit. Closes #8961835
Wed, 09 Dec 2015 16:15:00 +0100 action, view and service so managers can start source synchronization from the web ui
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 16:15:00 +0100] rev 10951
action, view and service so managers can start source synchronization from the web ui Closes #5474286
Mon, 30 Nov 2015 14:54:30 +0100 [test] Skip ldap source tests if slapd is not available
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Nov 2015 14:54:30 +0100] rev 10950
[test] Skip ldap source tests if slapd is not available
Thu, 24 Sep 2015 09:43:36 +0200 [doc] Minor changes to the blog tutorial
Jean-Pierre Vergnes <jean-pierre.vergnes@logilab.fr> [Thu, 24 Sep 2015 09:43:36 +0200] rev 10949
[doc] Minor changes to the blog tutorial
Mon, 19 Oct 2015 23:39:30 +0200 [skel] remove (what looks like) a spurious copy/paste
Dimitri Papadopoulos <dimitri.papadopoulos@cea.fr> [Mon, 19 Oct 2015 23:39:30 +0200] rev 10948
[skel] remove (what looks like) a spurious copy/paste
Thu, 03 Dec 2015 16:19:03 +0100 Merge default heads published "concurrently"
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 03 Dec 2015 16:19:03 +0100] rev 10947
Merge default heads published "concurrently"
Thu, 26 Nov 2015 14:23:38 +0100 [qunit] move from CubicWebServerTC to CubicWebTestTC
Julien Cristau <julien.cristau@logilab.fr> [Thu, 26 Nov 2015 14:23:38 +0100] rev 10946
[qunit] move from CubicWebServerTC to CubicWebTestTC This test now uses wsgi instead of twisted, and thus passes under python3.
Thu, 26 Nov 2015 14:37:06 +0100 [qunit] no need to enable CORS anymore
Julien Cristau <julien.cristau@logilab.fr> [Thu, 26 Nov 2015 14:37:06 +0100] rev 10945
[qunit] no need to enable CORS anymore We serve everything needed for the tests through cubicweb.
Thu, 26 Nov 2015 14:34:47 +0100 [web/test] use GET, not POST, to load html files
Julien Cristau <julien.cristau@logilab.fr> [Thu, 26 Nov 2015 14:34:47 +0100] rev 10944
[web/test] use GET, not POST, to load html files POST comes with a body. There isn't one.
Thu, 03 Dec 2015 14:55:10 +0100 [dataimport] prepare_insert_entity should not crash with SQLGenObjectStore
Samuel Trégouët <samuel.tregouet@logilab.fr> [Thu, 03 Dec 2015 14:55:10 +0100] rev 10943
[dataimport] prepare_insert_entity should not crash with SQLGenObjectStore
Tue, 01 Dec 2015 13:39:17 +0100 [dataimport] Fix method signature
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 01 Dec 2015 13:39:17 +0100] rev 10942
[dataimport] Fix method signature Since d4bd28d5fca8, _storage_handler expect 4 args.
Tue, 01 Dec 2015 13:38:21 +0100 [dataimport] add missing import 'eschema_eid'
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 01 Dec 2015 13:38:21 +0100] rev 10941
[dataimport] add missing import 'eschema_eid'
Tue, 01 Dec 2015 09:09:48 +0100 [test] Remove unused import in unittest_qunit.py
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 01 Dec 2015 09:09:48 +0100] rev 10940
[test] Remove unused import in unittest_qunit.py
Mon, 30 Nov 2015 11:09:51 +0100 [dataimport] Format strings with % instead of .format()
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Nov 2015 11:09:51 +0100] rev 10939
[dataimport] Format strings with % instead of .format() For consistency with CubicWeb code base and to avoid Python 2.6 compatibility traps.
Mon, 30 Nov 2015 10:18:22 +0100 [test] Use datapath() in massive store tests
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Nov 2015 10:18:22 +0100] rev 10938
[test] Use datapath() in massive store tests
Fri, 27 Nov 2015 12:26:17 +0100 [devtools] Disable anonymous login right before executing tests
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 27 Nov 2015 12:26:17 +0100] rev 10937
[devtools] Disable anonymous login right before executing tests CubicWebTC.init_config is called many times, especially when creating the default database. This database is then reused by all tests in the same directory. The issue is that, if a test has 'anonymous_allowed' set to False, the anonymous user won't be created by postcreate.py in the default database. All other tests will fail miserably if they expected anonymous login to work. By actually disabling anonymous login after _init_repo, the default database (and configuration) will be initialized with a working anonymous user. Closes #7485127.
Mon, 30 Nov 2015 15:53:35 +0100 [hooks] build EnsureSymmetricRelations{Add,Delete} dynamically
Julien Cristau <julien.cristau@logilab.fr> [Mon, 30 Nov 2015 15:53:35 +0100] rev 10936
[hooks] build EnsureSymmetricRelations{Add,Delete} dynamically Instead of setting the __select__ attribute at registration time, which confuses the filterable_selectors cache when running different tests (with different schemas) in the same process, just make entirely new classes. Closes #8785708.
Thu, 26 Nov 2015 11:30:54 +0100 [qunit] stop dealing with filesystem paths
Rémi Cardona <remi.cardona@logilab.fr>, Julien Cristau <julien.cristau@logilab.fr> [Thu, 26 Nov 2015 11:30:54 +0100] rev 10935
[qunit] stop dealing with filesystem paths qunit tests need a few things served by cubicweb: - qunit itself, which is now handled by CWDevtoolsStaticController (serving files in cubicweb/devtools/data) - standard cubicweb or cubes data files, handled by the DataController - the tests themselves and their dependencies. These can live in <apphome>/data or <apphome>/static and be served by one of the STATIC_CONTROLLERS This avoids having to guess in CWSoftwareRootStaticController where to serve things from (some files may be installed, others are in the source tree), and should hopefully make it possible to have these tests pass when using tox, and to write qunit tests for cubes, outside of cubicweb itself. This requires modifying the tests to only declare URL paths instead of filesystem paths, and moving support files below test/data/static.
Thu, 26 Nov 2015 11:23:52 +0100 [devtools] fix QUnitResultController
Julien Cristau <julien.cristau@logilab.fr> [Thu, 26 Nov 2015 11:23:52 +0100] rev 10934
[devtools] fix QUnitResultController It needs to return something.
Thu, 25 Jun 2015 17:13:33 +0200 [utils] Drop now-unused SizeConstrainedList
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 25 Jun 2015 17:13:33 +0200] rev 10933
[utils] Drop now-unused SizeConstrainedList It's last usage in CubicWeb got removed from changeset '[views] remove breadcrumbs usage to retrieve last visited page' Related to #5456850.
Wed, 25 Nov 2015 18:31:48 +0100 [views] remove breadcrumbs usage to retrieve last visited page
Rabah Meradi <rabah.meradi@logilab.fr> [Wed, 25 Nov 2015 18:31:48 +0100] rev 10932
[views] remove breadcrumbs usage to retrieve last visited page Use JavaScript history.back to go to the last visited page. Rename _return_to_lastpage to _redirect as it becomes misnamed. Drop `test_redirect_default` test in `unittest_views_basecontrollers` which essentially tested this (now removed) breadcrumbs "feature". Closes #5456850.
Wed, 25 Nov 2015 16:22:42 +0100 [cwconfig] Explicitly close generated config file
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 25 Nov 2015 16:22:42 +0100] rev 10931
[cwconfig] Explicitly close generated config file
Wed, 25 Nov 2015 17:57:07 +0100 [doc] Add 3.21 release date
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 25 Nov 2015 17:57:07 +0100] rev 10930
[doc] Add 3.21 release date
Wed, 25 Nov 2015 10:19:52 +0100 [dataimport] fix db-namespace default value handling
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Wed, 25 Nov 2015 10:19:52 +0100] rev 10929
[dataimport] fix db-namespace default value handling In a fresh new instance, the "db-namespace" option is set as empty by default in the "sources" file. This seems correct but empty string is not a valid pg_schema and actually means that we should use "public"
Wed, 25 Nov 2015 11:30:36 +0100 [server] unbreak db-restore
Julien Cristau <julien.cristau@logilab.fr> [Wed, 25 Nov 2015 11:30:36 +0100] rev 10928
[server] unbreak db-restore
Tue, 24 Nov 2015 19:00:02 +0100 [doc] add 3.22 changelog
Julien Cristau <julien.cristau@logilab.fr> [Tue, 24 Nov 2015 19:00:02 +0100] rev 10927
[doc] add 3.22 changelog
Tue, 24 Nov 2015 18:22:26 +0100 [rset] remove stray (commented-out) print
Julien Cristau <julien.cristau@logilab.fr> [Tue, 24 Nov 2015 18:22:26 +0100] rev 10926
[rset] remove stray (commented-out) print Left from debugging in af266f27c4d5
Mon, 23 Nov 2015 19:18:08 +0100 Un-hide jshintrc
Julien Cristau <julien.cristau@logilab.fr> [Mon, 23 Nov 2015 19:18:08 +0100] rev 10925
Un-hide jshintrc dot-files belong in ~, not anywhere else.
Wed, 25 Nov 2015 17:31:32 +0100 [views] Use 'pyvaltable' instead of hand-crafted <table> tags
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 25 Nov 2015 17:31:32 +0100] rev 10924
[views] Use 'pyvaltable' instead of hand-crafted <table> tags
Tue, 24 Nov 2015 17:31:09 +0100 [web] Stop using config.repository()
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 24 Nov 2015 17:31:09 +0100] rev 10923
[web] Stop using config.repository() Since commit 3914388b2d0f, this method creates a new Repository object and thus reloads all the cubes, taking for ever. Closes #8634417.
Tue, 24 Nov 2015 16:57:07 +0100 [web] Stop using webconfig.vc_config()
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 24 Nov 2015 16:57:07 +0100] rev 10922
[web] Stop using webconfig.vc_config() The main issue is that this creates an entirely new Repository object (since commit 3914388b2d0f) and thus reloads all the cubes, taking for ever. Related to #8634417.
Thu, 24 Sep 2015 11:26:11 +0200 [migration] don't handle data deletion anymore on schema changes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Sep 2015 11:26:11 +0200] rev 10921
[migration] don't handle data deletion anymore on schema changes In most cases when we want to drop some entity/relation type, we don't care whether hooks are called on their deletion. There is even low chances that some hooks still exists, based on an old version of the schema. Last but not least, this is horribly inefficient. So this should be clearly documented and handled by application's programmer if desired. This patch removes unnecessary deletion (because table or column will be later dropped) and reimplements the case of partial deletion (only one relation definition among several, hence the database structure isn't modified) using sql. Only one test regarding deletion of inlined relation def is added as other cases seem to be covered by existing tests. Closes #7023315
Tue, 24 Nov 2015 16:01:43 +0100 [hooks/syncschema] drop unused import
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 16:01:43 +0100] rev 10920
[hooks/syncschema] drop unused import
Tue, 24 Nov 2015 16:01:26 +0100 [hooks/syncschema] indentation fix
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 16:01:26 +0100] rev 10919
[hooks/syncschema] indentation fix
Tue, 24 Nov 2015 16:00:57 +0100 [server/test] cosmetic whitespace fix
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 16:00:57 +0100] rev 10918
[server/test] cosmetic whitespace fix
Tue, 24 Nov 2015 16:00:06 +0100 [hooks/syncschema] don't set NOT NULL on inlined relation columns
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 16:00:06 +0100] rev 10917
[hooks/syncschema] don't set NOT NULL on inlined relation columns The NOT NULL constraint was being added on inlined relation cardinality change while it shouldn't. We don't want this, because this forbids to add an entity without the relation set at once (it may be added later in the transaction). This patch fix synchronization hook to stop doing this. Closes #6211101
Thu, 24 Sep 2015 12:18:00 +0200 [hooks/syncschema] Turn DropColumnOp into a data operation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 24 Sep 2015 12:18:00 +0200] rev 10916
[hooks/syncschema] Turn DropColumnOp into a data operation While writing a test for a migration issue where "NOT NULL" was added to an inlined relation column, I ran into a case where the same column was deleted twice, which of course results in an error. This is because the "ecrit_par" relation used by the test is ambiguous. I've hence turned the DropColumnOp into a data operation to ensure we'll delete the column only once in such case. Related to #6211101
Tue, 24 Nov 2015 10:16:55 +0100 [server/sources] fix name error in eid_type_source_pre_131
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 10:16:55 +0100] rev 10915
[server/sources] fix name error in eid_type_source_pre_131 i.e. the eid_type_source implementation used when some pre 3.13.1 database is detected. Regression from 5fbdbbe51867.
Tue, 30 Jun 2015 10:06:00 +0200 [repository] deprecate the extid2eid based multi-sources API
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 30 Jun 2015 10:06:00 +0200] rev 10914
[repository] deprecate the extid2eid based multi-sources API This API is cumbersome and lead to obfuscated code because of the callback mecanism implied when some entity has to be created. Since we dropped the "true" multi-source, this mecanism is not needed anymore and one should prefer to use the dataimport API inside its parser instead. Notice the cwxml parser will trigger the deprecation warning, it should not be used anymore in favor of ad-hoc parsers.
Mon, 23 Nov 2015 14:37:37 +0100 [ldapfeed] use source's extid2eid, the repo's one will be deprecated in a near future.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Nov 2015 14:37:37 +0100] rev 10913
[ldapfeed] use source's extid2eid, the repo's one will be deprecated in a near future.
Tue, 24 Nov 2015 14:36:41 +0100 [ldapfeed / dataimport] port ldapfeed parser to dataimport API
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 14:36:41 +0100] rev 10912
[ldapfeed / dataimport] port ldapfeed parser to dataimport API This makes the code easier to understand and will allow to deprecate the old multi-sources api, based on creation callback through repo.extid2eid. Currently with this patch, modification dates are not checked, hence entities will be systematically updated. We run the import with no hooks, because RQLObjectStore can only add entities to the system source.
Mon, 23 Nov 2015 14:34:13 +0100 [server/test] document expected packages to run ldap tests
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Nov 2015 14:34:13 +0100] rev 10911
[server/test] document expected packages to run ldap tests
Mon, 23 Nov 2015 14:28:19 +0100 [ldapfeed] simplify ldap2attrs
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Nov 2015 14:28:19 +0100] rev 10910
[ldapfeed] simplify ldap2attrs * tdict argument is never given * separate value retrieval from setting output (will ease a latter cset)
Mon, 23 Nov 2015 14:26:44 +0100 [ldapfeed] simplify deactivation of unencountered users
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Nov 2015 14:26:44 +0100] rev 10909
[ldapfeed] simplify deactivation of unencountered users there is no need for the by_etype intermediary dictionnary since we only consider CWUsers.
Tue, 24 Nov 2015 10:04:18 +0100 [server/test] display rset content on failure
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 10:04:18 +0100] rev 10908
[server/test] display rset content on failure
Tue, 24 Nov 2015 14:08:47 +0100 Remove trailing empty lines
Julien Cristau <julien.cristau@logilab.fr> [Tue, 24 Nov 2015 14:08:47 +0100] rev 10907
Remove trailing empty lines Makes pep8 happier
Tue, 24 Nov 2015 14:05:50 +0100 [ldapparser] simplify extid splitting
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 24 Nov 2015 14:05:50 +0100] rev 10906
[ldapparser] simplify extid splitting
Mon, 23 Nov 2015 14:23:08 +0100 [test/ldap] a bit of pep8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Nov 2015 14:23:08 +0100] rev 10905
[test/ldap] a bit of pep8
Wed, 29 Jul 2015 10:05:37 +0200 [js] add configuration file for jshint (closes #5593987)
Samuel Trégouët <samuel.tregouet@logilab.fr> [Wed, 29 Jul 2015 10:05:37 +0200] rev 10904
[js] add configuration file for jshint (closes #5593987) copied from https://gist.github.com/haschek/2595796
Fri, 16 Oct 2015 11:58:10 +0200 spelling: *aly → *ally
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 16 Oct 2015 11:58:10 +0200] rev 10903
spelling: *aly → *ally
Fri, 16 Oct 2015 11:15:50 +0200 [web] Add a <label> around choices on CheckBox and Radio form widgets
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 16 Oct 2015 11:15:50 +0200] rev 10902
[web] Add a <label> around choices on CheckBox and Radio form widgets Allows clicking directly on the text rather than only on the widget. Closes #7672774.
Fri, 16 Oct 2015 10:36:34 +0200 [web] xml_escape CheckBox and Radio labels (closes #7672764)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 16 Oct 2015 10:36:34 +0200] rev 10901
[web] xml_escape CheckBox and Radio labels (closes #7672764)
Fri, 20 Nov 2015 14:17:46 +0100 [test/tox] Enforce installation of modified yapps
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 20 Nov 2015 14:17:46 +0100] rev 10900
[test/tox] Enforce installation of modified yapps 580a6821713d is not enough for tox apparently... The thing is that it will first install dependencies (the `deps` option from tox.ini), actually pulling yapps from Logilab github but then, it will install the project (that is, CubicWeb) from the sdist *along with its dependencies*, which will pull yapps again and override the previously installed version for some mysterious reason. So add a `pip install` command in tox.ini, so that the modified yapps is the last one installed.
Fri, 18 Sep 2015 11:12:03 +0200 [web] delete unused PropertySheet._sourcefile_mtime
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Sep 2015 11:12:03 +0200] rev 10899
[web] delete unused PropertySheet._sourcefile_mtime
Fri, 18 Sep 2015 11:05:47 +0200 [etwist] remove no-longer-necessary uicache cleaning
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Sep 2015 11:05:47 +0200] rev 10898
[etwist] remove no-longer-necessary uicache cleaning It was done before we were actually up, which means it could be too eager when combined with #6893185. Closes #6893247.
Mon, 23 Nov 2015 17:58:10 +0100 [web] remove PropertySheet._cache
Julien Cristau <julien.cristau@logilab.fr> [Mon, 23 Nov 2015 17:58:10 +0100] rev 10897
[web] remove PropertySheet._cache Instead of remembering that a css file has been processed, we re-process it at every request. This prevents our cache getting out of date with the file system. Closes #6893185 While we're at it, write the file atomically so that we don't risk serving partial data.
Mon, 23 Nov 2015 17:47:46 +0100 [test] Add missing u''
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 23 Nov 2015 17:47:46 +0100] rev 10896
[test] Add missing u'' Test actually works in py3k, but not in python 2... That has to be a first!
Fri, 13 Nov 2015 14:29:48 +0100 [data] Use correct syntax to unset CSS attributes (closes #8602446)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 13 Nov 2015 14:29:48 +0100] rev 10895
[data] Use correct syntax to unset CSS attributes (closes #8602446) 'default' is actually a recognized CSS cursor name (the regular pointer). Using this value doesn't revert to whatever cursor DOM elements have by default ('pointer' on links, 'text' on text, etc). The proper way to unset a CSS attribute on DOM elements is to set it to an empty string. http://stackoverflow.com/questions/2027935/how-to-remove-css-property-using-javascript
Wed, 22 Apr 2015 16:09:04 +0200 [server] install custom sql scripts before creating tables for the schema
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Apr 2015 16:09:04 +0200] rev 10894
[server] install custom sql scripts before creating tables for the schema A cube might need something like 'CREATE EXTENSION postgis' before creating tables for its entities, to add new final types.
Tue, 20 Oct 2015 15:40:17 +0200 [hooks] update internal URL in doc string
Julien Cristau <julien.cristau@logilab.fr> [Tue, 20 Oct 2015 15:40:17 +0200] rev 10893
[hooks] update internal URL in doc string
Thu, 19 Nov 2015 12:29:42 +0100 [doc] Fix restructured tables + improve english a bit
Jérôme Roy <jerome.roy@logilab.fr> [Thu, 19 Nov 2015 12:29:42 +0100] rev 10892
[doc] Fix restructured tables + improve english a bit
Fri, 06 Nov 2015 09:41:11 +0100 [debian] Install dataimport package
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 06 Nov 2015 09:41:11 +0100] rev 10891
[debian] Install dataimport package Closes #8173104.
Wed, 09 Sep 2015 18:52:56 +0200 [web/test] Remove use of old test API to silence warning
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 09 Sep 2015 18:52:56 +0200] rev 10890
[web/test] Remove use of old test API to silence warning
Mon, 07 Sep 2015 18:42:47 +0200 [web/views] Fix sqlite unicode warning
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 07 Sep 2015 18:42:47 +0200] rev 10889
[web/views] Fix sqlite unicode warning
Thu, 03 Sep 2015 16:36:08 +0200 [devtools] Fix sqlite unicode warning
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 03 Sep 2015 16:36:08 +0200] rev 10888
[devtools] Fix sqlite unicode warning
Wed, 02 Sep 2015 12:08:31 +0200 [tests] Don't import QUnitTestCase into tests' global namespace
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 02 Sep 2015 12:08:31 +0200] rev 10887
[tests] Don't import QUnitTestCase into tests' global namespace Unittest's test loader will try to execute QUnitTestCase's test_javascripts method. However this class is intended to be subclassed, not to be executed directly. This change has the following consequences: * slightly faster test execution * almost all rtags warnings are gone
Tue, 01 Sep 2015 17:13:16 +0200 [devtools/qunit] Fail quickly if firefox is not installed
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 01 Sep 2015 17:13:16 +0200] rev 10886
[devtools/qunit] Fail quickly if firefox is not installed
Mon, 24 Aug 2015 14:33:14 +0200 [devtools/qunit] Remove unused code
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 24 Aug 2015 14:33:14 +0200] rev 10885
[devtools/qunit] Remove unused code VerboseCalledProcessError is unused since 3905682ece11.
Mon, 23 Nov 2015 15:54:28 +0100 [py3k] import range using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 23 Nov 2015 15:54:28 +0100] rev 10884
[py3k] import range using six.moves Also, use create_entity instead of hand-crafting RQL queries. Fixes regression introduced in commit 768d332de17b.
Mon, 09 Nov 2015 17:17:53 +0100 [dataimport] remove size constraint handling
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 17:17:53 +0100] rev 10883
[dataimport] remove size constraint handling We do not want to silently truncate data. If that is wanted, the application-specific importer should handle that itself. [v2: Keep the get_size_constraints function so applications don't have to reimplement it if they need to keep the truncate behaviour]
Mon, 09 Nov 2015 17:08:21 +0100 [dataimport] fix doc string to stop referring to the old API
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 17:08:21 +0100] rev 10882
[dataimport] fix doc string to stop referring to the old API
Mon, 09 Nov 2015 17:00:50 +0100 [dataimport] drop duplicate init of MassiveObjectStore.sql
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 17:00:50 +0100] rev 10881
[dataimport] drop duplicate init of MassiveObjectStore.sql
Mon, 09 Nov 2015 16:43:50 +0100 [dataimport] remove implicit commits from MassiveObjectStore
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 16:43:50 +0100] rev 10880
[dataimport] remove implicit commits from MassiveObjectStore Let the user decide when to commit the transaction.
Mon, 09 Nov 2015 16:21:29 +0100 [dataimport] drop extra indirection through MassiveObjectStore._initialized dict
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 16:21:29 +0100] rev 10879
[dataimport] drop extra indirection through MassiveObjectStore._initialized dict We already have self.__dict__, no need to add another one for a static set of keys.
Mon, 09 Nov 2015 16:04:13 +0100 [dataimport] remove remaining references to dataio from MassiveObjectStore
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 16:04:13 +0100] rev 10878
[dataimport] remove remaining references to dataio from MassiveObjectStore In particular, rename metadata tables to live in the ^cw.* namespace.
Mon, 09 Nov 2015 15:55:45 +0100 [dataimport] rename logger from dataio.massiveimport to dataimport.massive_store
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:55:45 +0100] rev 10877
[dataimport] rename logger from dataio.massiveimport to dataimport.massive_store
Mon, 09 Nov 2015 15:52:26 +0100 [dataimport] remove commit_at_flush parameter from MassiveObjectStore
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:52:26 +0100] rev 10876
[dataimport] remove commit_at_flush parameter from MassiveObjectStore WARNING: the default value was True, but flush() now never commits.
Mon, 09 Nov 2015 15:44:06 +0100 [dataimport] remove autoflush_metadata from MassiveObjectStore parameters
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:44:06 +0100] rev 10875
[dataimport] remove autoflush_metadata from MassiveObjectStore parameters Hopefully not needed.
Mon, 09 Nov 2015 15:41:27 +0100 [dataimport] remove uri_param_name from MassiveObjectStore parameters
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:41:27 +0100] rev 10874
[dataimport] remove uri_param_name from MassiveObjectStore parameters It doesn't belong here.
Mon, 09 Nov 2015 15:37:55 +0100 [dataimport] turn iid_maxsize into a class attribute
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:37:55 +0100] rev 10873
[dataimport] turn iid_maxsize into a class attribute
Mon, 09 Nov 2015 15:51:02 +0100 [dataimport] turn eids_seq_{start,range} into class attributes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:51:02 +0100] rev 10872
[dataimport] turn eids_seq_{start,range} into class attributes Only the master-mode store will actually use eids_seq_start to reset the eid sequence.
Mon, 09 Nov 2015 15:29:07 +0100 [dataimport] remove replace_sep parameter from massive store
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:29:07 +0100] rev 10871
[dataimport] remove replace_sep parameter from massive store It is unused since changeset efbbf1e93a04 "[dataimport] Properly escape strings sent to COPY FROM"
Mon, 09 Nov 2015 15:49:45 +0100 [dataimport] remove pg_schema parameter from massive store
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:49:45 +0100] rev 10870
[dataimport] remove pg_schema parameter from massive store It can be recovered from the system source's configuration.
Mon, 09 Nov 2015 15:22:43 +0100 [dataimport] remove drop_index parameter from massive store
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Nov 2015 15:22:43 +0100] rev 10869
[dataimport] remove drop_index parameter from massive store "drop_index=False" also implied not dropping any constraints, in particular foreign keys, which meant any attempt to import entities would fail, because we only add metadata (the entities table) after the entity's insertion.
Wed, 04 Nov 2015 09:22:35 +0100 [dataimport/test] update call to ucsvreader
Julien Cristau <julien.cristau@logilab.fr> [Wed, 04 Nov 2015 09:22:35 +0100] rev 10868
[dataimport/test] update call to ucsvreader Silences warning: [3.20] 'separator' kwarg is deprecated, use 'delimiter' instead
Wed, 04 Nov 2015 09:09:08 +0100 [dataimport] remove deprecated methods from massive store
Julien Cristau <julien.cristau@logilab.fr> [Wed, 04 Nov 2015 09:09:08 +0100] rev 10867
[dataimport] remove deprecated methods from massive store This code is new in cubicweb, no reason for it to carry deprecated stuff from the start.
Wed, 04 Nov 2015 09:11:10 +0100 [dataimport/test] use store.finish instead of deprecated store.cleanup
Julien Cristau <julien.cristau@logilab.fr> [Wed, 04 Nov 2015 09:11:10 +0100] rev 10866
[dataimport/test] use store.finish instead of deprecated store.cleanup
Wed, 21 Oct 2015 16:58:30 +0200 [dataimport] drop no more used parameter on massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 21 Oct 2015 16:58:30 +0200] rev 10865
[dataimport] drop no more used parameter on massive store
Wed, 21 Oct 2015 16:34:52 +0200 [dataimport] methods that modify in-place shouldn't return value
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 21 Oct 2015 16:34:52 +0200] rev 10864
[dataimport] methods that modify in-place shouldn't return value Also mark those methods private and drop some useless comments in passing. Related to #5414760
Wed, 21 Oct 2015 16:32:11 +0200 [dataimport] implement new store API on massive store
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 21 Oct 2015 16:32:11 +0200] rev 10863
[dataimport] implement new store API on massive store and deprecate the old one. Related to #5414760
Wed, 21 Oct 2015 16:31:05 +0200 [dataimport] .finish method was missing from (NoHook)RQLObjectStore
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 21 Oct 2015 16:31:05 +0200] rev 10862
[dataimport] .finish method was missing from (NoHook)RQLObjectStore
Wed, 21 Oct 2015 16:08:57 +0200 [massive store] identity_relation should not be considered, is_relation seems missing
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 21 Oct 2015 16:08:57 +0200] rev 10861
[massive store] identity_relation should not be considered, is_relation seems missing The "identity_relation" table should not even exist.
Tue, 03 Nov 2015 18:29:15 +0100 [dataimport/test] use the right assert methods instead of assertTrue with a comparison
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 18:29:15 +0100] rev 10860
[dataimport/test] use the right assert methods instead of assertTrue with a comparison
Wed, 21 Oct 2015 20:20:36 +0200 [dataimport] import range from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 20:20:36 +0200] rev 10859
[dataimport] import range from six.moves
Wed, 21 Oct 2015 20:19:51 +0200 [dataimport/test] feed binary data to ucsvreader
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 20:19:51 +0200] rev 10858
[dataimport/test] feed binary data to ucsvreader
Wed, 21 Oct 2015 20:19:11 +0200 [dataimport/test] fix broken comparison
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 20:19:11 +0200] rev 10857
[dataimport/test] fix broken comparison We want to compare two ints, not an int and a db row
Wed, 21 Oct 2015 20:17:44 +0200 [dataimport] dict.iteritems() → dict.items()
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 20:17:44 +0200] rev 10856
[dataimport] dict.iteritems() → dict.items()
Wed, 21 Oct 2015 20:16:41 +0200 [dataimport] use next builtin instead of next method on iterators
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 20:16:41 +0200] rev 10855
[dataimport] use next builtin instead of next method on iterators
Wed, 21 Oct 2015 20:15:06 +0200 [dataimport] import StringIO from io
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 20:15:06 +0200] rev 10854
[dataimport] import StringIO from io
Wed, 21 Oct 2015 16:10:47 +0200 [dataimport] backport massive store from dataio cube
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 21 Oct 2015 16:10:47 +0200] rev 10853
[dataimport] backport massive store from dataio cube Some tweaks have been made to work with 3.21 foreign key constraints. Also test are not executed in our own pg cluster instead of polluting the system one. Closes #5414760
Fri, 20 Nov 2015 18:17:08 +0100 [web] set proper Cache-Control header for static files
Julien Cristau <julien.cristau@logilab.fr> [Fri, 20 Nov 2015 18:17:08 +0100] rev 10852
[web] set proper Cache-Control header for static files - set Cache-Control max-age to match Expires - use the max_age method (defaults to 1 week) instead of hardcoded 6 months
Fri, 20 Nov 2015 18:23:17 +0100 [web] use a redirect for /data/foo requests that don't use the instance md5 hash
Julien Cristau <julien.cristau@logilab.fr> [Fri, 20 Nov 2015 18:23:17 +0100] rev 10851
[web] use a redirect for /data/foo requests that don't use the instance md5 hash The actual file contents can be cached for a long time. If the request doesn't use the hash, that's wrong. Using a redirect lets keep the caching for the actual file contents while not breaking requests missing the hash.
Fri, 20 Nov 2015 12:37:15 +0100 [web] fix typo in doc string
Julien Cristau <julien.cristau@logilab.fr> [Fri, 20 Nov 2015 12:37:15 +0100] rev 10850
[web] fix typo in doc string
Thu, 19 Nov 2015 18:55:10 +0100 [web] stop adding an Expires header with all responses
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 19 Nov 2015 18:55:10 +0100] rev 10849
[web] stop adding an Expires header with all responses As per RFC 1945 (HTTP 1.0): If the date given is equal to or earlier than the value of the Date header, the recipient must not cache the enclosed entity. As per RFC 7234 (HTTP 1.1 Caching): If a response includes a Cache-Control field with the max-age directive (Section 5.2.2.8), a recipient MUST ignore the Expires field. Bottom line, the Expires header is now handled wherever the Cache-Control is handled: inside cache managers.
Fri, 20 Nov 2015 17:13:03 +0100 [web] stop looking at a request's Cache-Control header
Julien Cristau <julien.cristau@logilab.fr> [Fri, 20 Nov 2015 17:13:03 +0100] rev 10848
[web] stop looking at a request's Cache-Control header As per RFC 7234 (HTTP 1.1 Caching): The "Cache-Control" header field is used to specify directives for caches along the request/response chain. CubicWeb is not a cache.
Thu, 19 Nov 2015 17:50:48 +0100 [fti] add cw_fti_index_rql_limit method
Julien Cristau <julien.cristau@logilab.fr> [Thu, 19 Nov 2015 17:50:48 +0100] rev 10847
[fti] add cw_fti_index_rql_limit method Improves on and deprecate cw_fti_index_rql_queries: execute the rql directly, so that we don't need to compute the set of eids up-front, but can just keep track of the last seen entity. Use the new method in reindex_entities. Keep calling cw_fti_index_rql_queries if it has been redefined (e.g in cubes). Related to #3621392.
Thu, 19 Nov 2015 16:48:55 +0100 [fti] backout 166c6f7b1be4
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 19 Nov 2015 16:48:55 +0100] rev 10846
[fti] backout 166c6f7b1be4 * breaks tests * see next commit for a better solution
Thu, 19 Nov 2015 17:16:19 +0100 [py3k] Fix unicode added in commit 2350424585f8
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 19 Nov 2015 17:16:19 +0100] rev 10845
[py3k] Fix unicode added in commit 2350424585f8
Thu, 19 Nov 2015 15:56:22 +0100 [server/ldap] deal with unicode or str coming out of ldap
Julien Cristau <julien.cristau@logilab.fr> [Thu, 19 Nov 2015 15:56:22 +0100] rev 10844
[server/ldap] deal with unicode or str coming out of ldap It seems we can get either, I've no idea in which exact circumstances, so this should let us work with both.
Thu, 19 Nov 2015 14:36:54 +0100 [test] pull yapps from Logilab's github
Julien Cristau <julien.cristau@logilab.fr> [Thu, 19 Nov 2015 14:36:54 +0100] rev 10843
[test] pull yapps from Logilab's github Fixes a couple of failures, pull request is almost a year old (https://github.com/smurfix/yapps/pull/2).
Thu, 12 Nov 2015 15:20:45 +0100 [pkg] bump yams requirement to 0.41.1
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Nov 2015 15:20:45 +0100] rev 10842
[pkg] bump yams requirement to 0.41.1 Needed by changeset c9321aedfbf9.
Thu, 12 Nov 2015 10:53:50 +0100 [entities] import range from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Nov 2015 10:53:50 +0100] rev 10841
[entities] import range from six.moves
Thu, 12 Nov 2015 10:52:28 +0100 merge head published by accident
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Nov 2015 10:52:28 +0100] rev 10840
merge head published by accident
Thu, 06 Mar 2014 15:55:33 +0100 [fti] Improve big table reindexation
Christophe de Vienne <christophe@unlish.com> [Thu, 06 Mar 2014 15:55:33 +0100] rev 10839
[fti] Improve big table reindexation * Slice the reindexing in batches of 1000 entities. * Make the output more verbose. Closes #3621392
Mon, 09 Nov 2015 11:11:31 +0100 [tox] Reference requirements.txt for hooks environment
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 09 Nov 2015 11:11:31 +0100] rev 10838
[tox] Reference requirements.txt for hooks environment The file existed but was not referenced.
Wed, 25 Mar 2015 14:20:56 +0100 [devtools/testlib] Remove assertions about direct usage of CubicWebTC/AutomaticWebTest
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 25 Mar 2015 14:20:56 +0100] rev 10837
[devtools/testlib] Remove assertions about direct usage of CubicWebTC/AutomaticWebTest The point is to be able to use a test runner other than pytest (e.g. nose2, nosetests or py.test) to run CubicWeb test suite. The issue is that most other test loaders inspects members of all base classes of test case classes to determine test methods and it hits this `config` property (actually executing it), which breaks the assertion. So just return None instead of failing. Closes #7817147.
Fri, 06 Nov 2015 17:02:09 +0100 Add ldap3 to server test requirements
Julien Cristau <julien.cristau@logilab.fr> [Fri, 06 Nov 2015 17:02:09 +0100] rev 10836
Add ldap3 to server test requirements
Fri, 06 Nov 2015 16:44:23 +0100 [pkg] bump version number so tox won't use cw from pypi
Julien Cristau <julien.cristau@logilab.fr> [Fri, 06 Nov 2015 16:44:23 +0100] rev 10835
[pkg] bump version number so tox won't use cw from pypi
Tue, 28 Jul 2015 10:54:24 +0200 [schema] add CubicWebRelationDefinitionSchema
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 10:54:24 +0200] rev 10834
[schema] add CubicWebRelationDefinitionSchema Stop monkeypatching yams, inherit from RelationDefinitionSchema instead.
Wed, 22 Apr 2015 11:39:13 +0200 [schema] Let RQLConstraint inherit from BaseRQLConstraint instead of RQLVocabularyConstraint
Denis Laxalde <denis.laxalde@logilab.fr>, Rémi Cardona <remi.cardona@logilab.fr> [Wed, 22 Apr 2015 11:39:13 +0200] rev 10833
[schema] Let RQLConstraint inherit from BaseRQLConstraint instead of RQLVocabularyConstraint There is apparently no reason for RQLConstraint to inherit from RQLVocabularyConstraint as it gets its `repo_check` method from `RepoEnforcedRQLConstraintMixIn` and RQLVocabularyConstraint (which inherits from BaseRQLConstraint) actually only overrides that method. So simplify inheritance by removing a useless level of indirection. Adjust cw_unrelated_rql accordingly, where it was that RQLConstraint inherited from RQLVocabularyConstraint.
Tue, 08 Sep 2015 06:48:48 +0200 [server] unormalize source logger's name to avoid encoding errors
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 08 Sep 2015 06:48:48 +0200] rev 10832
[server] unormalize source logger's name to avoid encoding errors
Tue, 22 Sep 2015 14:20:53 +0200 [entities] parameters should be given to fire_transition, else they are simply ignored
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 22 Sep 2015 14:20:53 +0200] rev 10831
[entities] parameters should be given to fire_transition, else they are simply ignored
Mon, 12 Oct 2015 09:53:51 +0200 [entity] set _cw_adapters_cache in __init__ rather than on first use
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 09:53:51 +0200] rev 10830
[entity] set _cw_adapters_cache in __init__ rather than on first use
Mon, 19 Oct 2015 23:23:46 +0000 fix typos and indentation in docstrings/docs
Jérôme Roy <jerome.roy@logilab.fr> [Mon, 19 Oct 2015 23:23:46 +0000] rev 10829
fix typos and indentation in docstrings/docs
Wed, 16 Sep 2015 11:31:36 +0200 session.id → session.sessionid
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Sep 2015 11:31:36 +0200] rev 10828
session.id → session.sessionid
Wed, 04 Nov 2015 12:04:33 +0100 [test] test page_size problem (related to #8123231)
Arthur Lutz <arthur.lutz@logilab.fr> [Wed, 04 Nov 2015 12:04:33 +0100] rev 10827
[test] test page_size problem (related to #8123231)
Wed, 04 Nov 2015 11:26:22 +0100 [predicates] guard against non-integer page_size form parameter
Julien Cristau <julien.cristau@logilab.fr> [Wed, 04 Nov 2015 11:26:22 +0100] rev 10826
[predicates] guard against non-integer page_size form parameter Closes #8123231
Tue, 03 Nov 2015 15:56:39 +0100 [server/test] add test for db-dump command
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 15:56:39 +0100] rev 10825
[server/test] add test for db-dump command
Tue, 03 Nov 2015 15:55:35 +0100 [server] fix db-dump with sqlite
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 15:55:35 +0100] rev 10824
[server] fix db-dump with sqlite 'gzip -c dbname > backupfile' needs to go through the shell.
Tue, 03 Nov 2015 15:54:46 +0100 [serverctl] fix db-dump
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 15:54:46 +0100] rev 10823
[serverctl] fix db-dump Since changeset af47954c1015 we would die with: AttributeError: 'ServerMigrationHelper' object has no attribute 'repo'
Tue, 03 Nov 2015 15:52:17 +0100 [server/test] sorting vs dict vs python3
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 15:52:17 +0100] rev 10822
[server/test] sorting vs dict vs python3
Mon, 19 Oct 2015 18:08:34 +0200 [devtools] more sorted() vs dict vs python3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 18:08:34 +0200] rev 10821
[devtools] more sorted() vs dict vs python3
Tue, 03 Nov 2015 12:25:14 +0100 [web/application] return bytes from redirect_handler and validation_error_handler
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 12:25:14 +0100] rev 10820
[web/application] return bytes from redirect_handler and validation_error_handler
Mon, 19 Oct 2015 17:54:26 +0200 [devtools] fix ResourceWarning: unclosed file tmpdb-__default_empty_db__.config
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 17:54:26 +0200] rev 10819
[devtools] fix ResourceWarning: unclosed file tmpdb-__default_empty_db__.config
Mon, 19 Oct 2015 17:53:51 +0200 [serverconfig] fix ResourceWarning: unclosed file bootstrap_cubes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 17:53:51 +0200] rev 10818
[serverconfig] fix ResourceWarning: unclosed file bootstrap_cubes
Mon, 19 Oct 2015 14:29:53 +0200 Use cubicweb._
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 14:29:53 +0200] rev 10817
Use cubicweb._
Mon, 19 Oct 2015 14:28:30 +0200 [syncschema] hashlib.md5() wants bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 14:28:30 +0200] rev 10816
[syncschema] hashlib.md5() wants bytes
Mon, 19 Oct 2015 14:27:04 +0200 [server/test] use next() builtin instead of next() method
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 14:27:04 +0200] rev 10815
[server/test] use next() builtin instead of next() method
Mon, 19 Oct 2015 14:26:32 +0200 [server/test] dict.iterkeys
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 14:26:32 +0200] rev 10814
[server/test] dict.iterkeys
Tue, 03 Nov 2015 18:10:58 +0100 [syncschema] don't arbitrarily remove constraints from the in-memory schema
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 18:10:58 +0100] rev 10813
[syncschema] don't arbitrarily remove constraints from the in-memory schema For some constraint types, it may make sense to have several constraints of that type simultaneously. In such a case, removing one of them from the in-memory schema is wrong. Closes #7446353
Tue, 03 Nov 2015 18:03:21 +0100 [server/test] don't leak timeout from one test class to the next
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 18:03:21 +0100] rev 10812
[server/test] don't leak timeout from one test class to the next Reset SQL_CONNECT_HOOKS after we're done with this test class so the next one doesn't inherit a timeout it doesn't want.
Fri, 16 Oct 2015 12:22:48 +0200 [server/test] CWAttribute.extra_props is Bytes
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 12:22:48 +0200] rev 10811
[server/test] CWAttribute.extra_props is Bytes
Fri, 16 Oct 2015 17:12:40 +0200 [dataimport] give unicode objects to psycopg2 copy_from
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 17:12:40 +0200] rev 10810
[dataimport] give unicode objects to psycopg2 copy_from
Fri, 16 Oct 2015 17:06:12 +0200 [dataimport] extid must be a bytes object
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 17:06:12 +0200] rev 10809
[dataimport] extid must be a bytes object
Fri, 16 Oct 2015 17:04:30 +0200 [dataimport] import StringIO from io
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 17:04:30 +0200] rev 10808
[dataimport] import StringIO from io
Fri, 16 Oct 2015 17:06:28 +0200 [dataimport] fix ucsvreader for python3
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 17:06:28 +0200] rev 10807
[dataimport] fix ucsvreader for python3 The csv module in python3 wants str, so use a StreamReader to feed csv.reader and don't decode the output
Wed, 14 Oct 2015 16:30:45 +0200 [server/test] import StringIO from io on python3
Julien Cristau <julien.cristau@logilab.fr> [Wed, 14 Oct 2015 16:30:45 +0200] rev 10806
[server/test] import StringIO from io on python3 Don't change the import for python2, as we print a mix of unicode and str.
Wed, 14 Oct 2015 16:18:25 +0200 [server/datafeed] drop URLLibResponseAdapter.info
Julien Cristau <julien.cristau@logilab.fr> [Wed, 14 Oct 2015 16:18:25 +0200] rev 10805
[server/datafeed] drop URLLibResponseAdapter.info I don't know where it's used
Mon, 19 Oct 2015 14:29:06 +0200 [devtools] pass a key to sort() method
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 14:29:06 +0200] rev 10804
[devtools] pass a key to sort() method python3 dicts are not comparable
Wed, 21 Oct 2015 17:21:18 +0200 [postcreate] properly set is_instance_of for bootstrap entities
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 17:21:18 +0200] rev 10803
[postcreate] properly set is_instance_of for bootstrap entities Entities created before CWEType itself need the is/is_instance_of relations created later. We were actually only inserting "is". Closes #7656606.
Wed, 28 Oct 2015 17:39:30 +0000 [migration] re-try without print_function when compiling a script fails
Julien Cristau <julien.cristau@logilab.fr> [Wed, 28 Oct 2015 17:39:30 +0000] rev 10802
[migration] re-try without print_function when compiling a script fails As part of the python3 porting we added the __future__.print_function import to cubicweb.migration. That started affecting all migration scripts it runs, which may not be prepared. So if compiling a script results in SyntaxError, try again without the print_function flag. Closes #7935030
Wed, 23 Sep 2015 15:32:17 +0200 [test] do not overwrite user's CW_CUBES_PATH in unittest_migration
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 23 Sep 2015 15:32:17 +0200] rev 10801
[test] do not overwrite user's CW_CUBES_PATH in unittest_migration Currently when you rely on your CW_CUBES_PATH environment variable to locate cubes necessary for cubicweb's tests, the migration test crashes because it overrides the env var.
Tue, 03 Nov 2015 16:00:34 +0100 [server/test] dict.itervalues() → iter(dict.values())
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 16:00:34 +0100] rev 10800
[server/test] dict.itervalues() → iter(dict.values())
Wed, 16 Sep 2015 16:04:17 +0200 make sync_schema_props_perms(<computed rtype>) work as expected
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 16 Sep 2015 16:04:17 +0200] rev 10799
make sync_schema_props_perms(<computed rtype>) work as expected It currently ends up with an ExecutionError while we want to synchronize permissions. This makes 3.21.1 migration of any application using computed relation crashing. Also, remove pre 3.6 compat code in hooks that prevent living schema update on computed relation's permission changes.
Thu, 08 Oct 2015 13:51:54 +0200 [web/http_headers] use classmethod decorator
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Oct 2015 13:51:54 +0200] rev 10798
[web/http_headers] use classmethod decorator
Thu, 08 Oct 2015 13:45:00 +0200 [schema] use classmethod decorator
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Oct 2015 13:45:00 +0200] rev 10797
[schema] use classmethod decorator
Fri, 16 Oct 2015 16:44:36 +0200 [devtools] delete postgresql socket directory after killing the server
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 16:44:36 +0200] rev 10796
[devtools] delete postgresql socket directory after killing the server ... or when failing to start it.
Mon, 27 Jul 2015 10:13:25 +0200 [skel] stop deleting cubes egg-info
Julien Cristau <julien.cristau@logilab.fr> [Mon, 27 Jul 2015 10:13:25 +0200] rev 10795
[skel] stop deleting cubes egg-info It doesn't hurt and provides some metadata.
Tue, 06 Oct 2015 15:06:45 +0200 [dataimport] Update doc to reflect new API
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 06 Oct 2015 15:06:45 +0200] rev 10794
[dataimport] Update doc to reflect new API relate() looks deprecated.
Mon, 26 Oct 2015 15:22:09 +0100 [server] fix generate_source_config regression on python2
Julien Cristau <julien.cristau@logilab.fr> [Mon, 26 Oct 2015 15:22:09 +0100] rev 10793
[server] fix generate_source_config regression on python2 lgc outputs "str" objects on python2 and python3, so we can't just use io.StringIO (which expects unicode objects). Fixes: c36cda9074c5
Thu, 30 Jul 2015 11:11:12 +0200 [tests] Fix config.repository() in tests
Christophe de Vienne <christophe@unlish.com> [Thu, 30 Jul 2015 11:11:12 +0200] rev 10792
[tests] Fix config.repository() in tests The config.repository was overriden too late. Closes #5778294
Wed, 14 Oct 2015 15:49:03 +0200 [schema] RQL queries are always unicode objects in python 3
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 14 Oct 2015 15:49:03 +0200] rev 10791
[schema] RQL queries are always unicode objects in python 3 fixes commit 42c5bd7286b7.
Tue, 13 Oct 2015 16:12:37 +0200 [server/test] use relative import
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Oct 2015 16:12:37 +0200] rev 10790
[server/test] use relative import Fixes py3k breakage
Tue, 13 Oct 2015 11:34:37 +0200 [server/schemaserial] fix extra_props on py3k
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Oct 2015 11:34:37 +0200] rev 10789
[server/schemaserial] fix extra_props on py3k json.dumps returns unicode, and json.load eats unicode, so add explicit encoding/decoding.
Tue, 13 Oct 2015 11:30:48 +0200 [server/test] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Oct 2015 11:30:48 +0200] rev 10788
[server/test] unicode → six.text_type
Mon, 12 Oct 2015 21:49:18 +0200 [web] fix Field.__str__ on py3k
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 21:49:18 +0200] rev 10787
[web] fix Field.__str__ on py3k
Mon, 12 Oct 2015 21:48:50 +0200 [web] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 21:48:50 +0200] rev 10786
[web] unicode → six.text_type
Mon, 12 Oct 2015 20:43:50 +0200 [web/test] CubicWebTC.view returns bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 20:43:50 +0200] rev 10785
[web/test] CubicWebTC.view returns bytes
Mon, 12 Oct 2015 18:43:41 +0200 [uilib] fix traceback on python3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 18:43:41 +0200] rev 10784
[uilib] fix traceback on python3
Mon, 12 Oct 2015 18:43:05 +0200 [web] integer division
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 18:43:05 +0200] rev 10783
[web] integer division
Mon, 12 Oct 2015 18:42:38 +0200 [web/test] Binary eats bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 18:42:38 +0200] rev 10782
[web/test] Binary eats bytes
Tue, 06 Oct 2015 11:19:37 +0200 [devtools] make httptest module importable under py3k
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:19:37 +0200] rev 10781
[devtools] make httptest module importable under py3k
Tue, 06 Oct 2015 11:16:27 +0200 [web/test] CubicWebPublisher.handle_request returns bytes
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:16:27 +0200] rev 10780
[web/test] CubicWebPublisher.handle_request returns bytes
Tue, 06 Oct 2015 11:15:56 +0200 [web] base64 works on bytes not str (py3k)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:15:56 +0200] rev 10779
[web] base64 works on bytes not str (py3k)
Tue, 06 Oct 2015 11:14:15 +0200 [web] accept unicode in parsed Authorization header
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:14:15 +0200] rev 10778
[web] accept unicode in parsed Authorization header
Tue, 06 Oct 2015 11:07:22 +0200 [web] CubicWebPublisher.ajax_error_handler must return bytes
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:07:22 +0200] rev 10777
[web] CubicWebPublisher.ajax_error_handler must return bytes
Mon, 05 Oct 2015 17:57:03 +0200 [py3k] fix i18n
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 17:57:03 +0200] rev 10776
[py3k] fix i18n
Tue, 06 Oct 2015 11:44:51 +0200 Fix md5crypt and crypt_password test for python3
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:44:51 +0200] rev 10775
Fix md5crypt and crypt_password test for python3 Make sure to always work with bytes for hashing.
Mon, 05 Oct 2015 17:08:38 +0200 [server/test] use bytes for extid
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 17:08:38 +0200] rev 10774
[server/test] use bytes for extid
Mon, 05 Oct 2015 16:59:18 +0200 [devtools/test] firstnames.txt is in latin1
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:59:18 +0200] rev 10773
[devtools/test] firstnames.txt is in latin1
Mon, 05 Oct 2015 16:54:12 +0200 [web/test] unicode → cubicweb._
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:54:12 +0200] rev 10772
[web/test] unicode → cubicweb._
Mon, 05 Oct 2015 16:52:26 +0200 [web/formwidgets] fix for py3k
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:52:26 +0200] rev 10771
[web/formwidgets] fix for py3k no idea why we encode that key...
Mon, 05 Oct 2015 16:47:55 +0200 [sobjects] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:47:55 +0200] rev 10770
[sobjects] unicode → six.text_type
Mon, 05 Oct 2015 16:28:07 +0200 [server] fix unittest_security for py3k
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:28:07 +0200] rev 10769
[server] fix unittest_security for py3k - use source.binary_to_str instead of str(), helps when the backend returns memoryviews - fixup str vs bytes
Mon, 05 Oct 2015 15:49:17 +0200 [py3k] make ldapfeed tests pass
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 15:49:17 +0200] rev 10768
[py3k] make ldapfeed tests pass
Mon, 05 Oct 2015 15:48:19 +0200 [server] import filter from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 15:48:19 +0200] rev 10767
[server] import filter from six.moves
Mon, 05 Oct 2015 14:51:24 +0200 [ldapfeed] port to ldap3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 14:51:24 +0200] rev 10766
[ldapfeed] port to ldap3 python-ldap has no python3 support. XXX I only checked that unittest_ldapfeed passes.
Fri, 02 Oct 2015 14:13:26 +0200 [server/test] str vs bytes
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 14:13:26 +0200] rev 10765
[server/test] str vs bytes
Fri, 02 Oct 2015 10:08:00 +0200 [server/test] list() around map and zip
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:08:00 +0200] rev 10764
[server/test] list() around map and zip
Fri, 02 Oct 2015 10:07:32 +0200 [server/test] to fold, unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:07:32 +0200] rev 10763
[server/test] to fold, unicode → six.text_type
Fri, 02 Oct 2015 10:06:42 +0200 [server/test] delete test that doesn't make sense on python3
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:06:42 +0200] rev 10762
[server/test] delete test that doesn't make sense on python3 XXX if PY2?
Fri, 02 Oct 2015 10:06:05 +0200 [server/test] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:06:05 +0200] rev 10761
[server/test] unicode → six.text_type
Fri, 02 Oct 2015 10:04:35 +0200 [server] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:04:35 +0200] rev 10760
[server] unicode → six.text_type
Fri, 02 Oct 2015 10:04:12 +0200 [py3k] fix building rset description for INSERT queries
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:04:12 +0200] rev 10759
[py3k] fix building rset description for INSERT queries
Thu, 01 Oct 2015 12:34:49 +0200 [datafeed] use explicit encode/decode instead of casting to str
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:34:49 +0200] rev 10758
[datafeed] use explicit encode/decode instead of casting to str
Thu, 01 Oct 2015 12:33:58 +0200 [py3k] io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 01 Oct 2015 12:33:58 +0200] rev 10757
[py3k] io.BytesIO
Thu, 01 Oct 2015 12:32:27 +0200 [py3k] get urllib foo from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:32:27 +0200] rev 10756
[py3k] get urllib foo from six.moves
Thu, 01 Oct 2015 12:15:14 +0200 [devtools] CubicWebTC._check_html may have to deal with unicode or bytes
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:15:14 +0200] rev 10755
[devtools] CubicWebTC._check_html may have to deal with unicode or bytes If called with template=None, CubicWebTC.view will not go through main-template, and return the unicode data from the view directly instead of encoded data.
Thu, 01 Oct 2015 12:02:02 +0200 [ext/test] fix test relying on repr(text)
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:02:02 +0200] rev 10754
[ext/test] fix test relying on repr(text)
Thu, 01 Oct 2015 12:01:28 +0200 [req] fix url_parse_qsl on py3
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:01:28 +0200] rev 10753
[req] fix url_parse_qsl on py3 should be folded with previous conversion
Thu, 01 Oct 2015 11:57:40 +0200 [server/session] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:57:40 +0200] rev 10752
[server/session] unicode → six.text_type
Thu, 01 Oct 2015 11:57:22 +0200 [web/test] str vs bytes
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:57:22 +0200] rev 10751
[web/test] str vs bytes
Thu, 01 Oct 2015 11:50:42 +0200 [web/ajax] fix AjaxController on python3
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:50:42 +0200] rev 10750
[web/ajax] fix AjaxController on python3
Thu, 01 Oct 2015 11:50:09 +0200 [web/test] str → bytes
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:50:09 +0200] rev 10749
[web/test] str → bytes
Thu, 01 Oct 2015 11:43:33 +0200 [wsgi/test] use bytes instead of str for POST body
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:43:33 +0200] rev 10748
[wsgi/test] use bytes instead of str for POST body
Thu, 01 Oct 2015 11:43:01 +0200 [devtools] 'dict_values' object does not support indexing
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:43:01 +0200] rev 10747
[devtools] 'dict_values' object does not support indexing
Thu, 01 Oct 2015 11:42:29 +0200 [multipart] decode form data before calling parse_qs in python 3
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:42:29 +0200] rev 10746
[multipart] decode form data before calling parse_qs in python 3 parse_qs eats and returns 'str' on both python versions.
Thu, 01 Oct 2015 11:41:20 +0200 [multipart] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:41:20 +0200] rev 10745
[multipart] unicode → six.text_type
Thu, 01 Oct 2015 10:06:58 +0200 [web] assert that CubicWebPublisher.handle_request returns bytes
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 10:06:58 +0200] rev 10744
[web] assert that CubicWebPublisher.handle_request returns bytes
Wed, 30 Sep 2015 18:28:57 +0200 [py3k] fix validateform controller
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:28:57 +0200] rev 10743
[py3k] fix validateform controller We need to return bytes not str.
Wed, 30 Sep 2015 18:28:31 +0200 [web] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:28:31 +0200] rev 10742
[web] unicode → six.text_type
Wed, 30 Sep 2015 18:05:00 +0200 [multipart] make sure form keys are not bytes
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:05:00 +0200] rev 10741
[multipart] make sure form keys are not bytes
Wed, 30 Sep 2015 18:04:27 +0200 [web] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:04:27 +0200] rev 10740
[web] unicode → six.text_type
Wed, 30 Sep 2015 18:03:53 +0200 [wsgi] don't convert form values
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:03:53 +0200] rev 10739
[wsgi] don't convert form values This is done earlier in multipart.py
Wed, 30 Sep 2015 16:52:29 +0200 [server] import input from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 16:52:29 +0200] rev 10738
[server] import input from six.moves
Wed, 30 Sep 2015 16:50:06 +0200 [server] don't convert user.login to bytes to generate sessionid
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 16:50:06 +0200] rev 10737
[server] don't convert user.login to bytes to generate sessionid
Wed, 30 Sep 2015 16:14:29 +0200 [cwctl] stop playing tricks with std{out,err} buffering
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 16:14:29 +0200] rev 10736
[cwctl] stop playing tricks with std{out,err} buffering Python3 doesn't allow unbuffered text I/O, because it doesn't make sense.
Tue, 22 Sep 2015 15:42:40 +0200 [py3k] CubicWebTC.app_handle_request returns bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:42:40 +0200] rev 10735
[py3k] CubicWebTC.app_handle_request returns bytes
Tue, 22 Sep 2015 15:37:31 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:37:31 +0200] rev 10734
[py3k] unicode → six.text_type
Mon, 12 Oct 2015 21:06:45 +0200 [py3k] http headers should be ascii-only unicode objects
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 12 Oct 2015 21:06:45 +0200] rev 10733
[py3k] http headers should be ascii-only unicode objects
Tue, 13 Oct 2015 18:20:42 +0200 [py3k] Clarify IDownloadable expected types
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 18:20:42 +0200] rev 10732
[py3k] Clarify IDownloadable expected types
Tue, 22 Sep 2015 15:31:44 +0200 [py3k] IDownloadable.download_data() returns bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:31:44 +0200] rev 10731
[py3k] IDownloadable.download_data() returns bytes
Tue, 22 Sep 2015 15:24:58 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:24:58 +0200] rev 10730
[py3k] unicode → six.text_type
Tue, 22 Sep 2015 15:01:16 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:01:16 +0200] rev 10729
[py3k] unicode → six.text_type
Tue, 22 Sep 2015 15:00:41 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:00:41 +0200] rev 10728
[py3k] unicode → six.text_type
Tue, 22 Sep 2015 14:42:33 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 14:42:33 +0200] rev 10727
[py3k] unicode → six.text_type
Tue, 22 Sep 2015 10:24:47 +0200 [py3k] PageInfo.source contains bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 10:24:47 +0200] rev 10726
[py3k] PageInfo.source contains bytes
Mon, 21 Sep 2015 18:58:12 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:58:12 +0200] rev 10725
[py3k] unicode → six.text_type
Mon, 21 Sep 2015 18:35:38 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:35:38 +0200] rev 10724
[py3k] unicode → six.text_type
Mon, 21 Sep 2015 18:28:10 +0200 [py3k] Don't encode URLs
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:28:10 +0200] rev 10723
[py3k] Don't encode URLs Python 3's urllib works with unicode objects.
Mon, 21 Sep 2015 18:04:22 +0200 [tests] Stop counting pickle bytes in ResultSet tests
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:04:22 +0200] rev 10722
[tests] Stop counting pickle bytes in ResultSet tests Between python 2's pickle and cPickle implementations, the various protocol versions added in python 3, the length of the pickled string is completely unpredictable. Instead, do a simple round trip and test a few attributes.
Mon, 21 Sep 2015 17:54:15 +0200 [tests] Port unittest_cwctl to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 17:54:15 +0200] rev 10721
[tests] Port unittest_cwctl to py3k On python 2, sys.stdout takes bytes-like objects whereas python 3's takes unicode-like objects and handles the encoding on its own.
Mon, 21 Sep 2015 17:51:58 +0200 [migration] NoneType is no longer comparable in py3k
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 17:51:58 +0200] rev 10720
[migration] NoneType is no longer comparable in py3k
Tue, 13 Oct 2015 12:33:26 +0200 Rename gettext to cwgettext, use stdlib gettext
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 12:33:26 +0200] rev 10719
Rename gettext to cwgettext, use stdlib gettext cubicweb/gettext.py was a copy of Python 2.6's gettext.py with the context patch from bug https://bugs.python.org/issue2504 Instead of keeping that full copy, just inherit from gettext.GNUTranslations and add the context-related stuff.
Tue, 13 Oct 2015 17:16:26 +0200 [py3k] MethodType no longer takes a class argument
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 17:16:26 +0200] rev 10718
[py3k] MethodType no longer takes a class argument
Fri, 18 Sep 2015 18:03:19 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:03:19 +0200] rev 10717
[py3k] unicode → six.text_type
Fri, 18 Sep 2015 18:02:20 +0200 [py3k] im_self → __self__
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:02:20 +0200] rev 10716
[py3k] im_self → __self__
Fri, 18 Sep 2015 18:01:31 +0200 [py3k] Don't sort Action objects
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:01:31 +0200] rev 10715
[py3k] Don't sort Action objects In python 3, arbitrary objects are no longer sortable.
Tue, 22 Sep 2015 15:25:25 +0200 [py3k] use inspect module to get a function's arguments
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:25:25 +0200] rev 10714
[py3k] use inspect module to get a function's arguments
Fri, 18 Sep 2015 17:58:30 +0200 [py3k] __unicode__ and __str__
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 17:58:30 +0200] rev 10713
[py3k] __unicode__ and __str__
Mon, 21 Sep 2015 19:00:26 +0200 [test] call rql.parse with unicode objects
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 19:00:26 +0200] rev 10712
[test] call rql.parse with unicode objects Allows to get same results from rqlst.as_string() in python 2 and 3
Fri, 18 Sep 2015 14:23:22 +0200 [py3k] replace cmp with key in sorted()
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 14:23:22 +0200] rev 10711
[py3k] replace cmp with key in sorted() And stop sorting dicts in snippet_key()
Fri, 18 Sep 2015 12:35:10 +0200 [tests] remove useless sort
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 12:35:10 +0200] rev 10710
[tests] remove useless sort Useless in python 2, actively harmful in python 3 where arbitrary objects are no longer sortable.
Fri, 18 Sep 2015 12:34:51 +0200 [py3k] dict methods no longer return indexable objects
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 12:34:51 +0200] rev 10709
[py3k] dict methods no longer return indexable objects
Fri, 18 Sep 2015 12:03:12 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 12:03:12 +0200] rev 10708
[py3k] unicode → six.text_type
Fri, 18 Sep 2015 11:58:29 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 11:58:29 +0200] rev 10707
[py3k] unicode → six.text_type
Fri, 18 Sep 2015 11:54:12 +0200 [server] Port BFSS to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 11:54:12 +0200] rev 10706
[server] Port BFSS to py3k The BFSS API changes in python 3: * 'defaultdir' MUST be a unicode object * 'fsencoding' MUST NOT be set In python 2, fsencoding handles both the encoding of file paths on the file system (utf-8 by default, but the system may actually be using something else) and the encoding of file paths that will be stored in the database. So in python 3, we wipe the slate clean: * rely on sys.getfilesystemencoding() to convert unicode objects to bytes * always encode paths to utf-8 for storage in the database Caveat emptor / here be dragons: * sys.getfilesystemencoding() depends on the current locale, which therefore MUST be set properly * when migrating an existing instance from py2 to py3, one MAY need to reencode file paths stored in the database
Thu, 17 Sep 2015 15:35:26 +0200 [py3k] Binary.getvalue() returns bytes
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 15:35:26 +0200] rev 10705
[py3k] Binary.getvalue() returns bytes
Tue, 22 Sep 2015 14:47:04 +0200 [py3k] ensure Binary objects are initialized with bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 14:47:04 +0200] rev 10704
[py3k] ensure Binary objects are initialized with bytes
Thu, 17 Sep 2015 12:02:40 +0200 [py3k] __unicode__ and __str__
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 12:02:40 +0200] rev 10703
[py3k] __unicode__ and __str__
Thu, 17 Sep 2015 11:07:36 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 11:07:36 +0200] rev 10702
[py3k] unicode → six.text_type
Fri, 18 Sep 2015 14:50:44 +0200 [mail] port to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 14:50:44 +0200] rev 10701
[mail] port to py3k
Wed, 16 Sep 2015 18:43:19 +0200 [web/views] port JSON views to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:43:19 +0200] rev 10700
[web/views] port JSON views to py3k
Wed, 16 Sep 2015 18:43:02 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:43:02 +0200] rev 10699
[py3k] unicode → six.text_type
Wed, 16 Sep 2015 18:41:12 +0200 [web/controller] req.form is supposed to contain unicode-data
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:41:12 +0200] rev 10698
[web/controller] req.form is supposed to contain unicode-data
Wed, 16 Sep 2015 18:40:03 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:40:03 +0200] rev 10697
[py3k] unicode → six.text_type
Wed, 16 Sep 2015 17:22:41 +0200 [py3k] unicode vs str vs bytes vs the world
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 17:22:41 +0200] rev 10696
[py3k] unicode vs str vs bytes vs the world
Wed, 16 Sep 2015 17:07:26 +0200 [web/views] Port csvexport views to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 17:07:26 +0200] rev 10695
[web/views] Port csvexport views to py3k There are a few hoops to jump through since python 3's csv module _is_ unicode aware.
Tue, 22 Sep 2015 14:18:14 +0200 [py3k] unicode vs str vs bytes vs the world
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 14:18:14 +0200] rev 10694
[py3k] unicode vs str vs bytes vs the world
Wed, 16 Sep 2015 16:07:29 +0200 [web/request] don't convert request parameters if py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 16:07:29 +0200] rev 10693
[web/request] don't convert request parameters if py3k
Wed, 16 Sep 2015 16:02:04 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 16:02:04 +0200] rev 10692
[py3k] unicode → six.text_type
Wed, 16 Sep 2015 15:26:56 +0200 [py3k] __getslice__ → __getitem__ with slice support
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 15:26:56 +0200] rev 10691
[py3k] __getslice__ → __getitem__ with slice support
Wed, 16 Sep 2015 15:50:42 +0200 [py3k] __nonzero__ → __bool__
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 15:50:42 +0200] rev 10690
[py3k] __nonzero__ → __bool__
Wed, 16 Sep 2015 15:17:42 +0200 [py3k] unicode vs str vs bytes vs the world
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 15:17:42 +0200] rev 10689
[py3k] unicode vs str vs bytes vs the world
Wed, 16 Sep 2015 13:57:21 +0200 [py3k] use six.add_metaclass
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 13:57:21 +0200] rev 10688
[py3k] use six.add_metaclass
Wed, 16 Sep 2015 11:28:07 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 11:28:07 +0200] rev 10687
[py3k] unicode → six.text_type
Mon, 05 Oct 2015 17:10:36 +0200 [py3k] add list() around dict methods
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 05 Oct 2015 17:10:36 +0200] rev 10686
[py3k] add list() around dict methods
Tue, 15 Sep 2015 18:43:19 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:43:19 +0200] rev 10685
[py3k] unicode → six.text_type
Tue, 15 Sep 2015 18:39:09 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:39:09 +0200] rev 10684
[py3k] unicode → six.text_type
Tue, 15 Sep 2015 18:30:05 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:30:05 +0200] rev 10683
[py3k] unicode → six.text_type
Tue, 15 Sep 2015 18:23:35 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:23:35 +0200] rev 10682
[py3k] unicode → six.text_type
Tue, 15 Sep 2015 18:22:41 +0200 [server/utils] crypt_password should always return bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:22:41 +0200] rev 10681
[server/utils] crypt_password should always return bytes
Tue, 15 Sep 2015 18:21:33 +0200 [py3k] str → six.binary_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:21:33 +0200] rev 10680
[py3k] str → six.binary_type
Tue, 15 Sep 2015 17:32:30 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:32:30 +0200] rev 10679
[py3k] unicode → six.text_type
Tue, 15 Sep 2015 17:31:07 +0200 [server/utils] convert to py3k using six
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:31:07 +0200] rev 10678
[server/utils] convert to py3k using six
Tue, 15 Sep 2015 17:28:05 +0200 [py3k] six.PY2
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:28:05 +0200] rev 10677
[py3k] six.PY2
Tue, 15 Sep 2015 17:25:50 +0200 [py3k] use text/binary types from six
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:25:50 +0200] rev 10676
[py3k] use text/binary types from six
Tue, 15 Sep 2015 17:04:04 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:04:04 +0200] rev 10675
[py3k] unicode → six.text_type
Tue, 15 Sep 2015 15:28:20 +0200 [py3k] bytes vs str
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:28:20 +0200] rev 10674
[py3k] bytes vs str
Tue, 15 Sep 2015 15:08:04 +0200 [py3k] io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:08:04 +0200] rev 10673
[py3k] io.BytesIO
Wed, 16 Sep 2015 17:28:06 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 17:28:06 +0200] rev 10672
[py3k] unicode → six.text_type
Tue, 13 Oct 2015 16:57:09 +0200 [py3k] bytes required for hashlib.{md5,sha1}()
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 16:57:09 +0200] rev 10671
[py3k] bytes required for hashlib.{md5,sha1}()
Thu, 01 Oct 2015 11:40:23 +0200 [wsgi/test] add __main__ section
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:40:23 +0200] rev 10670
[wsgi/test] add __main__ section
Fri, 18 Sep 2015 14:29:53 +0200 [py3k] use next builtin instead of next method
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 14:29:53 +0200] rev 10669
[py3k] use next builtin instead of next method
Tue, 15 Sep 2015 17:10:58 +0200 [web/views] use next builtin instead of next method
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:10:58 +0200] rev 10668
[web/views] use next builtin instead of next method
Tue, 15 Sep 2015 16:09:55 +0200 [py3k] declare meta classes using six.add_metaclass
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:09:55 +0200] rev 10667
[py3k] declare meta classes using six.add_metaclass
Fri, 11 Sep 2015 18:05:38 +0200 [py3k] replace '_ = unicode' in global scope (closes #7589459)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Sep 2015 18:05:38 +0200] rev 10666
[py3k] replace '_ = unicode' in global scope (closes #7589459)
Fri, 11 Sep 2015 18:01:36 +0200 [py3k] introduce cubicweb._ (related to #7589459)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Sep 2015 18:01:36 +0200] rev 10665
[py3k] introduce cubicweb._ (related to #7589459) The end goal is to stop relying on '_' being in the builtin scope. In the mean time, deprecate the builtin '_' so that consumers are warned.
Fri, 18 Sep 2015 18:04:05 +0200 [py3k] dict.iterkeys → dict
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:04:05 +0200] rev 10664
[py3k] dict.iterkeys → dict
Tue, 13 Oct 2015 15:09:22 +0200 [py3k] dict.itervalues → dict.values
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 15:09:22 +0200] rev 10663
[py3k] dict.itervalues → dict.values
Tue, 15 Sep 2015 16:15:03 +0200 [py3k] dict.iteritems → dict.items
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:15:03 +0200] rev 10662
[py3k] dict.iteritems → dict.items
Tue, 08 Sep 2015 18:04:57 +0200 implement __ne__ whenever we implement __eq__
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 18:04:57 +0200] rev 10661
implement __ne__ whenever we implement __eq__
Tue, 08 Sep 2015 17:15:03 +0200 [test] use unicode for rql queries (7/7)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 17:15:03 +0200] rev 10660
[test] use unicode for rql queries (7/7) Closes #6694446
Tue, 08 Sep 2015 16:28:55 +0200 [test] use unicode for rql queries (6/7)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:28:55 +0200] rev 10659
[test] use unicode for rql queries (6/7) Related to #6694446
Tue, 08 Sep 2015 16:25:26 +0200 [test] use unicode for rql queries (5/7)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:25:26 +0200] rev 10658
[test] use unicode for rql queries (5/7) Related to #6694446
Tue, 08 Sep 2015 16:25:16 +0200 [test] use unicode for rql queries (4/7)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:25:16 +0200] rev 10657
[test] use unicode for rql queries (4/7) Related to #6694446
Tue, 08 Sep 2015 16:24:57 +0200 [test] use unicode for rql queries (3/7)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:24:57 +0200] rev 10656
[test] use unicode for rql queries (3/7) Related to #6694446
Tue, 08 Sep 2015 16:24:42 +0200 [test] use unicode for rql queries (2/7)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:24:42 +0200] rev 10655
[test] use unicode for rql queries (2/7) Related to #6694446
Wed, 09 Sep 2015 09:37:14 +0200 [test] use unicode for rql queries (1/7)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Sep 2015 09:37:14 +0200] rev 10654
[test] use unicode for rql queries (1/7) Related to #6694446
Tue, 08 Sep 2015 16:26:56 +0200 [schema] improve normalization of RQLExpressions
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:26:56 +0200] rev 10653
[schema] improve normalization of RQLExpressions Parse and print back the expression instead of manipulating the string. Among other benefits, it means we don't mangle embedded string constants that contain commas or multiple spaces. Closes #6694426
Tue, 08 Sep 2015 13:43:57 +0200 [server/rql2sql] use VariableRef.is_equivalent explicitly instead of relying on __eq__
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 13:43:57 +0200] rev 10652
[server/rql2sql] use VariableRef.is_equivalent explicitly instead of relying on __eq__ What we want to compare is the variable referenced by the VariableRef, we should make that explicit. Closes #6694406
Mon, 12 Oct 2015 10:53:35 +0200 merge with 3.21.2
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 12 Oct 2015 10:53:35 +0200] rev 10651
merge with 3.21.2
Fri, 02 Oct 2015 17:28:33 +0200 [statsd] fix the statsd logger (closes #7558147)
David Douard <david.douard@logilab.fr> [Fri, 02 Oct 2015 17:28:33 +0200] rev 10650
[statsd] fix the statsd logger (closes #7558147) socket.inet_pton's second argument is the ip, not a couple (ip, port)
Mon, 12 Oct 2015 09:19:07 +0200 Added tag 3.21.2, debian/3.21.2-1, centos/3.21.2-1 for changeset a5428e1ab364
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 12 Oct 2015 09:19:07 +0200] rev 10649
Added tag 3.21.2, debian/3.21.2-1, centos/3.21.2-1 for changeset a5428e1ab364
Fri, 09 Oct 2015 18:01:46 +0200 [pkg] 3.21.2 3.21.2 centos/3.21.2-1 debian/3.21.2-1
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 18:01:46 +0200] rev 10648
[pkg] 3.21.2
Fri, 09 Oct 2015 18:03:40 +0200 [pkg] Remove leftover dep on pyro (closes #7479155)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 18:03:40 +0200] rev 10647
[pkg] Remove leftover dep on pyro (closes #7479155)
Fri, 09 Oct 2015 17:52:14 +0200 merge with 3.20.10
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 17:52:14 +0200] rev 10646
merge with 3.20.10
Tue, 29 Sep 2015 12:09:04 +0200 [migration] fix change_attribute_type to update the live schema
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 29 Sep 2015 12:09:04 +0200] rev 10645
[migration] fix change_attribute_type to update the live schema Closes #7170830
Fri, 24 Jul 2015 09:57:08 +0200 [devtools] add has_cache for postgres (closes #5739624)
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 09:57:08 +0200] rev 10644
[devtools] add has_cache for postgres (closes #5739624) devtools stores info about existing dbs in the db handler, but in the case of postgresql that doesn't take into account the path to the cluster's datadir. Which means if we run two test modules (in the same test run), we'll create a "__default_empty_db__" for the first one, cache its existence, and then when moving on to the other module, believe the template already exists (but since the datadir depends on the test module's path, it does not). This patch is a bit of a kludge, and it would be better to make the cache key include enough data to not need this, but I'm not sure how to do that.
Tue, 22 Sep 2015 14:20:02 +0200 fix bad-caching of datetime with tz info at sql generation time
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 22 Sep 2015 14:20:02 +0200] rev 10643
fix bad-caching of datetime with tz info at sql generation time There is a special handling for datetime with tzinfo, where value was stored in the query cache. The implementation of merge_args was simply overwriting parameters of the query with those in the query cache, expecting no collision. To fix this: * handle replacement of tzinfo in merge_args, not at sql generation time * add an assertion to ensure we've actually no collision Closes #6978316
Fri, 09 Oct 2015 09:40:08 +0200 Added tag 3.20.10, debian/3.20.10-1, centos/3.20.10-1 for changeset 8f82e9523962
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 09:40:08 +0200] rev 10642
Added tag 3.20.10, debian/3.20.10-1, centos/3.20.10-1 for changeset 8f82e9523962
Thu, 08 Oct 2015 18:47:57 +0200 [pkg] 3.20.10 3.20.10 centos/3.20.10-1 debian/3.20.10-1
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:47:57 +0200] rev 10641
[pkg] 3.20.10
Thu, 08 Oct 2015 18:38:16 +0200 merge with 3.19.13
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:38:16 +0200] rev 10640
merge with 3.19.13
Thu, 08 Oct 2015 18:24:09 +0200 [devtools] Fix CubicWebTC.temporary_permissions
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:24:09 +0200] rev 10639
[devtools] Fix CubicWebTC.temporary_permissions If the context manager is exited via an exception, the original permissions should be restored.
Thu, 08 Oct 2015 18:09:10 +0200 [devtools] Use TestCase.assertGreater
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:09:10 +0200] rev 10638
[devtools] Use TestCase.assertGreater
Wed, 09 Sep 2015 08:32:49 +0200 [autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Sep 2015 08:32:49 +0200] rev 10637
[autoform] fix appearance of link to add inlined creation form On entity creation, if there are some local permissions on the relation, we have no way of checking them since neither the subject nor the object of the relation exists yet. In such a case, we should add the link by default, for consistency (see other places where we use `may_have_permission`). Closes #6711900
Thu, 08 Oct 2015 11:47:15 +0200 [predicates] Simplify specified_etype_implements
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 08 Oct 2015 11:47:15 +0200] rev 10636
[predicates] Simplify specified_etype_implements
Thu, 08 Oct 2015 12:13:35 +0200 [web/views] Fix `has_editable_relation` predicate wrt inlined relations
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 08 Oct 2015 12:13:35 +0200] rev 10635
[web/views] Fix `has_editable_relation` predicate wrt inlined relations Prevents the "modify" action from being shown when there is nothing to edit.
Wed, 02 Sep 2015 15:31:18 +0200 [web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 02 Sep 2015 15:31:18 +0200] rev 10634
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions When selecting an inlined creation form, we should catch the NoSelectable exception that will be raised if the user cannot add entities of the target type (this is not and cannot be verified earlier) or if some other custom selector prevents the form from being selected. Closes #6510921
Wed, 07 Oct 2015 17:27:35 +0200 [server/test] bit of PEP8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 07 Oct 2015 17:27:35 +0200] rev 10633
[server/test] bit of PEP8
Tue, 25 Aug 2015 11:11:34 +0200 [migration] don't attempt to carry over values when renaming a computed relation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 25 Aug 2015 11:11:34 +0200] rev 10632
[migration] don't attempt to carry over values when renaming a computed relation Without the fix in migractions.py, the introduced test crashes with an operational error because of an attempt to write to a non-existing relation table (computed relations are not materialized). Closes #6304946
Fri, 21 Aug 2015 11:01:08 +0200 consider .do_fti flag in index_entity method
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 21 Aug 2015 11:01:08 +0200] rev 10631
consider .do_fti flag in index_entity method as this method may be used from outsite the class (eg in UpdateFTIHook), this is the proper way to consider it anyway. Closes #6206636
Tue, 06 Oct 2015 18:59:01 +0200 Added tag 3.19.13, debian/3.19.13-1, centos/3.19.13-1 for changeset f933a38d7ab5
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 06 Oct 2015 18:59:01 +0200] rev 10630
Added tag 3.19.13, debian/3.19.13-1, centos/3.19.13-1 for changeset f933a38d7ab5
Tue, 06 Oct 2015 18:35:14 +0200 [pkg] 3.19.13 3.19.13 centos/3.19.13-1 debian/3.19.13-1
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 06 Oct 2015 18:35:14 +0200] rev 10629
[pkg] 3.19.13
Tue, 29 Sep 2015 14:41:28 +0200 [migration/3.21] add support for sqlserver
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 14:41:28 +0200] rev 10628
[migration/3.21] add support for sqlserver Closes #7173702
Tue, 29 Sep 2015 15:49:10 +0200 moved_entities.extid may not be NULL
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 15:49:10 +0200] rev 10627
moved_entities.extid may not be NULL
Tue, 29 Sep 2015 15:15:03 +0200 [server] use sqls_create_multicol_unique_index to index entities.extid
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 15:15:03 +0200] rev 10626
[server] use sqls_create_multicol_unique_index to index entities.extid SQL Server's UNIQUE is not standards compliant, it doesn't accept two NULL values. Related to #7173702.
Tue, 29 Sep 2015 15:11:29 +0200 [server] fix checkintegrity with pyodbc
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 15:11:29 +0200] rev 10625
[server] fix checkintegrity with pyodbc "msg % row" dies with "not enough arguments for format string" if row is a pyodbc.Row.
Tue, 29 Sep 2015 14:23:57 +0200 [schema] remove unique constraint on unlimited String attribute
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 14:23:57 +0200] rev 10624
[schema] remove unique constraint on unlimited String attribute SQL Server doesn't allow indexing (and thus unique constraints) on nvarchar(max). Related to #7173702.
Mon, 05 Oct 2015 16:36:49 +0200 [sources/native] fix potential NameError (closes #7364249)
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Mon, 05 Oct 2015 16:36:49 +0200] rev 10623
[sources/native] fix potential NameError (closes #7364249)
Mon, 14 Sep 2015 11:15:47 +0200 [py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 11:15:47 +0200] rev 10622
[py3k] unicode → six.text_type
Mon, 14 Sep 2015 18:10:20 +0200 [devtools/testlib] Port CubicWebTC.view() to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 18:10:20 +0200] rev 10621
[devtools/testlib] Port CubicWebTC.view() to py3k testlib.TestCase.set_description's argument will eventually be printed out to sys.stdout/stderr. On python 2, this object takes bytes-like objects (eg, str) whereas python 3's takes unicode-like objects and handles the encoding on its own. Thus the 'str' type can used in both versions to eventually display the description on screen.
Mon, 14 Sep 2015 18:12:44 +0200 [devtools/testlib] port 'fake_form' test to io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 18:12:44 +0200] rev 10620
[devtools/testlib] port 'fake_form' test to io.BytesIO
Mon, 14 Sep 2015 16:45:03 +0200 [dataimport] port ucsvreader tests to io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 16:45:03 +0200] rev 10619
[dataimport] port ucsvreader tests to io.BytesIO
Mon, 14 Sep 2015 18:56:29 +0200 [py3k] io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 18:56:29 +0200] rev 10618
[py3k] io.BytesIO
Fri, 11 Sep 2015 17:40:23 +0200 [py3k] io.StringIO
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Sep 2015 17:40:23 +0200] rev 10617
[py3k] io.StringIO
Tue, 15 Sep 2015 12:51:27 +0200 Port cw.Binary to io.BytesIO
Rémi Cardona <remi.cardona@free.fr> [Tue, 15 Sep 2015 12:51:27 +0200] rev 10616
Port cw.Binary to io.BytesIO And add plenty of tests too!
Fri, 18 Sep 2015 18:26:07 +0200 [py3k] execfile → exec
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:26:07 +0200] rev 10615
[py3k] execfile → exec
Tue, 15 Sep 2015 15:33:47 +0200 [py3k] file → open
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:33:47 +0200] rev 10614
[py3k] file → open
Thu, 17 Sep 2015 09:52:06 +0200 [py3k] six.integer_types
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 09:52:06 +0200] rev 10613
[py3k] six.integer_types
Mon, 14 Sep 2015 16:03:07 +0200 [py3k] basestring → six.string_types
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 16:03:07 +0200] rev 10612
[py3k] basestring → six.string_types
Wed, 16 Sep 2015 11:23:51 +0200 [py3k] import CookieJar using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 11:23:51 +0200] rev 10611
[py3k] import CookieJar using six.moves
Tue, 15 Sep 2015 18:50:25 +0200 [py3k] import urllib2 from six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:50:25 +0200] rev 10610
[py3k] import urllib2 from six.moves
Tue, 15 Sep 2015 16:56:57 +0200 [py3k] import range using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:56:57 +0200] rev 10609
[py3k] import range using six.moves
Tue, 15 Sep 2015 15:07:13 +0200 [py3k] import queue using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:07:13 +0200] rev 10608
[py3k] import queue using six.moves
Tue, 15 Sep 2015 14:59:06 +0200 [py3k] import filter using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 14:59:06 +0200] rev 10607
[py3k] import filter using six.moves
Tue, 15 Sep 2015 14:58:52 +0200 [py3k] import zip using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 14:58:52 +0200] rev 10606
[py3k] import zip using six.moves
Tue, 22 Sep 2015 15:36:32 +0200 [py3k] import SimpleCookie using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:36:32 +0200] rev 10605
[py3k] import SimpleCookie using six.moves
Mon, 14 Sep 2015 12:40:57 +0200 [py3k] import HTTP client constants and exceptions using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 12:40:57 +0200] rev 10604
[py3k] import HTTP client constants and exceptions using six.moves
Tue, 22 Sep 2015 09:39:30 +0200 [py3k] import URL mangling functions using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 09:39:30 +0200] rev 10603
[py3k] import URL mangling functions using six.moves
Mon, 14 Sep 2015 12:19:48 +0200 [py3k] import 'pickle' using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 12:19:48 +0200] rev 10602
[py3k] import 'pickle' using six.moves
Wed, 16 Sep 2015 14:45:15 +0200 [pkg] Add dependency on six 1.4.0
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 14:45:15 +0200] rev 10601
[pkg] Add dependency on six 1.4.0
Wed, 16 Sep 2015 11:32:09 +0200 [tests] Replace use of deprecated TestCase.assert_
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 11:32:09 +0200] rev 10600
[tests] Replace use of deprecated TestCase.assert_
Tue, 15 Sep 2015 16:30:25 +0200 [predicates] Simplify range(len()) iteration
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:30:25 +0200] rev 10599
[predicates] Simplify range(len()) iteration
Mon, 14 Sep 2015 15:34:09 +0200 [dataimport] Use pickle.dump instead of dumps
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 15:34:09 +0200] rev 10598
[dataimport] Use pickle.dump instead of dumps
Mon, 14 Sep 2015 15:42:38 +0200 [web/facet] Simplify reversed/sorted calls
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 15:42:38 +0200] rev 10597
[web/facet] Simplify reversed/sorted calls
Mon, 28 Sep 2015 13:47:30 +0200 [web/test] Use TestCase.setUpClass instead of setUpModule
Julien Cristau <julien.cristau@logilab.fr> [Mon, 28 Sep 2015 13:47:30 +0200] rev 10596
[web/test] Use TestCase.setUpClass instead of setUpModule
Mon, 14 Sep 2015 11:16:10 +0200 Use isinstance() instead of type comparison
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 11:16:10 +0200] rev 10595
Use isinstance() instead of type comparison
Tue, 15 Sep 2015 15:10:59 +0200 Unused imports
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:10:59 +0200] rev 10594
Unused imports
Fri, 11 Sep 2015 16:01:10 +0200 [py3k] tuple unpacking in function args
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 16:01:10 +0200] rev 10593
[py3k] tuple unpacking in function args
Fri, 11 Sep 2015 15:52:18 +0200 [py3k] ur'' is gone
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 15:52:18 +0200] rev 10592
[py3k] ur'' is gone
Fri, 11 Sep 2015 15:50:29 +0200 [py3k] octals and long
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 15:50:29 +0200] rev 10591
[py3k] octals and long
Fri, 11 Sep 2015 15:29:25 +0200 [py3k] Fix raise with embedded traceback
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 15:29:25 +0200] rev 10590
[py3k] Fix raise with embedded traceback python 3 removed the raise syntax with 2 and 3 expressions.
Fri, 11 Sep 2015 14:52:09 +0200 [py3k] print function
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 14:52:09 +0200] rev 10589
[py3k] print function
Fri, 11 Sep 2015 14:28:06 +0200 [py3k] except as
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 14:28:06 +0200] rev 10588
[py3k] except as
Fri, 11 Sep 2015 14:27:34 +0200 [py3k] backtick to repr
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 14:27:34 +0200] rev 10587
[py3k] backtick to repr
Wed, 23 Sep 2015 15:01:55 +0200 [hooks/syncschema] make sure CWUniqueTogetherConstraintDelOp happens before CWConstraintDelOp
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Sep 2015 15:01:55 +0200] rev 10586
[hooks/syncschema] make sure CWUniqueTogetherConstraintDelOp happens before CWConstraintDelOp SQLServer refuses to index an unlimited text column, so we should drop unique_together constraints (which imply an index) before we drop size constraints. Closes #5560601.
Wed, 23 Sep 2015 15:00:33 +0200 [hooks/syncschema] only call "ALTER TABLE" once when changing a size constraint
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Wed, 23 Sep 2015 15:00:33 +0200] rev 10585
[hooks/syncschema] only call "ALTER TABLE" once when changing a size constraint Until now we would: - remove the old size constraint from the in-memory schema - call update_rdef_column which removes the size restriction from the column's type - add the new constraint object - call update_rdef_column which adds the size restriction back This breaks on SQL Server when the column is involved in an index (e.g. as part of a multi-column unique constraint), because in the intermediate stage the column's type is "nvarchar(max)", which is not indexable. Of course we must still detect the case where a size constraint is really dropped and update the db schema accordingly. Closes #5557633.
Wed, 02 Sep 2015 15:24:46 +0200 [syncschema] only add to the `synchronized` set if all possible updates have been done
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Wed, 02 Sep 2015 15:24:46 +0200] rev 10584
[syncschema] only add to the `synchronized` set if all possible updates have been done Otherwise a simple sync_schema(syncprops=False) turns the subsequent sync_schema() calls into a no-op. Closes #6510918.
Thu, 23 Jul 2015 12:32:51 +0200 [qunit] remove unused 'data_files' parameter
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Jul 2015 12:32:51 +0200] rev 10583
[qunit] remove unused 'data_files' parameter Its use was removed when we stoppped pointing firefox at file:// web/test/jstests/ajax_url2.html has never actually been used, it's only been ever mentioned in a QUnit comment.
Mon, 20 Jul 2015 13:55:54 +0200 [urlpublish] RESTPathEvaluator now use vid_from_rset
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jul 2015 13:55:54 +0200] rev 10582
[urlpublish] RESTPathEvaluator now use vid_from_rset This avoid cases where vid may be unexpectedly overwritten. For instance when you define a custom vid for a mime type in VID_BY_MIMETYPE, it will currently be overriden by the URL publisher when you access to /<etype> with the proper Accept header. To do so, a new 'check_table' argument is introduced, which may cause bw compatibility problems if the function has been monkey-patched. Also pep8 a bit the tests. Closes #5705835
Fri, 24 Jul 2015 16:19:39 +0200 [server/sources] use decode_extid in datafeed
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:19:39 +0200] rev 10581
[server/sources] use decode_extid in datafeed
Fri, 24 Jul 2015 16:15:17 +0200 [server/sources] add decode_extid method
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:15:17 +0200] rev 10580
[server/sources] add decode_extid method avoids having the same dance in both eid_type_source variants
Wed, 29 Jul 2015 10:18:56 +0200 [server/repo] kill repo.pinfo()
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:18:56 +0200] rev 10579
[server/repo] kill repo.pinfo() session.cnxset is dead, this can't work.
Wed, 29 Jul 2015 10:18:23 +0200 [web/sessions] simplify session cleanup
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:18:23 +0200] rev 10578
[web/sessions] simplify session cleanup session.cnx.check() is no longer a thing. It dates back to dbapi.
Wed, 29 Jul 2015 10:17:42 +0200 [server/repo] fix typo
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:17:42 +0200] rev 10577
[server/repo] fix typo
Fri, 24 Jul 2015 16:09:29 +0200 [server/sources] AbstractSource.__ne__
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:09:29 +0200] rev 10576
[server/sources] AbstractSource.__ne__ Seems confusing to have __eq__ but not __ne__.
Fri, 24 Jul 2015 16:09:37 +0200 [server/sources] fix docstring for eid_type_source
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:09:37 +0200] rev 10575
[server/sources] fix docstring for eid_type_source
Mon, 27 Jul 2015 10:00:32 +0200 [views] fix ProcessInformationView: SESSION_MANAGER can be None (closes #5753280)
David Douard <david.douard@logilab.fr> [Mon, 27 Jul 2015 10:00:32 +0200] rev 10574
[views] fix ProcessInformationView: SESSION_MANAGER can be None (closes #5753280) eg. with pyramid.
Thu, 06 Aug 2015 15:21:58 +0200 [server/migractions] drop mock_object
Julien Cristau <julien.cristau@logilab.fr> [Thu, 06 Aug 2015 15:21:58 +0200] rev 10573
[server/migractions] drop mock_object It doesn't seem to have ever been used.
Thu, 06 Aug 2015 15:24:16 +0200 [test] kill unused lgc.testlib imports
Julien Cristau <julien.cristau@logilab.fr> [Thu, 06 Aug 2015 15:24:16 +0200] rev 10572
[test] kill unused lgc.testlib imports
Tue, 25 Aug 2015 11:09:22 +0200 [server/migractions] raising SystemExit sounds like a bad idea
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 25 Aug 2015 11:09:22 +0200] rev 10571
[server/migractions] raising SystemExit sounds like a bad idea Simply skip the action (rename_relation_type) with an early return.
Mon, 27 Jul 2015 09:27:18 +0200 [server/storage] rename 'session' variables to 'cnx'
Julien Cristau <julien.cristau@logilab.fr> [Mon, 27 Jul 2015 09:27:18 +0200] rev 10570
[server/storage] rename 'session' variables to 'cnx' We no longer deal with Session objects here.
Wed, 09 Jul 2014 17:52:45 +0200 [migration] remove repo_connect and use config.repository() instead
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 17:52:45 +0200] rev 10569
[migration] remove repo_connect and use config.repository() instead One less more redundant path to the repo. Related to #3933480.
Wed, 09 Jul 2014 16:32:14 +0200 [repoapi, cwconfig] give a convenience method to get a repository from a config
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 16:32:14 +0200] rev 10568
[repoapi, cwconfig] give a convenience method to get a repository from a config This is a very common need. The private repoapi._get_inmemory_repo becomes config.repository(...)
Wed, 09 Jul 2014 15:50:23 +0200 [cwconfig] remove unused method
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 15:50:23 +0200] rev 10567
[cwconfig] remove unused method Not to be confused with serverconfig.migration_handler.
Tue, 19 Aug 2014 00:16:02 +0200 [captcha] Port to io.BytesIO
Rémi Cardona <remi.cardona@free.fr> [Tue, 19 Aug 2014 00:16:02 +0200] rev 10566
[captcha] Port to io.BytesIO
Thu, 13 Feb 2014 17:00:40 +0100 [web/sessions] the session managers are definitely not components
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Feb 2014 17:00:40 +0100] rev 10565
[web/sessions] the session managers are definitely not components Component (or AppObjects) take a _cw at __init__ time. The session managers want a repository. Related to #1381328.
Thu, 13 Feb 2014 16:43:33 +0100 [web] the AuthenticationManager is no more an appobject
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Feb 2014 16:43:33 +0100] rev 10564
[web] the AuthenticationManager is no more an appobject It is now explictly instanciated by the session manager. Related to #1381328.
Fri, 05 Dec 2014 16:22:02 +0100 [hooksmanager] remove very old unused module
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 05 Dec 2014 16:22:02 +0100] rev 10563
[hooksmanager] remove very old unused module
Fri, 31 Jul 2015 15:17:43 +0200 [devtools] fix CubicWebTC.assertDocTestFile (closes #5930028)
Julien Cristau <julien.cristau@logilab.fr> [Fri, 31 Jul 2015 15:17:43 +0200] rev 10562
[devtools] fix CubicWebTC.assertDocTestFile (closes #5930028)
Wed, 29 Jul 2015 10:51:52 +0200 Added tag 3.21.1, debian/3.21.1-1, centos/3.21.1-1 for changeset a8a0de0298a5
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:51:52 +0200] rev 10561
Added tag 3.21.1, debian/3.21.1-1, centos/3.21.1-1 for changeset a8a0de0298a5
Tue, 28 Jul 2015 18:59:14 +0200 [pkg] Let dh_installdocs deal with doc-base 3.21.1 centos/3.21.1-1 debian/3.21.1-1
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 18:59:14 +0200] rev 10560
[pkg] Let dh_installdocs deal with doc-base
Tue, 28 Jul 2015 18:57:21 +0200 [pkg] various debian packaging fixes
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 18:57:21 +0200] rev 10559
[pkg] various debian packaging fixes - stop using *.install.in files, just use wildcards in *.install - switch to X-Python-Version (preferred for dh_python2) - also call dh_python2 for /usr/share/cubicweb, not just public modules - drop long obsolete ginco and erudi migration code from cubicweb-ctl.postinst - fix cubicweb-ctl cleanup: purge code belongs in postrm, not prerm - don't compress changelog.html
Tue, 28 Jul 2015 18:06:46 +0200 [pkg] 3.21.1
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 18:06:46 +0200] rev 10558
[pkg] 3.21.1
Tue, 28 Jul 2015 11:21:36 +0200 [web] fix AbstractSessionManager.clean_sessions (closes #5757240)
David Douard <david.douard@logilab.fr> [Tue, 28 Jul 2015 11:21:36 +0200] rev 10557
[web] fix AbstractSessionManager.clean_sessions (closes #5757240) sessions were not closed if "last_usage_time = session.cnx.check()" actually raises an AtributeError.
Tue, 21 Jul 2015 14:29:42 +0200 [migration/3.21] ask fewer questions
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Jul 2015 14:29:42 +0200] rev 10556
[migration/3.21] ask fewer questions Several questions per table is just unreasonable.
Tue, 28 Jul 2015 11:26:47 +0200 [server] typo fix
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 11:26:47 +0200] rev 10555
[server] typo fix
Tue, 28 Jul 2015 11:15:36 +0200 [test] check that we reject an rqlexpression in computed relation perms
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 11:15:36 +0200] rev 10554
[test] check that we reject an rqlexpression in computed relation perms
Tue, 28 Jul 2015 09:25:26 +0200 Fix (de)serialization of ComputedRelation read permissions
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 09:25:26 +0200] rev 10553
Fix (de)serialization of ComputedRelation read permissions For normal relation types, permissions don't need to be stored since they're just default values for the relation definitions. However, computed relations are serialized (as CWComputedRType), while their relation definitions are added at schema finalization time, and are only in memory. So add the 'read_permission' relation to CWComputedRType, and the appropriate hooks to save and restore those permissions. To avoid having to touch yams, we drop the 'add' and 'delete' permissions from the default computed relation permissions; this should probably be backported there. The actual permissions (set on the relation definitions) are hardcoded in finalize_computed_relations anyway. In deserialize_schema, the CWComputedRType handling needs to be delayed a little bit, until after we've called deserialize_ertype_permissions. The rql2sql test is adjusted because CWComputedRType has a 'name' attribute and the 'read_permission' relation, which generates ambiguity vs CWEType. We add an explicit CubicWebRelationSchema.check_permission_definitions, since we need to check both that computed and non-computed rtypes are defined properly. Based on report and initial patch from Christophe de Vienne (thanks!). Closes #5706307
Fri, 17 Jul 2015 16:48:43 +0200 Copy read permissions on ComputedRelation rdefs
Christophe de Vienne <christophe@unlish.com> [Fri, 17 Jul 2015 16:48:43 +0200] rev 10552
Copy read permissions on ComputedRelation rdefs Closes #5694110
Wed, 22 Jul 2015 19:50:50 +0200 [datafeed] fix typo in DataFeedXMLParser.is_deleted (closes #5729755)
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 19:50:50 +0200] rev 10551
[datafeed] fix typo in DataFeedXMLParser.is_deleted (closes #5729755)
Mon, 27 Jul 2015 10:51:29 +0200 [server/sources] make sure entity._cw is a Connection before calling Storages
Julien Cristau <julien.cristau@logilab.fr> [Mon, 27 Jul 2015 10:51:29 +0200] rev 10550
[server/sources] make sure entity._cw is a Connection before calling Storages The storage callbacks don't get an explicit Connection objects, so they go through entity._cw to access the repo and schedule operations. Since that entity object comes out of the entity cache, its _cw may be a web request instead of a Connection. So fix it up around the storage callbacks. Closes #5753543
Mon, 06 Jul 2015 14:34:41 +0200 [hooks] base64-encode extid before inserting it into moved_entities
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Jul 2015 14:34:41 +0200] rev 10549
[hooks] base64-encode extid before inserting it into moved_entities If we insert the wrong value we're never going to find these entities again... Closes #5741105.
Tue, 21 Jul 2015 18:17:31 +0200 [hook] remove assumption about entity cache vs cw_edited
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Jul 2015 18:17:31 +0200] rev 10548
[hook] remove assumption about entity cache vs cw_edited We were assuming that if an entity is in the connection's cache, it has a cw_edited attribute. This doesn't seem to always be the case. At least in cubicweb 3.21, merging the web and repo-side caches makes this more likely, but Denis says he's also seen this on 3.20.
Tue, 21 Jul 2015 18:09:12 +0200 [hook] don't open-code Connection.entity_cache
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Jul 2015 18:09:12 +0200] rev 10547
[hook] don't open-code Connection.entity_cache
Thu, 23 Jul 2015 09:43:36 +0200 [tox] Add missing dependency on webtest for devtools tests
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jul 2015 09:43:36 +0200] rev 10546
[tox] Add missing dependency on webtest for devtools tests
Wed, 22 Jul 2015 11:32:24 +0200 [tox] Add missing dependency on webtest for wsgi tests
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jul 2015 11:32:24 +0200] rev 10545
[tox] Add missing dependency on webtest for wsgi tests
Wed, 22 Jul 2015 10:55:39 +0200 [tox] Remove set of PATH environment variable
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jul 2015 10:55:39 +0200] rev 10544
[tox] Remove set of PATH environment variable The : concatenation does not work actually so the resulting PATH was just wrong (it did not contain the previous PATH). Anyways, the PATH environment variable is passed by default by tox so it's probably better to let the caller set it (thus avoiding to hard-code the specific postgres version and path). http://tox.readthedocs.org/en/latest/example/basic.html#passing-down-environment-variables
Fri, 17 Jul 2015 14:06:22 +0200 [doc] generalize info about debian/ubuntu repositories
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Jul 2015 14:06:22 +0200] rev 10543
[doc] generalize info about debian/ubuntu repositories That section was not kept up to date with recent distro releases; stop trying.
Fri, 17 Jul 2015 13:49:58 +0200 [doc] fix link to setup info in README
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Jul 2015 13:49:58 +0200] rev 10542
[doc] fix link to setup info in README ... and fix URL to the repository's gpg key.
Mon, 20 Jul 2015 12:15:20 +0200 [server/session] remove unused cnx_meth function
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 12:15:20 +0200] rev 10541
[server/session] remove unused cnx_meth function
Mon, 20 Jul 2015 11:03:09 +0200 [server] don't issue a warning for something expected
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 11:03:09 +0200] rev 10540
[server] don't issue a warning for something expected Creating an instance happens all the time in tests, there's no reason to warn every time.
Mon, 20 Jul 2015 12:37:47 +0200 [server] stick a _cw on internal connnection's user
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 12:37:47 +0200] rev 10539
[server] stick a _cw on internal connnection's user Entity._fetch_restrictions goes through user._cw.vreg :( Closes #5705769
Mon, 20 Jul 2015 16:43:47 +0200 [migration/3.21] fix stupid error in migration script
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 16:43:47 +0200] rev 10538
[migration/3.21] fix stupid error in migration script str.join doesn't like a list of ints. Closes #5706359.
Wed, 15 Jul 2015 15:01:21 +0200 Added tag 3.21.0, debian/3.21.0-1, centos/3.21.0-1 for changeset 887c6eef8077
Julien Cristau <julien.cristau@logilab.fr> [Wed, 15 Jul 2015 15:01:21 +0200] rev 10537
Added tag 3.21.0, debian/3.21.0-1, centos/3.21.0-1 for changeset 887c6eef8077
Fri, 10 Jul 2015 18:18:58 +0200 [pkg] various fixes 3.21.0 centos/3.21.0-1 debian/3.21.0-1
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 18:18:58 +0200] rev 10536
[pkg] various fixes - add missing files to MANIFEST - exclude doc/changes from dh_installchangelogs (it's a directory, which dh_installchangelogs doesn't expect) - fix doc build in debian package
Fri, 10 Jul 2015 17:40:08 +0200 [doc] fix broken symlinks
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 17:40:08 +0200] rev 10535
[doc] fix broken symlinks
Fri, 10 Jul 2015 17:04:32 +0200 [pkg] update 3.21.0 release date
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 17:04:32 +0200] rev 10534
[pkg] update 3.21.0 release date
Fri, 10 Jul 2015 17:04:03 +0200 [doc/3.21] mention the postgresql-only state of the upgrade script
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 17:04:03 +0200] rev 10533
[doc/3.21] mention the postgresql-only state of the upgrade script
Fri, 10 Jul 2015 09:30:04 +0200 [datafeed] also catch EnvironmentError when trying to load the cwclientlib config file
David Douard <david.douard@logilab.fr> [Fri, 10 Jul 2015 09:30:04 +0200] rev 10532
[datafeed] also catch EnvironmentError when trying to load the cwclientlib config file means the config file has not been found, so fall back to the old implementation instead of crashing.
Fri, 10 Jul 2015 09:35:52 +0200 [schema] Make syntax compatible with print_function
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 09:35:52 +0200] rev 10531
[schema] Make syntax compatible with print_function yams seems to exec() us sometimes (instead of __import__()), and yams.reader uses print_function nowadays.
Thu, 09 Jul 2015 17:03:50 +0200 [pkg] 3.21.0
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 17:03:50 +0200] rev 10530
[pkg] 3.21.0
Thu, 09 Jul 2015 11:26:09 +0200 [test] use FakeFile instead of File in test_fulltextindex
Julien Cristau <julien.cristau@logilab.fr> [Thu, 09 Jul 2015 11:26:09 +0200] rev 10529
[test] use FakeFile instead of File in test_fulltextindex File.data is no longer fulltextindexed.
Thu, 09 Jul 2015 16:55:28 +0200 i18n update
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 16:55:28 +0200] rev 10528
i18n update
Tue, 07 Jul 2015 14:13:39 +0200 [serverctl] fix schema-diff command
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 14:13:39 +0200] rev 10527
[serverctl] fix schema-diff command It hadn't been ported away from dbapi.
Tue, 07 Jul 2015 14:13:10 +0200 [serverct] call server_{maintenance,shutdown} hooks around source-sync command
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 14:13:10 +0200] rev 10526
[serverct] call server_{maintenance,shutdown} hooks around source-sync command
Tue, 07 Jul 2015 14:12:46 +0200 [serverctl] call server_{maintenance,shutdown} hooks around add-source
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 14:12:46 +0200] rev 10525
[serverctl] call server_{maintenance,shutdown} hooks around add-source
Tue, 07 Jul 2015 14:57:24 +0200 Update hgignore
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 07 Jul 2015 14:57:24 +0200] rev 10524
Update hgignore
Tue, 07 Jul 2015 21:13:23 +0200 delete unmaintained clone_deps script
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 21:13:23 +0200] rev 10523
delete unmaintained clone_deps script Closes #2517580.
Thu, 09 Jul 2015 16:43:56 +0200 merge 3.20.9 into 3.21
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 16:43:56 +0200] rev 10522
merge 3.20.9 into 3.21 Fix conflict in unittest_postgres.py by changing sources configuration in PostgresTimeoutConfiguration.__init__ so it happens *after* setUpModule().
Thu, 09 Jul 2015 15:13:10 +0200 Added tag 3.20.9, debian/3.20.9-1, centos/3.20.9-1 for changeset d477e6447582
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 15:13:10 +0200] rev 10521
Added tag 3.20.9, debian/3.20.9-1, centos/3.20.9-1 for changeset d477e6447582
Thu, 09 Jul 2015 12:40:43 +0200 [pkg] 3.20.9 3.20.9 centos/3.20.9-1 debian/3.20.9-1
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 12:40:43 +0200] rev 10520
[pkg] 3.20.9
Wed, 08 Apr 2015 09:27:26 +0200 [forms] don't display 'remove' link of inlined form for the first entity related using a '+' cardinality to its parent entity
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 08 Apr 2015 09:27:26 +0200] rev 10519
[forms] don't display 'remove' link of inlined form for the first entity related using a '+' cardinality to its parent entity Closes #5227394
Wed, 08 Jul 2015 09:37:06 +0200 [tox] Update doc testenv to account for documentation restructuring
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 08 Jul 2015 09:37:06 +0200] rev 10518
[tox] Update doc testenv to account for documentation restructuring * Build doc from `doc` directory. * Use `sphinx-build` directly instead of `make` as this now works and allows to build within .tox temporary environment (instead of doc/_build), preferable for a "test" action. Related to #5447161.
Thu, 02 Jul 2015 11:46:57 +0200 [schema] drop old backward compat code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 02 Jul 2015 11:46:57 +0200] rev 10517
[schema] drop old backward compat code preventing yams to be itself fully cleaned
Thu, 11 Jun 2015 11:45:45 +0200 [datafeed] allow to use cwclientlib for datafeed's queries (closes #5456849)
David Douard <david.douard@logilab.fr> [Thu, 11 Jun 2015 11:45:45 +0200] rev 10516
[datafeed] allow to use cwclientlib for datafeed's queries (closes #5456849) HTTP based URLs will be handled by a CWProxy if: - cwclientlib is available and - the URL matches a cwclientlibrc config entry Otherwise, fallback to previous implementation. See https://www.cubicweb.org/project/cwclientlib :Warning: This comes with an API modification of DataFeedParser.retrieve_url: it used to accept data and headers arguments to build GET or POST (if data was given) queries, but this was not used by any known code and imply more complicated code.
Thu, 11 Jun 2015 10:17:41 +0200 [cwxml parser] refactor url handling code to use urlparse and urlencode (related to #5456849)
David Douard <david.douard@logilab.fr> [Thu, 11 Jun 2015 10:17:41 +0200] rev 10515
[cwxml parser] refactor url handling code to use urlparse and urlencode (related to #5456849)
Fri, 26 Jun 2015 15:00:07 +0200 add use_extid_as_cwuri ext entity transform, that will be often necessary and not so easy to write at once
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 26 Jun 2015 15:00:07 +0200] rev 10514
add use_extid_as_cwuri ext entity transform, that will be often necessary and not so easy to write at once
Fri, 26 Jun 2015 11:15:25 +0200 [dataimport] dispatch and deprecate old code
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 26 Jun 2015 11:15:25 +0200] rev 10513
[dataimport] dispatch and deprecate old code previously, the whole dataimport.py content has been copied in dataimport/__init__.py, then dataimport/importer.py API has been introduced. Following these changes, this cset: * dispatch __init__ code into sub-modules * dispatch unittest_dataimport accordingly * deprecates functions and classes that are deprecated by the new API Related to #5414753.
Tue, 30 Jun 2015 23:17:45 +0200 Add tox.ini file
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 30 Jun 2015 23:17:45 +0200] rev 10512
Add tox.ini file * Factor out `commands` for most environments using {envname} substitution to build pytest commande. * Positional arguments are passed on to `pytest` (others may also be passed after a `--`). * Set PATH env variable for tests requiring PostgreSQL. * Also added a `doc` target to build the book. Also update .hgignore exclude .tox directory (where virtualenvs will be created and cubicweb.egg-info created by sdist command). Closes #5447161.
Mon, 29 Jun 2015 22:34:58 +0200 Add requirements.txt files in test directories
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 29 Jun 2015 22:34:58 +0200] rev 10511
Add requirements.txt files in test directories These files, located in each test directory (when needed), list test dependencies supplementary to install requirements. Some requirements.txt files include psycopg2 because it won't get installed by logilab-database apparently. Related to #5447161.
Mon, 09 Mar 2015 10:49:03 +0100 Spelling fixes in comments and docstrings
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 09 Mar 2015 10:49:03 +0100] rev 10510
Spelling fixes in comments and docstrings
Wed, 08 Apr 2015 11:29:24 +0200 [web/views] Clean up confusing backwards compatibility code
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 08 Apr 2015 11:29:24 +0200] rev 10509
[web/views] Clean up confusing backwards compatibility code Dead code since fbb370195199, related to #4943392.
Thu, 02 Jul 2015 09:25:45 +0200 [server/test] avoid lgdb warnings from str to unicode conversion
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Jul 2015 09:25:45 +0200] rev 10508
[server/test] avoid lgdb warnings from str to unicode conversion
Fri, 03 Jul 2015 15:18:24 +0200 [web/test] Modernize unittest_propertysheet.py
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 03 Jul 2015 15:18:24 +0200] rev 10507
[web/test] Modernize unittest_propertysheet.py - remove call to os.makedirs in global scope - fold CACHEDIR as an instance attribute - bonus: use unittest directly instead of lgc.testlib
Fri, 03 Jul 2015 12:20:48 +0200 [web/webconfig] Drop pre-3.9 backward compatibility method "has_resource"
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 03 Jul 2015 12:20:48 +0200] rev 10506
[web/webconfig] Drop pre-3.9 backward compatibility method "has_resource"
Fri, 03 Jul 2015 12:07:44 +0200 [web] Stop using negative indices with os.stat results
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 03 Jul 2015 12:07:44 +0200] rev 10505
[web] Stop using negative indices with os.stat results The python doc says: More items may be added at the end by some implementations. .st_mtime is also more readable than [-2].
Fri, 03 Jul 2015 13:43:40 +0200 [doc] small rst fixes and cleanups in changelog files
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 13:43:40 +0200] rev 10504
[doc] small rst fixes and cleanups in changelog files Related to #4832808
Fri, 03 Jul 2015 13:44:01 +0200 [doc] make the changelog chapter a one html page
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 13:44:01 +0200] rev 10503
[doc] make the changelog chapter a one html page Related to #4832808
Fri, 03 Jul 2015 12:18:56 +0200 [doc] reformat changes files headers
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 12:18:56 +0200] rev 10502
[doc] reformat changes files headers to remove the "what's new" phrasing and add the publication date instead. Related to #4832808
Fri, 03 Jul 2015 12:07:29 +0200 [doc] remove mentions of pyro and reposity instance type
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 12:07:29 +0200] rev 10501
[doc] remove mentions of pyro and reposity instance type from the concepts chapter Related to #4832808
Fri, 03 Jul 2015 11:37:58 +0200 [doc] put the tutorials between the intro and the `Repository development` toc of the book
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 11:37:58 +0200] rev 10500
[doc] put the tutorials between the intro and the `Repository development` toc of the book Related to #4832808
Fri, 03 Jul 2015 14:07:53 +0200 [doc] move the documentations from docstring directly to the book.
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 14:07:53 +0200] rev 10499
[doc] move the documentations from docstring directly to the book. and improve a bit API documentations. Related to #4832808
Fri, 03 Jul 2015 15:23:14 +0200 [predicates] remove deprecated sentences in docstrings
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 15:23:14 +0200] rev 10498
[predicates] remove deprecated sentences in docstrings
Fri, 03 Jul 2015 14:06:57 +0200 [predicates] objectify the anonymous_user predicate
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 14:06:57 +0200] rev 10497
[predicates] objectify the anonymous_user predicate for the sake of consistency.
Thu, 02 Jul 2015 19:54:25 +0200 [doc] more fixes of warnings/errors in doc build
David Douard <david.douard@logilab.fr> [Thu, 02 Jul 2015 19:54:25 +0200] rev 10496
[doc] more fixes of warnings/errors in doc build - move 3.21.rst changelog description at it's proper place - include changelogs in the main index - few typos - add :noindex: for autoxxx directives not in api/ Related to #4832808
Tue, 23 Jun 2015 17:04:40 +0200 [doc] fix warnings/errors in doc build
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Jun 2015 17:04:40 +0200] rev 10495
[doc] fix warnings/errors in doc build - fix links to images - fix a couple of typos - re-add IDownloadableOneLineView doc - rename documenting.rst back to .txt, it's intended as a doc of how to write rst, not part of the rst doc Related to #4832808
Thu, 08 Jan 2015 23:00:56 +0100 [doc] Start documenting the API
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 23:00:56 +0100] rev 10494
[doc] Start documenting the API Related to #4832808
Thu, 08 Jan 2015 23:00:33 +0100 [doc] Remove useless indexes
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 23:00:33 +0100] rev 10493
[doc] Remove useless indexes Related to #4832808
Thu, 08 Jan 2015 23:06:12 +0100 [doc] Insert the dev docs in the toc
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 23:06:12 +0100] rev 10492
[doc] Insert the dev docs in the toc Related to #4832808
Thu, 08 Jan 2015 22:11:06 +0100 [doc] Restructure the documentation
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 22:11:06 +0100] rev 10491
[doc] Restructure the documentation * Create a new index file * Move the sphinx configuration files do the documentation root * Move book/README to dev/documenting.rst * Move book/mode_plan.py to tools/ * Move book/en/images to images * Move book/en/* to book/ * Move changelogs to changes/* * Adapt the Makefile * Add a title to the javascript api index Related to #4832808
Mon, 06 Jul 2015 17:39:35 +0200 [migration/3.21.0] performance and reliability fixes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Jul 2015 17:39:35 +0200] rev 10490
[migration/3.21.0] performance and reliability fixes - use EXCEPT instead of NOT IN, seems to improve performance dramatically on postgresql - delete rows from cw_<etype> tables whose eid is unknown - deal with missing/dangling required inline relations (by deleting the subject entities) instead of asserting - fix/improve print statements - don't ask for confirmation before running pure select queries
Mon, 06 Jul 2015 17:15:24 +0200 [serverctl] fix source-sync command
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Jul 2015 17:15:24 +0200] rev 10489
[serverctl] fix source-sync command Closes #5491700
Tue, 07 Jul 2015 10:41:34 +0200 [server] missing import
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 10:41:34 +0200] rev 10488
[server] missing import Fixes NameError in an unlikely error case.
(0) -10000 -1920 tip