Mon, 18 Nov 2019 12:41:44 +0100 [debug-toolbar] make linter happy
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Mon, 18 Nov 2019 12:41:44 +0100] rev 12763
[debug-toolbar] make linter happy
Wed, 31 Jul 2019 04:16:20 +0200 [pyramid/ctl/debugtoolbar] automatically include custom panels on -t
Laurent Peuch <cortex@worlddomination.be> [Wed, 31 Jul 2019 04:16:20 +0200] rev 12762
[pyramid/ctl/debugtoolbar] automatically include custom panels on -t
Thu, 01 Aug 2019 20:30:16 +0200 [debug-toolbar/rql] display sql queries generated by rql ones
Laurent Peuch <cortex@worlddomination.be> [Thu, 01 Aug 2019 20:30:16 +0200] rev 12761
[debug-toolbar/rql] display sql queries generated by rql ones
Wed, 31 Jul 2019 04:16:20 +0200 [debug-toolbar/rql] add RQL panel
Laurent Peuch <cortex@worlddomination.be> [Wed, 31 Jul 2019 04:16:20 +0200] rev 12760
[debug-toolbar/rql] add RQL panel Closes #17219673
Thu, 24 Oct 2019 06:37:02 +0200 [debug/emit/rql] add RQL debug channel and emit queries
Laurent Peuch <cortex@worlddomination.be> [Thu, 24 Oct 2019 06:37:02 +0200] rev 12759
[debug/emit/rql] add RQL debug channel and emit queries This is used for the RQL debug panel but can be used as a generic mechanism for several tools.
Wed, 06 Nov 2019 14:43:49 +0100 [debug/source_highlight] rename highlight to highlight_terminal
Laurent Peuch <cortex@worlddomination.be> [Wed, 06 Nov 2019 14:43:49 +0100] rev 12758
[debug/source_highlight] rename highlight to highlight_terminal
Thu, 24 Oct 2019 06:34:42 +0200 [debug/source_highlight] add highlight_html and generate_css for debugtool panels
Laurent Peuch <cortex@worlddomination.be> [Thu, 24 Oct 2019 06:34:42 +0200] rev 12757
[debug/source_highlight] add highlight_html and generate_css for debugtool panels
Thu, 01 Aug 2019 05:42:45 +0200 [debug/rql] bind a uniq token per rql to trace its decomposition
Laurent Peuch <cortex@worlddomination.be> [Thu, 01 Aug 2019 05:42:45 +0200] rev 12756
[debug/rql] bind a uniq token per rql to trace its decomposition This is aimed to be used by the RQL debug panel (and the SQL one later on) but can also be used by other debugging tools.
Thu, 01 Aug 2019 02:51:52 +0200 [debug] add a new channel events mechanism for debugging
Laurent Peuch <cortex@worlddomination.be> [Thu, 01 Aug 2019 02:51:52 +0200] rev 12755
[debug] add a new channel events mechanism for debugging
Wed, 06 Nov 2019 12:52:50 +0100 [ctl] allow to specific instance name for instance commands in $CW_INSTANCE
Laurent Peuch <cortex@worlddomination.be> [Wed, 06 Nov 2019 12:52:50 +0100] rev 12754
[ctl] allow to specific instance name for instance commands in $CW_INSTANCE Closes #17253994
Tue, 05 Nov 2019 23:19:15 +0100 [cubicweb/utils] add QueryCache.__contains__() to improve dict-like behavior. Closes #255426
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Tue, 05 Nov 2019 23:19:15 +0100] rev 12753
[cubicweb/utils] add QueryCache.__contains__() to improve dict-like behavior. Closes #255426
Thu, 23 May 2019 00:33:31 +0200 [migrations/pdb] add to every failing migration operation a "p(db)" option
Laurent Peuch <cortex@worlddomination.be> [Thu, 23 May 2019 00:33:31 +0200] rev 12752
[migrations/pdb] add to every failing migration operation a "p(db)" option Instead, the migration command will just crash without offering the possibility of the user to debug or continue the migration. Closes #17219772
Wed, 29 May 2019 20:29:07 +0200 [pyramid/ctl] add a new option to activate the debugtoolbar (-t)
Laurent Peuch <cortex@worlddomination.be> [Wed, 29 May 2019 20:29:07 +0200] rev 12751
[pyramid/ctl] add a new option to activate the debugtoolbar (-t) While this toolbar isn't yet very integrated with CW, it integrates an inline debugging shell like werkzeug for flask or django_extensions which greatly helps debugging on exception. It can already be manually activated by writting "pyramid.includes = pyramid_debugtoolbar" but it's hidden somewhere in the documentation and not very accessible and annoying to do. Closes #17219765
Wed, 23 Oct 2019 04:28:45 +0200 [changelog] add missing information to the 3.27 changelog
Laurent Peuch <cortex@worlddomination.be> [Wed, 23 Oct 2019 04:28:45 +0200] rev 12750
[changelog] add missing information to the 3.27 changelog
Fri, 18 Oct 2019 23:39:03 +0200 Merge 3.26
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Fri, 18 Oct 2019 23:39:03 +0200] rev 12749
Merge 3.26
Tue, 27 Aug 2019 20:16:01 +0200 [debug] add ALL possibility to --dbglevel 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 27 Aug 2019 20:16:01 +0200] rev 12748
[debug] add ALL possibility to --dbglevel
Wed, 26 Jun 2019 02:32:02 +0200 [ux] display instance name in suggested upgrade command 3.26
Laurent Peuch <cortex@worlddomination.be> [Wed, 26 Jun 2019 02:32:02 +0200] rev 12747
[ux] display instance name in suggested upgrade command
Thu, 23 May 2019 00:33:04 +0200 [migration/pdb] display traceback instead of only the exception for easier debugging
Laurent Peuch <cortex@worlddomination.be> [Thu, 23 May 2019 00:33:04 +0200] rev 12746
[migration/pdb] display traceback instead of only the exception for easier debugging Closes #17219820
Wed, 22 May 2019 17:10:06 +0200 [migration/pdb] add option to use pdb.post_mortem if traceback is provided
Laurent Peuch <cortex@worlddomination.be> [Wed, 22 May 2019 17:10:06 +0200] rev 12745
[migration/pdb] add option to use pdb.post_mortem if traceback is provided Post mortem is a mode where the pdb shell is opened **where** the exception as occured instead at the breakpoint for set_trace. This is way more useful for debugging for the user because is will have the full context of the error. Closes #17219827
Wed, 22 May 2019 17:08:09 +0200 [migration/shell] select ipdb if present on (d)ebug mode
Laurent Peuch <cortex@worlddomination.be> [Wed, 22 May 2019 17:08:09 +0200] rev 12744
[migration/shell] select ipdb if present on (d)ebug mode Closes #17219833
Wed, 22 May 2019 14:23:01 +0200 [mod] move get_pdb to utils.py
Laurent Peuch <cortex@worlddomination.be> [Wed, 22 May 2019 14:23:01 +0200] rev 12743
[mod] move get_pdb to utils.py
Wed, 16 Oct 2019 14:49:38 +0200 Add a migration function in order to relocate bfss
Noe Gaumont <ngaumont@logilab.fr> [Wed, 16 Oct 2019 14:49:38 +0200] rev 12742
Add a migration function in order to relocate bfss Related to https://www.cubicweb.org/ticket/1903304
Wed, 12 Jun 2019 19:58:00 +0200 [pyramid/debug] on every request display request path and selected controller
Laurent Peuch <cortex@worlddomination.be> [Wed, 12 Jun 2019 19:58:00 +0200] rev 12741
[pyramid/debug] on every request display request path and selected controller This will display lines like: 2019-06-12 16:26:57 - (cubicweb.pyramid.bwcompat) INFO: REQUEST [view] '/wiki/334037' selected controller <cubicweb.web.views.basecontrollers.ViewController object at 0x7f133802ae90> at /root/.virtualenvs/abreton/local/lib/python2.7/site-packages/cubicweb/web/views/basecontrollers.py:120 2019-06-12 16:26:59 - (cubicweb.pyramid.bwcompat) INFO: REQUEST [data] '/data/ea5eb3b6f89fba0ff4b671093c88d3dd/images/cartouche-mur.jpg' selected controller <cubicweb.web.views.staticcontrollers.DataController object at 0x7f1332a84d50> at /root/.virtualenvs/abreton/local/lib/python2.7/site-packages/cubicweb/web/views/staticcontrollers.py:179 The make debugging easier as this isn't done already. Most other web frameworks do something similar for the developper to be able to understand what is happening right now. Closes #17219741
Wed, 21 Aug 2019 04:52:08 +0200 [logging/debug] move transaction operations logs from self.debug to DBG_OPS
Laurent Peuch <cortex@worlddomination.be> [Wed, 21 Aug 2019 04:52:08 +0200] rev 12740
[logging/debug] move transaction operations logs from self.debug to DBG_OPS There were a mixing between displaying transaction operations log on logger.debug and only when DBG_OPS was on, uniformize everything behind DBG_OPS. Closes #17229126
Wed, 21 Aug 2019 02:10:12 +0200 [debug] syntax highlight SQL and RQL debug output
Laurent Peuch <cortex@worlddomination.be> [Wed, 21 Aug 2019 02:10:12 +0200] rev 12739
[debug] syntax highlight SQL and RQL debug output This prevent DBG_RQL and DBG_SQL output to looks like a gigantic blob of white text. Do this only if we detect that we are in a tty and that pygments is installed. Closes #17222885
Tue, 20 Aug 2019 22:45:46 +0200 [logging] send logs by default to stdout
Laurent Peuch <cortex@worlddomination.be> [Tue, 20 Aug 2019 22:45:46 +0200] rev 12738
[logging] send logs by default to stdout Following the move to have commands only working on foreground sending logs to a file by default doesn't make much more sens anymore so send them to stdout by default and add a new option to send them to a file if needed
Tue, 21 May 2019 18:16:51 +0200 [cubicweb-ctl] backport --dbglevel option of pyramid to all instance commands
Laurent Peuch <cortex@worlddomination.be> [Tue, 21 May 2019 18:16:51 +0200] rev 12737
[cubicweb-ctl] backport --dbglevel option of pyramid to all instance commands Closes #17219653
Tue, 21 May 2019 18:08:17 +0200 [cubicweb-ctl] backport --loglevel option of pyramid to all instance commands
Laurent Peuch <cortex@worlddomination.be> [Tue, 21 May 2019 18:08:17 +0200] rev 12736
[cubicweb-ctl] backport --loglevel option of pyramid to all instance commands
Thu, 25 Jul 2019 03:33:01 +0200 [cubicweb-ctl/fix] correctly get exception traceback_ for pdb.post_mortem
Laurent Peuch <cortex@worlddomination.be> [Thu, 25 Jul 2019 03:33:01 +0200] rev 12735
[cubicweb-ctl/fix] correctly get exception traceback_ for pdb.post_mortem In python 3 the behavior of sys.exc_info had a very subtle change: - in python 2 you can call if whenever you want after a try/except statement and you'll get information about this last raise - ipython 3, once you get out of try/except, sys.exc_info is cleaned and you'll get (None, None, None) Hardened the test to avoid this error from happening again.
Tue, 15 Oct 2019 15:30:56 +0200 Document mercurial configuration for contributing
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 15 Oct 2019 15:30:56 +0200] rev 12734
Document mercurial configuration for contributing * how to use master/review repositories * how to send the "Available at" command in patchbomb emails * how to add the "cubicweb" flag in patchbomb emails * how to use our "jenkins" mercurial extension Closes #17243538
Fri, 11 Oct 2019 12:42:35 +0200 Add documentation on workflow permission
Noe Gaumont <ngaumont@logilab.fr> [Fri, 11 Oct 2019 12:42:35 +0200] rev 12733
Add documentation on workflow permission
Fri, 11 Oct 2019 12:41:16 +0200 Remove undefined function in documentation
Noe Gaumont <ngaumont@logilab.fr> [Fri, 11 Oct 2019 12:41:16 +0200] rev 12732
Remove undefined function in documentation
Wed, 09 Oct 2019 11:44:22 +0200 Merge 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 09 Oct 2019 11:44:22 +0200] rev 12731
Merge 3.26
Wed, 22 May 2019 01:16:55 +0200 [pyramid/ctl] pyramid command will always run in foreground from now on
Laurent Peuch <cortex@worlddomination.be> [Wed, 22 May 2019 01:16:55 +0200] rev 12730
[pyramid/ctl] pyramid command will always run in foreground from now on Daemonization used to make sens in the past, but today "pyramid" command is only used for dev and should never be used for deployement (you should use a wsgi server for that instead) so daemonization doesn't fit any use case anymore. Closes #17232923
Thu, 22 Aug 2019 04:07:08 +0200 [clean] remove pyramid warning about looping task
Laurent Peuch <cortex@worlddomination.be> [Thu, 22 Aug 2019 04:07:08 +0200] rev 12729
[clean] remove pyramid warning about looping task This warning isn't useful anymore.
Thu, 20 Jun 2019 16:18:19 +0200 [doc] add instruction to re-enable ckeditor 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 20 Jun 2019 16:18:19 +0200] rev 12728
[doc] add instruction to re-enable ckeditor
Wed, 11 Sep 2019 18:31:08 +0200 [fix] reference to underclared and unused variable kwargs 3.26
Laurent Peuch <cortex@worlddomination.be> [Wed, 11 Sep 2019 18:31:08 +0200] rev 12727
[fix] reference to underclared and unused variable kwargs
Wed, 11 Sep 2019 11:56:43 +0200 Avoid to update inlined relation column to NULL when deleting entities 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 11 Sep 2019 11:56:43 +0200] rev 12726
Avoid to update inlined relation column to NULL when deleting entities When deleting entities, cubicweb run a rql DELETE on all relations to trigger hooks. For an inlined relation this also mean set the column to NULL. This operation may fail if there's additional constraints on the column. Also this is a weird and useless behavior since deleting the entity row will by definition delete the relation. We still doesn't handle the case where both subject and object are going to be deleted because rows need to be deleted in a particular order that cubicweb doesn't handle. Add a test checking UPDATE does not occur but hooks are correctly called. Closes #17236690
Wed, 11 Sep 2019 11:37:05 +0200 Drop useless ConstraintInsertionTC 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 11 Sep 2019 11:37:05 +0200] rev 12725
Drop useless ConstraintInsertionTC This test does nothing and is here from the begining of repo history. Now it raise an error "TypeError: Skipped expected string as 'msg' parameter, got 'SkipTest' instead. Perhaps you meant to use a mark?" Just drop it.
Tue, 27 Aug 2019 14:26:21 +0200 Backed out changeset 741dc2590f90
Nicola Spanti <nicola.spanti@logilab.fr> [Tue, 27 Aug 2019 14:26:21 +0200] rev 12724
Backed out changeset 741dc2590f90 It was for cube s3storage, but this piece of information was apparently not in the email (used for review), so this patch was published in the wrong repository. :-/
Fri, 23 Aug 2019 11:16:46 +0200 [.gitlab-ci] initial version (tox targets)
Arthur Lutz <arthur.lutz@logilab.fr> [Fri, 23 Aug 2019 11:16:46 +0200] rev 12723
[.gitlab-ci] initial version (tox targets)
Tue, 06 Aug 2019 16:43:46 +0200 Merge with 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Aug 2019 16:43:46 +0200] rev 12722
Merge with 3.26
Tue, 06 Aug 2019 16:36:21 +0200 Added tag debian/3.26.14-1, 3.26.14 for changeset 172f683a84f6 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Aug 2019 16:36:21 +0200] rev 12721
Added tag debian/3.26.14-1, 3.26.14 for changeset 172f683a84f6
Tue, 06 Aug 2019 15:43:59 +0200 [pkg] version 3.26.14 3.26 3.26.14 debian/3.26.14-1
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Aug 2019 15:43:59 +0200] rev 12720
[pkg] version 3.26.14
Tue, 06 Aug 2019 14:26:17 +0200 [py3] Pass bytes as "msg" to smtplib.SMTP.sendmail() 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Aug 2019 14:26:17 +0200] rev 12719
[py3] Pass bytes as "msg" to smtplib.SMTP.sendmail() When passing a unicode string to smtplib.SMTP.sendmail() as "msg" argument, there is an implicit bytes encoding using "ascii" encoding in python3. Of course this does not work if the string contains non-ASCII characters. In fact, config's sendmails method intent to pass bytes to smtplib.SMTP.sendmail() as it uses msg.as_string() method. Unfortunately, in python3, this method returns a unicode string whereas it returns a bytes string in python2; we thus fix this by calling as_bytes() method on python3. As there is no "as_bytes" method in python2, we need to handle python2 compatibility by hand and either call as_string() or as_bytes(). In testlib, where we mock smtplib.SMTP, we need to keep the "msg" argument of Email class (defined in testlib as well) a unicode string. Otherwise, it fails to be parsed by email.message_from_string() (from stdlib) if it is bytes on python3.
Thu, 01 Aug 2019 09:20:40 +0200 [debian] Cleanup d/source/options from now gone symlinks
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 01 Aug 2019 09:20:40 +0200] rev 12718
[debian] Cleanup d/source/options from now gone symlinks
Thu, 01 Aug 2019 09:13:52 +0200 [pkg] Version 3.27.0.a2
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 01 Aug 2019 09:13:52 +0200] rev 12717
[pkg] Version 3.27.0.a2
Wed, 24 Jul 2019 15:28:11 +0200 [debug/clean] remove unused DBG_MS flag
Laurent Peuch <cortex@worlddomination.be> [Wed, 24 Jul 2019 15:28:11 +0200] rev 12716
[debug/clean] remove unused DBG_MS flag
Tue, 30 Jul 2019 14:47:25 +0200 Avoid using gone hooks_control() in migration
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 30 Jul 2019 14:47:25 +0200] rev 12715
Avoid using gone hooks_control() in migration This deprecated function got dropped in a8c1ea390400. Remove unused import in 3.10.9_Any.py migration; replace usage in bootstrapmigration_repository.py by non-deprecated form.
Tue, 30 Jul 2019 14:42:15 +0200 [tox] Remove --ignore in check-manifest check
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 30 Jul 2019 14:42:15 +0200] rev 12714
[tox] Remove --ignore in check-manifest check All symlinks have been dropped in previous changesets.
Tue, 30 Jul 2019 10:16:51 +0200 [doc] link to 3.27 (and missing 3.26) pages
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 30 Jul 2019 10:16:51 +0200] rev 12713
[doc] link to 3.27 (and missing 3.26) pages
Wed, 24 Jul 2019 16:52:59 +0200 [pkg] Version 3.27.0a1
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 16:52:59 +0200] rev 12712
[pkg] Version 3.27.0a1
Wed, 24 Jul 2019 16:52:00 +0200 [test] Replace symlinks by real copies
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 16:52:00 +0200] rev 12711
[test] Replace symlinks by real copies This solves a "python setup.py build" issue.
Wed, 24 Jul 2019 16:03:01 +0200 [pkg] Version 3.27.0a0
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 16:03:01 +0200] rev 12710
[pkg] Version 3.27.0a0
Wed, 24 Jul 2019 15:14:56 +0200 Merge with 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 15:14:56 +0200] rev 12709
Merge with 3.26
Wed, 24 Jul 2019 13:39:52 +0200 Added tag debian/3.26.13-1, 3.26.13 for changeset 1fc684253207 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 13:39:52 +0200] rev 12708
Added tag debian/3.26.13-1, 3.26.13 for changeset 1fc684253207
Wed, 24 Jul 2019 10:22:25 +0200 [pkg] Version 3.26.13 3.26 3.26.13 debian/3.26.13-1
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 10:22:25 +0200] rev 12707
[pkg] Version 3.26.13
Wed, 24 Jul 2019 11:43:21 +0200 [test] Replace symlinks in legacy_cubes by real copies 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 11:43:21 +0200] rev 12706
[test] Replace symlinks in legacy_cubes by real copies This solves a "python setup.py build" issue on my machine. Copying these files should not be a big deal because they have been dropped in the "default" branch and we would not touch them in 3.26 branch.
Tue, 23 Jul 2019 17:21:18 +0200 [pkg] Prune packaging files from sdist 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 23 Jul 2019 17:21:18 +0200] rev 12705
[pkg] Prune packaging files from sdist
Mon, 10 Jun 2019 12:04:39 +0200 [pkg] Fix spelling mistake in doc-base abstract 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 12:04:39 +0200] rev 12704
[pkg] Fix spelling mistake in doc-base abstract
Mon, 10 Jun 2019 12:04:11 +0200 [pkg] Fix doc-base section 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 12:04:11 +0200] rev 12703
[pkg] Fix doc-base section As pointed by Lintian, the “Apps” section is only used in menu, not in doc-base. We can just remove it.
Mon, 10 Jun 2019 11:15:17 +0200 [pkg] Move lintian-overrides file to debian/source directory 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 11:15:17 +0200] rev 12702
[pkg] Move lintian-overrides file to debian/source directory Just use the now preferred location.
Thu, 13 Jun 2019 16:47:47 +0200 [pkg] Tidy substvars usage in control file 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Thu, 13 Jun 2019 16:47:47 +0200] rev 12701
[pkg] Tidy substvars usage in control file The documentation package was missing a Built-Using field to record the provenance of the templates. Empty packages or meta packages do not require Depends on a specific Python version, so we can remove the relevant substvars.
Mon, 10 Jun 2019 10:53:48 +0200 [pkg] Specify priority “optional” instead of the obsolete “extra” 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 10:53:48 +0200] rev 12700
[pkg] Specify priority “optional” instead of the obsolete “extra” Quoting Lintian, “Since Debian Policy version 4.0.1, the priority extra has been deprecated.” So let's use “optional” instead.
Wed, 05 Jun 2019 16:29:04 +0200 [pkg] Switch to Debian source format 3.0 (quilt) 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 05 Jun 2019 16:29:04 +0200] rev 12699
[pkg] Switch to Debian source format 3.0 (quilt) This forces us to base the Debian package on the source of the Python package (as produced by running `python3 setup.py sdist`). While it might seem cumbersome, this greatly reduces likelyhood of mismatch between an installation via `pip` and one using the Debian package. `dpkg-source` will also document for us what is currently in the source repository but not in the Python package. Currently the missing file are: PKG-INFO cubicweb/sobjects/test/data/cubicweb_comment/schema.py cubicweb/sobjects/test/data/cubicweb_comment/__init__.py cubicweb/sobjects/test/data/cubicweb_comment/__pkginfo__.py cubicweb/sobjects/test/data/cubicweb_card/schema.py cubicweb/sobjects/test/data/cubicweb_card/entities.py cubicweb/sobjects/test/data/cubicweb_card/__init__.py cubicweb/sobjects/test/data/cubicweb_card/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_comment/schema.py cubicweb/server/test/data-migractions/cubicweb_comment/__init__.py cubicweb/server/test/data-migractions/cubicweb_comment/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_localperms/schema.py cubicweb/server/test/data-migractions/cubicweb_localperms/__init__.py cubicweb/server/test/data-migractions/cubicweb_localperms/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_basket/schema.py cubicweb/server/test/data-migractions/cubicweb_basket/__init__.py cubicweb/server/test/data-migractions/cubicweb_basket/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_comment/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_comment/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_comment/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_localperms/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_localperms/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_localperms/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_basket/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_basket/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_basket/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_tag/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_tag/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_tag/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_card/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_card/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_card/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_file/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_file/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_file/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_tag/schema.py cubicweb/server/test/data-migractions/cubicweb_tag/__init__.py cubicweb/server/test/data-migractions/cubicweb_tag/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_card/schema.py cubicweb/server/test/data-migractions/cubicweb_card/__init__.py cubicweb/server/test/data-migractions/cubicweb_card/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_file/schema.py cubicweb/server/test/data-migractions/cubicweb_file/__init__.py cubicweb/server/test/data-migractions/cubicweb_file/__pkginfo__.py cubicweb/test/data-rewrite/cubicweb_localperms/schema.py cubicweb/test/data-rewrite/cubicweb_localperms/__init__.py cubicweb/test/data-rewrite/cubicweb_localperms/__pkginfo__.py cubicweb/test/data-rewrite/cubicweb_card/schema.py cubicweb/test/data-rewrite/cubicweb_card/entities.py cubicweb/test/data-rewrite/cubicweb_card/__init__.py cubicweb/test/data-rewrite/cubicweb_card/__pkginfo__.py The current manifest will duplicate several files that are stored as symlinks in the Mercurial repository, hence the long list of ignored files in `extend-diff-ignore`.
Fri, 12 Jul 2019 11:52:27 +0200 [debian] Update description of cubicweb-ctl* packages 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jul 2019 11:52:27 +0200] rev 12698
[debian] Update description of cubicweb-ctl* packages init scripts are no longer shipped. Avoid mentionning "start" and "stop" command which should not be used in production environments.
Fri, 12 Jul 2019 11:49:46 +0200 [debian] Introduce a cubicweb-ctl3 binary package 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jul 2019 11:49:46 +0200] rev 12697
[debian] Introduce a cubicweb-ctl3 binary package This packages conflicts with cubicweb-ctl binary which uses the python2 library. It is meant to ease upgrade of existing installation during the migration from python2 to python3: in particular, by installing cubicweb-ctl3, scripts calling "cubicweb-ctl" command should still work as before.
Mon, 22 Jul 2019 11:21:10 +0200 [cubicweb-ctl] respect sys.exit status code when aborting a command
Laurent Peuch <cortex@worlddomination.be> [Mon, 22 Jul 2019 11:21:10 +0200] rev 12696
[cubicweb-ctl] respect sys.exit status code when aborting a command When exploring the stack of all calls to a cubicweb-ctl command, it has been discovered than on a KeyboardInterrupt and on a SystemExit exception the base class InstanceCommand (for commands that works on one instance) will always set the return code of cubicweb-ctl to 8: this mean that if another command do a `sys.exit(some_code)` the exit code will be ignored and overwritten by '8'. This behavior is not intuitive, apparently not documented and doesn't seems to have any justification. It also prevent commands from exciting with different return codes which could be a desired behavior in the situation of scripting.
Mon, 22 Jul 2019 11:32:12 +0200 [test] Add an "actionverb" attribute to test commands
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 22 Jul 2019 11:32:12 +0200] rev 12695
[test] Add an "actionverb" attribute to test commands
Mon, 22 Jul 2019 11:25:17 +0200 [test] use self.assertRaises() in cwctl tests
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 22 Jul 2019 11:25:17 +0200] rev 12694
[test] use self.assertRaises() in cwctl tests
Mon, 22 Jul 2019 11:09:15 +0200 [test] ensure mocking is stopped in cwctl tests
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 22 Jul 2019 11:09:15 +0200] rev 12693
[test] ensure mocking is stopped in cwctl tests Either use a decorator or ensure that cleanup is performed. This is so as to prevent global state modification.
Tue, 21 May 2019 16:47:13 +0200 [cubicweb-ctl] add '--pdb' global option to launch (i)pdb on exception
Laurent Peuch <cortex@worlddomination.be> [Tue, 21 May 2019 16:47:13 +0200] rev 12692
[cubicweb-ctl] add '--pdb' global option to launch (i)pdb on exception
Mon, 22 Jul 2019 10:54:22 +0200 [test] Rename TestCommand to avoid PytestCollectionWarning
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 22 Jul 2019 10:54:22 +0200] rev 12691
[test] Rename TestCommand to avoid PytestCollectionWarning
Wed, 10 Jul 2019 14:58:41 +0200 [pkg] Add new autopkgtest for skeleton packaging 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 10 Jul 2019 14:58:41 +0200] rev 12690
[pkg] Add new autopkgtest for skeleton packaging When running `cubicweb-ctl newcube`, the generated template provides debian packaging. So let's add automated tests for that using autopkgtest. The new test will generated a new cube, build a source tarball, build the package, try to install it, see if the Python 2 and 3 modules are available and even run autopkgtest against the newly created packages. Along the way it will also print information about the generated package: buildinfo, package content, and lintian report.
Wed, 10 Jul 2019 14:57:58 +0200 [skeleton] Update Debian packaging template 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 10 Jul 2019 14:57:58 +0200] rev 12689
[skeleton] Update Debian packaging template Here are multiple updates to the Debian packaging template provided when running `cubicweb-ctl newcube`: * Switch to source format 3.0 (quilt). * Switch to debhelper 9. * Switch to dh-python. * Add Python 3 packages. * Name the binary packages `python-cubicweb-CUBENAME` and `python3-cubicweb-CUBENAME` instead of just `cubicweb-CUBENAME` (which is still the source package). * Populate Depends using dh_python{2,3} support for Python requirements. * Run test suite at build time using pytest. * Add autopkgtest to run test suite against the installed package. * Bump Standards-Version to 4.3.0.
Wed, 26 Jun 2019 12:35:25 +0200 [test] Use --short-description when testing newcube command 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Jun 2019 12:35:25 +0200] rev 12688
[test] Use --short-description when testing newcube command
Mon, 17 Jun 2019 17:23:36 +0200 [devtools] Allow to specify short desc on `newcube` command line 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 17 Jun 2019 17:23:36 +0200] rev 12687
[devtools] Allow to specify short desc on `newcube` command line In order to implement automated testing of `cubicweb-ctl newcube`, we need to avoid any user interaction. So we add a `-s` switch to specify a short description on the command-line instead of requiring an input.
Mon, 17 Jun 2019 17:25:04 +0200 [pkg] Add new autopkgtest for skeleton packaging
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 17 Jun 2019 17:25:04 +0200] rev 12686
[pkg] Add new autopkgtest for skeleton packaging When running `cubicweb-ctl newcube`, the generated template provides debian packaging. So let's add automated tests for that using autopkgtest. The new test will generated a new cube, build a source tarball, build the package, try to install it, see if the Python 3 module is available and even run autopkgtest against the newly created packages. Along the way it will also print information about the generated package: buildinfo, package content, and lintian report.
Tue, 21 May 2019 16:36:12 +0200 [cubicweb-ctl] move to accepting only once instance name per command
Laurent Peuch <cortex@worlddomination.be> [Tue, 21 May 2019 16:36:12 +0200] rev 12685
[cubicweb-ctl] move to accepting only once instance name per command The rationals behind this decision are: - while in the past managing all instances sytem wide made a lot of sens, pratices have evolved today and we've moved to managing one instance by one - this makes things easier to debug since commands since using them on several instances were making this harder (errors hidden in the middle) - also solve the problem of the return code to have, before it was always 0 which prevented to do things like: ipython --pdb $(which cubicweb-ctl) $command $instance or shell scripts that used it - this simplify the code and is always good to take
Tue, 09 Jul 2019 11:13:08 +0200 [pkg] Run all unit tests in autopkgtest
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Tue, 09 Jul 2019 11:13:08 +0200] rev 12684
[pkg] Run all unit tests in autopkgtest We previously forgot to copy `tox.ini` alongside the tests. As this file configures pytest pattern matching rules, we were not running quite a few tests. This is now fixed. The added tests required some adjustments in the Debian dependencies. Sadly, not all tests currently pass. It seems there are some ordering dependencies between the tests in regards to how data are loaded. Fixing this probably would probably be better debugged by ensuring the test suite does not fail when using pytest random-order plugin.
Wed, 19 Jun 2019 18:45:10 +0200 [pkg] Stop running unit tests from skeleton
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 18:45:10 +0200] rev 12683
[pkg] Stop running unit tests from skeleton The test files shipped as part as the skeleton for `cubeweb-ctl newcube` are not meant to be run as part of our test suite!
Wed, 19 Jun 2019 18:43:38 +0200 [tests] Use 16 bytes key when testing Blowfish
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 18:43:38 +0200] rev 12682
[tests] Use 16 bytes key when testing Blowfish The version of Cryptodome currently in Debian only accepts Blowfish keys with at least 5 bytes. This is a bug (it should accept 4 as it did before) that has since been fixed upstream: https://github.com/Legrandin/pycryptodome/commit/93912230f3c39e09f4038cb17e301468687c6538 So we work around this issue by using a 16 bytes key instead (which happens to be the minimum recommended length).
Tue, 09 Jul 2019 14:35:44 +0200 Use time.process_time() instead of deprecated clock()
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 09 Jul 2019 14:35:44 +0200] rev 12681
Use time.process_time() instead of deprecated clock() This fixes: DeprecationWarning: time.clock has been deprecated in Python 3.3 and will be removed from Python 3.8: use time.perf_counter or time.process_time instead
Tue, 09 Jul 2019 14:20:30 +0200 [web] Make the time separator configurable in JQueryDateTimePicker
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 09 Jul 2019 14:20:30 +0200] rev 12680
[web] Make the time separator configurable in JQueryDateTimePicker We add a "separator" argument to JQueryDateTimePicker which will be used when creating the underlying JQueryTimePicker instance so that the user can control how time is displayed by the widget. This is very similar to the "timesteps" argument that's already present.
Tue, 02 Jul 2019 14:54:01 +0200 Added tag 3.26.12, debian/3.26.12-1 for changeset 4531a266f8b2 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 02 Jul 2019 14:54:01 +0200] rev 12679
Added tag 3.26.12, debian/3.26.12-1 for changeset 4531a266f8b2
Tue, 02 Jul 2019 11:32:59 +0200 [pkg] Version 3.26.12 3.26 3.26.12 debian/3.26.12-1
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 02 Jul 2019 11:32:59 +0200] rev 12678
[pkg] Version 3.26.12
Thu, 27 Jun 2019 12:20:22 +0200 [autoform] Fix display_fields handling 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 27 Jun 2019 12:20:22 +0200] rev 12677
[autoform] Fix display_fields handling This follows-up on changeset b2ceb483e056 (present in 3.25 as well), in which AutomaticEntityForm.editable_attributes() was turned into a generator. In this method, in case display_fields is not None, we previously returned a list of (rtype, role); this was changed into a yield, but the change was missing a return after the loop in order not to go through the remainder of the function. Add tests for editable_attributes() method.
Thu, 27 Jun 2019 12:27:37 +0200 Flake8 cubicweb/web/views/autoform.py 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 27 Jun 2019 12:27:37 +0200] rev 12676
Flake8 cubicweb/web/views/autoform.py Fixes: cubicweb/web/views/autoform.py:703: [E122] continuation line missing indentation or outdented cubicweb/web/views/autoform.py:704: [E122] continuation line missing indentation or outdented cubicweb/web/views/autoform.py:819: [W504] line break after binary operator cubicweb/web/views/autoform.py:820: [E125] continuation line with same indent as next logical line cubicweb/web/views/autoform.py:961: [W504] line break after binary operator cubicweb/web/views/autoform.py:962: [E126] continuation line over-indented for hanging indent
Thu, 27 Jun 2019 12:13:21 +0200 [py3] unicode() -> six.text_type in autoform 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 27 Jun 2019 12:13:21 +0200] rev 12675
[py3] unicode() -> six.text_type in autoform
Wed, 26 Jun 2019 15:01:45 +0200 Added tag debian/3.26.11-2 for changeset e7eb914df71d 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Jun 2019 15:01:45 +0200] rev 12674
Added tag debian/3.26.11-2 for changeset e7eb914df71d
Wed, 26 Jun 2019 15:01:15 +0200 [debian] Release 3.26.11-2 3.26 debian/3.26.11-2
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Jun 2019 15:01:15 +0200] rev 12673
[debian] Release 3.26.11-2
Wed, 26 Jun 2019 13:19:30 +0200 [test] Require pycryptodomex, not pycryptodome
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Jun 2019 13:19:30 +0200] rev 12672
[test] Require pycryptodomex, not pycryptodome This follows up on changeset 5b0ce10a7046.
Tue, 25 Jun 2019 16:44:31 +0200 [debian] Mention Lintian warnings fixes from previous changesets 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 16:44:31 +0200] rev 12671
[debian] Mention Lintian warnings fixes from previous changesets
Tue, 25 Jun 2019 16:24:45 +0200 [debian] Remove unused/redundant entries from debian/cubicweb-ctl.dirs 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 16:24:45 +0200] rev 12670
[debian] Remove unused/redundant entries from debian/cubicweb-ctl.dirs * bash completion entry produces a lintian warning "package-installs-into-obsolete-dir etc/bash_completion.d/", and it does not install bash completion. * doc directory should be handled automatically.
Tue, 25 Jun 2019 16:21:41 +0200 [debian] Make descriptions of python-cubicweb and python3-cubicweb uniform 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 16:21:41 +0200] rev 12669
[debian] Make descriptions of python-cubicweb and python3-cubicweb uniform Thus solving lintian warning "description-synopsis-starts-with-article".
Tue, 25 Jun 2019 14:49:16 +0200 [debian] Mention that -postgresql-support binaries are dependency package 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 14:49:16 +0200] rev 12668
[debian] Mention that -postgresql-support binaries are dependency package Fixing lintian warning "empty-binary-package".
Tue, 25 Jun 2019 14:42:06 +0200 [debian] Add ${misc:Depends} where missing 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 14:42:06 +0200] rev 12667
[debian] Add ${misc:Depends} where missing Fixes lintian warning "debhelper-but-no-misc-depends".
Tue, 25 Jun 2019 16:43:16 +0200 [debian] Set Section: python for python- binary package 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 16:43:16 +0200] rev 12666
[debian] Set Section: python for python- binary package This is to fix a Lintian warning.
Tue, 25 Jun 2019 16:42:58 +0200 [debian] Install cubicweb-ctl from python2 build 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 25 Jun 2019 16:42:58 +0200] rev 12665
[debian] Install cubicweb-ctl from python2 build Previously, the binary package was empty. Now it is bound to the python2 package as support for python3 is "fresh". In order python2 and python3 packages to be co-installable, we drop the cubicweb-ctl file from both packages.
Thu, 20 Jun 2019 17:02:59 +0200 [debian] Introduce python3-cubicweb and python3-cubicweb-pyramid binary packages 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 20 Jun 2019 17:02:59 +0200] rev 12664
[debian] Introduce python3-cubicweb and python3-cubicweb-pyramid binary packages This is the bare minimum to have a working cubicweb on python3. Further work is done in default branch.
Wed, 19 Jun 2019 09:51:38 +0200 [skeleton] Update Debian packaging template
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 09:51:38 +0200] rev 12663
[skeleton] Update Debian packaging template Here are multiple updates to the Debian packaging template provided when running `cubicweb-ctl newcube`: * Switch to source format 3.0 (quilt). * Switch to debhelper 9. * Switch to dh-python. * Switch to Python 3. * Name the binary package `python3-cubicweb-CUBENAME` instead of just `cubicweb-CUBENAME` (which is still the source package). * Populate Depends using dh_python3 support for Python requirements. * Run test suite at build time using pytest. * Add autopkgtest to run test suite against the installed package. * Bump Standards-Version to 4.3.0.
Wed, 26 Jun 2019 12:35:25 +0200 [test] Use --short-description when testing newcube command
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 26 Jun 2019 12:35:25 +0200] rev 12662
[test] Use --short-description when testing newcube command
Mon, 17 Jun 2019 17:23:36 +0200 [devtools] Allow to specify short desc on `newcube` command line
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 17 Jun 2019 17:23:36 +0200] rev 12661
[devtools] Allow to specify short desc on `newcube` command line In order to implement automated testing of `cubicweb-ctl newcube`, we need to avoid any user interaction. So we add a `-s` switch to specify a short description on the command-line instead of requiring an input.
Mon, 10 Jun 2019 10:51:31 +0200 [pkg] Remove build dependency on dh-systemd 3.26
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 10:51:31 +0200] rev 12660
[pkg] Remove build dependency on dh-systemd As suggested by Lintian, remove build dependency on obsolete package dh-systemd. Instead, specify a more precise version of debhelper 9 that added support for systemd.
Thu, 13 Jun 2019 15:04:13 +0200 [config] Raise in case of failure to send emails when in test mode 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 13 Jun 2019 15:04:13 +0200] rev 12659
[config] Raise in case of failure to send emails when in test mode Since, for some reason, exception log messages are not visible when running tests, it's very hard to debug when sendmails() method fails during tests. So, as in some other places, let's raise the exception when in test mode.
Wed, 19 Jun 2019 16:33:15 +0200 [doc] Update documentation to match current Debian packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 16:33:15 +0200] rev 12658
[doc] Update documentation to match current Debian packages
Wed, 19 Jun 2019 16:32:25 +0200 [pkg] Remove transitional packages
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 16:32:25 +0200] rev 12657
[pkg] Remove transitional packages We can take the opportunity of the switch to Python 3 to get rid of old transitional packages. Let's do it. :)
Wed, 19 Jun 2019 16:10:19 +0200 [pkg] Use sections from requires.txt to populate Recommends and Suggests
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 16:10:19 +0200] rev 12656
[pkg] Use sections from requires.txt to populate Recommends and Suggests As Denis Laxalde pointed out, dh_python can also generate Recommends and Suggests from Python package names. So let's use that instead of manually populating these fields in `debian/control`. Optional dependencies are currently specified in `setup.py` grouped by feature. These dependency groups are turned into sections in `requires.txt`. Thankfully `dh_python3` has options to populate Recommends or Suggests with all package from a given section. `debian/rules` now contains a list of which sections should go to Recommends and which section should go to Suggests. Because such extra list easily gets out-of-sync, we add a third list for ignored sections, and ensure that all sections currently in `requires.txt` get a mentioned in `debian/rules`. Here are the results compared to the previous version with explicit Recommends and Suggests (only listing Python packages): |==============================================================| | only in previous | common | only in new | |==============================================================| | Recommends | |--------------------------------------------------------------| | | python3-docutils | | | python3-fyzz | | | | python3-imaging | | | | | python3-pycryptodome | | | | python3-pyramid | | | | python3-pyramid-multiauth | | | python3-pysqlite2 | | | | | python3-rdflib | | | | python3-repoze.lru | | | python3-simpletal | | | | | python3-vobject | | | | python3-waitress | | | python3-werkzeug | | | | | python3-wsgicors | | |--------------------------------------------------------------| | Suggests | |--------------------------------------------------------------| | | | python3-pil | We also lose versioned dependencies which should not really be an issue for Recommends and Suggests.
Wed, 19 Jun 2019 15:44:17 +0200 [crypto] Use Cryptodome namespace instead of Crypto
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 19 Jun 2019 15:44:17 +0200] rev 12655
[crypto] Use Cryptodome namespace instead of Crypto PyCryptodome comes in two flavors: “an almost drop-in replacement for the old PyCrypto library” and “a library independent of the old PyCrypto”. The former uses the Crypto namespace, and is shipped as `pycryptodome` while the latter uses Cryptodome instead and lies in the `pycryptodomex` package. Given the reason to switch to PyCryptodome is that PyCrypto in unmaintained, its probably better to avoid any mistake and mandate the specific usage of the Cryptodome namespace by requiring `pycryptodomex` instead of `pycryptodome`. A more present reason is that Debian buster will only provide a package with the separate namespace flavor. The current Recommends is not working with the current code. Although it's important to note that the package name will probably have to be changed to `python3-pycryptodomex` once https://bugs.debian.org/886291 is solved.
Mon, 17 Jun 2019 11:12:03 +0200 [pkg] Remove python3-six from Build-Depends
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 17 Jun 2019 11:12:03 +0200] rev 12654
[pkg] Remove python3-six from Build-Depends The default branch only provides support for Python 3.
Mon, 17 Jun 2019 11:11:28 +0200 [pkg] Merge python3-cubicweb-pyramid into python3-cubicweb
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 17 Jun 2019 11:11:28 +0200] rev 12653
[pkg] Merge python3-cubicweb-pyramid into python3-cubicweb As suggested by Denis Laxalde, we can merge python3-cubicweb-pyramid into python3-cubicweb as all other web backend in the default branch.
Mon, 17 Jun 2019 10:37:32 +0200 [pkg] Remove explicit Depends on Python packages for python3-cubicweb
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 17 Jun 2019 10:37:32 +0200] rev 12652
[pkg] Remove explicit Depends on Python packages for python3-cubicweb As suggested by Denis Laxalde, we can let pybuild generate the list of Depends from the egg requirements. The list we get is slightly less specific in terms of needed versions, but given the age of the previous ones, it's unlikely to cause issues. Also we lose python3-six from the list… which is correct as it was removed from the dependencies in 26744ad37953.
Mon, 10 Jun 2019 12:04:39 +0200 [pkg] Fix spelling mistake in doc-base abstract
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 12:04:39 +0200] rev 12651
[pkg] Fix spelling mistake in doc-base abstract
Mon, 10 Jun 2019 12:04:11 +0200 [pkg] Fix doc-base section
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 12:04:11 +0200] rev 12650
[pkg] Fix doc-base section As pointed by Lintian, the “Apps” section is only used in menu, not in doc-base. We can just remove it.
Mon, 10 Jun 2019 11:25:24 +0200 [pkg] Use “dependency package” instead of “virtual package” to describe python3-cubicweb-postgresql-support
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 11:25:24 +0200] rev 12649
[pkg] Use “dependency package” instead of “virtual package” to describe python3-cubicweb-postgresql-support The term “virtual” was too imprecise and is not accepted for empty packages by Lintian anymore.
Mon, 10 Jun 2019 11:15:17 +0200 [pkg] Move lintian-overrides file to debian/source directory
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 11:15:17 +0200] rev 12648
[pkg] Move lintian-overrides file to debian/source directory Just use the now preferred location.
Mon, 10 Jun 2019 11:13:06 +0200 [pkg] Stop using /etc/bash_completion.d
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 11:13:06 +0200] rev 12647
[pkg] Stop using /etc/bash_completion.d cubicweb-ctl shipped an empty /etc/bash_completion.d as a leftover of shipping a bash completion script. As pointed by Lintian, this directory is not obsolete, so let's get rid of it for good.
Thu, 13 Jun 2019 16:47:47 +0200 [pkg] Tidy substvars usage in control file
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Thu, 13 Jun 2019 16:47:47 +0200] rev 12646
[pkg] Tidy substvars usage in control file The documentation package was missing a Built-Using field to record the provenance of the templates. Empty packages or meta packages do not require Depends on a specific Python version, so we can remove the relevant substvars.
Mon, 10 Jun 2019 10:53:48 +0200 [pkg] Specify priority “optional” instead of the obsolete “extra”
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 10:53:48 +0200] rev 12645
[pkg] Specify priority “optional” instead of the obsolete “extra” Quoting Lintian, “Since Debian Policy version 4.0.1, the priority extra has been deprecated.” So let's use “optional” instead.
Mon, 10 Jun 2019 10:51:31 +0200 [pkg] Remove build dependency on dh-systemd
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Mon, 10 Jun 2019 10:51:31 +0200] rev 12644
[pkg] Remove build dependency on dh-systemd As suggested by Lintian, remove build dependency on obsolete package dh-systemd. Instead, specify a more precise version of debhelper 9 that added support for systemd.
Wed, 05 Jun 2019 18:35:51 +0200 [pkg] Run test suite as part of autopkgtest
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 05 Jun 2019 18:35:51 +0200] rev 12643
[pkg] Run test suite as part of autopkgtest Add support for autopkgtest. The test “unittest” will run the test suite using pytest. As we need PostgreSQL in the test environment and open network connection, the test is marked with `isolation-container` and requires at least LXC to be run, e.g: autopkgtest -s -- lxc -s autopkgtest-sid
Wed, 05 Jun 2019 16:29:04 +0200 [pkg] Switch to Debian source format 3.0 (quilt)
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 05 Jun 2019 16:29:04 +0200] rev 12642
[pkg] Switch to Debian source format 3.0 (quilt) This forces us to base the Debian package on the source of the Python package (as produced by running `python3 setup.py sdist`). While it might seem cumbersome, this greatly reduces likelyhood of mismatch between an installation via `pip` and one using the Debian package. `dpkg-source` will also document for us what is currently in the source repository but not in the Python package. Currently the missing file are: PKG-INFO cubicweb/sobjects/test/data/cubicweb_comment/schema.py cubicweb/sobjects/test/data/cubicweb_comment/__init__.py cubicweb/sobjects/test/data/cubicweb_comment/__pkginfo__.py cubicweb/sobjects/test/data/cubicweb_card/schema.py cubicweb/sobjects/test/data/cubicweb_card/entities.py cubicweb/sobjects/test/data/cubicweb_card/__init__.py cubicweb/sobjects/test/data/cubicweb_card/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_comment/schema.py cubicweb/server/test/data-migractions/cubicweb_comment/__init__.py cubicweb/server/test/data-migractions/cubicweb_comment/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_localperms/schema.py cubicweb/server/test/data-migractions/cubicweb_localperms/__init__.py cubicweb/server/test/data-migractions/cubicweb_localperms/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_basket/schema.py cubicweb/server/test/data-migractions/cubicweb_basket/__init__.py cubicweb/server/test/data-migractions/cubicweb_basket/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_comment/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_comment/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_comment/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_localperms/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_localperms/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_localperms/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_basket/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_basket/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_basket/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_tag/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_tag/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_tag/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_card/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_card/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_card/__pkginfo__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_file/schema.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_file/__init__.py cubicweb/server/test/data-migractions/migratedapp/cubicweb_file/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_tag/schema.py cubicweb/server/test/data-migractions/cubicweb_tag/__init__.py cubicweb/server/test/data-migractions/cubicweb_tag/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_card/schema.py cubicweb/server/test/data-migractions/cubicweb_card/__init__.py cubicweb/server/test/data-migractions/cubicweb_card/__pkginfo__.py cubicweb/server/test/data-migractions/cubicweb_file/schema.py cubicweb/server/test/data-migractions/cubicweb_file/__init__.py cubicweb/server/test/data-migractions/cubicweb_file/__pkginfo__.py cubicweb/test/data-rewrite/cubicweb_localperms/schema.py cubicweb/test/data-rewrite/cubicweb_localperms/__init__.py cubicweb/test/data-rewrite/cubicweb_localperms/__pkginfo__.py cubicweb/test/data-rewrite/cubicweb_card/schema.py cubicweb/test/data-rewrite/cubicweb_card/entities.py cubicweb/test/data-rewrite/cubicweb_card/__init__.py cubicweb/test/data-rewrite/cubicweb_card/__pkginfo__.py The current manifest will duplicate several files that are stored as symlinks in the Mercurial repository, hence the long list of ignored files in `extend-diff-ignore`.
Wed, 05 Jun 2019 15:38:29 +0200 [pkg] Switch all Debian packages to Python 3
Jérémy Bobbio <jeremy.bobbio@irq7.fr> [Wed, 05 Jun 2019 15:38:29 +0200] rev 12641
[pkg] Switch all Debian packages to Python 3
Tue, 11 Jun 2019 09:40:12 +0200 Fix sorting key for rdefs in schema viewer
julien tayon <julien.tayon@logilab.fr> [Tue, 11 Jun 2019 09:40:12 +0200] rev 12640
Fix sorting key for rdefs in schema viewer With changeset 234ca3cbbb46, clicking in the schema of an entity with cubicweb in py3 on "vue en boite" will probably result in an infinite spinner (which implies cw > 3.26) What happened ? This "vue en boite" used to work at least until... hg diff -c a8c1ea390400 cubicweb/schema.py @@ -993,10 +992,6 @@ class CubicWebRelationSchema(PermissionM return False return True - @deprecated('use .rdef(subjtype, objtype).role_cardinality(role)') - def cardinality(self, subjtype, objtype, target): - return self.rdef(subjtype, objtype).role_cardinality(target) - class CubicWebSchema(Schema): """set of entities and relations schema defining the possible data sets But, wait ... If I open a shell on an instance of cw 3.24 something seems off >>> list(schema['CWUniqueTogetherConstraint'].relation_definitions())[0][0].cardinality # <bound method CubicWebRelationSchema.wrapped of <constraint_of [CWUniqueTogetherConstraint,CWEType]>> We have been sorting on a method the whole time ? Is it possible what were the effects ? 1) We cannot sort function can't we ? >>> def adder(i): return lambda x: x+i >>> sorted(map(adder,range(10))) [<function __main__.<lambda>>, <function __main__.<lambda>>, ... Yes we can. 2) what does it means. >>> { adder(1) : 1 } Out[19]: {<function __main__.<lambda>>: 1} In fact the function object as a __hash__ method (which is practical for making memoizers (cache)), and return truly random results (pseudo random). My take on this patch is relations have NEVER been sorted by cardinality. No one never ever noticed. Hence, I propose to not fix a bug that never was reported.
Tue, 04 Jun 2019 09:35:47 +0200 Flake8 cubicweb/web/schemaviewer.py
julien tayon <julien.tayon@logilab.fr> [Tue, 04 Jun 2019 09:35:47 +0200] rev 12639
Flake8 cubicweb/web/schemaviewer.py
Tue, 04 Jun 2019 09:35:47 +0200 [py3] changing unicode to str
julien tayon <julien.tayon@logilab.fr> [Tue, 04 Jun 2019 09:35:47 +0200] rev 12638
[py3] changing unicode to str py2 support being dropped, passing the code in full py3 str/bytes syntax
Tue, 11 Jun 2019 09:07:24 +0200 [py3] Use sorted(key=...) instead of sorted(cmp=...)
julien tayon <julien.tayon@logilab.fr> [Tue, 11 Jun 2019 09:07:24 +0200] rev 12637
[py3] Use sorted(key=...) instead of sorted(cmp=...)
Fri, 07 Jun 2019 14:56:22 +0200 Merge with 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 07 Jun 2019 14:56:22 +0200] rev 12636
Merge with 3.26
Fri, 07 Jun 2019 14:53:03 +0200 Added tag 3.26.11, debian/3.26.11-1 for changeset 633ca84bea58 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 07 Jun 2019 14:53:03 +0200] rev 12635
Added tag 3.26.11, debian/3.26.11-1 for changeset 633ca84bea58
Fri, 07 Jun 2019 14:52:51 +0200 [pkg] Version 3.26.11 3.26 3.26.11 debian/3.26.11-1
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 07 Jun 2019 14:52:51 +0200] rev 12634
[pkg] Version 3.26.11
Thu, 06 Jun 2019 16:40:14 +0200 Added tag debian/3.26.10-1 for changeset 0ce26fb5ab48 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 06 Jun 2019 16:40:14 +0200] rev 12633
Added tag debian/3.26.10-1 for changeset 0ce26fb5ab48
Thu, 23 May 2019 16:59:57 +0200 [debian] New upstream release 3.26 debian/3.26.10-1
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 May 2019 16:59:57 +0200] rev 12632
[debian] New upstream release
Thu, 23 May 2019 17:24:21 +0200 [debian] Drop override_dh_auto_install about cubicweb-ctl 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 May 2019 17:24:21 +0200] rev 12631
[debian] Drop override_dh_auto_install about cubicweb-ctl The script should be installed normally as it is a setuptools' entry point.
Thu, 23 May 2019 17:25:59 +0200 [debian] Remove test/doc Build-Depends 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 May 2019 17:25:59 +0200] rev 12630
[debian] Remove test/doc Build-Depends We are not actually running tests during package build. (This was disabled for python2, now it is also for python3.) And having these build-depends makes it hard to rebuild the package.
Tue, 28 May 2019 12:35:34 +0200 [fix] parse cube version number without space in them
Laurent Peuch <cortex@worlddomination.be> [Tue, 28 May 2019 12:35:34 +0200] rev 12629
[fix] parse cube version number without space in them
Fri, 24 May 2019 17:09:10 +0200 Install patched yapps for test from an http archive
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 24 May 2019 17:09:10 +0200] rev 12628
Install patched yapps for test from an http archive Instead of git which require git to be installed. Also downloading archive is faster than cloning the repository.
Thu, 28 Mar 2019 11:39:36 +0100 [server/test] make test filename uniques
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:39:36 +0100] rev 12627
[server/test] make test filename uniques To avoid these pytest error when collecting the whole test suite: import file mismatch: imported module 'unittest_utils' has this __file__ attribute: cubicweb/cubicweb/server/test/unittest_utils.py which is not the same as the test file we want to collect: cubicweb/cubicweb/test/unittest_utils.py Move cubicweb/server/test/unittest_security.py to cubicweb/server/test/unittest_security.py and cubicweb/test/unittest_utils.py to cubicweb/test/unittest_server_utils.py
Fri, 24 May 2019 16:29:14 +0200 Merge 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 24 May 2019 16:29:14 +0200] rev 12626
Merge 3.26
Tue, 21 May 2019 10:50:08 +0200 [dataimport] Fix case when extid is text in use_extid_as_cwuri() 3.26
julien tayon <julien.tayon@logilab.fr> [Tue, 21 May 2019 10:50:08 +0200] rev 12625
[dataimport] Fix case when extid is text in use_extid_as_cwuri() Extid can be bytes or text. This avoid AttributeError: 'str' object has no attribute 'decode'
Wed, 22 May 2019 11:34:08 +0200 [doc] fix key used in the hook example
Noe Gaumont <ngaumont@logilab.fr> [Wed, 22 May 2019 11:34:08 +0200] rev 12624
[doc] fix key used in the hook example The hook's regid is check_no_subsidiary_cycle.
Wed, 22 May 2019 11:32:09 +0200 [doc] set_operation has been replaced by add_data
Noe Gaumont <ngaumont@logilab.fr> [Wed, 22 May 2019 11:32:09 +0200] rev 12623
[doc] set_operation has been replaced by add_data See the changelog https://cubicweb.readthedocs.io/en/3.26/changes/changelog/#id14
Wed, 22 May 2019 11:30:52 +0200 [doc] check_cycle is a standard function
Noe Gaumont <ngaumont@logilab.fr> [Wed, 22 May 2019 11:30:52 +0200] rev 12622
[doc] check_cycle is a standard function
Wed, 22 May 2019 11:29:49 +0200 [doc] fix several typos
Noe Gaumont <ngaumont@logilab.fr> [Wed, 22 May 2019 11:29:49 +0200] rev 12621
[doc] fix several typos
Tue, 21 May 2019 10:18:54 +0200 [pkg] make cubicweb[crypto] depends on pycryptodome instead of pycrypto
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 21 May 2019 10:18:54 +0200] rev 12620
[pkg] make cubicweb[crypto] depends on pycryptodome instead of pycrypto pycrypto isn't maintained anymore, the last release 2.6.1 is from 2014. Use the drop-in replacement fork pycryptodome instead. pycryptodome is packaged in debian starting from stretch-backports.
Tue, 21 May 2019 10:18:38 +0200 [crypto] Encode unicode strings in _cypherer()
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 21 May 2019 10:18:38 +0200] rev 12619
[crypto] Encode unicode strings in _cypherer() pycrypto accept both bytes or string but pycryptodome, which will be introduced in next changeset, doesn't accept this. For backward compatibility, encode unicode strings in _cypherer()
Thu, 16 May 2019 14:26:38 +0200 [ldapfeed] FIX: Unique Key violation when synchronizing with LDAPfeed 3.26
julien tayon <julien.tayon@logilab.fr> [Thu, 16 May 2019 14:26:38 +0200] rev 12618
[ldapfeed] FIX: Unique Key violation when synchronizing with LDAPfeed What was happening ================== The bug appears when ldapfeed tries to insert a user while another user exists exists with a different source. Simple use case to reproduce: - create a local user in cubicweb (source=system) - sync with ldap - ldapfeed will stop complaining user already exists. Without next patch the test MUST fail with message: cubicweb/server/sources/native.py:714: UniqueTogetherError The ldapfeed is thus stopped ignoring any further ldap entries. The proposal ============ Prior to this patch, the insertion was trying to create all CWUser with the computed login from eeimporter.extid2eid (method process of DataFeedLDAPAdapter). When a CWUser existed with a different cw_source ("system" for user created with cubicweb for instance), it created a conflict. To avoid collisions, in the extentities_generator method a bypass was added at the insertion layer. Prior to insertion the absence of the computed login is checked on a list of all existing login from a different source. If collision is detected, we skip the ldap record. By short circuiting at the CWUser entity insertion level we also avoid to treat CWGroup and EmailAddress related to this user. Hence ensuring a behaviour that will not break existing instances. (conservative approach: faced with ambiguity better do nothing than guess). An error message is added stating explicitly the conflict.
Fri, 15 Mar 2019 12:12:23 +0100 Skip tests for ldapsource with python >= 3.7 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 15 Mar 2019 12:12:23 +0100] rev 12617
Skip tests for ldapsource with python >= 3.7 Until someone works on fixing these, this should make our CI green again. I tried to use setupModule() to check for python version, but pre_setup_database() is apparently called even when a SkipTest exception is raised there. So handle this in that method. (grafted from 4d68d20427dee4b6751a0f1f5511fec2a04f4782)
Thu, 16 May 2019 17:18:29 +0200 Flake8 crypto module 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 16 May 2019 17:18:29 +0200] rev 12616
Flake8 crypto module
Thu, 16 May 2019 17:17:42 +0200 Make crypto module python3-compatible 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 16 May 2019 17:17:42 +0200] rev 12615
Make crypto module python3-compatible * Remove usage of unicode() and decode the base64-encoded string in encrypt(); * Encode the string received in decrypt() as (I supposed) it should come from the result of encrypt(). Add tests for this module along the way.
Thu, 16 May 2019 04:42:59 +0200 [mod] make ViolatedConstraint actually display useful information
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 04:42:59 +0200] rev 12614
[mod] make ViolatedConstraint actually display useful information Move from: (Pdb++) raise some_exception *** ViolatedConstraint: To: (Pdb++) raise some_exception *** ViolatedConstraint: constraint 'cstr56c2ab4b3154f21d08b067742ce5bd9d' is being violated by the query 'ALTER TABLE cw_Bibliography ADD CONSTRAINT cstr56c2ab4b3154f21d08b067742ce5bd9d CHECK(cw_item_type IN ('journalArticle', 'note', 'book', 'thesis', 'film', 'web page', 'manuscrit', 'tapuscrit'))'. You can run the inverted constraint on the database to list the problematic rows. And save hours of debugging to actually understand what is going on.
Thu, 16 May 2019 09:40:28 +0200 Fix flake8 errors/warnings about import in cubicweb/_exceptions.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 16 May 2019 09:40:28 +0200] rev 12613
Fix flake8 errors/warnings about import in cubicweb/_exceptions.py We either ignore errors in case of name re-exports and drop re-exports from old backwards compatibility. We fix the only occurrence of NoSelectableObject being imported from cubicweb in tests and update the import to use lgc instead.
Thu, 16 May 2019 04:47:27 +0200 add comment and # noqa on used import
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 04:47:27 +0200] rev 12612
add comment and # noqa on used import
Thu, 16 May 2019 04:47:10 +0200 remove unused import
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 04:47:10 +0200] rev 12611
remove unused import
Thu, 16 May 2019 02:39:42 +0200 [autopep8] E305 - Expected 2 blank lines after end of function or class
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 02:39:42 +0200] rev 12610
[autopep8] E305 - Expected 2 blank lines after end of function or class
Thu, 16 May 2019 02:39:41 +0200 [autopep8] E303 - Remove extra blank lines
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 02:39:41 +0200] rev 12609
[autopep8] E303 - Remove extra blank lines
Thu, 16 May 2019 02:39:41 +0200 [autopep8] E302 - Add missing 2 blank lines
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 02:39:41 +0200] rev 12608
[autopep8] E302 - Add missing 2 blank lines
Thu, 16 May 2019 02:39:40 +0200 [autopep8] E301 - Add missing blank line
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 02:39:40 +0200] rev 12607
[autopep8] E301 - Add missing blank line
Thu, 16 May 2019 01:23:51 +0200 [enh] display CWConstraint type in its repr
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 01:23:51 +0200] rev 12606
[enh] display CWConstraint type in its repr This will change CWConstraint repr from something like: <Entity CWConstraint 314282 [] at 140127700141904> To: <Entity CWConstraint 314282 of type UniqueConstraint [] at 140127700141904> To help improve debugging UX a little bit.
Thu, 16 May 2019 01:23:51 +0200 [entities] display CWConstraint type in its repr 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 16 May 2019 01:23:51 +0200] rev 12605
[entities] display CWConstraint type in its repr
Wed, 15 May 2019 14:23:19 +0200 [changelog] document pyramid.ini automatic generation
Laurent Peuch <cortex@worlddomination.be> [Wed, 15 May 2019 14:23:19 +0200] rev 12604
[changelog] document pyramid.ini automatic generation
Wed, 15 May 2019 15:50:29 +0200 Flake8 cubicweb/pyramid/test/test_hooks.py
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 15 May 2019 15:50:29 +0200] rev 12603
Flake8 cubicweb/pyramid/test/test_hooks.py
Wed, 15 May 2019 12:06:29 +0200 [pyramid/doc] bad docstring
Laurent Peuch <cortex@worlddomination.be> [Wed, 15 May 2019 12:06:29 +0200] rev 12602
[pyramid/doc] bad docstring
Wed, 15 May 2019 12:06:15 +0200 [pyramid/misc] remove useless variable
Laurent Peuch <cortex@worlddomination.be> [Wed, 15 May 2019 12:06:15 +0200] rev 12601
[pyramid/misc] remove useless variable
Wed, 15 May 2019 12:05:52 +0200 [pyramid/test] add test for pyramid.ini generation
Laurent Peuch <cortex@worlddomination.be> [Wed, 15 May 2019 12:05:52 +0200] rev 12600
[pyramid/test] add test for pyramid.ini generation
Wed, 15 May 2019 15:44:35 +0200 Added tag 3.26.10 for changeset 74cc5de1ee6c 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 15 May 2019 15:44:35 +0200] rev 12599
Added tag 3.26.10 for changeset 74cc5de1ee6c
Wed, 15 May 2019 15:44:26 +0200 [pkg] Version 3.26.10 3.26 3.26.10
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 15 May 2019 15:44:26 +0200] rev 12598
[pkg] Version 3.26.10
Fri, 10 May 2019 16:07:32 +0200 Move CWSchemaTC to RQLExpressionTC
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 10 May 2019 16:07:32 +0200] rev 12597
Move CWSchemaTC to RQLExpressionTC The test actually doesn't require a cubicweb schema, except for testing EmailAdress which is out of scope of the test (testing RQLExpression.transform_has_permission()). Just move the test in existing RQLExpressionTC inheriting from TestCase and rename the tests to be more explicit.
Wed, 17 Apr 2019 16:41:41 +0200 [skeleton] Drop py27 tox environment
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 17 Apr 2019 16:41:41 +0200] rev 12596
[skeleton] Drop py27 tox environment Since we dropped py2 support from cubicweb, it does not make much sense to keep it in skeleton from now on.
Wed, 17 Apr 2019 15:30:42 +0200 [skeleton] Do not ship Debian and RPM packaging files in sdist
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 17 Apr 2019 15:30:42 +0200] rev 12595
[skeleton] Do not ship Debian and RPM packaging files in sdist
Wed, 17 Apr 2019 15:06:57 +0200 [skeleton] Add a check-manifest tox environment
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 17 Apr 2019 15:06:57 +0200] rev 12594
[skeleton] Add a check-manifest tox environment
Fri, 10 May 2019 16:04:37 +0200 Fix pyramid tests
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 10 May 2019 16:04:37 +0200] rev 12593
Fix pyramid tests Followup fa292e9 which require cubicweb.session.secret to be set.
Fri, 10 May 2019 11:42:24 +0200 Fix flake8 and check-manifest
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 10 May 2019 11:42:24 +0200] rev 12592
Fix flake8 and check-manifest Followup fa292e9
Fri, 10 May 2019 15:58:01 +0200 Merge 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 10 May 2019 15:58:01 +0200] rev 12591
Merge 3.26 This fixes tests with psycopg2
Wed, 08 May 2019 21:37:13 +0200 DeprecationWarning: In future versions of Waitress clear_untrusted_proxy_headers will be set to True by default. You may opt-out by setting this value to False, or opt-in explicitly by setting this to True.
Laurent Peuch <cortex@worlddomination.be> [Wed, 08 May 2019 21:37:13 +0200] rev 12590
DeprecationWarning: In future versions of Waitress clear_untrusted_proxy_headers will be set to True by default. You may opt-out by setting this value to False, or opt-in explicitly by setting this to True. Source: https://docs.pylonsproject.org/projects/waitress/en/stable/arguments.html?highlight=clear_untrusted_proxy_headers > This tells Waitress to remove any untrusted proxy headers ("Forwarded", > "X-Forwared-For", "X-Forwarded-By", "X-Forwarded-Host", "X-Forwarded-Port", > "X-Forwarded-Proto") not explicitly allowed by trusted_proxy_headers. According to grep we don't use any of those headers so let's turn it on for security reasons.
Wed, 08 May 2019 21:30:44 +0200 DeprecationWarning: The default pickle serializer is deprecated as of Pyramid 1.9 and it will be changed to use pyramid.session.JSONSerializer in version 2.0. Explicitly set the serializer to avoid future incompatibilities
Laurent Peuch <cortex@worlddomination.be> [Wed, 08 May 2019 21:30:44 +0200] rev 12589
DeprecationWarning: The default pickle serializer is deprecated as of Pyramid 1.9 and it will be changed to use pyramid.session.JSONSerializer in version 2.0. Explicitly set the serializer to avoid future incompatibilities . See "Upcoming Changes to ISession in Pyramid 2.0" for more information about this change. As describe here https://docs.pylonsproject.org/projects/pyramid/en/1.10-branch/narr/sessions.html#pickle-session-deprecation use a serializer that fallback on pickle if needed to avoid impacting users.
Wed, 08 May 2019 20:53:49 +0200 [pyramid/enh] generate pyramid.ini "create" and on "pyramid" command if needed
Laurent Peuch <cortex@worlddomination.be> [Wed, 08 May 2019 20:53:49 +0200] rev 12588
[pyramid/enh] generate pyramid.ini "create" and on "pyramid" command if needed
Wed, 08 May 2019 21:00:45 +0200 DeprecationWarning: The SafeConfigParser class has been renamed to ConfigParser in Python 3.2. This alias will be removed in future versions. Use ConfigParser directly instead.
Laurent Peuch <cortex@worlddomination.be> [Wed, 08 May 2019 21:00:45 +0200] rev 12587
DeprecationWarning: The SafeConfigParser class has been renamed to ConfigParser in Python 3.2. This alias will be removed in future versions. Use ConfigParser directly instead.
Mon, 08 Apr 2019 11:24:53 +0200 Account for new psycopg2 exception classes mapping 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 08 Apr 2019 11:24:53 +0200] rev 12586
Account for new psycopg2 exception classes mapping From psycopg2 >= 2.8, specific exceptions are raised corresponding to postgresql errors. E.g. a CheckViolation exception is raised instead of a generic IntegrityError previously when a constraint violation occurs. The way we intercept database errors, especially for constraint violation, is not compliant with that because we do not catch subclasses of IntegrityError in native source's doexec() method. We fix this by checking for the presence of IntegrityError error in exception class's mro. This is still overcomplicated and clumsy, because we still use string comparison, but this is the best we can do as far as I know. (A better fix would be 'isinstance(ex, IntegrityError)' but we have no engine-independent error classes, so this is not possible. Something like sqlalchemy's DBAPI Errors [1] might help: https://docs.sqlalchemy.org/en/latest/errors.html#dbapi-errors)
Fri, 12 Apr 2019 02:26:28 +0200 [cubicweb-ctl] remove "cubicweb-ctl wsgi" command following pyramid standardization
Laurent Peuch <cortex@worlddomination.be> [Fri, 12 Apr 2019 02:26:28 +0200] rev 12585
[cubicweb-ctl] remove "cubicweb-ctl wsgi" command following pyramid standardization
Fri, 12 Apr 2019 12:31:14 +0200 Use secure hash algorithm in WebConfiguration.sign_text
Laurent Peuch <cortex@worlddomination.be> [Fri, 12 Apr 2019 12:31:14 +0200] rev 12584
Use secure hash algorithm in WebConfiguration.sign_text Fix: PendingDeprecationWarning: HMAC() without an explicit digestmod argument is deprecated. The default hash algorithm used by hmac.new is md5. As of today, md5 is so weak that it's the equivalent of plaintext and can't be considered to be secured at all. Therefor, we switch to a secure hash algorithm. The rational for choosing sha3_512 is: * the recommended algorithm is at least sha_256 * the stronger, the more secured and sha3_512 is the stronger available * thinking about the future this should keep this part of the code safe long enough before people think about checking it again You can read more about choosing a secure hash algorithm in the NIST recommendations https://csrc.nist.gov/Projects/Hash-Functions/NIST-Policy-on-Hash-Functions This code modification should normally be transparent since check_text_sign is exactly this code 'self.sign_text(text) == signature' and that sign_text is only used in combination with it. The only impact is that the hash is going to move from 32 char to 128 which might make html page a bit bigger and that sha3_512 is slow to compute (which is a good thing for security)
Tue, 23 Apr 2019 09:33:52 +0200 [enh] don't catch all exceptions in notification hooks during tests
Laurent Peuch <cortex@worlddomination.be> [Tue, 23 Apr 2019 09:33:52 +0200] rev 12583
[enh] don't catch all exceptions in notification hooks during tests
Thu, 18 Apr 2019 15:09:36 +0200 [doc] add a reference to static-messages.pot usage
Noe Gaumont <ngaumont@logilab.fr> [Thu, 18 Apr 2019 15:09:36 +0200] rev 12582
[doc] add a reference to static-messages.pot usage
Thu, 18 Apr 2019 15:10:35 +0200 [doc] Clarify sentences
Noe Gaumont <ngaumont@logilab.fr> [Thu, 18 Apr 2019 15:10:35 +0200] rev 12581
[doc] Clarify sentences
Thu, 18 Apr 2019 15:05:13 +0200 [doc] Fix format and typo
Noe Gaumont <ngaumont@logilab.fr> [Thu, 18 Apr 2019 15:05:13 +0200] rev 12580
[doc] Fix format and typo
Thu, 18 Apr 2019 04:40:23 +0000 Fix DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated
Nsukami Patrick <ndkpatt at gmail dot com> [Thu, 18 Apr 2019 04:40:23 +0000] rev 12579
Fix DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated
Thu, 18 Apr 2019 04:34:34 +0000 Fix DeprecationWarning: invalid escape sequence
Nsukami Patrick <ndkpatt at gmail dot com> [Thu, 18 Apr 2019 04:34:34 +0000] rev 12578
Fix DeprecationWarning: invalid escape sequence
Tue, 16 Apr 2019 15:49:03 +0200 [devtools/testlib] avoid hidding AttributeError in create_user() 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 16 Apr 2019 15:49:03 +0200] rev 12577
[devtools/testlib] avoid hidding AttributeError in create_user() commit() might raise a AttributeError too. Use getattr(req, 'cnx', req) instead, which is a form already used to get the real cnx in some code: cubicweb/rset.py:577: cnx = getattr(self.req, 'cnx', self.req) cubicweb/schema.py:353: with getattr(_cw, 'cnx', _cw).security_enabled(read=False): We could use if hasattr(req, 'commit') here too but it lead to 3 additionals lines. Maybe we should have commit() and rollback() on cubicweb.web.request.ConnectionCubicWebRequestBase too ?
Wed, 10 Apr 2019 17:59:17 +0000 Fix DeprecationWarning: invalid escape sequence \
Nsukami Patrick <ndkpatt at gmail dot com> [Wed, 10 Apr 2019 17:59:17 +0000] rev 12576
Fix DeprecationWarning: invalid escape sequence \
Fri, 12 Apr 2019 11:56:13 +0200 DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead
Laurent Peuch <cortex@worlddomination.be> [Fri, 12 Apr 2019 11:56:13 +0200] rev 12575
DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead
Fri, 12 Apr 2019 13:52:17 +0200 [mod] remove backward compatible code for passlib and force modern version
Laurent Peuch <cortex@worlddomination.be> [Fri, 12 Apr 2019 13:52:17 +0200] rev 12574
[mod] remove backward compatible code for passlib and force modern version
Fri, 12 Apr 2019 11:54:42 +0200 DeprecationWarning: Please use assertEqual instead.
Laurent Peuch <cortex@worlddomination.be> [Fri, 12 Apr 2019 11:54:42 +0200] rev 12573
DeprecationWarning: Please use assertEqual instead.
Fri, 12 Apr 2019 17:25:40 +0200 DeprecationWarning: Please use assertRaisesRegex instead.
Laurent Peuch <cortex@worlddomination.be> [Fri, 12 Apr 2019 17:25:40 +0200] rev 12572
DeprecationWarning: Please use assertRaisesRegex instead.
Thu, 11 Apr 2019 20:15:09 +0200 DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()
Laurent Peuch <cortex@worlddomination.be> [Thu, 11 Apr 2019 20:15:09 +0200] rev 12571
DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()
Thu, 11 Apr 2019 16:47:27 +0200 [README] add testing instructions
Laurent Peuch <cortex@worlddomination.be> [Thu, 11 Apr 2019 16:47:27 +0200] rev 12570
[README] add testing instructions
Fri, 05 Apr 2019 12:19:03 +0200 Add pytest-subtests to dev requirements
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 05 Apr 2019 12:19:03 +0200] rev 12569
Add pytest-subtests to dev requirements This pytest plugin adds support for unittest's TestCase.subTest (for Python >= 3.4). Since we we now only support python3 and since we use a fair amount of these, let's benefit of better reporting by using this plugin.
Tue, 26 Mar 2019 16:22:31 +0100 [test] use unittest.mock instead of mock library
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 26 Mar 2019 16:22:31 +0100] rev 12568
[test] use unittest.mock instead of mock library Now that we use Python 3 only, this is possible.
Fri, 05 Apr 2019 17:58:19 +0200 Drop python2 support
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 05 Apr 2019 17:58:19 +0200] rev 12567
Drop python2 support This mostly consists in removing the dependency on "six" and updating the code to use only Python3 idioms. Notice that we previously used TemporaryDirectory from cubicweb.devtools.testlib for compatibility with Python2. We now directly import it from tempfile.
Fri, 05 Apr 2019 17:21:14 +0200 Merge with 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 05 Apr 2019 17:21:14 +0200] rev 12566
Merge with 3.26
Fri, 05 Apr 2019 17:40:02 +0200 Remove unused imports in cubicweb.pyramid.config 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 05 Apr 2019 17:40:02 +0200] rev 12565
Remove unused imports in cubicweb.pyramid.config
Fri, 05 Apr 2019 17:20:01 +0200 Added tag 3.26.9 for changeset 4d6909de765a 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 05 Apr 2019 17:20:01 +0200] rev 12564
Added tag 3.26.9 for changeset 4d6909de765a
Fri, 05 Apr 2019 17:19:56 +0200 [pkg] Version 3.26.9 3.26 3.26.9
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 05 Apr 2019 17:19:56 +0200] rev 12563
[pkg] Version 3.26.9
Tue, 12 Feb 2019 17:00:55 +0100 [pyramid/security] use cryptographically secure random generator 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 17:00:55 +0100] rev 12562
[pyramid/security] use cryptographically secure random generator Based on django source code in case SystemRandom is not available. According to python documentation: https://docs.python.org/2/library/random.html > Warning > The pseudo-random generators of this module should not be used for security > purposes. Use os.urandom() or SystemRandom if you require a cryptographically > secure pseudo-random number generator.
Thu, 04 Apr 2019 14:11:40 +0200 Reclosing branch after merge tls-sprint
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 04 Apr 2019 14:11:40 +0200] rev 12561
Reclosing branch after merge
Thu, 04 Apr 2019 13:49:34 +0200 Merging heads of old, closed branch tls-sprint
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 04 Apr 2019 13:49:34 +0200] rev 12560
Merging heads of old, closed branch
Thu, 04 Apr 2019 14:08:10 +0200 Reclosing branch after merge 3.0
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 04 Apr 2019 14:08:10 +0200] rev 12559
Reclosing branch after merge
Thu, 04 Apr 2019 13:45:23 +0200 Merging heads of old, closed branch 3.0
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 04 Apr 2019 13:45:23 +0200] rev 12558
Merging heads of old, closed branch
Thu, 28 Mar 2019 11:15:28 +0100 [doc/changes] document that legacy cube support has been dropped
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:15:28 +0100] rev 12557
[doc/changes] document that legacy cube support has been dropped
Thu, 28 Mar 2019 11:13:12 +0100 [doc] replace legacy import to new style cube import in various places
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:13:12 +0100] rev 12556
[doc] replace legacy import to new style cube import in various places
Thu, 28 Mar 2019 11:09:29 +0100 [web/views] drop deprecated module cubicweb.web.views.timeline
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:09:29 +0100] rev 12555
[web/views] drop deprecated module cubicweb.web.views.timeline
Thu, 28 Mar 2019 11:06:02 +0100 [web/views] drop deprecated module cubicweb.web.views.massmailing
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:06:02 +0100] rev 12554
[web/views] drop deprecated module cubicweb.web.views.massmailing
Thu, 28 Mar 2019 11:05:35 +0100 [web/views] drop deprecated module cubicweb.web.views.isioc
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:05:35 +0100] rev 12553
[web/views] drop deprecated module cubicweb.web.views.isioc
Thu, 28 Mar 2019 11:04:51 +0100 [web/views] drop deprecated module cubicweb.web.views.embedding
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:04:51 +0100] rev 12552
[web/views] drop deprecated module cubicweb.web.views.embedding
Thu, 28 Mar 2019 11:04:07 +0100 [web/views] drop deprecated module cubicweb.web.views.igeocodable
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:04:07 +0100] rev 12551
[web/views] drop deprecated module cubicweb.web.views.igeocodable
Thu, 28 Mar 2019 11:00:55 +0100 [pyramid/core] drop fallback import of legacy cubes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 11:00:55 +0100] rev 12550
[pyramid/core] drop fallback import of legacy cubes
Thu, 28 Mar 2019 10:33:54 +0100 [cwconfig] drop importing legacy cubes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 10:33:54 +0100] rev 12549
[cwconfig] drop importing legacy cubes This finally drop support for legacy cubes. In cwconfig, don't load modules in the "cubes" namespace. In cube_pkginfo() handle CW_MIGRATION_MAP which wasn't working with new style cube. Drop all method specific to legacy cubes importer: cubes_search_path(), extrapath(), cls_adjust_sys_path() Drop environment variables related to legacy cubes: CW_CUBES_PATH and CW_CUBES_DIR
Thu, 28 Mar 2019 10:11:36 +0100 [doc] better documentation for "cubicweb-ctl newcube"
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 10:11:36 +0100] rev 12548
[doc] better documentation for "cubicweb-ctl newcube" cubicweb-ctl newcube create cubicweb-<name> in current directory.
Thu, 28 Mar 2019 10:09:49 +0100 [test] make unittest_cwconfig.py does not depend on legacy cube machinery
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 10:09:49 +0100] rev 12547
[test] make unittest_cwconfig.py does not depend on legacy cube machinery By dropping legacy cube tests in various places.
Thu, 28 Mar 2019 10:07:02 +0100 [devtools/test] drop legacy cube i18n tests
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 10:07:02 +0100] rev 12546
[devtools/test] drop legacy cube i18n tests test_i18ncube_legacy_layout() is droped and make others tests uses a new style cube "cubicweb_i18ntestcube", so it doesn't depends on legacy cube machinery.
Thu, 28 Mar 2019 10:04:23 +0100 [server/test] make unittest_migractions.py use new style cubes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Mar 2019 10:04:23 +0100] rev 12545
[server/test] make unittest_migractions.py use new style cubes MigrationTC used old cube layout in cubicweb/server/test/data-migractions/cubes, move them to new style cubes as "cubicweb_<cubename>" in "apphome" (cubicweb/server/test/data-migractions/) which is added to PYTHONPATH by CubicWebTC.
Wed, 27 Mar 2019 16:25:06 +0100 [cwconfig] drop _cube_modname
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Mar 2019 16:25:06 +0100] rev 12544
[cwconfig] drop _cube_modname Since we drop support for legacy cubes, this is equivalent to _cube_pkgname()
Wed, 27 Mar 2019 16:19:50 +0100 [cwconfig] drop legacy cube importer
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Mar 2019 16:19:50 +0100] rev 12543
[cwconfig] drop legacy cube importer We don't want to support legacy cubes anymore.
Fri, 22 Mar 2019 17:42:36 +0100 Drop more deprecated code
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Mar 2019 17:42:36 +0100] rev 12542
Drop more deprecated code This follows up on changeset a8c1ea390400, in which code deprecated using logilab.common.deprecation got dropped. Now we also drop code deprecated using stdlib's warn(<msg>, DeprecationWarning). Notice that, as a consequence of dropping old/new etypes aliases in cubicweb/schema.py, we drop the import ETYPE_NAME_MAP (no longer needed); but since other modules imported that name from cubicweb.schema, we need to update the import statement to use "cubicweb" directly.
Tue, 26 Mar 2019 13:08:13 +0100 Flake8 cubicweb/cwvreg.py
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 26 Mar 2019 13:08:13 +0100] rev 12541
Flake8 cubicweb/cwvreg.py
Fri, 22 Mar 2019 17:32:30 +0100 Drop deprecated "boxes" and "contentnavigation" registries
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Mar 2019 17:32:30 +0100] rev 12540
Drop deprecated "boxes" and "contentnavigation" registries
Fri, 22 Mar 2019 17:29:15 +0100 Drop deprecated CWCache entity type
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Mar 2019 17:29:15 +0100] rev 12539
Drop deprecated CWCache entity type
Fri, 22 Mar 2019 17:30:09 +0100 Update i18n after "recent" changes
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Mar 2019 17:30:09 +0100] rev 12538
Update i18n after "recent" changes
Fri, 22 Mar 2019 15:53:24 +0100 Drop repair_file_1-9_migration.py
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Mar 2019 15:53:24 +0100] rev 12537
Drop repair_file_1-9_migration.py
Fri, 22 Mar 2019 14:48:22 +0100 Drop a left-over 3.22 deprecation warning
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 22 Mar 2019 14:48:22 +0100] rev 12536
Drop a left-over 3.22 deprecation warning
Wed, 27 Mar 2019 15:53:00 +0100 [doc] fix reference to ~src/cubes in tutorial
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Mar 2019 15:53:00 +0100] rev 12535
[doc] fix reference to ~src/cubes in tutorial ~src/cubes refer to the $HOME/cubes directory of "src" user while ~/src/cubes refer to $HOME/src/cubes directory of current user.
Wed, 27 Mar 2019 15:52:40 +0100 [doc] replace cubicweb-ctl start by cubicweb-ctl pyramid
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Mar 2019 15:52:40 +0100] rev 12534
[doc] replace cubicweb-ctl start by cubicweb-ctl pyramid Since twisted support is gone.
Wed, 27 Mar 2019 15:51:50 +0100 [doc] make the tutorial use a python3 virtualenv
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Mar 2019 15:51:50 +0100] rev 12533
[doc] make the tutorial use a python3 virtualenv
Wed, 27 Mar 2019 15:43:53 +0100 [doc] Update README "Getting started"
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 27 Mar 2019 15:43:53 +0100] rev 12532
[doc] Update README "Getting started" * install using pip and with pyramid in a virtualenv * link to pyramid.ini documentation * Use pyramid to start application since twisted support is gone
Thu, 21 Mar 2019 14:36:25 +0100 Flake8 cubicweb/devtools/httptest.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Mar 2019 14:36:25 +0100] rev 12531
Flake8 cubicweb/devtools/httptest.py
Thu, 21 Mar 2019 14:33:54 +0100 Remove Twisted web server
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Mar 2019 14:33:54 +0100] rev 12530
Remove Twisted web server Twisted web server is not used anymore and has been superseded by pyramid many years ago. Furthermore, our usage is not compatible with Python 3. So we drop the "etwist" sub-package. As a consequence, "all-in-one" configuration type gets dropped as it was Twisted-specific. We resurrect it in cubicweb/pyramid/config.py by only keeping options used by the "pyramid". Similarly, we introduce a AllInOneCreateHandler in cubicweb/pyramid/pyramidctl.py that is basically the one that lived in cubicweb/etwist/twctl.py and is used to create the "all-in-one" instance. Added a TODO here about "pyramid.ini" that could be generated at the end of bootstrap() method. In cubicweb/devtools/httptest.py, CubicWebServerTC is now equivalent to CubicWebWsgiTC and the latter is dropped.
Thu, 21 Mar 2019 12:05:30 +0100 Separate twisted-specific configuration from WebConfigurationBase class
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Mar 2019 12:05:30 +0100] rev 12529
Separate twisted-specific configuration from WebConfigurationBase class This is in preparation of dropping the Twisted web server backend. We thus draw a clearer line between what's specific to twisted from what's generic by moving WebConfigurationBase class into cubicweb/web/webconfig.py and only keeping twisted-related in AllInOneConfiguration (still living in cubicweb/etwist/twconfig.py).
Thu, 21 Mar 2019 11:50:31 +0100 Flake8 cubicweb/web/webconfig.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Mar 2019 11:50:31 +0100] rev 12528
Flake8 cubicweb/web/webconfig.py
Thu, 21 Mar 2019 11:47:10 +0100 Flake8 cubicweb/etwist/twconfig.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 21 Mar 2019 11:47:10 +0100] rev 12527
Flake8 cubicweb/etwist/twconfig.py
Thu, 14 Mar 2019 17:16:34 +0100 Remove ctl commands using the Twisted backend
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 17:16:34 +0100] rev 12526
Remove ctl commands using the Twisted backend This backend is not maintained, very likely no longer used in any recent instance, and not supported in Python 3.
Thu, 14 Mar 2019 17:04:02 +0100 Flake8 cubicweb/cwctl.py
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 17:04:02 +0100] rev 12525
Flake8 cubicweb/cwctl.py * run autopep8 on the file * fixed unused imports * rename "version" import as "cw_version" in order not to shadow local variables
Thu, 14 Mar 2019 16:53:34 +0100 Remove _handle_win32() method from "create" command class
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 16:53:34 +0100] rev 12524
Remove _handle_win32() method from "create" command class This method generates code in a file using etwist module that we are about to drop.
Fri, 15 Mar 2019 12:12:23 +0100 Skip tests for ldapsource with python >= 3.7
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 15 Mar 2019 12:12:23 +0100] rev 12523
Skip tests for ldapsource with python >= 3.7 Until someone works on fixing these, this should make our CI green again. I tried to use setupModule() to check for python version, but pre_setup_database() is apparently called even when a SkipTest exception is raised there. So handle this in that method.
Wed, 27 Mar 2019 09:25:44 +0100 [doc] Update cubicweb-ctl page about how to run an instance
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 27 Mar 2019 09:25:44 +0100] rev 12522
[doc] Update cubicweb-ctl page about how to run an instance * remove mention of start/stop/restart/status commands that do not exist anymore * briefly mention the "pyramid" and point to respective documentation page * mention that a WSGI server should be used in production
Wed, 27 Mar 2019 09:21:18 +0100 [doc] Drop mention of the "pyramid" cube
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 27 Mar 2019 09:21:18 +0100] rev 12521
[doc] Drop mention of the "pyramid" cube This cube got merged into cubicweb several versions ago.
Thu, 21 Mar 2019 14:28:30 +0100 [cli/enh] on 'shell' or migration command, use ipython if available
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Mar 2019 14:28:30 +0100] rev 12520
[cli/enh] on 'shell' or migration command, use ipython if available
Tue, 19 Mar 2019 13:17:47 +0100 [web/test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 19 Mar 2019 13:17:47 +0100] rev 12519
[web/test] drop dependency on third party cubes Drop dependency on cubicweb-file, cubicweb-blog and cubicweb-tag for cubicweb/web/test Copy required parts of cubes (schema, entities, views and hooks) into cubicweb/web/test/data/cubicweb-<cube> that make tests pass.
Fri, 15 Mar 2019 18:07:18 +0100 [test] drop dependency on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Mar 2019 18:07:18 +0100] rev 12518
[test] drop dependency on third party cubes Drop dependency on cubicweb-file, cubicweb-localperms, cubicweb-tag and cubicweb-comment for cubicweb.test and cubicweb.sobjects.test Move cubicweb/test/data/libpython/cubicweb_* to cubicweb/test/data, so it's included in PYTHONPATH. Add missing parts of schema, entities, views, hooks that make tests pass.
Fri, 15 Mar 2019 17:12:20 +0100 [test] drop CubicWebConfigurationWithLegacyCubesTC
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Mar 2019 17:12:20 +0100] rev 12517
[test] drop CubicWebConfigurationWithLegacyCubesTC This is used to test legacy cube import which is planned for removal in cubicweb 3.27, so drop the code.
Fri, 15 Mar 2019 17:10:16 +0100 [test] drop unittest_cubes.py
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Mar 2019 17:10:16 +0100] rev 12516
[test] drop unittest_cubes.py This is used to test legacy cube import which is planned for removal in cubicweb 3.27, so drop the code.
Tue, 19 Mar 2019 14:26:51 +0100 [server/test] do not depend on third party cubes
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 19 Mar 2019 14:26:51 +0100] rev 12515
[server/test] do not depend on third party cubes Drop requirement of basket, card, comment, file, localperms and tag cubes for cubicweb.server tests. Copy needed part of schema, entities, views, hooks into the cubicweb/server/test/data directory (which is included in PYTHONPATH for CubicWebTC tests). For migration tests which use different "datapath", use symlinks to have dependent cubes importables.
Fri, 15 Mar 2019 15:51:27 +0100 [server/test] drop unused variable initialization in OperationsTC.setUp()
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Mar 2019 15:51:27 +0100] rev 12514
[server/test] drop unused variable initialization in OperationsTC.setUp() Variable "self.hm" is unused
Wed, 13 Mar 2019 14:03:45 +0100 [server/test] bootstrap config in setUpModule function
Philippe Pepiot <philippe.pepiot@logilab.fr> [Wed, 13 Mar 2019 14:03:45 +0100] rev 12513
[server/test] bootstrap config in setUpModule function This is test initialization, so use the setUpModule function for this
Mon, 11 Mar 2019 17:43:23 +0100 [schema] drop monkeypatch "name_for" on BaseConstraint
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 11 Mar 2019 17:43:23 +0100] rev 12512
[schema] drop monkeypatch "name_for" on BaseConstraint BaseConstraint doesn't have "name_for" method, this is just an addition for cubicweb needs. Implement this as a function instead of a monkeypatch to avoid having "name_for" not defined because cubicweb.schema hasn't been imported. In particular this fix running cubicweb/server/test/unittest_schema2sql.py::SQLSchemaTC::test_known_values alone.
Thu, 14 Mar 2019 16:17:49 +0100 [fix] this check was too restrictive and broke tests 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 14 Mar 2019 16:17:49 +0100] rev 12511
[fix] this check was too restrictive and broke tests
Thu, 14 Mar 2019 16:09:26 +0100 [fix] exception type has changed 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 14 Mar 2019 16:09:26 +0100] rev 12510
[fix] exception type has changed
Wed, 13 Mar 2019 10:21:39 +0100 [server.rqlannotation] refactor to make class SQLGenAnnotator consistent
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 13 Mar 2019 10:21:39 +0100] rev 12509
[server.rqlannotation] refactor to make class SQLGenAnnotator consistent _annotate_select() takes SQLGenAnnotator as a first argument and is not used anywhere except in SQLGenAnnotator. This looks like a method to me. Let us fold it into its class.
Thu, 14 Mar 2019 12:08:37 +0100 Drop most of deprecated code
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 12:08:37 +0100] rev 12508
Drop most of deprecated code As in previous changesets, most code has been deprecated since a very long time. This changeset concerns "core" cubicweb modules (e.g. "server", "appobjects") for which it's not easy to handle change atomically. In cubicweb/server/querier.py, we adjust empty_rset() function as a result of "rqlst" argument of ResultSet being dropped. (There was no use of the keyword argument anyways.)
Thu, 14 Mar 2019 14:45:35 +0100 Drop deprecated code in cubicweb.hooks
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 14:45:35 +0100] rev 12507
Drop deprecated code in cubicweb.hooks Changelog entry will come in a later changeset.
Thu, 14 Mar 2019 14:45:27 +0100 Drop deprecated code in cubicweb.entities
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 14:45:27 +0100] rev 12506
Drop deprecated code in cubicweb.entities Also dropped an unused import along the way. Changelog entry will come in a later changeset.
Thu, 14 Mar 2019 14:45:18 +0100 Drop deprecated code in cubicweb.devtools
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 14:45:18 +0100] rev 12505
Drop deprecated code in cubicweb.devtools Changelog entry will come in a later changeset.
Thu, 14 Mar 2019 14:45:03 +0100 Drop deprecated code in cubicweb.dataimport
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 14:45:03 +0100] rev 12504
Drop deprecated code in cubicweb.dataimport We actually drop *most* of deprecated code in this subpackage. What's left is the MetaGenerator class in (cubicweb/dataimport/stores.py) which is tricky to remove as it's still internally used by cubicweb. Changelog entry will come in a later changeset.
Thu, 14 Mar 2019 14:43:18 +0100 Drop most deprecated code in cubicweb.web
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 14:43:18 +0100] rev 12503
Drop most deprecated code in cubicweb.web This includes both Python and JavaScript code. Most code has been deprecated since a very long time (versions 3.1x mostly, more than 5 years ago, and a few things until 3.24). There are still a few deprecated things, most of which are actually used within cubicweb (or in cubes we depend on for tests). I don't know what to do with these... Removed a couple of unused imports along the way. Changelog entry will come in a later changeset.
Wed, 13 Mar 2019 13:37:49 +0100 [web] use Separator "component" instead of deprecated BoxSeparator widget
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Mar 2019 13:37:49 +0100] rev 12502
[web] use Separator "component" instead of deprecated BoxSeparator widget
Wed, 13 Mar 2019 13:36:38 +0100 Flake8 cubicweb/web/box.py
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Mar 2019 13:36:38 +0100] rev 12501
Flake8 cubicweb/web/box.py
Thu, 14 Mar 2019 14:38:55 +0100 [test] Remove upper bound for cubicweb-localperms
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 14:38:55 +0100] rev 12500
[test] Remove upper bound for cubicweb-localperms Version 0.4.0 does not use a deprecated API that we are planning to drop in forthcoming changesets. This requires changing expected values in unittest_cwconfig.py where we scan install cubes. * In CubicWebConfigurationTC.test_available_cubes(), localperms disappears from the list of expected cubes because this test method will look for new style cubes in located in cubicweb/test/data/libpython/ (we patch pkg_resources.iter_entry_points()) as well as old style cubes installed in $PREFIX/share/cubicweb/cubes; since the new cubicweb-localperms version is new-style, it won't be catched by this method. * In CubicWebConfigurationWithLegacyCubesTC.test_available_cubes(), localperms is still listed, but now with the package name, because this method will simply look at installed cubes whether old or new style.
Thu, 14 Mar 2019 16:44:53 +0100 [test] Make the expected value explicit in CubicWebConfigurationWithLegacyCubesTC.test_available_cubes()
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 14 Mar 2019 16:44:53 +0100] rev 12499
[test] Make the expected value explicit in CubicWebConfigurationWithLegacyCubesTC.test_available_cubes() This will help with the next changeset, and avoiding computation in tests is a good thing in general.
Wed, 13 Mar 2019 17:21:27 +0100 [test] Inline _test_available_cubes() method in cwconfig tests
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Mar 2019 17:21:27 +0100] rev 12498
[test] Inline _test_available_cubes() method in cwconfig tests Improves readability.
Thu, 14 Mar 2019 09:38:20 +0100 [DX] adding error messages to {ResultSet,ActionsRegistry}.possible_actions 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 14 Mar 2019 09:38:20 +0100] rev 12497
[DX] adding error messages to {ResultSet,ActionsRegistry}.possible_actions Try to make it more accessible, when we first encountered these errors it it didn't made any sense to us.
Tue, 12 Mar 2019 23:45:15 +0100 [server/querier] remove useless indirection QuerierHelper._annotate
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Tue, 12 Mar 2019 23:45:15 +0100] rev 12496
[server/querier] remove useless indirection QuerierHelper._annotate
Tue, 12 Mar 2019 23:04:57 +0100 [server] remove useless indirection ExecutionPlan.sqlannotate
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Tue, 12 Mar 2019 23:04:57 +0100] rev 12495
[server] remove useless indirection ExecutionPlan.sqlannotate Simpler is better. Use directly ExecutionPlan.querier.sqlgen_annotate.
Tue, 12 Mar 2019 23:20:50 +0100 [web] removed unused imports in basecomponents
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Tue, 12 Mar 2019 23:20:50 +0100] rev 12494
[web] removed unused imports in basecomponents
Wed, 13 Mar 2019 14:01:10 +0100 [test] Depends on psycopg2-binary 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 13 Mar 2019 14:01:10 +0100] rev 12493
[test] Depends on psycopg2-binary Avoids the following warning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi
Tue, 12 Mar 2019 11:40:59 +0100 [doc/changelog] the removal of next_tabindex produce an error not in the changelog
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Mar 2019 11:40:59 +0100] rev 12492
[doc/changelog] the removal of next_tabindex produce an error not in the changelog When one tried to migrate to 3.25, the error "class X initialization doesn't have a settabindex argument" can happen but the word "settabindex" is not present in the changelog which makes it hard to find to which modification this error is related.
Mon, 11 Mar 2019 14:34:14 +0100 Merge with branch 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 11 Mar 2019 14:34:14 +0100] rev 12491
Merge with branch 3.26
Fri, 08 Mar 2019 14:35:59 +0100 [py3.7,test] Use cubicweb-file >= 2.2.2 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Mar 2019 14:35:59 +0100] rev 12490
[py3.7,test] Use cubicweb-file >= 2.2.2 This includes changeset aa4a3a3d0c18 fixing import of os.errno.
Fri, 08 Mar 2019 11:58:30 +0100 [flake8] Fix errors in cubicweb/ext/test/unittest_rest.py 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Mar 2019 11:58:30 +0100] rev 12489
[flake8] Fix errors in cubicweb/ext/test/unittest_rest.py
Fri, 08 Mar 2019 11:56:05 +0100 [test] Shorten prefix string in test_rql_role_with_unknown_vid 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Mar 2019 11:56:05 +0100] rev 12488
[test] Shorten prefix string in test_rql_role_with_unknown_vid With Python3.7, this test fails as the error message returned by rest_publish() is: <p>an error occurred while interpreting this rql directive: ObjectNotFound('toto')</p> while we previously assumed a comma after 'toto'. Fixing this by only shortening the prefix used in out.startswith().
Fri, 08 Mar 2019 11:52:31 +0100 [flake8] fix errors in cubicweb_i18ntestcube/views.py test file 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Mar 2019 11:52:31 +0100] rev 12487
[flake8] fix errors in cubicweb_i18ntestcube/views.py test file
Fri, 08 Mar 2019 11:50:20 +0100 [test] Pass __module__ upon instantiation of RegistrableInstance 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Mar 2019 11:50:20 +0100] rev 12486
[test] Pass __module__ upon instantiation of RegistrableInstance This gets rid of the deprecation warning from logilab.common.registry: DeprecationWarning: instantiate MyAFS with __module__=__name__ and solves a test error on Python 3.7.
Fri, 08 Mar 2019 12:00:47 +0100 Added tag 3.26.8 for changeset 91f75319a726 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 08 Mar 2019 12:00:47 +0100] rev 12485
Added tag 3.26.8 for changeset 91f75319a726
Thu, 07 Mar 2019 11:56:01 +0100 [pkg] Version 3.26.8 3.26 3.26.8
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 07 Mar 2019 11:56:01 +0100] rev 12484
[pkg] Version 3.26.8
Tue, 26 Feb 2019 16:28:17 +0100 [doc] didn't had any questions 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:28:17 +0100] rev 12483
[doc] didn't had any questions
Tue, 26 Feb 2019 16:30:31 +0100 [doc] missing import, cw now require this explicitely 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:30:31 +0100] rev 12482
[doc] missing import, cw now require this explicitely
Tue, 26 Feb 2019 16:30:12 +0100 [doc] add actual link to previous post 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:30:12 +0100] rev 12481
[doc] add actual link to previous post
Tue, 26 Feb 2019 16:29:54 +0100 [doc] missing import in code example 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:29:54 +0100] rev 12480
[doc] missing import in code example
Tue, 26 Feb 2019 16:29:44 +0100 [doc] add a note because uiprops.py is not generated anymore by default 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:29:44 +0100] rev 12479
[doc] add a note because uiprops.py is not generated anymore by default
Tue, 26 Feb 2019 16:29:23 +0100 [doc] recommend pip instead of apt for installing things 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:29:23 +0100] rev 12478
[doc] recommend pip instead of apt for installing things According to a discussion on XMPP we should recommend pip instead.
Tue, 26 Feb 2019 16:28:43 +0100 [doc] fix, link to internal doc since it's not the blog post anymore 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:28:43 +0100] rev 12477
[doc] fix, link to internal doc since it's not the blog post anymore
Tue, 26 Feb 2019 16:27:56 +0100 [doc] also show command with sqlite since it's recommended 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:27:56 +0100] rev 12476
[doc] also show command with sqlite since it's recommended
Tue, 26 Feb 2019 16:26:33 +0100 [doc] fix, the cube name was used, it was the instance named that was needed 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:26:33 +0100] rev 12475
[doc] fix, the cube name was used, it was the instance named that was needed
Tue, 26 Feb 2019 16:25:59 +0100 [doc] it's a tutorial, not a blog post anymore 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:25:59 +0100] rev 12474
[doc] it's a tutorial, not a blog post anymore
Tue, 26 Feb 2019 16:25:44 +0100 [doc] make example more redable 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:25:44 +0100] rev 12473
[doc] make example more redable
Tue, 26 Feb 2019 16:25:27 +0100 [doc] uses :file:`name` everywhere + indicate file when it's not present 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:25:27 +0100] rev 12472
[doc] uses :file:`name` everywhere + indicate file when it's not present
Tue, 26 Feb 2019 16:23:37 +0100 [doc] english typos 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:23:37 +0100] rev 12471
[doc] english typos
Tue, 26 Feb 2019 16:23:07 +0100 [doc] pep8/retab in code examples 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:23:07 +0100] rev 12470
[doc] pep8/retab in code examples
Wed, 27 Feb 2019 13:41:34 +0100 [doc] correct import for i18n 3.26
Laurent Peuch <cortex@worlddomination.be> [Wed, 27 Feb 2019 13:41:34 +0100] rev 12469
[doc] correct import for i18n
Thu, 21 Feb 2019 18:46:39 +0100 [doc] pep8 and retab in tutorial code example 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:46:39 +0100] rev 12468
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 19:08:44 +0100] rev 12467
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:57:24 +0100] rev 12466
[doc] explain the difference between a relation and an attribute
Thu, 21 Feb 2019 18:57:05 +0100 [doc] plural 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:57:05 +0100] rev 12465
[doc] plural
Thu, 21 Feb 2019 18:56:42 +0100 [doc] misc, put every reference to something in the code between backquotes 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:56:42 +0100] rev 12464
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:54:46 +0100] rev 12463
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:54:23 +0100] rev 12462
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:53:39 +0100] rev 12461
[doc] explains what the <X.Y.Z> means
Thu, 21 Feb 2019 18:53:03 +0100 [doc] command output style has changed 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:53:03 +0100] rev 12460
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:51:36 +0100] rev 12459
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:49:24 +0100] rev 12458
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:48:51 +0100] rev 12457
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:48:07 +0100] rev 12456
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:47:35 +0100] rev 12455
[doc] add a link to every cube documentation page
Thu, 21 Feb 2019 18:47:03 +0100 [doc] make this step more obvious 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:47:03 +0100] rev 12454
[doc] make this step more obvious
Thu, 21 Feb 2019 18:42:29 +0100 [doc] move to latest CW version for cube creation 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:42:29 +0100] rev 12453
[doc] move to latest CW version for cube creation
Thu, 21 Feb 2019 18:15:26 +0100 [doc] missng import for i18n in example 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:15:26 +0100] rev 12452
[doc] missng import for i18n in example
Thu, 21 Feb 2019 18:10:47 +0100 [doc] unused import in example 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 18:10:47 +0100] rev 12451
[doc] unused import in example
Thu, 21 Feb 2019 15:25:23 +0100 [doc] output has changed 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:25:23 +0100] rev 12450
[doc] output has changed
Thu, 21 Feb 2019 15:18:09 +0100 [doc] blanks spaces to allow example to breath and be more lisible 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:18:09 +0100] rev 12449
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:16:22 +0100] rev 12448
[doc] default tests template has changed
Thu, 21 Feb 2019 15:13:45 +0100 [doc] default generated filename as changed 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 15:13:45 +0100] rev 12447
[doc] default generated filename as changed
Thu, 21 Feb 2019 10:05:38 +0100 [doc] rst syntax bug, blank line needed before item list 3.26
Laurent Peuch <cortex@worlddomination.be> [Thu, 21 Feb 2019 10:05:38 +0100] rev 12446
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Fri, 22 Feb 2019 15:16:26 +0100] rev 12445
[doc] add link to cubes contribution document
Fri, 22 Feb 2019 15:48:34 +0100 [doc] link to current documentation, not old cubicweb.org doc 3.26
Laurent Peuch <cortex@worlddomination.be> [Fri, 22 Feb 2019 15:48:34 +0100] rev 12444
[doc] link to current documentation, not old cubicweb.org doc
Tue, 12 Feb 2019 15:51:21 +0100 [doc] translate french to english 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 15:51:21 +0100] rev 12443
[doc] translate french to english
Tue, 12 Feb 2019 14:59:42 +0100 [doc] typo, 'CW' doesn't exist in the example 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:59:42 +0100] rev 12442
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:59:13 +0100] rev 12441
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:58:50 +0100] rev 12440
[doc] respect pep8 in code examples
Tue, 12 Feb 2019 14:58:26 +0100 [doc] serie a small improvments 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:58:26 +0100] rev 12439
[doc] serie a small improvments
Tue, 12 Feb 2019 14:55:02 +0100 [doc] typo, the field is "name" not "title" 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:55:02 +0100] rev 12438
[doc] typo, the field is "name" not "title"
Tue, 12 Feb 2019 14:53:48 +0100 [doc] fix, command "create" is missing base cube 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:53:48 +0100] rev 12437
[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 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 14:48:52 +0100] rev 12436
[doc] improve blog tutorial first steps and explain common errors
Tue, 12 Feb 2019 11:38:19 +0100 [doc] new behavior in virtualenv since 3.26 3.26
Laurent Peuch <cortex@worlddomination.be> [Tue, 12 Feb 2019 11:38:19 +0100] rev 12435
[doc] new behavior in virtualenv since 3.26
Tue, 29 Jan 2019 14:04:28 +0100 [skeleton] use python3 flake8 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 29 Jan 2019 14:04:28 +0100] rev 12434
[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 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Tue, 29 Jan 2019 14:02:19 +0100] rev 12433
[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 10:04:31 +0100 Fix flake8 issues since release 3.6.0 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Mon, 29 Oct 2018 10:04:31 +0100] rev 12432
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.
Tue, 09 Oct 2018 16:24:12 +0200 Fix typo in RDFS URI 3.26
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 09 Oct 2018 16:24:12 +0200] rev 12431
Fix typo in RDFS URI
Tue, 24 Apr 2018 10:19:42 +0200 [server] Fixed issue with the adapters cache of a cloned EditedEntity 3.26
Laurent Wouters <lwouters@cenotelie.fr> [Tue, 24 Apr 2018 10:19:42 +0200] rev 12430
[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, 16 Aug 2018 12:31:44 +0200 [py37] `async` is now a reserved keyword 3.26
Samuel Trégouët <samuel.tregouet@logilab.fr> [Thu, 16 Aug 2018 12:31:44 +0200] rev 12429
[py37] `async` is now a reserved keyword
Wed, 11 Jul 2018 09:18:57 +0200 [skeleton] Use "py3" as tox environment instead of "py34" 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 11 Jul 2018 09:18:57 +0200] rev 12428
[skeleton] Use "py3" as tox environment instead of "py34"
Thu, 28 Jun 2018 10:17:15 +0200 [views/startup] drop a duplicate rql query in manage view 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Thu, 28 Jun 2018 10:17:15 +0200] rev 12427
[views/startup] drop a duplicate rql query in manage view Counting entities in `nb` is already done above this code, regression introduced by a85db6fa
Fri, 15 Jun 2018 17:42:50 +0200 Depend on cubicweb-file >= 2.0.0 3.26
Philippe Pepiot <philippe.pepiot@logilab.fr> [Fri, 15 Jun 2018 17:42:50 +0200] rev 12426
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 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 11 Jun 2018 16:50:38 +0200] rev 12425
[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 3.26
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 06 Jun 2018 18:54:24 +0200] rev 12424
[widgets.js] fix obvious bug detected by sonar
Wed, 06 Jun 2018 18:37:16 +0200 [views/uicfg] obvious bug detected by sonar 3.26
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 06 Jun 2018 18:37:16 +0200] rev 12423
[views/uicfg] obvious bug detected by sonar
Wed, 06 Jun 2018 14:20:16 +0200 [style] Make toolsutils.py flake8-clean 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 06 Jun 2018 14:20:16 +0200] rev 12422
[style] Make toolsutils.py flake8-clean Run `autopep8 --max-line-length 100 -i cubicweb/toolsutils.py` and fixed unused imports.
Tue, 24 Apr 2018 15:21:38 +0200 [test/rset] typo 3.26
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 15:21:38 +0200] rev 12421
[test/rset] typo
Tue, 24 Apr 2018 14:04:43 +0200 [test/rset] flake8 3.26
David Douard <david.douard@logilab.fr> [Tue, 24 Apr 2018 14:04:43 +0200] rev 12420
[test/rset] flake8
Tue, 05 Mar 2019 13:52:52 +0100 [py3] import configparser from six.moves instead of using a try/except 3.26
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 Mar 2019 13:52:52 +0100] rev 12419
[py3] import configparser from six.moves instead of using a try/except Using six is better than the try/except because it clearly indicates compatibility code. Also, when using tools such as vermin which relies on AST, it helps getting rid of false compatibility errors.
Tue, 26 Feb 2019 16:28:17 +0100 [doc] didn't had any questions
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:28:17 +0100] rev 12418
[doc] didn't had any questions
Tue, 26 Feb 2019 16:30:31 +0100 [doc] missing import, cw now require this explicitely
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:30:31 +0100] rev 12417
[doc] missing import, cw now require this explicitely
Tue, 26 Feb 2019 16:30:12 +0100 [doc] add actual link to previous post
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:30:12 +0100] rev 12416
[doc] add actual link to previous post
Tue, 26 Feb 2019 16:29:54 +0100 [doc] missing import in code example
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:29:54 +0100] rev 12415
[doc] missing import in code example
Tue, 26 Feb 2019 16:29:44 +0100 [doc] add a note because uiprops.py is not generated anymore by default
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:29:44 +0100] rev 12414
[doc] add a note because uiprops.py is not generated anymore by default
Tue, 26 Feb 2019 16:29:23 +0100 [doc] recommend pip instead of apt for installing things
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:29:23 +0100] rev 12413
[doc] recommend pip instead of apt for installing things According to a discussion on XMPP we should recommend pip instead.
Tue, 26 Feb 2019 16:28:43 +0100 [doc] fix, link to internal doc since it's not the blog post anymore
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:28:43 +0100] rev 12412
[doc] fix, link to internal doc since it's not the blog post anymore
Tue, 26 Feb 2019 16:27:56 +0100 [doc] also show command with sqlite since it's recommended
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:27:56 +0100] rev 12411
[doc] also show command with sqlite since it's recommended
Tue, 26 Feb 2019 16:26:33 +0100 [doc] fix, the cube name was used, it was the instance named that was needed
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:26:33 +0100] rev 12410
[doc] fix, the cube name was used, it was the instance named that was needed
Tue, 26 Feb 2019 16:25:59 +0100 [doc] it's a tutorial, not a blog post anymore
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:25:59 +0100] rev 12409
[doc] it's a tutorial, not a blog post anymore
Tue, 26 Feb 2019 16:25:44 +0100 [doc] make example more redable
Laurent Peuch <cortex@worlddomination.be> [Tue, 26 Feb 2019 16:25:44 +0100] rev 12408
[doc] make example more redable
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.
(0) -10000 -1536 tip