Tue, 22 Dec 2015 17:00:03 +0100 [pkg] use correct lgdb version for tz rework
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Dec 2015 17:00:03 +0100] rev 11036
[pkg] use correct lgdb version for tz rework Related to #4848923.
Fri, 18 Dec 2015 09:36:58 +0100 pep8 bits
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:36:58 +0100] rev 11035
pep8 bits
Tue, 22 Dec 2015 15:35:10 +0100 [server] improve TZDatetime support
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 22 Dec 2015 15:35:10 +0100] rev 11034
[server] improve TZDatetime support by depending on logilab-database 1.15.0 including https://www.logilab.org/ticket/1485893, we can now keep the tzinfo attribute on datetime objects for TZDatetime attributes, so one knows that this is a tz-aware datetime. To easily make it work with backends that have no tz support, we keep converting tz-aware datetime objects into utc naive datetime objects before sending them to the database.
Fri, 18 Dec 2015 09:23:23 +0100 [schema] Use TZDatetime for creation_date and modification_date
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:23:23 +0100] rev 11033
[schema] Use TZDatetime for creation_date and modification_date No work has been done for form fields/widgets since creation_date / modification_date are by default not editable through the default UI. One may want to add such feature at some point. Time will be displayed as UTC, let the end-application decide otherwise by customizing the tzdatetime printer if desired. Closes #4848923
Fri, 18 Dec 2015 09:37:15 +0100 [server] fix SQLite patch to ensure TZDatetime are properly typed
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:37:15 +0100] rev 11032
[server] fix SQLite patch to ensure TZDatetime are properly typed NB: at this point, the TZ info is completely ignored. It will be properly handled in later commits.
Fri, 18 Dec 2015 09:10:20 +0100 [server] fix name and add docstring to connection initialization functions
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:10:20 +0100] rev 11031
[server] fix name and add docstring to connection initialization functions
Fri, 18 Dec 2015 09:07:33 +0100 [server] always monkeypatch QuerierHelper to handle dates and times on SQLite
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Dec 2015 09:07:33 +0100] rev 11030
[server] always monkeypatch QuerierHelper to handle dates and times on SQLite The patch prevents problems due to a SQLite bug causing some values to be returned as strings instead of properly typed objects. This should probably be improved to use SQLite connection hooks. But the major improvement is that the monkeypatch is now done all the time, and not just for tests.
Thu, 17 Dec 2015 15:17:45 +0100 [testlib] put postgres test database in test/data/database directory
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 17 Dec 2015 15:17:45 +0100] rev 11029
[testlib] put postgres test database in test/data/database directory with other (sqlite) test databases. Closes #9240765 Simplify .hgignore in passing.
Wed, 02 Dec 2015 15:24:03 +0100 [dataimport] make eids_seq_range as massive store instance attribute again
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 15:24:03 +0100] rev 11028
[dataimport] make eids_seq_range as massive store instance attribute again I changed it to a class attribute recently, but on further thought (and prompting from Adrien) it seems to make more sense as an instance attribute.
Wed, 02 Dec 2015 15:20:52 +0100 [dataimport] stop supporting None as eids_seq_range
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 15:20:52 +0100] rev 11027
[dataimport] stop supporting None as eids_seq_range It couldn't work as-is because entities_id_seq is not a sequence object.
Wed, 02 Dec 2015 15:19:24 +0100 [dataimport] remove eids_seq_start attribute from massive store
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 15:19:24 +0100] rev 11026
[dataimport] remove eids_seq_start attribute from massive store Instead provide a utility function to reset the eid sequence.
Wed, 02 Dec 2015 14:57:03 +0100 [dataimport] massive store in slave mode shouldn't flush metadata
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Dec 2015 14:57:03 +0100] rev 11025
[dataimport] massive store in slave mode shouldn't flush metadata The metadata insertion is to be done only by the master-mode store.
Mon, 21 Dec 2015 12:29:50 +0100 [dataimport] check that MassiveObjectStore restores the db schema properly
Samuel Trégouët <samuel.tregouet@logilab.fr> [Mon, 21 Dec 2015 12:29:50 +0100] rev 11024
[dataimport] check that MassiveObjectStore restores the db schema properly Ideally we'd use "pg_dump --schema-only" to compare before/after, but when restoring a constraint such as: cstr48f9ceae537d68859b62c601681c8d3e CHECK (((cw_type)::text = ANY ((ARRAY['normal'::character varying, 'auto'::character varying])::text[]))) postgres will convert the text cast on array to a cast on each cell of array cstr48f9ceae537d68859b62c601681c8d3e CHECK (cw_type::text = ANY (ARRAY['normal'::character varying::text, 'auto'::character varying::text]))
Mon, 21 Dec 2015 12:41:30 +0100 [dataimport] split out listing indices/constraints from getting the corresponding query
Samuel Trégouët <samuel.tregouet@logilab.fr> [Mon, 21 Dec 2015 12:41:30 +0100] rev 11023
[dataimport] split out listing indices/constraints from getting the corresponding query
Tue, 15 Dec 2015 10:41:26 +0100 [dataimport] massive_store: do not drop constraints multiple times
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:41:26 +0100] rev 11022
[dataimport] massive_store: do not drop constraints multiple times It is now done in __init__.
Tue, 15 Dec 2015 10:13:55 +0100 [dataimport] massive_store: do not drop constraints with `cascade` since it breaks things
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:13:55 +0100] rev 11021
[dataimport] massive_store: do not drop constraints with `cascade` since it breaks things We want to be able to restore constraints at the end of the import. If they are silently dropped due to a CASCADE, we can't do that.
Mon, 21 Dec 2015 12:16:12 +0100 [dataimport] massive_store: drop all constraints in __init__ and restore all in finish
Samuel Trégouët <samuel.tregouet@logilab.fr> [Mon, 21 Dec 2015 12:16:12 +0100] rev 11020
[dataimport] massive_store: drop all constraints in __init__ and restore all in finish This should avoid dependency issues when dropping specific constraints (e.g. when dropping a primary constraint referenced by a foreign key constraint). We only do this in master mode, slave mode stores are supposed to work with an initialized db already.
Tue, 15 Dec 2015 10:32:53 +0100 [dataimport] massive_store: ignore primary key when requesting indexes on a table
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:32:53 +0100] rev 11019
[dataimport] massive_store: ignore primary key when requesting indexes on a table Primary keys show up in both lists of constraints and indexes. Pick a side and stick to it.
Tue, 15 Dec 2015 10:28:39 +0100 [dataimport] massive_store: reformat sql query
Samuel Trégouët <samuel.tregouet@logilab.fr> [Tue, 15 Dec 2015 10:28:39 +0100] rev 11018
[dataimport] massive_store: reformat sql query
Mon, 21 Dec 2015 12:47:35 +0100 [devtools] Use super() in TestServerConfiguration.__init__()
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 12:47:35 +0100] rev 11017
[devtools] Use super() in TestServerConfiguration.__init__() While cleaning up the use of init_config() in WSGIAppTC, I wondered why the method was trying to set the 'https_uiprops' and 'https_datadir_url' attributes on the config, when WebConfiguration's __init__ should be taking care of setting them. WSGIAppTC uses the default configuration - one that derives from ApptestConfiguration (noted as G below). The issue is that the class hierarchy of ApptestConfiguration includes TestServerConfiguration (C in the graph below) which calls ServerConfiguration's __init__ directly (B below). As B does not have an __init__ method, CubicWebConfiguration's __init__ is called directly (A below). This has the unintended consequence of preventing WebConfiguration's __init__ from being called. A / \ B D | | C E \ / F | G | ... A: cwconfig.CubicWebConfiguration B: server.serverconfig.ServerConfiguration C: devtools.TestServerConfiguration D: web.webconfig.WebConfiguration E: etwist.twconfig.WebConfigurationBase F: devtools.BaseApptestConfiguration G: devtools.ApptestConfiguration NB: unittest_wsgi wasn't really broken, as it's the only test in wsgi/test/, but I figured I might as well clean it up. Related to #9297611.
Mon, 21 Dec 2015 10:08:13 +0100 [devtools] Fix database creation issues for CubicWebTestTC tests
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 10:08:13 +0100] rev 11016
[devtools] Fix database creation issues for CubicWebTestTC tests To reproduce (with a purged repo): * python web/test/test_jscript.py * python web/test/unittest_views_xmlrss.py The '__default_empty_db__' will contain the wrong 'base_url' configuration, thus breaking URLs in the xmlrss tests. Closes #9297611.
Mon, 21 Dec 2015 09:55:14 +0100 [devtools] Fix database creation issues for CubicWebServerTC tests
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 09:55:14 +0100] rev 11015
[devtools] Fix database creation issues for CubicWebServerTC tests To reproduce (with a purged repo): * python web/test/unittest_web.py MiscOptionsTC * python web/test/unittest_views_xmlrss.py The core issue is that CubicWebServerConfig.default_base_url() is called inside init_config(), which is called during the equivalent of 'db-create'. The '__default_empty_db__' will contain the wrong 'base_url' configuration, thus breaking URLs in the xmlrss tests. Related to #9297611.
Mon, 21 Dec 2015 09:59:45 +0100 [devtools] Move attribute docstring to correct location
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Dec 2015 09:59:45 +0100] rev 11014
[devtools] Move attribute docstring to correct location
Sun, 20 Dec 2015 19:08:19 +0100 [web] Make tests pass if tal isn't available
Rémi Cardona <remi.cardona@free.fr> [Sun, 20 Dec 2015 19:08:19 +0100] rev 11013
[web] Make tests pass if tal isn't available
Mon, 21 Dec 2015 15:52:41 +0100 [py3k] fix cubicweb.mail.parse_message_id
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:52:41 +0100] rev 11012
[py3k] fix cubicweb.mail.parse_message_id base64.b64decode returns bytes. Fixes sobjects/test/unittest_notification.py.
Mon, 21 Dec 2015 15:46:36 +0100 [test/py3k] fix test_recipients_finder
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:46:36 +0100] rev 11011
[test/py3k] fix test_recipients_finder AssertionError: <zip object at 0x7f1dfb0230c8> != [('abcd@logilab.fr', 'en'), ('efgh@logilab.fr', 'en')]
Mon, 21 Dec 2015 15:44:20 +0100 [dataimport] fix SQLGenObjectStore's add_info for python3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:44:20 +0100] rev 11010
[dataimport] fix SQLGenObjectStore's add_info for python3
Mon, 21 Dec 2015 15:43:49 +0100 [dataimport] py3k doesn't like + on dict_items objects
Julien Cristau <julien.cristau@logilab.fr> [Mon, 21 Dec 2015 15:43:49 +0100] rev 11009
[dataimport] py3k doesn't like + on dict_items objects
Wed, 16 Jul 2014 10:48:47 +0200 [repository] remove unused check_session method and its test
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 16 Jul 2014 10:48:47 +0200] rev 11008
[repository] remove unused check_session method and its test Related to #1381328.
Tue, 15 Dec 2015 10:20:26 +0100 [migration/test] avoid test interdependency by removing fakecustomtype cube
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 15 Dec 2015 10:20:26 +0100] rev 11007
[migration/test] avoid test interdependency by removing fakecustomtype cube There is still a failing test afterward but it doesn't seem related to changes in this series.
Wed, 09 Dec 2015 17:44:18 +0100 [migration/test] use numeric(precision, scale) instead of geometry
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Dec 2015 17:44:18 +0100] rev 11006
[migration/test] use numeric(precision, scale) instead of geometry The latter requires the postgis extension which is overkill for this test.
Wed, 09 Dec 2015 17:44:18 +0100 [server, hooks] allow callable in dbh.TYPE_MAPPING
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Dec 2015 17:44:18 +0100] rev 11005
[server, hooks] allow callable in dbh.TYPE_MAPPING This is necessary for cubes introducing new custom final types whose generated sql may depend on some extra configuration, avoiding ugly-buggy hack as done currently by the postgis cube. Closes #7569998
(0) -10000 -3000 -1000 -300 -100 -50 -32 +32 +50 +100 +300 +1000 tip