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