Laurent Peuch <cortex@worlddomination.be> [Wed, 11 Sep 2019 18:31:08 +0200] rev 12727
[fix] reference to underclared and unused variable kwargs
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
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.
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. :-/
Arthur Lutz <arthur.lutz@logilab.fr> [Fri, 23 Aug 2019 11:16:46 +0200] rev 12723
[.gitlab-ci] initial version (tox targets)
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Aug 2019 16:43:46 +0200] rev 12722
Merge with 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
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 06 Aug 2019 15:43:59 +0200] rev 12720
[pkg] version 3.26.14
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.
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
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 01 Aug 2019 09:13:52 +0200] rev 12717
[pkg] Version 3.27.0.a2
Laurent Peuch <cortex@worlddomination.be> [Wed, 24 Jul 2019 15:28:11 +0200] rev 12716
[debug/clean] remove unused DBG_MS flag
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.
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.
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
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 16:52:59 +0200] rev 12712
[pkg] Version 3.27.0a1
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.
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 16:03:01 +0200] rev 12710
[pkg] Version 3.27.0a0
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 15:14:56 +0200] rev 12709
Merge with 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
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 24 Jul 2019 10:22:25 +0200] rev 12707
[pkg] Version 3.26.13
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.
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 23 Jul 2019 17:21:18 +0200] rev 12705
[pkg] Prune packaging files from sdist
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
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.
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.
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.
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.
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`.
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.
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.
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.