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.
(0) -10000 -3000 -1000 -300 -100 -48 +48 +100 tip