Julien Cristau <julien.cristau@logilab.fr> [Wed, 14 Oct 2015 16:18:25 +0200] rev 10805
[server/datafeed] drop URLLibResponseAdapter.info
I don't know where it's used
Julien Cristau <julien.cristau@logilab.fr> [Mon, 19 Oct 2015 14:29:06 +0200] rev 10804
[devtools] pass a key to sort() method
python3 dicts are not comparable
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Oct 2015 17:21:18 +0200] rev 10803
[postcreate] properly set is_instance_of for bootstrap entities
Entities created before CWEType itself need the is/is_instance_of
relations created later. We were actually only inserting "is".
Closes #7656606.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 28 Oct 2015 17:39:30 +0000] rev 10802
[migration] re-try without print_function when compiling a script fails
As part of the python3 porting we added the __future__.print_function import to
cubicweb.migration. That started affecting all migration scripts it runs,
which may not be prepared. So if compiling a script results in SyntaxError,
try again without the print_function flag.
Closes #7935030
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 23 Sep 2015 15:32:17 +0200] rev 10801
[test] do not overwrite user's CW_CUBES_PATH in unittest_migration
Currently when you rely on your CW_CUBES_PATH environment variable to
locate cubes necessary for cubicweb's tests, the migration test crashes
because it overrides the env var.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Nov 2015 16:00:34 +0100] rev 10800
[server/test] dict.itervalues() → iter(dict.values())
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 16 Sep 2015 16:04:17 +0200] rev 10799
make sync_schema_props_perms(<computed rtype>) work as expected
It currently ends up with an ExecutionError while we want to synchronize
permissions. This makes 3.21.1 migration of any application using computed
relation crashing.
Also, remove pre 3.6 compat code in hooks that prevent living schema update on
computed relation's permission changes.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Oct 2015 13:51:54 +0200] rev 10798
[web/http_headers] use classmethod decorator
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Oct 2015 13:45:00 +0200] rev 10797
[schema] use classmethod decorator
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Oct 2015 16:44:36 +0200] rev 10796
[devtools] delete postgresql socket directory after killing the server
... or when failing to start it.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 27 Jul 2015 10:13:25 +0200] rev 10795
[skel] stop deleting cubes egg-info
It doesn't hurt and provides some metadata.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 06 Oct 2015 15:06:45 +0200] rev 10794
[dataimport] Update doc to reflect new API
relate() looks deprecated.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 26 Oct 2015 15:22:09 +0100] rev 10793
[server] fix generate_source_config regression on python2
lgc outputs "str" objects on python2 and python3, so we can't just use
io.StringIO (which expects unicode objects).
Fixes: c36cda9074c5
Christophe de Vienne <christophe@unlish.com> [Thu, 30 Jul 2015 11:11:12 +0200] rev 10792
[tests] Fix config.repository() in tests
The config.repository was overriden too late.
Closes #5778294
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 14 Oct 2015 15:49:03 +0200] rev 10791
[schema] RQL queries are always unicode objects in python 3
fixes commit 42c5bd7286b7.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Oct 2015 16:12:37 +0200] rev 10790
[server/test] use relative import
Fixes py3k breakage
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Oct 2015 11:34:37 +0200] rev 10789
[server/schemaserial] fix extra_props on py3k
json.dumps returns unicode, and json.load eats unicode, so add explicit
encoding/decoding.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Oct 2015 11:30:48 +0200] rev 10788
[server/test] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 21:49:18 +0200] rev 10787
[web] fix Field.__str__ on py3k
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 21:48:50 +0200] rev 10786
[web] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 20:43:50 +0200] rev 10785
[web/test] CubicWebTC.view returns bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 18:43:41 +0200] rev 10784
[uilib] fix traceback on python3
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 18:43:05 +0200] rev 10783
[web] integer division
Julien Cristau <julien.cristau@logilab.fr> [Mon, 12 Oct 2015 18:42:38 +0200] rev 10782
[web/test] Binary eats bytes
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:19:37 +0200] rev 10781
[devtools] make httptest module importable under py3k
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:16:27 +0200] rev 10780
[web/test] CubicWebPublisher.handle_request returns bytes
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:15:56 +0200] rev 10779
[web] base64 works on bytes not str (py3k)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:14:15 +0200] rev 10778
[web] accept unicode in parsed Authorization header
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:07:22 +0200] rev 10777
[web] CubicWebPublisher.ajax_error_handler must return bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 17:57:03 +0200] rev 10776
[py3k] fix i18n
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Oct 2015 11:44:51 +0200] rev 10775
Fix md5crypt and crypt_password test for python3
Make sure to always work with bytes for hashing.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 17:08:38 +0200] rev 10774
[server/test] use bytes for extid
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:59:18 +0200] rev 10773
[devtools/test] firstnames.txt is in latin1
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:54:12 +0200] rev 10772
[web/test] unicode → cubicweb._
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:52:26 +0200] rev 10771
[web/formwidgets] fix for py3k
no idea why we encode that key...
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:47:55 +0200] rev 10770
[sobjects] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 16:28:07 +0200] rev 10769
[server] fix unittest_security for py3k
- use source.binary_to_str instead of str(), helps when the backend
returns memoryviews
- fixup str vs bytes
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 15:49:17 +0200] rev 10768
[py3k] make ldapfeed tests pass
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 15:48:19 +0200] rev 10767
[server] import filter from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Mon, 05 Oct 2015 14:51:24 +0200] rev 10766
[ldapfeed] port to ldap3
python-ldap has no python3 support.
XXX I only checked that unittest_ldapfeed passes.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 14:13:26 +0200] rev 10765
[server/test] str vs bytes
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:08:00 +0200] rev 10764
[server/test] list() around map and zip
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:07:32 +0200] rev 10763
[server/test] to fold, unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:06:42 +0200] rev 10762
[server/test] delete test that doesn't make sense on python3
XXX if PY2?
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:06:05 +0200] rev 10761
[server/test] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:04:35 +0200] rev 10760
[server] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Fri, 02 Oct 2015 10:04:12 +0200] rev 10759
[py3k] fix building rset description for INSERT queries
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:34:49 +0200] rev 10758
[datafeed] use explicit encode/decode instead of casting to str
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 01 Oct 2015 12:33:58 +0200] rev 10757
[py3k] io.BytesIO
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:32:27 +0200] rev 10756
[py3k] get urllib foo from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:15:14 +0200] rev 10755
[devtools] CubicWebTC._check_html may have to deal with unicode or bytes
If called with template=None, CubicWebTC.view will not go through
main-template, and return the unicode data from the view directly
instead of encoded data.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:02:02 +0200] rev 10754
[ext/test] fix test relying on repr(text)
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 12:01:28 +0200] rev 10753
[req] fix url_parse_qsl on py3
should be folded with previous conversion
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:57:40 +0200] rev 10752
[server/session] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:57:22 +0200] rev 10751
[web/test] str vs bytes
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:50:42 +0200] rev 10750
[web/ajax] fix AjaxController on python3
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:50:09 +0200] rev 10749
[web/test] str → bytes
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:43:33 +0200] rev 10748
[wsgi/test] use bytes instead of str for POST body
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:43:01 +0200] rev 10747
[devtools] 'dict_values' object does not support indexing
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:42:29 +0200] rev 10746
[multipart] decode form data before calling parse_qs in python 3
parse_qs eats and returns 'str' on both python versions.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:41:20 +0200] rev 10745
[multipart] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 10:06:58 +0200] rev 10744
[web] assert that CubicWebPublisher.handle_request returns bytes
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:28:57 +0200] rev 10743
[py3k] fix validateform controller
We need to return bytes not str.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:28:31 +0200] rev 10742
[web] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:05:00 +0200] rev 10741
[multipart] make sure form keys are not bytes
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:04:27 +0200] rev 10740
[web] unicode → six.text_type
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 18:03:53 +0200] rev 10739
[wsgi] don't convert form values
This is done earlier in multipart.py
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 16:52:29 +0200] rev 10738
[server] import input from six.moves
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 16:50:06 +0200] rev 10737
[server] don't convert user.login to bytes to generate sessionid
Julien Cristau <julien.cristau@logilab.fr> [Wed, 30 Sep 2015 16:14:29 +0200] rev 10736
[cwctl] stop playing tricks with std{out,err} buffering
Python3 doesn't allow unbuffered text I/O, because it doesn't make
sense.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:42:40 +0200] rev 10735
[py3k] CubicWebTC.app_handle_request returns bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:37:31 +0200] rev 10734
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 12 Oct 2015 21:06:45 +0200] rev 10733
[py3k] http headers should be ascii-only unicode objects
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 18:20:42 +0200] rev 10732
[py3k] Clarify IDownloadable expected types
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:31:44 +0200] rev 10731
[py3k] IDownloadable.download_data() returns bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:24:58 +0200] rev 10730
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:01:16 +0200] rev 10729
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:00:41 +0200] rev 10728
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 14:42:33 +0200] rev 10727
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 10:24:47 +0200] rev 10726
[py3k] PageInfo.source contains bytes
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:58:12 +0200] rev 10725
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:35:38 +0200] rev 10724
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:28:10 +0200] rev 10723
[py3k] Don't encode URLs
Python 3's urllib works with unicode objects.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 18:04:22 +0200] rev 10722
[tests] Stop counting pickle bytes in ResultSet tests
Between python 2's pickle and cPickle implementations, the various
protocol versions added in python 3, the length of the pickled string is
completely unpredictable.
Instead, do a simple round trip and test a few attributes.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 17:54:15 +0200] rev 10721
[tests] Port unittest_cwctl to py3k
On python 2, sys.stdout takes bytes-like objects whereas python 3's
takes unicode-like objects and handles the encoding on its own.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 17:51:58 +0200] rev 10720
[migration] NoneType is no longer comparable in py3k
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 12:33:26 +0200] rev 10719
Rename gettext to cwgettext, use stdlib gettext
cubicweb/gettext.py was a copy of Python 2.6's gettext.py with the
context patch from bug https://bugs.python.org/issue2504
Instead of keeping that full copy, just inherit from
gettext.GNUTranslations and add the context-related stuff.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 17:16:26 +0200] rev 10718
[py3k] MethodType no longer takes a class argument
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:03:19 +0200] rev 10717
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:02:20 +0200] rev 10716
[py3k] im_self → __self__
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:01:31 +0200] rev 10715
[py3k] Don't sort Action objects
In python 3, arbitrary objects are no longer sortable.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:25:25 +0200] rev 10714
[py3k] use inspect module to get a function's arguments
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 17:58:30 +0200] rev 10713
[py3k] __unicode__ and __str__
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 21 Sep 2015 19:00:26 +0200] rev 10712
[test] call rql.parse with unicode objects
Allows to get same results from rqlst.as_string() in python 2 and 3
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 14:23:22 +0200] rev 10711
[py3k] replace cmp with key in sorted()
And stop sorting dicts in snippet_key()
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 12:35:10 +0200] rev 10710
[tests] remove useless sort
Useless in python 2, actively harmful in python 3 where arbitrary
objects are no longer sortable.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 12:34:51 +0200] rev 10709
[py3k] dict methods no longer return indexable objects
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 12:03:12 +0200] rev 10708
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 11:58:29 +0200] rev 10707
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 11:54:12 +0200] rev 10706
[server] Port BFSS to py3k
The BFSS API changes in python 3:
* 'defaultdir' MUST be a unicode object
* 'fsencoding' MUST NOT be set
In python 2, fsencoding handles both the encoding of file paths on the
file system (utf-8 by default, but the system may actually be using
something else) and the encoding of file paths that will be stored in
the database.
So in python 3, we wipe the slate clean:
* rely on sys.getfilesystemencoding() to convert unicode objects to
bytes
* always encode paths to utf-8 for storage in the database
Caveat emptor / here be dragons:
* sys.getfilesystemencoding() depends on the current locale, which
therefore MUST be set properly
* when migrating an existing instance from py2 to py3, one MAY need
to reencode file paths stored in the database
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 15:35:26 +0200] rev 10705
[py3k] Binary.getvalue() returns bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 14:47:04 +0200] rev 10704
[py3k] ensure Binary objects are initialized with bytes
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 12:02:40 +0200] rev 10703
[py3k] __unicode__ and __str__
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 11:07:36 +0200] rev 10702
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 14:50:44 +0200] rev 10701
[mail] port to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:43:19 +0200] rev 10700
[web/views] port JSON views to py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:43:02 +0200] rev 10699
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:41:12 +0200] rev 10698
[web/controller] req.form is supposed to contain unicode-data
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 18:40:03 +0200] rev 10697
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 17:22:41 +0200] rev 10696
[py3k] unicode vs str vs bytes vs the world
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 17:07:26 +0200] rev 10695
[web/views] Port csvexport views to py3k
There are a few hoops to jump through since python 3's csv module _is_
unicode aware.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 14:18:14 +0200] rev 10694
[py3k] unicode vs str vs bytes vs the world
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 16:07:29 +0200] rev 10693
[web/request] don't convert request parameters if py3k
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 16:02:04 +0200] rev 10692
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 15:26:56 +0200] rev 10691
[py3k] __getslice__ → __getitem__ with slice support
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 15:50:42 +0200] rev 10690
[py3k] __nonzero__ → __bool__
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 15:17:42 +0200] rev 10689
[py3k] unicode vs str vs bytes vs the world
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 13:57:21 +0200] rev 10688
[py3k] use six.add_metaclass
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 11:28:07 +0200] rev 10687
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 05 Oct 2015 17:10:36 +0200] rev 10686
[py3k] add list() around dict methods
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:43:19 +0200] rev 10685
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:39:09 +0200] rev 10684
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:30:05 +0200] rev 10683
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:23:35 +0200] rev 10682
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:22:41 +0200] rev 10681
[server/utils] crypt_password should always return bytes
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:21:33 +0200] rev 10680
[py3k] str → six.binary_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:32:30 +0200] rev 10679
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:31:07 +0200] rev 10678
[server/utils] convert to py3k using six
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:28:05 +0200] rev 10677
[py3k] six.PY2
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:25:50 +0200] rev 10676
[py3k] use text/binary types from six
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:04:04 +0200] rev 10675
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:28:20 +0200] rev 10674
[py3k] bytes vs str
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:08:04 +0200] rev 10673
[py3k] io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 17:28:06 +0200] rev 10672
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 16:57:09 +0200] rev 10671
[py3k] bytes required for hashlib.{md5,sha1}()
Julien Cristau <julien.cristau@logilab.fr> [Thu, 01 Oct 2015 11:40:23 +0200] rev 10670
[wsgi/test] add __main__ section
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 14:29:53 +0200] rev 10669
[py3k] use next builtin instead of next method
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 17:10:58 +0200] rev 10668
[web/views] use next builtin instead of next method
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:09:55 +0200] rev 10667
[py3k] declare meta classes using six.add_metaclass
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Sep 2015 18:05:38 +0200] rev 10666
[py3k] replace '_ = unicode' in global scope (closes #7589459)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Sep 2015 18:01:36 +0200] rev 10665
[py3k] introduce cubicweb._ (related to #7589459)
The end goal is to stop relying on '_' being in the builtin scope. In
the mean time, deprecate the builtin '_' so that consumers are warned.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:04:05 +0200] rev 10664
[py3k] dict.iterkeys → dict
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 13 Oct 2015 15:09:22 +0200] rev 10663
[py3k] dict.itervalues → dict.values
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:15:03 +0200] rev 10662
[py3k] dict.iteritems → dict.items
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 18:04:57 +0200] rev 10661
implement __ne__ whenever we implement __eq__
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 17:15:03 +0200] rev 10660
[test] use unicode for rql queries (7/7)
Closes #6694446
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:28:55 +0200] rev 10659
[test] use unicode for rql queries (6/7)
Related to #6694446
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:25:26 +0200] rev 10658
[test] use unicode for rql queries (5/7)
Related to #6694446
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:25:16 +0200] rev 10657
[test] use unicode for rql queries (4/7)
Related to #6694446
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:24:57 +0200] rev 10656
[test] use unicode for rql queries (3/7)
Related to #6694446
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:24:42 +0200] rev 10655
[test] use unicode for rql queries (2/7)
Related to #6694446
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Sep 2015 09:37:14 +0200] rev 10654
[test] use unicode for rql queries (1/7)
Related to #6694446
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 16:26:56 +0200] rev 10653
[schema] improve normalization of RQLExpressions
Parse and print back the expression instead of manipulating the string.
Among other benefits, it means we don't mangle embedded string constants
that contain commas or multiple spaces.
Closes #6694426
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Sep 2015 13:43:57 +0200] rev 10652
[server/rql2sql] use VariableRef.is_equivalent explicitly instead of relying on __eq__
What we want to compare is the variable referenced by the VariableRef,
we should make that explicit.
Closes #6694406
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 12 Oct 2015 10:53:35 +0200] rev 10651
merge with 3.21.2
David Douard <david.douard@logilab.fr> [Fri, 02 Oct 2015 17:28:33 +0200] rev 10650
[statsd] fix the statsd logger (closes #7558147)
socket.inet_pton's second argument is the ip, not a couple (ip, port)
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 12 Oct 2015 09:19:07 +0200] rev 10649
Added tag 3.21.2, debian/3.21.2-1, centos/3.21.2-1 for changeset a5428e1ab364
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 18:01:46 +0200] rev 10648
[pkg] 3.21.2
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 18:03:40 +0200] rev 10647
[pkg] Remove leftover dep on pyro (closes #7479155)
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 17:52:14 +0200] rev 10646
merge with 3.20.10
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 29 Sep 2015 12:09:04 +0200] rev 10645
[migration] fix change_attribute_type to update the live schema
Closes #7170830
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 09:57:08 +0200] rev 10644
[devtools] add has_cache for postgres (closes #5739624)
devtools stores info about existing dbs in the db handler, but in the
case of postgresql that doesn't take into account the path to the
cluster's datadir. Which means if we run two test modules (in the same
test run), we'll create a "__default_empty_db__" for the first one,
cache its existence, and then when moving on to the other module,
believe the template already exists (but since the datadir depends on
the test module's path, it does not). This patch is a bit of a kludge,
and it would be better to make the cache key include enough data to not
need this, but I'm not sure how to do that.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 22 Sep 2015 14:20:02 +0200] rev 10643
fix bad-caching of datetime with tz info at sql generation time
There is a special handling for datetime with tzinfo, where value was stored in
the query cache. The implementation of merge_args was simply overwriting
parameters of the query with those in the query cache, expecting no collision.
To fix this:
* handle replacement of tzinfo in merge_args, not at sql generation time
* add an assertion to ensure we've actually no collision
Closes #6978316
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 09 Oct 2015 09:40:08 +0200] rev 10642
Added tag 3.20.10, debian/3.20.10-1, centos/3.20.10-1 for changeset 8f82e9523962
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:47:57 +0200] rev 10641
[pkg] 3.20.10
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:38:16 +0200] rev 10640
merge with 3.19.13
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:24:09 +0200] rev 10639
[devtools] Fix CubicWebTC.temporary_permissions
If the context manager is exited via an exception, the original
permissions should be restored.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 08 Oct 2015 18:09:10 +0200] rev 10638
[devtools] Use TestCase.assertGreater
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Sep 2015 08:32:49 +0200] rev 10637
[autoform] fix appearance of link to add inlined creation form
On entity creation, if there are some local permissions on the relation,
we have no way of checking them since neither the subject nor the object
of the relation exists yet. In such a case, we should add the link by
default, for consistency (see other places where we use
`may_have_permission`).
Closes #6711900
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 08 Oct 2015 11:47:15 +0200] rev 10636
[predicates] Simplify specified_etype_implements
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 08 Oct 2015 12:13:35 +0200] rev 10635
[web/views] Fix `has_editable_relation` predicate wrt inlined relations
Prevents the "modify" action from being shown when there is nothing to
edit.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 02 Sep 2015 15:31:18 +0200] rev 10634
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
When selecting an inlined creation form, we should catch the
NoSelectable exception that will be raised if the user cannot add
entities of the target type (this is not and cannot be verified earlier)
or if some other custom selector prevents the form from being selected.
Closes #6510921
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 07 Oct 2015 17:27:35 +0200] rev 10633
[server/test] bit of PEP8
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 25 Aug 2015 11:11:34 +0200] rev 10632
[migration] don't attempt to carry over values when renaming a computed relation
Without the fix in migractions.py, the introduced test crashes with an
operational error because of an attempt to write to a non-existing
relation table (computed relations are not materialized).
Closes #6304946
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 21 Aug 2015 11:01:08 +0200] rev 10631
consider .do_fti flag in index_entity method
as this method may be used from outsite the class (eg in UpdateFTIHook), this is
the proper way to consider it anyway.
Closes #6206636
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 06 Oct 2015 18:59:01 +0200] rev 10630
Added tag 3.19.13, debian/3.19.13-1, centos/3.19.13-1 for changeset f933a38d7ab5
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 06 Oct 2015 18:35:14 +0200] rev 10629
[pkg] 3.19.13
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 14:41:28 +0200] rev 10628
[migration/3.21] add support for sqlserver
Closes #7173702
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 15:49:10 +0200] rev 10627
moved_entities.extid may not be NULL
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 15:15:03 +0200] rev 10626
[server] use sqls_create_multicol_unique_index to index entities.extid
SQL Server's UNIQUE is not standards compliant, it doesn't accept two
NULL values. Related to #7173702.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 15:11:29 +0200] rev 10625
[server] fix checkintegrity with pyodbc
"msg % row" dies with "not enough arguments for format string" if row is
a pyodbc.Row.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Sep 2015 14:23:57 +0200] rev 10624
[schema] remove unique constraint on unlimited String attribute
SQL Server doesn't allow indexing (and thus unique constraints) on
nvarchar(max). Related to #7173702.
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Mon, 05 Oct 2015 16:36:49 +0200] rev 10623
[sources/native] fix potential NameError (closes #7364249)
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 11:15:47 +0200] rev 10622
[py3k] unicode → six.text_type
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 18:10:20 +0200] rev 10621
[devtools/testlib] Port CubicWebTC.view() to py3k
testlib.TestCase.set_description's argument will eventually be printed
out to sys.stdout/stderr. On python 2, this object takes bytes-like
objects (eg, str) whereas python 3's takes unicode-like objects and
handles the encoding on its own.
Thus the 'str' type can used in both versions to eventually display the
description on screen.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 18:12:44 +0200] rev 10620
[devtools/testlib] port 'fake_form' test to io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 16:45:03 +0200] rev 10619
[dataimport] port ucsvreader tests to io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 18:56:29 +0200] rev 10618
[py3k] io.BytesIO
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Sep 2015 17:40:23 +0200] rev 10617
[py3k] io.StringIO
Rémi Cardona <remi.cardona@free.fr> [Tue, 15 Sep 2015 12:51:27 +0200] rev 10616
Port cw.Binary to io.BytesIO
And add plenty of tests too!
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 18 Sep 2015 18:26:07 +0200] rev 10615
[py3k] execfile → exec
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:33:47 +0200] rev 10614
[py3k] file → open
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Sep 2015 09:52:06 +0200] rev 10613
[py3k] six.integer_types
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 16:03:07 +0200] rev 10612
[py3k] basestring → six.string_types
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 11:23:51 +0200] rev 10611
[py3k] import CookieJar using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 18:50:25 +0200] rev 10610
[py3k] import urllib2 from six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:56:57 +0200] rev 10609
[py3k] import range using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:07:13 +0200] rev 10608
[py3k] import queue using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 14:59:06 +0200] rev 10607
[py3k] import filter using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 14:58:52 +0200] rev 10606
[py3k] import zip using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 15:36:32 +0200] rev 10605
[py3k] import SimpleCookie using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 12:40:57 +0200] rev 10604
[py3k] import HTTP client constants and exceptions using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Sep 2015 09:39:30 +0200] rev 10603
[py3k] import URL mangling functions using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 12:19:48 +0200] rev 10602
[py3k] import 'pickle' using six.moves
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 14:45:15 +0200] rev 10601
[pkg] Add dependency on six 1.4.0
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 16 Sep 2015 11:32:09 +0200] rev 10600
[tests] Replace use of deprecated TestCase.assert_
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 16:30:25 +0200] rev 10599
[predicates] Simplify range(len()) iteration
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 15:34:09 +0200] rev 10598
[dataimport] Use pickle.dump instead of dumps
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 15:42:38 +0200] rev 10597
[web/facet] Simplify reversed/sorted calls
Julien Cristau <julien.cristau@logilab.fr> [Mon, 28 Sep 2015 13:47:30 +0200] rev 10596
[web/test] Use TestCase.setUpClass instead of setUpModule
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 14 Sep 2015 11:16:10 +0200] rev 10595
Use isinstance() instead of type comparison
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 15 Sep 2015 15:10:59 +0200] rev 10594
Unused imports
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 16:01:10 +0200] rev 10593
[py3k] tuple unpacking in function args
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 15:52:18 +0200] rev 10592
[py3k] ur'' is gone
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 15:50:29 +0200] rev 10591
[py3k] octals and long
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 15:29:25 +0200] rev 10590
[py3k] Fix raise with embedded traceback
python 3 removed the raise syntax with 2 and 3 expressions.
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 14:52:09 +0200] rev 10589
[py3k] print function
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 14:28:06 +0200] rev 10588
[py3k] except as
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 11 Sep 2015 14:27:34 +0200] rev 10587
[py3k] backtick to repr
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Sep 2015 15:01:55 +0200] rev 10586
[hooks/syncschema] make sure CWUniqueTogetherConstraintDelOp happens before CWConstraintDelOp
SQLServer refuses to index an unlimited text column, so we should drop
unique_together constraints (which imply an index) before we drop size
constraints. Closes #5560601.
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Wed, 23 Sep 2015 15:00:33 +0200] rev 10585
[hooks/syncschema] only call "ALTER TABLE" once when changing a size constraint
Until now we would:
- remove the old size constraint from the in-memory schema
- call update_rdef_column which removes the size restriction from the
column's type
- add the new constraint object
- call update_rdef_column which adds the size restriction back
This breaks on SQL Server when the column is involved in an index (e.g.
as part of a multi-column unique constraint), because in the
intermediate stage the column's type is "nvarchar(max)", which is not
indexable.
Of course we must still detect the case where a size constraint is
really dropped and update the db schema accordingly.
Closes #5557633.
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Wed, 02 Sep 2015 15:24:46 +0200] rev 10584
[syncschema] only add to the `synchronized` set if all possible updates have been done
Otherwise a simple sync_schema(syncprops=False) turns the subsequent
sync_schema() calls into a no-op.
Closes #6510918.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Jul 2015 12:32:51 +0200] rev 10583
[qunit] remove unused 'data_files' parameter
Its use was removed when we stoppped pointing firefox at file://
web/test/jstests/ajax_url2.html has never actually been used, it's only
been ever mentioned in a QUnit comment.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 20 Jul 2015 13:55:54 +0200] rev 10582
[urlpublish] RESTPathEvaluator now use vid_from_rset
This avoid cases where vid may be unexpectedly overwritten. For instance when
you define a custom vid for a mime type in VID_BY_MIMETYPE, it will currently be
overriden by the URL publisher when you access to /<etype> with the proper
Accept header.
To do so, a new 'check_table' argument is introduced, which may cause bw
compatibility problems if the function has been monkey-patched.
Also pep8 a bit the tests.
Closes #5705835
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:19:39 +0200] rev 10581
[server/sources] use decode_extid in datafeed
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:15:17 +0200] rev 10580
[server/sources] add decode_extid method
avoids having the same dance in both eid_type_source variants
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:18:56 +0200] rev 10579
[server/repo] kill repo.pinfo()
session.cnxset is dead, this can't work.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:18:23 +0200] rev 10578
[web/sessions] simplify session cleanup
session.cnx.check() is no longer a thing. It dates back to dbapi.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:17:42 +0200] rev 10577
[server/repo] fix typo
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:09:29 +0200] rev 10576
[server/sources] AbstractSource.__ne__
Seems confusing to have __eq__ but not __ne__.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 24 Jul 2015 16:09:37 +0200] rev 10575
[server/sources] fix docstring for eid_type_source
David Douard <david.douard@logilab.fr> [Mon, 27 Jul 2015 10:00:32 +0200] rev 10574
[views] fix ProcessInformationView: SESSION_MANAGER can be None (closes #5753280)
eg. with pyramid.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 06 Aug 2015 15:21:58 +0200] rev 10573
[server/migractions] drop mock_object
It doesn't seem to have ever been used.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 06 Aug 2015 15:24:16 +0200] rev 10572
[test] kill unused lgc.testlib imports
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 25 Aug 2015 11:09:22 +0200] rev 10571
[server/migractions] raising SystemExit sounds like a bad idea
Simply skip the action (rename_relation_type) with an early return.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 27 Jul 2015 09:27:18 +0200] rev 10570
[server/storage] rename 'session' variables to 'cnx'
We no longer deal with Session objects here.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 17:52:45 +0200] rev 10569
[migration] remove repo_connect and use config.repository() instead
One less more redundant path to the repo.
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 16:32:14 +0200] rev 10568
[repoapi, cwconfig] give a convenience method to get a repository from a config
This is a very common need.
The private repoapi._get_inmemory_repo becomes config.repository(...)
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 15:50:23 +0200] rev 10567
[cwconfig] remove unused method
Not to be confused with serverconfig.migration_handler.
Rémi Cardona <remi.cardona@free.fr> [Tue, 19 Aug 2014 00:16:02 +0200] rev 10566
[captcha] Port to io.BytesIO
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Feb 2014 17:00:40 +0100] rev 10565
[web/sessions] the session managers are definitely not components
Component (or AppObjects) take a _cw at __init__ time.
The session managers want a repository.
Related to #1381328.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Feb 2014 16:43:33 +0100] rev 10564
[web] the AuthenticationManager is no more an appobject
It is now explictly instanciated by the session manager.
Related to #1381328.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 05 Dec 2014 16:22:02 +0100] rev 10563
[hooksmanager] remove very old unused module
Julien Cristau <julien.cristau@logilab.fr> [Fri, 31 Jul 2015 15:17:43 +0200] rev 10562
[devtools] fix CubicWebTC.assertDocTestFile (closes #5930028)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 29 Jul 2015 10:51:52 +0200] rev 10561
Added tag 3.21.1, debian/3.21.1-1, centos/3.21.1-1 for changeset a8a0de0298a5
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 18:59:14 +0200] rev 10560
[pkg] Let dh_installdocs deal with doc-base
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 18:57:21 +0200] rev 10559
[pkg] various debian packaging fixes
- stop using *.install.in files, just use wildcards in *.install
- switch to X-Python-Version (preferred for dh_python2)
- also call dh_python2 for /usr/share/cubicweb, not just public modules
- drop long obsolete ginco and erudi migration code from cubicweb-ctl.postinst
- fix cubicweb-ctl cleanup: purge code belongs in postrm, not prerm
- don't compress changelog.html
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 18:06:46 +0200] rev 10558
[pkg] 3.21.1
David Douard <david.douard@logilab.fr> [Tue, 28 Jul 2015 11:21:36 +0200] rev 10557
[web] fix AbstractSessionManager.clean_sessions (closes #5757240)
sessions were not closed if "last_usage_time = session.cnx.check()" actually
raises an AtributeError.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Jul 2015 14:29:42 +0200] rev 10556
[migration/3.21] ask fewer questions
Several questions per table is just unreasonable.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 11:26:47 +0200] rev 10555
[server] typo fix
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 11:15:36 +0200] rev 10554
[test] check that we reject an rqlexpression in computed relation perms
Julien Cristau <julien.cristau@logilab.fr> [Tue, 28 Jul 2015 09:25:26 +0200] rev 10553
Fix (de)serialization of ComputedRelation read permissions
For normal relation types, permissions don't need to be stored since
they're just default values for the relation definitions. However,
computed relations are serialized (as CWComputedRType), while their
relation definitions are added at schema finalization time, and are only
in memory. So add the 'read_permission' relation to CWComputedRType,
and the appropriate hooks to save and restore those permissions.
To avoid having to touch yams, we drop the 'add' and 'delete'
permissions from the default computed relation permissions; this should
probably be backported there. The actual permissions (set on the
relation definitions) are hardcoded in finalize_computed_relations
anyway.
In deserialize_schema, the CWComputedRType handling needs to be delayed
a little bit, until after we've called deserialize_ertype_permissions.
The rql2sql test is adjusted because CWComputedRType has a 'name'
attribute and the 'read_permission' relation, which generates ambiguity
vs CWEType.
We add an explicit CubicWebRelationSchema.check_permission_definitions,
since we need to check both that computed and non-computed rtypes are
defined properly.
Based on report and initial patch from Christophe de Vienne (thanks!).
Closes #5706307
Christophe de Vienne <christophe@unlish.com> [Fri, 17 Jul 2015 16:48:43 +0200] rev 10552
Copy read permissions on ComputedRelation rdefs
Closes #5694110
David Douard <david.douard@logilab.fr> [Wed, 22 Jul 2015 19:50:50 +0200] rev 10551
[datafeed] fix typo in DataFeedXMLParser.is_deleted (closes #5729755)
Julien Cristau <julien.cristau@logilab.fr> [Mon, 27 Jul 2015 10:51:29 +0200] rev 10550
[server/sources] make sure entity._cw is a Connection before calling Storages
The storage callbacks don't get an explicit Connection objects, so they
go through entity._cw to access the repo and schedule operations. Since
that entity object comes out of the entity cache, its _cw may be a web
request instead of a Connection. So fix it up around the storage
callbacks.
Closes #5753543
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Jul 2015 14:34:41 +0200] rev 10549
[hooks] base64-encode extid before inserting it into moved_entities
If we insert the wrong value we're never going to find these entities
again... Closes #5741105.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Jul 2015 18:17:31 +0200] rev 10548
[hook] remove assumption about entity cache vs cw_edited
We were assuming that if an entity is in the connection's cache, it has
a cw_edited attribute. This doesn't seem to always be the case. At
least in cubicweb 3.21, merging the web and repo-side caches makes this
more likely, but Denis says he's also seen this on 3.20.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Jul 2015 18:09:12 +0200] rev 10547
[hook] don't open-code Connection.entity_cache
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 23 Jul 2015 09:43:36 +0200] rev 10546
[tox] Add missing dependency on webtest for devtools tests
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jul 2015 11:32:24 +0200] rev 10545
[tox] Add missing dependency on webtest for wsgi tests
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 22 Jul 2015 10:55:39 +0200] rev 10544
[tox] Remove set of PATH environment variable
The : concatenation does not work actually so the resulting PATH was just
wrong (it did not contain the previous PATH). Anyways, the PATH environment
variable is passed by default by tox so it's probably better to let the caller
set it (thus avoiding to hard-code the specific postgres version and path).
http://tox.readthedocs.org/en/latest/example/basic.html#passing-down-environment-variables
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Jul 2015 14:06:22 +0200] rev 10543
[doc] generalize info about debian/ubuntu repositories
That section was not kept up to date with recent distro releases; stop
trying.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Jul 2015 13:49:58 +0200] rev 10542
[doc] fix link to setup info in README
... and fix URL to the repository's gpg key.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 12:15:20 +0200] rev 10541
[server/session] remove unused cnx_meth function
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 11:03:09 +0200] rev 10540
[server] don't issue a warning for something expected
Creating an instance happens all the time in tests, there's no reason to
warn every time.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 12:37:47 +0200] rev 10539
[server] stick a _cw on internal connnection's user
Entity._fetch_restrictions goes through user._cw.vreg :(
Closes #5705769
Julien Cristau <julien.cristau@logilab.fr> [Mon, 20 Jul 2015 16:43:47 +0200] rev 10538
[migration/3.21] fix stupid error in migration script
str.join doesn't like a list of ints. Closes #5706359.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 15 Jul 2015 15:01:21 +0200] rev 10537
Added tag 3.21.0, debian/3.21.0-1, centos/3.21.0-1 for changeset 887c6eef8077
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 18:18:58 +0200] rev 10536
[pkg] various fixes
- add missing files to MANIFEST
- exclude doc/changes from dh_installchangelogs (it's a directory, which
dh_installchangelogs doesn't expect)
- fix doc build in debian package
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 17:40:08 +0200] rev 10535
[doc] fix broken symlinks
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 17:04:32 +0200] rev 10534
[pkg] update 3.21.0 release date
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 17:04:03 +0200] rev 10533
[doc/3.21] mention the postgresql-only state of the upgrade script
David Douard <david.douard@logilab.fr> [Fri, 10 Jul 2015 09:30:04 +0200] rev 10532
[datafeed] also catch EnvironmentError when trying to load the cwclientlib config file
means the config file has not been found, so fall back to the old implementation
instead of crashing.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 10 Jul 2015 09:35:52 +0200] rev 10531
[schema] Make syntax compatible with print_function
yams seems to exec() us sometimes (instead of __import__()), and
yams.reader uses print_function nowadays.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 17:03:50 +0200] rev 10530
[pkg] 3.21.0
Julien Cristau <julien.cristau@logilab.fr> [Thu, 09 Jul 2015 11:26:09 +0200] rev 10529
[test] use FakeFile instead of File in test_fulltextindex
File.data is no longer fulltextindexed.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 16:55:28 +0200] rev 10528
i18n update
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 14:13:39 +0200] rev 10527
[serverctl] fix schema-diff command
It hadn't been ported away from dbapi.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 14:13:10 +0200] rev 10526
[serverct] call server_{maintenance,shutdown} hooks around source-sync command
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 14:12:46 +0200] rev 10525
[serverctl] call server_{maintenance,shutdown} hooks around add-source
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 07 Jul 2015 14:57:24 +0200] rev 10524
Update hgignore
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 21:13:23 +0200] rev 10523
delete unmaintained clone_deps script
Closes #2517580.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 16:43:56 +0200] rev 10522
merge 3.20.9 into 3.21
Fix conflict in unittest_postgres.py by changing sources configuration
in PostgresTimeoutConfiguration.__init__ so it happens *after*
setUpModule().
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 15:13:10 +0200] rev 10521
Added tag 3.20.9, debian/3.20.9-1, centos/3.20.9-1 for changeset d477e6447582
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 09 Jul 2015 12:40:43 +0200] rev 10520
[pkg] 3.20.9
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 08 Apr 2015 09:27:26 +0200] rev 10519
[forms] don't display 'remove' link of inlined form for the first entity related using a '+' cardinality to its parent entity
Closes #5227394
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 08 Jul 2015 09:37:06 +0200] rev 10518
[tox] Update doc testenv to account for documentation restructuring
* Build doc from `doc` directory.
* Use `sphinx-build` directly instead of `make` as this now works and allows
to build within .tox temporary environment (instead of doc/_build),
preferable for a "test" action.
Related to #5447161.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 02 Jul 2015 11:46:57 +0200] rev 10517
[schema] drop old backward compat code
preventing yams to be itself fully cleaned
David Douard <david.douard@logilab.fr> [Thu, 11 Jun 2015 11:45:45 +0200] rev 10516
[datafeed] allow to use cwclientlib for datafeed's queries (closes #5456849)
HTTP based URLs will be handled by a CWProxy if:
- cwclientlib is available and
- the URL matches a cwclientlibrc config entry
Otherwise, fallback to previous implementation.
See https://www.cubicweb.org/project/cwclientlib
:Warning:
This comes with an API modification of DataFeedParser.retrieve_url: it used
to accept data and headers arguments to build GET or POST (if data was given)
queries, but this was not used by any known code and imply more complicated
code.
David Douard <david.douard@logilab.fr> [Thu, 11 Jun 2015 10:17:41 +0200] rev 10515
[cwxml parser] refactor url handling code to use urlparse and urlencode (related to #5456849)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 26 Jun 2015 15:00:07 +0200] rev 10514
add use_extid_as_cwuri ext entity transform, that will be often necessary and not so easy to write at once
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 26 Jun 2015 11:15:25 +0200] rev 10513
[dataimport] dispatch and deprecate old code
previously, the whole dataimport.py content has been copied in
dataimport/__init__.py, then dataimport/importer.py API has been introduced.
Following these changes, this cset:
* dispatch __init__ code into sub-modules
* dispatch unittest_dataimport accordingly
* deprecates functions and classes that are deprecated by the new API
Related to #5414753.
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 30 Jun 2015 23:17:45 +0200] rev 10512
Add tox.ini file
* Factor out `commands` for most environments using {envname} substitution to
build pytest commande.
* Positional arguments are passed on to `pytest` (others may also be passed
after a `--`).
* Set PATH env variable for tests requiring PostgreSQL.
* Also added a `doc` target to build the book.
Also update .hgignore exclude .tox directory (where virtualenvs will be
created and cubicweb.egg-info created by sdist command).
Closes #5447161.
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 29 Jun 2015 22:34:58 +0200] rev 10511
Add requirements.txt files in test directories
These files, located in each test directory (when needed), list test
dependencies supplementary to install requirements.
Some requirements.txt files include psycopg2 because it won't get installed by
logilab-database apparently.
Related to #5447161.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 09 Mar 2015 10:49:03 +0100] rev 10510
Spelling fixes in comments and docstrings
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 08 Apr 2015 11:29:24 +0200] rev 10509
[web/views] Clean up confusing backwards compatibility code
Dead code since fbb370195199, related to #4943392.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Jul 2015 09:25:45 +0200] rev 10508
[server/test] avoid lgdb warnings from str to unicode conversion
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 03 Jul 2015 15:18:24 +0200] rev 10507
[web/test] Modernize unittest_propertysheet.py
- remove call to os.makedirs in global scope
- fold CACHEDIR as an instance attribute
- bonus: use unittest directly instead of lgc.testlib
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 03 Jul 2015 12:20:48 +0200] rev 10506
[web/webconfig] Drop pre-3.9 backward compatibility method "has_resource"
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 03 Jul 2015 12:07:44 +0200] rev 10505
[web] Stop using negative indices with os.stat results
The python doc says:
More items may be added at the end by some implementations.
.st_mtime is also more readable than [-2].
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 13:43:40 +0200] rev 10504
[doc] small rst fixes and cleanups in changelog files
Related to #4832808
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 13:44:01 +0200] rev 10503
[doc] make the changelog chapter a one html page
Related to #4832808
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 12:18:56 +0200] rev 10502
[doc] reformat changes files headers
to remove the "what's new" phrasing and add the publication date instead.
Related to #4832808
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 12:07:29 +0200] rev 10501
[doc] remove mentions of pyro and reposity instance type
from the concepts chapter
Related to #4832808
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 11:37:58 +0200] rev 10500
[doc] put the tutorials between the intro and the `Repository development` toc of the book
Related to #4832808
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 14:07:53 +0200] rev 10499
[doc] move the documentations from docstring directly to the book.
and improve a bit API documentations.
Related to #4832808
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 15:23:14 +0200] rev 10498
[predicates] remove deprecated sentences in docstrings
David Douard <david.douard@logilab.fr> [Fri, 03 Jul 2015 14:06:57 +0200] rev 10497
[predicates] objectify the anonymous_user predicate
for the sake of consistency.
David Douard <david.douard@logilab.fr> [Thu, 02 Jul 2015 19:54:25 +0200] rev 10496
[doc] more fixes of warnings/errors in doc build
- move 3.21.rst changelog description at it's proper place
- include changelogs in the main index
- few typos
- add :noindex: for autoxxx directives not in api/
Related to #4832808
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Jun 2015 17:04:40 +0200] rev 10495
[doc] fix warnings/errors in doc build
- fix links to images
- fix a couple of typos
- re-add IDownloadableOneLineView doc
- rename documenting.rst back to .txt, it's intended as a doc of how to
write rst, not part of the rst doc
Related to #4832808
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 23:00:56 +0100] rev 10494
[doc] Start documenting the API
Related to #4832808
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 23:00:33 +0100] rev 10493
[doc] Remove useless indexes
Related to #4832808
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 23:06:12 +0100] rev 10492
[doc] Insert the dev docs in the toc
Related to #4832808
Christophe de Vienne <christophe@unlish.com> [Thu, 08 Jan 2015 22:11:06 +0100] rev 10491
[doc] Restructure the documentation
* Create a new index file
* Move the sphinx configuration files do the documentation root
* Move book/README to dev/documenting.rst
* Move book/mode_plan.py to tools/
* Move book/en/images to images
* Move book/en/* to book/
* Move changelogs to changes/*
* Adapt the Makefile
* Add a title to the javascript api index
Related to #4832808
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Jul 2015 17:39:35 +0200] rev 10490
[migration/3.21.0] performance and reliability fixes
- use EXCEPT instead of NOT IN, seems to improve performance
dramatically on postgresql
- delete rows from cw_<etype> tables whose eid is unknown
- deal with missing/dangling required inline relations (by deleting the
subject entities) instead of asserting
- fix/improve print statements
- don't ask for confirmation before running pure select queries
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Jul 2015 17:15:24 +0200] rev 10489
[serverctl] fix source-sync command
Closes #5491700
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Jul 2015 10:41:34 +0200] rev 10488
[server] missing import
Fixes NameError in an unlikely error case.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Jul 2015 10:15:47 +0200] rev 10487
[server/test] stop using email cube
- make unittest_migractions use a separate datadir, and add a fake email
cube there (we use it to test {add,drop}_cube, so need something that
looks like a cube)
- for the other test modules, just copy what we need from cubicweb-email's
schema to our test schema
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 02 Jul 2015 16:13:05 +0200] rev 10486
[web/views] Remove unused variable
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 02 Jul 2015 15:33:03 +0200] rev 10485
[server/session] bring anonymous_connection back
Fixes cubicweb-comment.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 02 Jul 2015 15:31:48 +0200] rev 10484
[migration/3.21] idempotency fixes
Drop constraints before (re)creating them
This is postgresql-specific syntax, sqlserver needs work.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 02 Jul 2015 12:19:49 +0200] rev 10483
[migration/3.21] Make index and table creation idempotent
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Jul 2015 15:44:49 +0200] rev 10482
[migration/3.21] Add missing foreign keys when upgrading
Try to delete dangling relations, since there's no point in keeping
them.
Related to #4846892.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 01 Jul 2015 12:03:00 +0200] rev 10481
[schema2sql] properly consider skip_relations parameters.
This is the same bug as yams #286912. Also, introducing a unique function
telling if the relation should have a table or not unhide some other problems
related to computed relation, or missing skipped relations information.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Jul 2015 09:20:02 +0200] rev 10480
[hooks/test] don't rely on RelationDefinition implicitly
Its presence in globals is deprecated and going away.
Laura Médioni <laura.medioni@logilab.fr> [Thu, 11 Jun 2015 16:51:51 +0200] rev 10479
[web] write css_class to attrs on rendering and not on button creation
Because css_class attribute may be overriden by bootstrap after button creation and this
modification has to be taken into account.
closes #5457548
Julien Cristau <julien.cristau@logilab.fr> [Fri, 26 Jun 2015 14:30:24 +0200] rev 10478
[statsd_logger] handle ipv6 addresses
David Douard <david.douard@logilab.fr> [Mon, 04 May 2015 17:37:43 +0200] rev 10477
implement a simple statsd logger (closes #5488711)
and add a few timing probes on:
- etwist.server.CubicWebRootResource.render_request()
- server.querier.QuerierHelper.execute()
- server.sources.native.NativeSQLSource:
- sqlexec()
- compile_rql()
- authenticate()
- doexec()
- doexecmany()
as well as a pair of counters on server.querier.QuerierHelper cache (hit/miss).
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Wed, 01 Jul 2015 21:00:13 +0200] rev 10476
[predicates] ExpectedValuePredicate now accepts a dict parameter
``match_form_params`` and ``match_kwargs`` benefit from that.
For instance, the following statements are valid::
__select__ = match_form_params('vid', 'subvid')
__select__ = match_form_params(vid='list', subvid='incontext')
__select__ = match_form_params(vid=('list', 'tsearch'))
In the latter cases, not only the parameters (``vid``/``subvid``)
must be in the request form but their corresponding value must also match
the expected values (or one of possible choices if `values` is a sequence).
closes #5484070
Christophe de Vienne <christophe@unlish.com> [Thu, 18 Jun 2015 18:26:02 +0200] rev 10475
[rql2sql] Fix iter_exists_sols() excessive cleaning of _state.tables
Closes #5503548
David Douard <david.douard@logilab.fr> [Thu, 25 Jun 2015 22:12:49 +0200] rev 10474
[cwctl] allow overriding config settings from the command line (closes #5557656)
eg.
cubicweb-ctl start -p port:8082 myapp
to overload the port parameter defined in the all-in-one.conf file.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 26 Jun 2015 13:04:25 +0200] rev 10473
avoid sanitizing warnings
Julien Cristau <julien.cristau@logilab.fr> [Fri, 26 Jun 2015 14:04:16 +0200] rev 10472
[devtools] avoid warning about source['global-db-name']
sqlite and postgres db handlers store the db template name there.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 26 Jun 2015 10:52:03 +0200] rev 10471
[skeleton] remove no-break space from skeleton setup.py
Julien Cristau <julien.cristau@logilab.fr> [Fri, 26 Jun 2015 10:51:16 +0200] rev 10470
[server/test] drop unused import
Julien Cristau <julien.cristau@logilab.fr> [Fri, 26 Jun 2015 10:50:59 +0200] rev 10469
[doc] update 3.21 release notes
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 26 Jun 2015 16:28:56 +0200] rev 10468
[devtools] Sort _cw_fields in fake_form
Try to generate a predictable string, to help testing with PYTHONHASHSEED=random.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 26 Jun 2015 16:29:28 +0200] rev 10467
[entity] sort fetchattrs when generating rql
Try to generate a predictable rql query, to help testing with
PYTHONHASHSEED=random.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 26 Jun 2015 16:27:37 +0200] rev 10466
Update hgignore for temporary test databases
Samuel Trégouët <samuel.tregouet@logilab.fr> [Fri, 03 Apr 2015 17:59:10 +0200] rev 10465
[js] removed unused and broken SuggestForm Widget (closes #5213487)
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 30 Jun 2015 15:06:36 +0200] rev 10464
[test] Fix unittest_i18n to run properly with "pytest -t" (closes #5576169)
When running "pytest -t", many tests modules will be imported and run
within a single python process. unittest_i18n fails when run after tests
such as unittest_webtest.py or unittest_httptest.py.
The main reason is that unittest_i18n does various tricks to add a test
cube to the search path, which badly fails when a previous test module
has already loaded "stuff" (for lack of a better word).
Instead, let's just call the 'i18ncube' command with subprocess.
The change from logilab.common.testlib to unittest is not directly
needed, but comes as a free cleanup with the above changes.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 29 Jun 2015 16:58:43 +0200] rev 10463
[server/test] fix random error in unittest_security
When entering a new Connection, we cache the user and its 'login'
attribute (with no permissions checking).
This test makes 'CWUser.login' unreadable by guests, and then proceeds
to make sure the 'anon' user can actually not read any 'login'
attribute. However, due to the above cnx initialization, anon's login
is actually cached, hence readable. This happens to make the test fail
sometimes depending on the order in which CWUser entities are returned,
because one of them has .complete() called, which as a side effect sets
the attribute cache to None for unreadable attributes.
Call .complete() on both entities to reset the login cache. While this
is still highly debatable, at least it's consistent.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 29 Jun 2015 16:41:36 +0200] rev 10462
[entity] fix typo in comment
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 26 Jun 2015 16:10:33 +0200] rev 10461
[doc] Add a tutorial and extend documentation for ExtEntityImporter
Related to #5414753.
Yann Voté <yann.vote@logilab.fr> [Fri, 26 Jun 2015 16:09:27 +0200] rev 10460
[dataimport] introduce the importer and extentity classes
This introduces the ``ExtEntity`` class which is a transitional state between
data at external source and the actual CubicWeb entities.
``ExtEntitiesImporter`` is then in charge to turn a bunch of ext entities into
CW entities in repository, using a given store.
This changeset also introduces ``SimpleImportLog`` and ``HTMLImportLog`` which
implement the CW DataImportLog interface in order to show log messages in UI
using simple text and HTML formats respectively, instead of storing these
messages in database.
Both have mostly been backported from cubes.skos.dataimport.
Closes #5414753.
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 26 Jun 2015 17:01:03 +0200] rev 10459
[test] Use store.prepare_insert_relation instead of deprecated relate method
Follow-up for 1f5026e7d848.
Related to #5040344.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 24 Jun 2015 23:30:47 +0200] rev 10458
[dataimport] since we have foreign key constraints in the database, 'entities' table should be updated first
Yann Voté <yann.vote@logilab.fr> [Wed, 24 Jun 2015 23:23:57 +0200] rev 10457
[dataimport] Move stores to new API.
Here is the final store API:
* ``prepare_insert_entity(<entity type>, **kwargs) -> eid``: given an entity
type, attributes and inlined relations, return the eid of the entity to be
inserted, *with no guarantee that anything has been inserted in database*,
* ``prepare_update_entity(<entity type>, eid, **kwargs) -> None``: given an
entity type and eid, promise for update given attributes and inlined
relations *with no guarantee that anything has been inserted in database*,
* ``prepare_insert_relation(eid_from, rtype, eid_to) -> None``: indicate that a
relation ``rtype`` should be added between entities with eids ``eid_from``
and ``eid_to``. Similarly to ``prepare_insert_entity()``, *there is no
guarantee that the relation will be inserted in database*,
* ``flush() -> None``: flush any temporary data to database. May be called
several times during an import,
* ``finish() -> None``: additional stuff to do after import is terminated.
**Warning:** ``prepare_update_entity()`` still needs to be implemented for
NoHookRQLObjectStore.
Related to #5040344
Rabah Meradi <rabah.meradi@logilab.fr> [Tue, 23 Jun 2015 13:08:48 +0200] rev 10456
[js] Using appropriate http method when calling a remote function to respect REST principles.
closes #5355952
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 May 2014 10:28:23 +0200] rev 10455
[server/test] Add a test for db-statement-timeout option
Sadly I don't think there's a way to test that functionality without
adding sleeps which make the test suite longer :/
Related to #2547026
Julien Cristau <julien.cristau@logilab.fr> [Wed, 05 Mar 2014 13:51:28 +0100] rev 10454
[datafeed] give an error message if a source is missing a parser id
Closes #3484231
Julien Cristau <julien.cristau@logilab.fr> [Mon, 23 Jun 2014 16:54:35 +0200] rev 10453
[storage] use mkstemp to create files in bfss
Avoids race condition, at the cost of slightly less predictable file names.
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 11 Jun 2015 09:51:30 +0200] rev 10452
[test] Skip spa2rql tests when fyzz is not available
Closes #5456750.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Jun 2015 18:10:45 +0200] rev 10451
[web/staticcontrollers] fix docstring spelling
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Jun 2015 15:50:18 +0200] rev 10450
[server/rql2sql] fix spelling in comment
Not that I understand what that sentence means.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Jun 2015 15:17:31 +0200] rev 10449
[doc/book] fix rql syntax examples
"Any", not "ANY". "EXISTS" is a function.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 15 May 2015 23:05:54 +0200] rev 10448
[migration] add sql constraints on upgrade
Related to #5154406.
Julien Cristau <julien.cristau@logilab.fr> [Sun, 22 Mar 2015 19:10:13 +0100] rev 10447
[schema] neuter check method for constraints we implement in sql
Closes #5154406.
Julien Cristau <julien.cristau@logilab.fr> [Sun, 22 Mar 2015 23:27:13 +0100] rev 10446
add IUserFriendlyError adapter for violation of check constraints
This way we get back the same error messages we get from the python
check.
Related to #5154406
Julien Cristau <julien.cristau@logilab.fr> [Mon, 18 May 2015 19:47:34 +0200] rev 10445
[hooks/syncschema] drop/add check constraints as appropriate
Related to #5154406
Julien Cristau <julien.cristau@logilab.fr> [Sun, 22 Mar 2015 19:39:29 +0100] rev 10444
[schema2sql] support NOW and TODAY in check constraints
Related to #5154406.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 18 May 2015 11:36:07 +0200] rev 10443
[schema2sql] insert some constraints into the backend
BoundaryConstraint, IntervalBoundConstraint and
StaticVocabularyConstraint can be implemented in SQL with CHECK
constraints.
Next steps, not part of this changeset:
- migrations
- removing no longer necessary pre-insertion work on the python side
- translating backend exception due to constraint violation into
ValidationError
Note: this means that these constraints can no longer be ignored by
disabling integrity hooks.
Related to #5154406
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Jun 2015 10:05:34 +0200] rev 10442
[test] run unittest_syncschema with postgresql
Lets us test more things, since we can actually do ALTER TABLE.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 15 May 2015 18:11:08 +0200] rev 10441
[test] run unittest_migractions on postgresql
sqlite's lack of support for a bunch of alter table functionality means
some thing just don't get tested otherwise.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 23 Jun 2015 10:26:03 +0200] rev 10440
[devtools] Put pg sockets in /tmp
Makes for shorter paths (limited by sockaddr_un). Also use the default port,
since we're not listening on TCP sockets.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 18 May 2015 16:44:49 +0200] rev 10439
[devtools] change the way we start/stop postgresql
Instead of having the test db handler start a cluster on demand, use the
test module's setUp/tearDown callbacks to do it. This allows to have
one data directory (and thus cluster) per test module, allowing
different test modules to run in parallel, each using its own database
cluster whose path is based on the test module.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 18 May 2015 16:36:26 +0200] rev 10438
[devtools] make test db name for postgresql process-specific
In case we run two tests concurrently on the same cluster, better not
use the same db name for both.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 18 May 2015 16:30:32 +0200] rev 10437
[devtools] extract functions to start/stop a postgresql cluster
Julien Cristau <julien.cristau@logilab.fr> [Mon, 18 May 2015 20:00:06 +0200] rev 10436
[test] don't leave NULL columns around when making an attribute required
It doesn't matter on sqlite (it doesn't do ALTER COLUMN), but when
running this test on postgresql it fails to add the 'NOT NULL'
constraint otherwise.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 23 Jun 2015 10:02:41 +0200] rev 10435
[server/session] Roll back in connection exit
This was changed in commit 8b35a898b334 "[server] remove cnxset
tracking, it is now unneeded".
When exiting a CubicWeb Connection, the database connection is put back
into the common pool. At that point anything done during the lifetime
of the CubicWeb Connection needs to be committed or rolled back.
Do a proper rollback to finish the transaction, as was happening before
the above-mentionned commit.
This showed up on testing with postgresql, when a DB schema modification
was blocked by an old connection that was still "in transaction".
Alain Leufroy <alain.leufroy@logilab.fr> [Wed, 20 May 2015 16:13:07 +0200] rev 10434
[web/views/formrenderer] do not use `cubicweb:target` attribute on form (closes #5534074)
The `cubicweb:target` is a flag indicating that the form data (with
file input) shall be posted inside an iframe - this is a well known
"ajax-like" workaround to post files with browsers that do not support
`FormData` (a.k.a IE<10).
The `cubicweb:target` was introduced when CW used the "xhtml strict"
doctype. Now that CW uses the "html5" doctype, this namespaced
attribute is no longer necessary and the iframe can be generated
directly.
Before this patch, CW inserts the `cubicweb:target` attribute in the
form DOM element (server side) and `setFormsTarget()` updates the
DOM with a new `<iframe>` element (client side).
Now, CW inserts the `<iframe>` DOM element directly (server side),
making `setFormsTarget` useless.
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Fri, 25 Jul 2014 17:10:05 +0200] rev 10433
[js] lint : make it explicit that typeof is an operator, not a function.
Also, use === / !== except for null / undefined comparison
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 21 May 2015 16:20:04 +0200] rev 10432
[devtools] qunit: show helpful data when an assertion fails
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 20 May 2015 17:25:40 +0200] rev 10431
[web/test] Use shorter $() instead of jQuery()
Consistency FTW.
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 20 May 2015 16:17:28 +0200] rev 10430
[devtools] qunit: use new async testing APIs
http://qunitjs.com/cookbook/#asynchronous-callbacks
QUnit keeps track of all the assert.async() objects created inside the
test functions and expects all done() functions to be called. Failure to
do so will result in the test being failed.
Unlike .start and .stop which were internal APIs, assert.async() is
stricter and fails tests if assert methods are used *after* all done()
functions are called (see "test callback execution order").
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 20 May 2015 15:45:43 +0200] rev 10429
[devtools] qunit: use new assert APIs
test functions now accept an "assert" argument which exposes QUnit's
assert methods: assert.{expect,equal,deepEqual,ok}
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 20 May 2015 17:04:43 +0200] rev 10428
[devtools] qunit: stop using global variables
test -> QUnit.test
module -> QUnit.module
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 20 May 2015 15:12:58 +0200] rev 10427
[devtools] qunit: update to 1.18.0 (closes #5533333)
* the logging API has changed (register callbacks instead of setting
attributes on the QUnit object)
* the logging callbacks all have a single "details" object argument
* the "main" div was renamed to "qunit-fixture" (this change is
responsible for all the churn in our own JS test files)
* QUnit can now build the DOM elements it needs for reporting from a
single "qunit" div
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 20 May 2015 16:33:01 +0200] rev 10426
[devtools] qunit: stop using deprecated assert functions
equals -> equal
same -> deepEqual
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 18:39:29 +0200] rev 10425
[devtools] qunit: remove useless window.close()
Modern browsers don't allow it anymore.
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 18:38:04 +0200] rev 10424
[devtools] qunit: refactor functions into QUnitView
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 17:13:51 +0200] rev 10423
[devtools] qunit: only start firefox once per test
The separate profile initialization step doesn't seem necessary anymore.
This was due to the system-wide installation of the "Sage" Firefox
extensions which breaks -url on a fresh profile. Removing this obnoxious
extension allows us to launch Firefox in a standard way.
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 17:13:00 +0200] rev 10422
[devtools] qunit: decrease test timeout
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 17:12:40 +0200] rev 10421
[devtools] qunit: increase resolution and depth of Xvfb screen
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 18:34:52 +0200] rev 10420
[web/test] Always call QUnit.ok with a message
Related to #5533333.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 16:43:03 +0200] rev 10419
[web/test] Fix remaining JS tests (closes #5533303)
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 16:42:01 +0200] rev 10418
[web/test] Stop testing that exceptions raised in Deferred callbacks call errback
They no longer do as of changeset 7f1f7f710b16.
Related to #5533303.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 16:38:28 +0200] rev 10417
[web/test] stop calling loadxhtml with a form.callback
It was deprecated in 3.9 (changeset 7b9553a9db65) and removed in 3.18.
Related to #5533303.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 16:30:57 +0200] rev 10416
[web/test] Fix reset of loaded JS/CSS files
Name changed in commit ede740bd7077.
Related to #5533303.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 16:27:46 +0200] rev 10415
[web/test] Use proper JSON syntax
Related to #5533303.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 16:27:12 +0200] rev 10414
[web/test] Update mock ajax reply from "render" ajaxfunc
CubicWeb transforms add_js() calls in AJAX context to <cubicweb:script>
tags since ede740bd7077 and cd5738fc440f. Related to #5533303.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 17:49:40 +0200] rev 10413
[devtools] Serve JS tests over HTTP (closes #5533285)
Instead of mixing file:// URLs with XHR.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 May 2015 15:58:21 +0200] rev 10412
[web/data] Support Deferred objects outside XHR
JS tests actually use this. Related to #5533303.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 22 Jun 2015 14:27:37 +0200] rev 10411
merge 3.20.8 in 3.21
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 22 Jun 2015 14:15:16 +0200] rev 10410
[views] Revert previous changeset 8f05aaabf355
Breaks cubicweb/web/test/test_views.py as some views don't have a 'vid'
kwarg.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 22 Jun 2015 12:51:28 +0200] rev 10409
Added tag 3.20.8, debian/3.20.8-1, centos/3.20.8-1 for changeset ec284980ed9e
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 22 Jun 2015 12:50:30 +0200] rev 10408
[pkg] Prepare 3.20.8
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Fri, 25 Jul 2014 16:11:46 +0200] rev 10407
[js] simplify cw.log implementation
There's no need to rebuild and array and join its content, just
call console.log with ``arguments``.
The only trick is that console.log must be called on a console instance.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 22 Jun 2015 11:28:16 +0200] rev 10406
[web/views] don't force http redirect on logout
We no longer forbid anonymous browsing on https, so we can keep the same
scheme when logged out. Closes #5507479.
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Tue, 16 Jun 2015 00:26:55 +0200] rev 10405
[views/schema] extract a hardcoded css class attribute
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Wed, 03 Jun 2015 12:36:31 +0200] rev 10404
[formwidgets] move TextArea constants to the class level
This will make it easy to override them.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 22 Jun 2015 12:23:50 +0200] rev 10403
[server/test] fix broken test
The first bad revision is:
changeset: 10396:82071f767cb8
user: Sylvain Thénault <sylvain.thenault@logilab.fr>
date: Thu Jun 11 17:35:11 2015 +0200
summary: [schemas] cwuri should be read-only
This changed the number of RQLExpressions to be more than the number of
CWRelations in the test's schema.
Related to #5457566.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 18 Jun 2015 14:43:06 +0200] rev 10402
[test] typo in entities test comment
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 18 Jun 2015 14:57:55 +0200] rev 10401
[cwconfig] typo in comment
Julien Cristau <julien.cristau@logilab.fr> [Fri, 19 Jun 2015 16:38:53 +0200] rev 10400
[serverctl] allow changing the log level for source-sync command
When calling this from cron we only want to see output if something
fails.
Katia Saurfelt <katia.saurfelt@logilab.fr> [Thu, 30 Apr 2015 13:06:45 +0200] rev 10399
[web, urlrewrite] remove unused `cachekey` argument from `rgx_action` (closes #5355967)
this argument prevent from generating the resulting rset descripition
Katia Saurfelt <katia.saurfelt@logilab.fr> [Fri, 19 Jun 2015 17:54:04 +0200] rev 10398
[web] Fix the path to the `static directory` (closes #5355965)
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Jun 2015 18:22:55 +0200] rev 10397
[web/json] Controller.publish must return encoded data
We were mixing binary from super() and text from our params, thus
wrongly returning text. Closes #5507573.
Aurelien Campeas <aurelien.campeas@pythonian.fr> [Wed, 15 Apr 2015 22:48:20 +0200] rev 10396
[entities] fix dc_title output for bool(value) == False
Closes #5194853.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 15 May 2015 18:06:03 +0200] rev 10395
[hooks] manhandle the parsed rql query, not its string representation
... and add a groupby clause to make it actually work (the selection
might well use an aggregate function, so we need to tell the backend to
group on our target entity).
Closes #5362574
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 19 Jun 2015 17:21:28 +0200] rev 10394
merge 3.19.12 in 3.20
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 19 Jun 2015 16:05:27 +0200] rev 10393
Added tag 3.19.12, debian/3.19.12-1, centos/3.19.12-1 for changeset 5932de3d50bf
Alain Leufroy <alain@leufroy.fr> [Fri, 19 Jun 2015 10:53:23 +0200] rev 10392
[pkg] prepare 3.19.12
Alain Leufroy <alain@leufroy.fr> [Thu, 18 Jun 2015 15:35:08 +0200] rev 10391
[web/views/formrenderer] remove `cubicweb:target` attribute on form once the target <iframe> is inserted
For some unknown reason, IE9 does not want to submit the form inside
the <iframe> when the ``cubicweb:target`` attribute exists.
(closes #5377672)
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Tue, 16 Jun 2015 18:01:58 +0200] rev 10390
[views] implement a custom json error view
If the client asked for ``(e)jsonexport`` view, answer
him with a json response rather than an error formatted
in a big HTML blob.
add a custom _requested_vid predicate. In cw 3.21, it will
be deprecated in favor of ``match_form_params(vid=('jsonexport', 'ejsonexport'))``
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Wed, 13 May 2015 17:49:45 +0200] rev 10389
don't override req.form['vid'] in the publisher's error_handler
closes #5359234
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 15 Jun 2015 10:49:33 +0200] rev 10388
when some inlined relation is set using cw_edited, its security shouldn't be checked.
It's currently checked anyway because upon modification of `cw_edited`,
`entity.skip_security` is updated to avoid security checking, but this is only
considered for attributes, not relations.
Closes #5477315
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 15 Jun 2015 10:46:49 +0200] rev 10387
[test] stop depending on the email cube for hooks test
Backport necessary part of its schema.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 11 Jun 2015 17:35:11 +0200] rev 10386
[schemas] cwuri should be read-only
Closes #5457566
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Apr 2015 21:49:06 +0200] rev 10385
fix EditController._ordered_formparams method in case some mandatory relation isn't specified
If you have an HTML form which doesn't carry information about some mandatory
relation (maybe because this relation is set by a hook), you ends up with a
KeyError when the form is posted.
Using a get instead of subscription protocol fixes the problem.
Closes #5481617.
Laura Médioni <laura.medioni@logilab.fr> [Thu, 19 Mar 2015 11:30:37 +0100] rev 10384
[views] take into account subvid form param in SameETypeListView
closes #5098473
Rabah Meradi <rabah.meradi@logilab.fr> [Wed, 03 Jun 2015 17:22:06 +0200] rev 10383
[doc] fix errors in test_visibility_propagation example
* forget to use the access instructions
* wrong use of the function entity_from_eid
* some indentation problems
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sat, 13 Jun 2015 10:03:08 +0200] rev 10382
i18n typo
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 09 Jun 2015 12:05:40 +0200] rev 10381
[predicates] Use proper deprecation mechanisms
Rabah Meradi <rabah.meradi@logilab.fr> [Fri, 22 May 2015 11:28:56 +0200] rev 10380
[doc] loadRemote does a POST by default
Rabah Meradi <rabah.meradi@logilab.fr> [Wed, 03 Jun 2015 17:15:08 +0200] rev 10379
[doc] how to change logo using css
Rabah Meradi <rabah.meradi@logilab.fr> [Wed, 03 Jun 2015 17:17:29 +0200] rev 10378
[doc] escape | operator so it will be visible in the docs
Rabah Meradi <rabah.meradi@logilab.fr> [Wed, 03 Jun 2015 17:19:24 +0200] rev 10377
[doc] add missing import for FourOhFour class
Rabah Meradi <rabah.meradi@logilab.fr> [Wed, 03 Jun 2015 17:21:05 +0200] rev 10376
[doc] the instance is sytweb_instance and sytweb is the cube
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Jun 2015 09:18:02 +0200] rev 10375
[server] Do not use progress bar when stdout is not a TTY
Closes #5460552.
Christophe de Vienne <christophe@unlish.com> [Wed, 13 May 2015 17:12:41 +0200] rev 10374
[wf] Fix Workflow.replace_state()
Closes #5359131
David Douard <david.douard@logilab.fr> [Tue, 05 May 2015 15:49:41 +0200] rev 10373
[tags] add properly formated tags for 3.19 and 3.20 releases
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 05 May 2015 15:36:56 +0200] rev 10372
[reledit] also check for cardinality before displaying the delete relation action. Closes #5334750
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 25 Feb 2015 10:33:41 +0100] rev 10371
[schema] add a unique index on cwuri
Closes #4985752
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Feb 2014 16:37:40 +0100] rev 10370
[web] move AbstractAuthManager near its immediate concrete subclass
Related to #1381328.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Feb 2014 16:32:41 +0100] rev 10369
[web] move abstract session manager to web/sessions
Related to #1381328.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 18:24:40 +0200] rev 10368
[repository] rename session -> cnx
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 18:18:37 +0200] rev 10367
[server/test] delete commented-out test
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 17:58:19 +0200] rev 10366
[connection] remove the `mode` attribute
It is now unused.
While removing mode, we also drop some sqlserver-specific reconnection logic snippets.
These had several downsides:
* untested
* partial coverage
* done at the wrong level
Related to #2919309.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 17:14:32 +0200] rev 10365
[connection] remove ensure_cnx_set context manager uses
It has been deprecated in a previous changeset and is now a no-op.
Related to #2919309.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 15:32:07 +0200] rev 10364
[server] remove cnxset tracking, it is now unneeded
Indeed, all cnxsets will now be acquired using the following API::
with session.new_cnx() as cnx:
cnx.execute(...)
# do stuff
cnx.commit()
These well-scoped blocks are the only place a cnxset can be acquired.
The old use-case for un-delimited cnxsets (pyro/zmqpickle protocols)
have been removed.
The "mode" of connection objects becomes "write" forever (it will be
removed in a couple of changesets).
Related to #2919309.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 15:58:01 +0200] rev 10363
[devtools] remove the remaining bw compat for old-style tests
It is just:
* dangerously untested right now
* on the path of further bw compat removal (cnxset handling)
webtest drops an apparently pointless .login call
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 14:52:27 +0200] rev 10362
[session] remove session-related bw compat code
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 14:47:50 +0200] rev 10361
[session/transaction] removed unused transaction class
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 13:39:56 +0200] rev 10360
[transactions] cleanup after the dbapi removal
* end req vs cnx dichotomy
* Transaction takes a cnx at __init__ time
* a couple of super calls are fixed
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 10 Jun 2014 15:06:44 +0200] rev 10359
[session/cnx] remove `session_handled` logic
Related to #3837233 .
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 10 Jun 2014 14:44:36 +0200] rev 10358
[web/sessions] reduce repoapi usage where possible
Using session.new_cnx() should be the new preferred way.
Related to #3837233.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 10 Jun 2014 18:17:07 +0200] rev 10357
[entity,storage] remove hackish code from the bfss path
The ClientConnection/Connection duality brought some painful hacks
that are no longer needed.
Hence we can send entity._cw_update_attr_cache and ._cw_dont_cache_attribute
to the grave.
Related to #3837233
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 13 Jun 2014 15:56:08 +0200] rev 10356
[connection] eliminate ClientConnection leftovers
* in the documentation
* in the docstrings
* in code notations (e.g. clt_cnx -> cnx)
Related to #3837233.
From now, there should be just one ClientConnection left in repoapi.py.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 13 Jun 2014 15:42:04 +0200] rev 10355
[session] all cnx._session become cnx.session
The _session belonged to ClientConnection, which is just gone.
Related to #3837233.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 10 Jun 2014 16:01:49 +0200] rev 10354
[repoapi] fold ClientConnection into Connection
Connection replaces ClientConnection everywhere.
Some notes:
* testlib: .client_cnx and .repo_cnx become aliases of .cnx (we might
not want to tell people to update their tests again for just no real
benefit, so we'll live with these aliases for a while)
* entity.as_rset must not be cached because we risk caching result
sets having a Connection object as .req (helps unittest_breadcrumbs)
* entity._cw_dont_cache_attributes loses its repo/request special
paths and only keeps its storage/bfss user (this helps
unittest_wfobjs)
* moreover, entity.cw_instantiate and .cw_set stop overriding the
attributes cache *after* the before_*_entity hooks have run, because
there is no need to (it is now actually harmful to do it and
unittest_hooks.test_html_tidy* tests remain green because of this)
* rset._build_entity sticks its .req onto the entity just fetched from
the cache, because otherwise it might carry a _cw that is a
Connection object where a Request is expected (helps
unittest_views_actions)
* we get overall better cache usages (entity caches were split over
Request + ClientConnection and Connection), hence the changes
unittest_entity and unittest_wfobjs
* void the ecache when providing the cnx to a request object
Having the entity cache pre-filled when we bind it to the request
object hurts because these entities are bound to Connection objects,
that lack e.g. `.form` or `.add_js` and crash the views subsystem.
Thus, the unittest_testlib.test_error_raised test will are kept
green.
Closes #3837233
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 13 Jun 2014 13:54:28 +0200] rev 10353
[migractions] remove any session related leftovers
Also, the migration handler really wants a "repo" session anyway.
This highlights a bug in unittest_wfobjs.test_duplicated_transition
where an old connection is reused. It probably used to work because it
was made of session + set_cnxset magic dust.
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 13 Jun 2014 12:07:51 +0200] rev 10352
[session] provide missing apis to Connection
From this point, Connection provides a superset of ClientConnection.
Related to #3837233.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 01 Jul 2014 16:55:49 +0200] rev 10351
[connection] replace .running_dbapi_query with .hooks_in_progress
The thing was badly named.
It tries to help distinguish between queries issued
directly by the programmer (e.g in the views: cnx.execute(...))
from queries issued from the hooks, operations ... or even
the repository or the native source objects.
It worked heuristically being associated with
the security being disabled.
We provide a better name and an implementation distinct from
the security management methods.
Related to #3933480.
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 05 May 2015 08:41:19 +0200] rev 10350
[dataimport] Turn the module into a package
Just `hg mv` dataimport.py and test/unittest_dataimport.py.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 07 Nov 2014 15:33:30 +0100] rev 10349
[dataimport] Properly escape strings sent to COPY FROM (closes #5278743)
See http://www.postgresql.org/docs/9.1/static/sql-copy.html#AEN64296
for escaping codes.
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Tue, 28 Apr 2015 17:00:35 +0200] rev 10348
[http] fix cache-control syntax in EtagHTTPCacheManager
use , to separate cache response directive
closes #5307539
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 01 Jul 2014 13:19:35 +0200] rev 10347
[connection] provide some missing documentation bits
The previous changesets remove information about session data and transaction data.
We provide the necessary entries in the docstring of the Connection class.
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 06 Jun 2014 17:08:08 +0200] rev 10346
[repoapi,session] remove all session-as-cnx backward compat
The `dbapi` being gone, we now can drop the session object
bw-compatibility layer. This will allow further simplifications, such
as folding ClientConnection and Connection (without too much pain),
and then having persistent sessions.
Related to #3933480.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Apr 2015 18:28:58 +0200] rev 10345
[server] drop repo.internal_session and InternalSession
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 22 Apr 2015 17:48:32 +0200] rev 10344
Added tag cubicweb-version-3.20.7, cubicweb-debian-version-3.20.7-1, cubicweb-centos-version-3.20.7-1 for changeset 359d68bc1260
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 22 Apr 2015 17:48:00 +0200] rev 10343
[pkg] 3.20.7
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Apr 2015 17:45:27 +0200] rev 10342
[dbapi] retire repo.[gs]et_shared_data which were used by the dbapi
Related to #3933480
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 17 Mar 2015 16:00:30 +0100] rev 10341
[dbapi] retire repository transaction methods which were used by the dbapi
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 17 Mar 2015 15:57:22 +0100] rev 10340
[dbapi] retire repo.call_service which was used by the dbapi
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 17 Mar 2015 15:55:52 +0100] rev 10339
[dbapi] retire repo.commit/rollback which was used by the dbapi
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 17 Mar 2015 15:46:40 +0100] rev 10338
[dbapi] retire repo.user_info which was used by the dbapi
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 17 Mar 2015 15:41:54 +0100] rev 10337
[dbapi] retire repo.entity_metas which was used by the dbapi
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 18:21:24 +0200] rev 10336
[dbapi] retire repo.execute, which was used by the dbapi
We will retire or reform pieces, mostly of the Repository class,
that were related to the old dbapi way of life.
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 05 Jun 2014 09:51:57 +0200] rev 10335
[devtools/testlib] remove dbapi backward-compat
Related to #3933480.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Mar 2015 16:11:35 +0100] rev 10334
[test] fix copy-pasta in doc string
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Mar 2015 16:10:29 +0100] rev 10333
[book] remove dbapi documentation
Move some still-relevant doc related to the RQL connection API to the
'sessions' section. It might make sense to move this back outside of
the "Repository development" chapter at some point since this is
relevant in other contexts.
Alain Leufroy <alain@leufroy.fr> [Fri, 27 Mar 2015 15:29:34 +0100] rev 10332
[uilib] `uilib.js` helper now honors explicit JSString (closes #4959538)
Previously, if a JSString was inside a nested container (i.e. list or
dict), it was handled as a string, not a verbatim js chunk (see
docstring and test). So the following code::
>>> str(js.cw.pouet(1, {'callback': JSString('cw.mycallback')})
resulted in::
"cw.pouet(1, {'callback': 'cw.mycallback')})"
while we expect (note the removed quotes)::
"cw.pouet(1, {'callback': cw.mycallback)})"
We use ``cubiweb.utils.js_dumps`` instead of
``cubicweb.utils.json_dumps`` which is aware of JSString.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 03 Jun 2014 16:57:14 +0200] rev 10331
[dbapi] remove the dbapi module and its immediate remaining users
We suppress toolsutils.config_connect, which has currently
only one known user (the email cube), which is being patched.
It can be replaced with utils.admincnx function for a local
access.
Next will come a series to:
* remove the session backward compatibility
* fold ClientConnection into Connection
Closes #3933480.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Mar 2015 16:57:32 +0100] rev 10330
[web/views] remove dbapi usage from 'gc' view
Christophe de Vienne <christophe@unlish.com> [Tue, 07 Apr 2015 17:08:53 +0200] rev 10329
[sqlite] Fix integrity error parsing
Up to sqlite 3.7, integrity error message may be in the singular form
if only one column is in the unique index.
Closes #5224632
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 06 Apr 2015 21:46:52 +0200] rev 10328
[postgres] fix limit_size regexp to properly remove one char tags like <p>.
Closes #5221847
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 15 Apr 2015 22:08:08 +0200] rev 10327
[postgres] _regproc.postgres.sql should be reloadable
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Apr 2015 17:12:36 +0200] rev 10326
[mail] include Date header in generated mails (closes #5271058)
Mails without Date gets flagged as spam. Plus it's wrong anyway.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Apr 2015 10:41:53 +0200] rev 10325
[doc] mention datadir-url configuration option in release notes
Related to #5204550
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Apr 2015 12:26:44 +0200] rev 10324
[web] add test for datadir-url option (related to #5204550)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 01 Apr 2015 15:50:59 +0200] rev 10323
[web] Add datadir-url configuration option (closes #5204550)
Makes it possible to use a different host for static data instead of ${base_url}/data
Julien Cristau <julien.cristau@logilab.fr> [Tue, 31 Mar 2015 10:22:05 +0200] rev 10322
[web] kill https-deny-anonymous option (closes #5193687)
It doesn't make much sense to prevent people from using https.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 29 Jan 2015 10:54:41 +0100] rev 10321
[cwctl] don't filter DeprecationWarnings
Julien Cristau <julien.cristau@logilab.fr> [Wed, 28 Jan 2015 15:53:41 +0100] rev 10320
[exceptions] avoid calling UniqueExceptionError.rtypes after closing the session
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 22 Apr 2015 12:05:09 +0200] rev 10319
[web/test] Fix broken tests after commit b81adb5e32f9
Add missing n3rdf view to RDF view list.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 11 Jun 2014 15:33:09 +0200] rev 10318
[web/test] don't delete uicache directory
Other tests use it, so the rmtree was a bit too much. Set CACHEDIR to a
temporary subdirectory, and only delete that.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 20 Feb 2015 16:17:51 +0100] rev 10317
[web/views] add text/n3 rdf view
Less shit than xml.
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Fri, 31 Oct 2014 17:17:26 +0100] rev 10316
[schemas] make CWEType.final default to False (closes #5049201)
Julien Cristau <julien.cristau@logilab.fr> [Fri, 04 Apr 2014 14:49:18 +0200] rev 10315
[repository] replace session with cnx in a few places
Julien Cristau <julien.cristau@logilab.fr> [Mon, 01 Dec 2014 16:50:41 +0100] rev 10314
Don't pass an encoding to rqlst.as_string()
Rémi Cardona <remi.cardona@free.fr> [Sun, 27 Jul 2014 14:57:51 +0200] rev 10313
[rset] Deprecate the 'encoded' argument to ResultSet.printable_rql()
It's hardly used at all, and when used inside CubicWeb, it's only set as
false. Better make sure that this function always returns a proper
unicode string and let the caller handle conversion on its own.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Apr 2015 09:52:28 +0200] rev 10312
[gcdebug] ignore _NeedAuthAccessMock instances
When looping over gc.get_objects(), we'd crash in
_NeedAuthAccessMock.__getattribute__.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 10 Feb 2015 14:38:25 +0100] rev 10311
[views] Fix 'gc' view to use 'repo_gc_stats' service
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 10 Feb 2015 14:37:51 +0100] rev 10310
[services] Fix 'repo_gc_stats' to return a list of unreachable objects' repr
David Douard <david.douard@logilab.fr> [Tue, 10 Feb 2015 12:18:38 +0100] rev 10309
[services] Prevent 'repo_stats' service from aggregating information
It's up to the consumer of the service to decide whether it wants
aggregated data or not... Ensure the /siteinfo page rendering is not
modified.
David Douard <david.douard@logilab.fr> [Wed, 22 Apr 2015 11:00:50 +0200] rev 10308
[hooks] add a looping task that dumps the stats regularly in a file
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 23 Feb 2015 09:02:41 +0100] rev 10307
[web/facet] Use an Exists node in HasRelationFacet
The generated RQL now includes an EXISTS clause. For instance, one gets:
::
DISTINCT Any WHERE X is CWUser, EXISTS(X in_group A)
instead of:
::
DISTINCT Any WHERE X is CWUser, X in_group A
for a HasRelationFacet with ``rtype = 'in_group'``, which is more appropriate
for testing the existence of the relation.
Add a test for this facet along the way.
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 01 Apr 2015 13:39:30 +0200] rev 10306
[debian] Add a Breaks for cubicweb-folder which stills use GMTOFFSET
Related to #2154655.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 16 Mar 2015 16:46:34 +0100] rev 10305
[web] kill GMTOFFSET (closes #2154655)
Its last user, set_cookie(expires=...), can just as well interpret its
argument as UTC. Naïve datetime objects with an implicit non-UTC
timezone are just awful.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 26 Mar 2015 08:34:47 +0100] rev 10304
[web/request] don't play tricks with utc offset
We need an UTC datetime from a time.time()-type value. It turns out
datetime provides a method to do just that. Related to #2154655.
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 25 Mar 2015 08:43:00 +0100] rev 10303
[server/test] Drop dependency on folder cube
Just copy schema bits when needed and drop a view (not possible anymore) in
unittest_repository.
Closes #5168939.
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 25 Mar 2015 08:21:00 +0100] rev 10302
[web/test] Drop folder cube dependency
Copy useful schema bits, define IBreadCrumbs adapter for Folder/fild_under
(previously relying on ITree adapter) and adjust unittest_viewselector tests
to drop a view that does not exist anymore.
Related to #5168939.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 22 Apr 2015 10:08:14 +0200] rev 10301
merge 3.20.6 into 3.21
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 01 Apr 2015 15:06:45 +0200] rev 10300
[web/views] Allow changing CSVView's separator (closes #5227442)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 16 Apr 2015 18:59:12 +0200] rev 10299
[web/view/treeview] add a 'selected' class on <li> if the entity's url is the currently displayed url
An alternative would be to refactor the corresponding view so that controlling
css classes wouldn't require overriding a 5O-lines method.
Notice by default there is no associated class in the CSS so there is no
rendering difference unless one explicitly add rule in his CSS file.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Apr 2015 13:54:00 +0200] rev 10298
Added tag cubicweb-version-3.20.6, cubicweb-debian-version-3.20.6-1, cubicweb-centos-version-3.20.6-1 for changeset 7f64859dcbcd
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Apr 2015 10:58:38 +0200] rev 10297
[pkg] 3.20.6
Julien Cristau <julien.cristau@logilab.fr> [Mon, 30 Mar 2015 11:47:43 +0200] rev 10296
[notification] don't block while sending mails
Regression from #7c17659c9eae, closes #5190001.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sun, 01 Feb 2015 22:17:25 +0100] rev 10295
[dataimport] make MetaDataGenerator / NoHookObjectStore usable from a datafeed parser
ie make it possible to create entities with external source as cw_source and
proper external id.
Closes #4891552
Sylvain Thénault <sylvain.thenault@logilab.fr> [Sun, 01 Feb 2015 22:14:44 +0100] rev 10294
[dataimport] don't generate metadata which are explicitly specified
Related to #4891552
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 17:23:06 +0100] rev 10293
[debian] prepare 3.20.5-2
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 17:22:39 +0100] rev 10292
merge 3.19.11-2 into 3.20
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 17:21:08 +0100] rev 10291
Added tag cubicweb-debian-version-3.19.11-2 for changeset 6d265ea7d56f
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 16:59:47 +0100] rev 10290
[debian] Update watch file
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 16:52:44 +0100] rev 10289
[debian] Fix cubicweb-dev dependency
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 16:37:26 +0100] rev 10288
Added tag cubicweb-version-3.20.5, cubicweb-debian-version-3.20.5-1, cubicweb-centos-version-3.20.5-1 for changeset 51aa56e7d507
Julien Cristau <julien.cristau@logilab.fr> [Fri, 27 Mar 2015 14:56:33 +0100] rev 10287
[pkg] 3.20.5
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 25 Mar 2015 08:09:56 +0100] rev 10286
[dataimport] don't insert created_by / owned_by relations when user is the internal manager (eid = -1).
Closes #5162943
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 25 Mar 2015 07:57:38 +0100] rev 10285
[repository] don't attempt to delete computed relation, they have no table in the database. Closes #5162935
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Mar 2015 14:28:48 +0100] rev 10284
[migration] sync_schema_props_perms should skip computed relations. Closes #5147796
Julien Cristau <julien.cristau@logilab.fr> [Sun, 22 Mar 2015 19:05:19 +0100] rev 10283
[schema] typo
Julien Cristau <julien.cristau@logilab.fr> [Fri, 20 Feb 2015 16:18:25 +0100] rev 10282
[web/test] fix test_views
reusing a request for two different view calls leads to badness
Erica Marco <erica.marco@logilab.fr> [Mon, 23 Mar 2015 11:08:04 +0100] rev 10281
[documentation] add note concerning Attribute, TODAY and NOW in yams documentation
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 18 Mar 2015 22:43:51 +0100] rev 10280
[i18n] properly translate error messages related to violated unicity constraint.
Closes #5100373
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 04 Feb 2015 15:13:36 +0100] rev 10279
[web/data] Add missing mode='swap' in loadxhtml calls (closes #5087432)
Let's avoid putting divs inside divs, dawg.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 17 Mar 2015 12:34:07 +0100] rev 10278
[web/views] Fix PropertyKeyField widget (closes #5087413)
CWProperties don't have unittests, this will likely break again.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 17 Mar 2015 12:35:45 +0100] rev 10277
[web/views] Fix exception in CWProperty edit form (closes #5087412)
Also add missing help message. The overall display is ugly, but at least
the message is shown.
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 25 Mar 2015 10:10:24 +0100] rev 10276
[web/request] Restore attribute setting for search_state
This was dropped in 1f84295bfe95 when `search_state` attribute was turned into
a property, but without a setter. So adding a setter here restoring previous
behaviour, as some tests and cubes use it.
Related to #4875761.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Feb 2015 12:52:15 +0100] rev 10275
[web/request] simplify search_state loading, fix comment
Christophe de Vienne <christophe@unlish.com> [Wed, 28 Jan 2015 09:46:55 +0100] rev 10274
[webrequest] Lazy-load search_state
- The update_search_state function will hit the session data only if __mode is
present in the form.
- set_search_state keep the same semantics
- Direct access to search_state in the session data is changed by an access to
the new property.
Closes #4875761
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Mar 2015 12:29:25 +0100] rev 10273
[config] disable fckeditor by default (closes #1368900)
FCKEditor is no longer maintained, and has a history of XSS issues.
Let's use plain text as default text format.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 18 Mar 2015 14:41:47 +0100] rev 10272
merge 3.19.11 into 3.20
Julien Cristau <julien.cristau@logilab.fr> [Wed, 18 Mar 2015 13:45:45 +0100] rev 10271
Added tag cubicweb-version-3.19.11, cubicweb-debian-version-3.19.11-1, cubicweb-centos-version-3.19.11-1 for changeset 1ae64186af94
Erica Marco <erica.marco@logilab.fr> [Tue, 17 Mar 2015 15:50:40 +0100] rev 10270
[migration] reorder system tables / meta-schema migration into bootstrap_migration
Also fix a bug in the backwards-compat eid_type_source method where it
returned an extid (possibly null) instead of a source name.
With these changes, migrating a database from cw 3.12 is now possible.
Closes #4962681
Julien Cristau <julien.cristau@logilab.fr> [Wed, 18 Mar 2015 12:02:09 +0100] rev 10269
[dataimport] add missing import (closes #4985916)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 18 Mar 2015 12:01:03 +0100] rev 10268
[debian] cubicweb-dev needs cubicweb-etwist
Closes #4965410
Julien Cristau <julien.cristau@logilab.fr> [Wed, 18 Mar 2015 11:56:11 +0100] rev 10267
[pkg] 3.19.11
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Mar 2015 09:19:06 +0100] rev 10266
Binary initializer should accept bytearrays (closes #5084075)
Recent versions of pyodbc return bytearray objects for binary data.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 05 Mar 2015 11:44:29 +0100] rev 10265
[native source] log the used connection in doexecmany as in doexec
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Feb 2015 12:43:42 +0100] rev 10264
[server] use unicode wherever appropriate in transaction/undo related methods
Silences lgdb/sqlite warnings about using str instead of unicode.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 09 Mar 2015 18:02:49 +0100] rev 10263
[web] typo
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Feb 2015 12:42:42 +0100] rev 10262
[entities] return the entity itself from notification_references if the view uses a random message-id
Useful for entity update notifications to reference the entity creation message.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Feb 2015 12:35:58 +0100] rev 10261
[notifications] use non-fixed message-id for EntityUpdatedNotificationView
More than one of those can be sent for a given entity, so they shouldn't
all have the same message-id. Closes #4962712.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Feb 2015 12:32:39 +0100] rev 10260
[server/test] kill remaining 3.19 deprecation warnings in undo tests
Julien Cristau <julien.cristau@logilab.fr> [Mon, 16 Feb 2015 14:30:19 +0100] rev 10259
[devtools] accept str objects in CubicWebTC.new_access and .create_user
Julien Cristau <julien.cristau@logilab.fr> [Mon, 16 Feb 2015 10:38:50 +0100] rev 10258
[utils] use the "predictable" argument to js_dumps
Fixes doctest under python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 16 Feb 2015 10:54:48 +0100] rev 10257
[server/test] don't rely on a sorted output from .object_relations()
Fixes test under python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 16 Feb 2015 10:21:29 +0100] rev 10256
[req] make rebuild_url predictable
Fixes test with python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 15:12:31 +0100] rev 10255
[web/test] don't depend on iteration order on a set
Fixes test under python -R ('pending_insert' in session data is a set,
so we can't rely on any particular ordering). Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 15:10:43 +0100] rev 10254
[web/test] fix cubicweb 3.19 deprecation warning
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 15:09:36 +0100] rev 10253
[web/test] use unicode instead of str for user logins
makes lgdb/sqlite quieter.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 14:34:35 +0100] rev 10252
[test] Don't depend on dict iteration ordering
Fixes test with python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 14:32:15 +0100] rev 10251
[entities] make cw_fti_index_rql_queries predictable
Don't depend on the hash function, fixing test with python -R. Related
to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 13:39:33 +0100] rev 10250
[hooks/syncschema] use a list instead of a set for UpdateFTIndexOp
The order in which etypes get indexed matters. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 11:48:13 +0100] rev 10249
[rqlrewrite] sort possible types when turning is_instance_of into is
Helps get predictable output even with python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 11:47:34 +0100] rev 10248
[server/test] use unicode strings for user logins
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 10:00:32 +0100] rev 10247
[web/test] use unicode object as user login
(py.warnings) WARNING: /home/jcr/src/cw/cubicweb/devtools/testlib.py:206: DeprecationWarning: Sanitizing an input dictionary with str values, please check your data (key = 'login')
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 09:59:34 +0100] rev 10246
[server/querier] stop passing a rqlst to empty_rset
(py.warnings) WARNING: /home/jcr/src/cw/cubicweb/server/querier.py:46: DeprecationWarning: [3.20] rqlst parameter is deprecated
return ResultSet([], rql, args, rqlst=rqlst)
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 18:52:04 +0100] rev 10245
[web/views] Use predictable ordering for attributes in entity XML view
Fixes test under python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Feb 2015 09:46:19 +0100] rev 10244
[web/views] set explicit order for ManageSourcesAction
Gives predictable ordering wrt ManageUsersAction under python -R.
Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 18:40:49 +0100] rev 10243
[web/test] don't depend on dict iteration ordering
Fixes tests under python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 18:40:24 +0100] rev 10242
[web/test] pass login as unicode string
silences lgdb/sqlite warning.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 18:39:04 +0100] rev 10241
[web/test] fix 3.19 deprecation warning
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 18:25:07 +0100] rev 10240
[sobjects/test] Fix dependency on predictable hashing
Fix test under python -R by ignoring url query parameter ordering.
Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 18:13:00 +0100] rev 10239
[test] don't rely on a stable ordering for appobject_path
Fixes test under python -R. Related to #4959402.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Mar 2015 15:30:01 +0100] rev 10238
[server] remove "standalone RQL server" from possible configuration choices
Related to #2919297.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Mar 2015 14:12:03 +0100] rev 10237
Remove leftover bits from start-repository command, and document its demise
Related to #2919297
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 13 Mar 2015 14:10:40 +0100] rev 10236
Remove the remote repository-access-through-zmq support
Modern methods such as the rqlcontroller cube + the cwclientlib library are the way forward.
Closes #2919297.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 03 Mar 2015 14:57:34 +0100] rev 10235
Remove remote repository-access-through-pyro support
Modern methods such as the rqlcontroller cube + the cwclientlib
library are the way forward.
Closes #2919309.
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 13 Mar 2015 14:47:35 +0100] rev 10234
[web/views/rdf] Take the second element of XY equivalent for non final relation
When given a Yams snippet of the form `<etype> <rtype>` ``xy.xeq()`` will
return the XML snippet equivalent to this relation in the form of a tuple
`(subject, rtype, object)` so ``item`` will always be a tuple here.
In fact, the correct code appears just a few lines above (around line 88) for
final relations so I guess this is a copy-paste mistake.
Closes #4745929.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 11 Feb 2015 12:42:19 +0100] rev 10233
[server] Make sure 'zmq-address-sub' config is always iterable
Julien Cristau <julien.cristau@logilab.fr> [Mon, 01 Dec 2014 11:52:58 +0100] rev 10232
[web] split timeline in an individual cube
Closes #1279544
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Feb 2015 13:52:58 +0100] rev 10231
[devtools] don't hide warnings and errors during tests
The markdown module in jessie turns all warnings into logging calls, so
this allows me to still see deprecation warnings when running tests.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 05 Dec 2014 11:25:35 +0100] rev 10230
[test/i18n] remove unneeded hack
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Mar 2015 14:21:36 +0100] rev 10229
merge 3.19.10 into 3.20
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 09 Mar 2015 09:32:11 +0100] rev 10228
[server/session] Fix typo "meta vs. metas" in describe()
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 12 Mar 2015 12:26:46 +0100] rev 10227
Added tag cubicweb-version-3.19.10, cubicweb-debian-version-3.19.10-1, cubicweb-centos-version-3.19.10-1 for changeset 3bab0b9b0ee7
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 12 Mar 2015 11:52:18 +0100] rev 10226
[pkg] 3.19.10
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 12 Mar 2015 11:00:57 +0100] rev 10225
[i18n] Update translations
Related to #5012581.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 11 Mar 2015 15:17:25 +0100] rev 10224
[config] Lowercase the FQDN we get from the OS (closes #5040345)
Browsers convert the host name part of URLs to lowercase. This has the
unfortunate effect of triggering various CORS error messages in
CubicWeb (because the Origin: header will contain lowercase letters).
As per RFC 4343, host name comparison should be case-insensitive. So
let's put it in lowercase when we grab it from the host system. If
admins put uppercase letters in "host" or "base-url" in their
all-in-one.conf, then it's their fault.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 10 Mar 2015 11:52:04 +0100] rev 10223
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
On AutomaticEntityForms, get_action used to bypass the logic from
FieldsForm.form_action() which handles the 'action' attribute itself,
preventing callers from overriding it at selection time. This capability
is used by the inlinedit cube.
In a nutshell, we let the deprecated AutomaticEntityForm.get_action()
raise an AttributeError, which allows FieldsForm.form_action() to handle
it properly.
Dimitri Papadopoulos <dimitri.papadopoulos@cea.fr> [Tue, 22 Apr 2014 16:39:19 +0200] rev 10222
[docstrings] fix project-wide English language mistake
Even though 'u' is a wovel, it may be pronounced 'yu' which is a consonant
sound. In such cases precede it with 'a' instead of 'an'.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 26 Mar 2014 12:30:52 +0100] rev 10221
[doc] Don't pretend we know cubicweb runs on mysql
As far as I know it hasn't been tested in years.
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 06 Mar 2015 16:17:11 +0100] rev 10220
[test/i18n] Update reference po file following 75cd7df5c32e
This changeset added a (missing) message "add a <etype>", so reference po file
needed an update.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 25 Feb 2015 17:13:46 +0100] rev 10219
[devtools] add a method on CubicWebTC to fake data posted by standard cw forms. Closes #4985805
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Dec 2014 10:55:17 +0100] rev 10218
[web/wdoc] fix links
They're relative to ${base-url}/doc/, not ${base-url}. Closes #3161099.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 05 Mar 2015 11:40:56 +0100] rev 10217
[i18n generation] add missing 'add a EntityType' message to generated catalogs. Closes #5012581
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Mar 2015 14:58:16 +0100] rev 10216
[server/test] fix test_zmq
We were only asserting in a thread, thus ignoring the results.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 12 Jun 2014 15:22:01 +0200] rev 10215
[views,js] remove user_callback feature
Related to #3975260.
Christophe de Vienne <christophe@unlish.com> [Fri, 06 Feb 2015 14:43:40 +0100] rev 10214
[newcube] Make the generated code PEP-8 compliant
Closes #4925396
Rémi Cardona <remi.cardona@free.fr> [Sun, 31 Aug 2014 18:04:46 +0200] rev 10213
Remove unused imports
Rémi Cardona <remi.cardona@free.fr> [Wed, 20 Aug 2014 20:46:17 +0200] rev 10212
[ext] Remove use of cStringIO
We create a StringIO never to read anything from it. Docutils seems to
support setting the 'warning_stream' to False to ignore warnings. So
let's just do that.
Rémi Cardona <remi.cardona@free.fr> [Wed, 30 Jul 2014 22:34:55 +0200] rev 10211
[view] Use io.BytesIO as stream for binary views
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 14:12:49 +0100] rev 10210
[undo/test] check that the entity was restored even though the fiche relation wasn't
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 12:35:46 +0100] rev 10209
Use a moved_entities table to record external entities moved to the system source
Instead of using a negative eid in the entities table, move the record
to a new table so we don't have an interval with a missing eid in
entities.
Related to #4846892
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 12:43:32 +0100] rev 10208
Add unique index on entities.extid
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 11:17:53 +0100] rev 10207
[undo/test] if we try to delete an entity referenced by an inline relation, we fail
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 10:56:30 +0100] rev 10206
[undo] when we can't undo an inlined relation change, point at None, not a broken eid
This whole thing is "a bit" weird.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 19:17:32 +0100] rev 10205
Ask sqlite to check foreign keys
Related to #4846892
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 18:53:45 +0100] rev 10204
Add reference from etype table's eid column to the entities table
Related to #4846892.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 14:30:55 +0100] rev 10203
[server] change order of entities table modification vs entity creation/deletion
In order to have a foreign key referencing the entities table, the
insertion into entities must happen first, and the deletion must happen
last.
For the deletion case, this means we need to:
1. delete all relations (cascade)
2. delete the entities themselves
3. delete the corresponding lines from the entities table
This means the _delete_info{,_multi} methods can't keep doing 1 and 3.
Thankfully the "public" delete_info method appears to be unused, so drop
it.
Related to #4846892.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 17:06:16 +0100] rev 10202
Use foreign keys for relations tables
Closes #4846892
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 16:49:32 +0100] rev 10201
Add foreign key for inline relations
Related to #4846892
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 16:44:36 +0100] rev 10200
Use our version of schema2sql
Related to #4846892
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 16:39:35 +0100] rev 10199
Steal schema2sql module from yams
It has no user inside yams, and we need it here if we want to be able to
reference the (cubicweb-only) entities table from other tables.
Related to #4846892
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 05 Feb 2015 19:36:49 +0100] rev 10198
[dataimport] fix pylint detected error in SQLGenObjectStore
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 27 Jan 2015 10:20:15 +0100] rev 10197
[restore/portable] properly restore the numrange generator
If the dump format version is 1.1, read and restore numranges.
Closes #4870338
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 26 Jan 2015 18:05:24 +0100] rev 10196
[backup/portable] properly write the eid numrange generator (the eid is no more a sequence)
Bump format version to 1.1.
Related to #4870338
Julien Cristau <julien.cristau@logilab.fr> [Fri, 06 Feb 2015 14:46:38 +0100] rev 10195
Added tag cubicweb-version-3.20.4, cubicweb-debian-version-3.20.4-1, cubicweb-centos-version-3.20.4-1 for changeset 49831fdc84dc
Julien Cristau <julien.cristau@logilab.fr> [Fri, 06 Feb 2015 09:41:40 +0100] rev 10194
[pkg] 3.20.4
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 04 Feb 2015 21:55:37 +0100] rev 10193
[schema] set permissions that do not allow edition on computed relation. Closes #4903918
Also, drop 'del schema' from test which clutters the code for no benefit.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 02 Feb 2015 23:17:15 +0100] rev 10192
[computed attribute] ensure attribute's formula apply only to the correct type. Closes #4901163
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 02 Feb 2015 22:05:00 +0100] rev 10191
[schemaserial] fix detection of CWComputedRType table, closes #4901150
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Jan 2015 15:43:28 +0100] rev 10190
[dataimport] source.add_info doesn't take anymore a 'complete' argument
Closes #4891550
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 30 Jan 2015 15:28:24 +0100] rev 10189
[dataimport] massive renaming of session to cnx
and make NoHookObjectStore working with the new connection handling.
Closes #4891547
Julien Cristau <julien.cristau@logilab.fr> [Tue, 03 Feb 2015 14:59:54 +0100] rev 10188
[web/data] use the right selector for hiding jquery treeview placeholders
Closes #4903927
Julien Cristau <julien.cristau@logilab.fr> [Thu, 05 Feb 2015 15:49:02 +0100] rev 10187
merge 3.19.9 into 3.20 branch
Julien Cristau <julien.cristau@logilab.fr> [Thu, 05 Feb 2015 15:40:07 +0100] rev 10186
Added tag cubicweb-version-3.19.9, cubicweb-debian-version-3.19.9-1, cubicweb-centos-version-3.19.9-1 for changeset b7c373d74754
Julien Cristau <julien.cristau@logilab.fr> [Thu, 05 Feb 2015 15:35:34 +0100] rev 10185
[pkg] 3.19.9
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 17:48:16 +0100] rev 10184
[hooks] don't insert use_email relation if the entity on either side is going away
Closes #4912946
Julien Cristau <julien.cristau@logilab.fr> [Fri, 16 Jan 2015 10:57:02 +0100] rev 10183
[undo] fix deletion of cw_source relation
Closes #4912882
Julien Cristau <julien.cristau@logilab.fr> [Thu, 15 Jan 2015 15:45:09 +0100] rev 10182
[hooks] don't insert an owned_by relation for deleted entities
If, in the same transaction, a composed entity is created and deleted,
we'll have scheduled a SyncOwnersOp which would end up creating an
owned_by relation for the deleted entity. Closes #4846883
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 29 Jan 2015 16:18:23 +0100] rev 10181
[etwist/service] adjust for a signature change
Closes #4878570.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 10 Dec 2014 10:49:07 +0100] rev 10180
[rset] fix crash on displaying rset where some symmetric relation is used. Closes #4739253
Avoid a KeyError.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 04 Dec 2014 11:37:10 +0100] rev 10179
Fix handling of limit within the primary view for related elements. Closes #4723579
* respect limit set by uicfg (like the 'autolimited' view itself does)
* set limit in rql query to one more than the specified one so the view knows
there are more things to display
Christophe de Vienne <christophe@unlish.com> [Mon, 29 Dec 2014 12:35:34 +0100] rev 10178
[native] Change SQL errors log level.
- The SQL error itself is logged as 'info'.
- The 'transaction has been rolled back' message is logged as 'debug'.
These log entries should not be critical:
- If an error occur at the sql level, it will be transmitted as a CW error.
The exception is raised and handled in a higher level function, which will
decide if it is critical or not.
- Admitting that rolling-back automatically on errors is wanted in some
cases, it cannot be considered 'critical'. The caller will receive the
original exception anyway, it is its job to decide if it is critical or
not.
Closes #4801120
Julien Cristau <julien.cristau@logilab.fr> [Mon, 02 Feb 2015 12:32:07 +0100] rev 10177
Added tag cubicweb-version-3.20.3, cubicweb-debian-version-3.20.3-1, cubicweb-centos-version-3.20.3-1 for changeset 7d3a583ed539
Julien Cristau <julien.cristau@logilab.fr> [Mon, 02 Feb 2015 12:17:29 +0100] rev 10176
[debian] build-depend on markdown for documentation build
Christophe de Vienne <christophe@unlish.com> [Wed, 28 Jan 2015 14:03:00 +0100] rev 10175
[devtools] Make PostgresTestDataBaseHandler multi-use friendly
Dont init the pgdb twice on the same datadir
- If two test case with the same apphome use a Postgres configuration, the
handler is initialised twice, so it has to check if the pgdb directory has
already been initialized.
- Work with the realpath of the pgdb
In some cases, the self.config.apphome will resolve symbolic links, but
not always.
It can result in an attempt to start twice the pg server for the same directory,
in the same test run... resulting in failure.
Closes #4875827
Julien Cristau <julien.cristau@logilab.fr> [Mon, 02 Feb 2015 12:07:10 +0100] rev 10174
[devtools] restore i18n of string removed in 4001cfe2f44d
Removing that string from the po files means that after running i18ncube
against newer cubicweb, we lose the translation when running on older
cubicweb's, which is probably not a good idea.
Julien Cristau <julien.cristau@logilab.fr> [Sat, 31 Jan 2015 19:32:32 +0100] rev 10173
[pkg] fix setup.py install
One day I'll get this thing right. Maybe.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 30 Jan 2015 16:14:44 +0100] rev 10172
[pkg] 3.20.3
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 23 Jan 2015 13:26:44 +0100] rev 10171
[server] Increase the stacklevel (due to @_open_only decorator)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 28 Jan 2015 15:51:11 +0100] rev 10170
[pkg] install jquery-treeview
Julien Cristau <julien.cristau@logilab.fr> [Wed, 28 Jan 2015 15:06:34 +0100] rev 10169
[migration/3.20] sync rtypes before etypes
We need to make sure the rtypes are inlined before adding unique indices.
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 28 Jan 2015 17:36:13 +0100] rev 10168
[doc] Fix class name for ComputedRelation; fix code block about computed attributes
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 29 Jan 2015 16:40:08 +0100] rev 10167
[web] Allow propagating 'klass' parameter on tree views recursively
Closes #4881302
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 28 Jan 2015 11:59:06 +0100] rev 10166
[utils] Fix define_var in ajax context (closes #4881301)
Use namespaced <cubicweb:script> instead of just <script>
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 28 Jan 2015 11:53:20 +0100] rev 10165
[web/data] Never hide JS errors in our Deferred implementation
Modern browsers have good debugging tools, let exceptions go all the way
up. This only affects exceptions raised in the js code, if there's an
issue on the server/python side, they'll keep going through our error
callbacks.
Closes #4881300
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 28 Jan 2015 11:51:16 +0100] rev 10164
[web/data] Fix userCallbackThenUpdateUI to completely replace old DOM elements
Without the 'swap' parameter, userCallbackThenUpdateUI() would replace
the _children_ of the component with a new version of the componenent,
thus creating nested divs/spans/buttons/etc.
Closes #4881299
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 30 Jan 2015 15:53:32 +0100] rev 10163
[web/views] Stop mishandling the fieldset name in the default form renderer
While not really documented, it is generally assumed that:
* the fieldset is a user-visible string (much like a title),
* it will be translated by whichever piece of code uses it.
So:
* fix AutomaticEntityForm to generate untranslated fieldset names,
* fix FormRenderer to properly translate the fieldset name before
rendering it,
* stop using the field set (which may contain whitespace) as a CSS class
name (the feature was unusable, so just drop it),
* properly handle the colon as part of the translated fieldset name
Closes #4881298
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 18:08:05 +0100] rev 10162
Added tag cubicweb-version-3.20.2, cubicweb-debian-version-3.20.2-1, cubicweb-centos-version-3.20.2-1 for changeset 138464fc1c33
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:45:06 +0100] rev 10161
merge 3.19.8 into 3.20 branch
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:32:49 +0100] rev 10160
[pkg] fix mistake in c7b218125c25
We ended up with the wrong filenames
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:39:07 +0100] rev 10159
Added tag cubicweb-version-3.19.8, cubicweb-debian-version-3.19.8-1, cubicweb-centos-version-3.19.8-1 for changeset efc8645ece43
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:22:09 +0100] rev 10158
[server/test] convert new test to 3.19 API
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:18:55 +0100] rev 10157
[pkg] 3.19.9
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:18:20 +0100] rev 10156
merge 3.18.8 into 3.19 branch
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 17:12:44 +0100] rev 10155
Added tag cubicweb-version-3.18.8, cubicweb-debian-version-3.18.8-1, cubicweb-centos-version-3.18.8-1 for changeset 231094063d62
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 16:41:27 +0100] rev 10154
[pkg] 3.18.8
Julien Cristau <julien.cristau@logilab.fr> [Wed, 21 Jan 2015 15:58:33 +0100] rev 10153
[security] Test case and fix for an INSERT security hole
7099bbd685aa introduced a untested corner case in which an Entity with no
attribute specified could be created whatever the permissions.
Report and test case by Christophe de Vienne, fix by Aurelien Campeas. Thanks!
Closes #4854359
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 12:20:36 +0100] rev 10152
[pkg] 3.20.2
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Jan 2015 15:46:24 +0100] rev 10151
[debian] cubicweb 3.20 breaks cubicweb-bootstrap << 0.6.6
Closes #4842316
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 15:37:20 +0100] rev 10150
[pkg] don't include extra files in tarballs
Blind wildcards for dirs that may contain generated or temporary files
can lead to trouble and unreproducible results.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 12:36:48 +0100] rev 10149
[pkg] exclude generated js_api documentation from tarballs
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 12:36:20 +0100] rev 10148
[doc] remove old and unused argouml files
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 12:36:01 +0100] rev 10147
[web/data] remove unused xcf files
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 12:22:43 +0100] rev 10146
[doc] remove nonexistent css from theme
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 20 Jan 2015 10:32:34 +0100] rev 10145
[doc] Drop autoclass directive for IDownloadableLineView
This class has been dropped in 3.20.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 08 Jan 2015 12:19:34 +0100] rev 10144
[pkg] include missing files from doc/book/ in release tarballs
Closes #4832700
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 07 Jan 2015 16:22:27 +0100] rev 10143
[datafeed] Set headers parameter to an empty dict in DataFeedParser.retrieve_url
This parameter is then passed to urllib2.Request, which expects a dict and
won't check for None.
Closes #4842333.
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 22 Jan 2015 10:43:24 +0100] rev 10142
[views/forms] Fix EntityFieldsForm.link_to when parent entity is being created
When the parent entity is being created and the inlined form is displayed, the
parent entity has no eid yet and `peid` is usually 'A'. So int() raises a
ValueError.
Closes #4627739.
Christophe de Vienne <christophe@unlish.com> [Sat, 03 Jan 2015 04:06:06 +0100] rev 10141
[entities] Optimize CWUser.properties.
This property gets called each time a user connects to a repository,
which means a lot.
This optimisation cuts its execution time by 5 according to my tests
Julien Cristau <julien.cristau@logilab.fr> [Tue, 04 Mar 2014 12:41:21 +0100] rev 10140
[schema] Typo and indentation fix in RQLVocabularyConstraint doc string
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 15:52:50 +0100] rev 10139
Added tag cubicweb-version-3.20.1, cubicweb-debian-version-3.20.1-1, cubicweb-centos-version-3.20.1-1 for changeset 43eef610ef11
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 15:24:40 +0100] rev 10138
[pkg] 3.20.1
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 15:24:08 +0100] rev 10137
i18n update (closes #4826490)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 15:01:23 +0100] rev 10136
merge 3.19.7 into 3.20
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 14:07:17 +0100] rev 10135
merge two default heads
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 14:56:33 +0100] rev 10134
Added tag cubicweb-version-3.19.7, cubicweb-debian-version-3.19.7-1, cubicweb-centos-version-3.19.7-1 for changeset ac4f5f615597
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 14:38:25 +0100] rev 10133
[pkg] 3.19.7
Julien Cristau <julien.cristau@logilab.fr> [Wed, 07 Jan 2015 11:55:12 +0100] rev 10132
Added tag cubicweb-version-3.20.0, cubicweb-debian-version-3.20.0-1, cubicweb-centos-version-3.20.0-1 for changeset 7e6b7739afe6
Julien Cristau <julien.cristau@logilab.fr> [Tue, 06 Jan 2015 19:00:53 +0100] rev 10131
[pkg] prepare 3.20 release
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Dec 2014 11:18:15 +0100] rev 10130
[skeleton] simplify debian rules file
Julien Cristau <julien.cristau@logilab.fr> [Mon, 22 Dec 2014 14:39:50 +0100] rev 10129
[migration] don't crash when deleting a non-existing rtype
When asked to delete a relation type, instead of checking if it was
computed or not, just delete both the CWRType and CWComputedRType.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 19 Dec 2014 12:39:42 +0100] rev 10128
[debian] include "metapackage" in the cubicweb package's description
Lets lintian know it's ok for it to be empty.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 19 Dec 2014 12:37:37 +0100] rev 10127
[debian] ensure all packages use ${misc:Depends} and ${python:Depends}
Julien Cristau <julien.cristau@logilab.fr> [Fri, 19 Dec 2014 12:35:43 +0100] rev 10126
[debian] update cubicweb-dev's lintian override
Switching from python-support to dh-python changed the installation path.
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Wed, 03 Dec 2014 16:29:16 +0100] rev 10125
[server] add a db-namespace option in source definition (closes #1631339)
"namespace" is preferred to the postgresql term "schema" to try and
avoid confusion with cubicweb's schema.
cubicweb now depends on logilab-database >= 1.13.0
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Fri, 19 Dec 2014 12:08:01 +0100] rev 10124
[serverctl] add db_transaction context manager
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 28 Mar 2013 19:24:46 +0100] rev 10123
[server] refactor cleanup() code used by "cubicweb-ctl delete"
Try to make each logical step (i.e. "delete database" and "delete user")
a bit more visible and explicit.
This is a preparatory work to easily plug the "delete namespace" feature.
David Douard <david.douard@logilab.fr> [Mon, 05 May 2014 11:09:51 +0200] rev 10122
[views] visual refactorings (closes #3803685)
- pageContent:
- remove the shadow
- add a light border
- slightly round the corners
- left column:
- ensure width make it aligned with the logo (header)
- ensure the top border of the first box is aligned with the pageContent div
- do not use serif font for box headers
Julien Cristau <julien.cristau@logilab.fr> [Thu, 18 Dec 2014 17:54:29 +0100] rev 10121
[web] everything old is new again
Kill the "new" cubicweb.css, and move cubicweb.old.css back in its
place. Closes #4763360.
David Douard <david.douard@logilab.fr> [Wed, 12 Nov 2014 22:20:02 +0100] rev 10120
[pkg] bump version to 3.20.0
David Douard <david.douard@logilab.fr> [Mon, 05 May 2014 11:25:59 +0200] rev 10119
[views] use icons for user menu and login (header) (closes #3803684)
- use icons from the embedded pictograms font for:
- authenticated user menu (userActionsBox)
- login (CookieLoginComponent)
- do not display "anonymous" when not logged in
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 04 Dec 2014 11:37:18 +0100] rev 10118
[utils] provide a function to return an admin connection from an appid
Closes #4723580.
Denis Laxalde <denis.laxalde@logilab.fr> [Tue, 16 Dec 2014 11:37:52 +0100] rev 10117
[debian] Install wsgi directory in cubicweb-web package
Closes #4752375.
David Douard <david.douard@logilab.fr> [Thu, 11 Dec 2014 15:02:23 +0100] rev 10116
[test] fixes to make tests pass with recent lxml
lxml (on jessie at least, ie. 3.4.0) does not remove endlines anymore.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 05 Dec 2014 12:08:13 +0100] rev 10115
[server] Remove useless 'is None' checks
'pb' is never none since 3386fd89c914 when support for the 'APYCOT_ROOT'
env var was removed.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 17 Dec 2014 10:55:53 +0100] rev 10114
[security] check attributes: dispatch on the "add" action if entity was just created
cw_set on a just-created entity (i.e. created in the same transaction)
should behave the same as setting the attribute directly on creation:
check the 'add' permissions, not 'update'.
Closes #4740310.
Christophe de Vienne <christophe@unlish.com> [Tue, 09 Dec 2014 15:18:58 +0100] rev 10113
[doc] Add BigInt to the list of built-in types
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Apr 2014 15:32:17 +0200] rev 10112
[devtools] call turn_repo_off in tearDown (closes #4673491)
lets it catch leaked sessions even when running a single test
Julien Cristau <julien.cristau@logilab.fr> [Mon, 01 Dec 2014 15:57:12 +0100] rev 10111
[book] typos / clarifications in create-instance section
Clarify that cubicweb-ctl upgrade needs to be run whenever cubicweb or a
cube is upgraded. Related to #2632425.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 12 Jun 2014 18:31:21 +0200] rev 10110
[repository] don't mangle the stack trace on exception
Christophe de Vienne <christophe@unlish.com> [Thu, 27 Nov 2014 13:40:37 +0100] rev 10109
[pkg] Make twisted recommended only
It's not necessary when using wsgi or pyramid.
Closes #4639508
Christophe de Vienne <christophe@unlish.com> [Thu, 27 Nov 2014 12:11:29 +0100] rev 10108
[devtools] Use the pause_trace context manager instead of pause_tracing/resume_tracing
The later were deprecated in logilab-common 0.63.1
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Thu, 23 Oct 2014 15:47:17 +0200] rev 10107
[serverctl] rename remove_cube to drop_cube (closes #4545093)
For the sake of consistency, since commands are currently named:
- add_{cube,entity,attribute,relation}
- drop_{entity,attribute,relation}
- remove_cube
Alain Leufroy <alain@leufroy.fr> [Thu, 15 May 2014 23:18:17 +0200] rev 10106
[wsgi] add tornado http server
Alain Leufroy <alain@leufroy.fr> [Thu, 15 May 2014 23:07:43 +0200] rev 10105
[wsgi] add message about the active interface
Similarly to what done in "stdlib".
Alain Leufroy <alain@leufroy.fr> [Thu, 15 May 2014 23:05:15 +0200] rev 10104
[cwctl] rewrite wsgi method choices
This will help devs to add new choices by adding their callback to WSGI_CHOICES.
Note:
``options`` becomes a property because ``wsgichoices()`` should be
evaluated at the last-minute.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 01 Dec 2014 11:35:05 +0100] rev 10103
[skeleton/debian] use dh_python2 instead of dh_pysupport for new cubes
The former is deprecated.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Oct 2014 18:09:41 +0200] rev 10102
[web] Add source for jquery.qtip.js
Downloaded from
https://github.com/Craga89/qTip1/raw/master/1.0.0-rc3/jquery.qtip-1.0.0-rc3.js
Related to #3851121.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Oct 2014 18:01:06 +0200] rev 10101
[web] Replace minified copy of jquery.flot.js 0.6 with non-minified version
Related to #3851121
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Oct 2014 11:42:20 +0200] rev 10100
[web] Update jquery-treeview to the latest version
Files copied from commit 61f230828ace1b54c2cc54bc549ece261b11842e of
https://github.com/jzaefferer/jquery-treeview
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Oct 2014 11:20:44 +0200] rev 10099
[web/css] move jquery.treeview.css override to a separate file
Patched embedded code copies are a maintenance disaster (even more so
than plain embedded code copies). Let's not do that.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Oct 2014 14:39:51 +0200] rev 10098
[web] Stop patching jquery.treeview.js
This logically reverts part of e9b7cd2e9012 "allow treeview to work
correctly in a tab #345293".
The treeview and ajax code have suffered a number of changes since then, this
change doesn't seem to be necessary anymore. It is most likely unneeded since
f65208c9dbdc "[javascript] use jQuery.one('ajax-loaded') instead of
jQuery.bind() in add_onload to avoid multiple callback executions".
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 22 Oct 2014 14:28:01 +0200] rev 10097
[web] Beautify jquery.treeview.js
Fully mechanical, just whitespace changes.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 06 Nov 2014 18:17:29 +0100] rev 10096
[entities/wfobjs] add missing `DBG_SEC` debugging informations and a new `transition` capability
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 06 Nov 2014 14:35:25 +0100] rev 10095
[warnings] put an end to warnings in the sqlite driver over `str` being sent instead of unicode strings
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 14 May 2014 15:05:31 +0200] rev 10094
[web/request] clearly mark user_callback-related methods as deprecated
The deprecated decorator not only emits a warning at run-time
but above all makes the deprecation immediately apparent in the source.
closes #3567793.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 03 Dec 2014 15:24:47 +0100] rev 10093
[book] document __unique_together__, remove bad RQLUniqueConstraint example
RQLUniqueConstraint should be avoided whenever possible. Related to
#3753250.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 17 Apr 2014 12:34:51 +0200] rev 10092
[schema] stop using RQLUniqueConstraint (closes #3753250)
The last uses are replaced with unique together constraints.
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 03 Apr 2014 14:17:16 +0200] rev 10091
[dataimport] Have ucsvreader's API match that of csv.reader (closes #3705701)
'separator' and 'quote' are replaced with 'delimiter' and 'quotechar'.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 19 Nov 2014 12:13:32 +0100] rev 10090
[utils] Add a '_cwtracehtml' GET parameter to trace self._cw.w() calls (closes #4601327)
The core of this patch is in UStringIO.write(). When tracing is enabled,
write() doesn't just append the 'value' argument to the underlying list.
Instead, a stack trace is recorded and a special HTML "source" is
formatted.
The output with tracing enabled is an HTML page, with the original HTML
escaped, and made clickable to show the stack trace when the write()
call was done.
This allows answering the recurring question: "who wrote this tag
here?!"
Denis Laxalde <denis.laxalde@logilab.fr> [Wed, 19 Nov 2014 11:57:55 +0100] rev 10089
[datafeed] Add a raise_on_error parameter to DataFeedSource.extid2entity
And pass the option from various `process_` methods in existing parsers.
This makes debugging in tests easier.
Closes #4601191.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 02 Dec 2014 11:37:01 +0100] rev 10088
[test/view forms] use the official, undeprecated API
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 27 May 2014 18:47:24 +0200] rev 10087
[rset] kill the rset._rqlst cache
Right now it "works" for the standard, internal uses.
However when we will fold ClientConnection and Connection, it will
hurt, because suddenly we get more cache hits, and the following
situation would become commonplace:
* there is an un-annotated _rqlst given by the querier
* some view (e.g. facets) requests the .syntax_tree, which takes a
copy of _rqlst
* the view actually expects the rql syntax tree to be annotated, but
it was not, hence we crash.
Related to #3837233.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 03 Jun 2014 18:03:43 +0200] rev 10086
[source/native] session -> cnx
Also swap process_results arguments order to make cnx come earlier.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 10 Jun 2014 16:18:46 +0200] rev 10085
[hookstests] change got/expected order
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 15:38:39 +0200] rev 10084
[config] kill a getattr
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 03 Dec 2014 11:36:05 +0100] rev 10083
[tests/web] switch previous commit (136b5f995f8) to the new test api
Related to #3670209.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 22 Oct 2014 14:16:47 +0200] rev 10082
[web] remove unused argument from treeview._init_headers
Julien Cristau <julien.cristau@logilab.fr> [Tue, 21 Oct 2014 11:06:19 +0200] rev 10081
[doc/3.20] mention CWEP-002
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Oct 2014 17:18:29 +0200] rev 10080
[web] stop accepting the magic __message form parameter
This has been deprecated for a while, and replaced by _cwmsgid, which
doesn't allow arbitrary content.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 02 Oct 2014 16:34:38 +0200] rev 10079
[web/request] add security_enabled method
Just forward to the underlying repo connection. This can be useful in
the ORM when dealing with a "code-only" attribute, i.e. something that
shouldn't be directly user-visible but must be accessible from a web
request.
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 18 Nov 2014 18:20:08 +0100] rev 10078
[dataimport] Fix use of _create_copyfrom_buffer() (related to #3845572)
This is used indirectly by SQLGenObjectStore when running on a
PostgreSQL database.
Regression introduced by commit 70056633085c.
David Douard <david.douard@logilab.fr> [Wed, 26 Mar 2014 14:45:33 +0100] rev 10077
[c-c configure] make it possible to specify the section for sources configuration (closes #3477678)
Julien Cristau <julien.cristau@logilab.fr> [Wed, 10 Sep 2014 11:34:32 +0200] rev 10076
[server] fix 'cnx' variable confusion in DBG_SQL exception case
The rollback handling expects 'cnx' to be the cubicweb Connection, but
the DBG_SQL block was replacing it with an sql connection, leading to
lulz down the line. Also remove obsolete getattr (the sqlite wrapping
is now done at the cnxset level, so cnx.cnxset.cnx should be the right
thing already).
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 20 Mar 2014 10:41:22 +0100] rev 10075
Provide sufficient context to check 'delete' permission in AjaxEditRelationCtxComponent
Call rdef.check only when both fromeid and toeid are available. Though only
call it once (for the first encountered related entity).
Factorize a bit to keep handling of CSS/JS addition the same.
Closes #3670209.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 01 Dec 2014 11:13:10 +0100] rev 10074
merge 3.19.6 into 3.20 branch
David Douard <david.douard@logilab.fr> [Sun, 30 Nov 2014 21:24:36 +0100] rev 10073
Added tag cubicweb-version-3.19.6, cubicweb-debian-version-3.19.6-1, cubicweb-centos-version-3.19.6-1 for changeset 934341b848a6
David Douard <david.douard@logilab.fr> [Sun, 30 Nov 2014 12:01:57 +0100] rev 10072
[test] missing unittest.main() call in unittest_http_headers.py
David Douard <david.douard@logilab.fr> [Fri, 28 Nov 2014 00:39:31 +0100] rev 10071
[test] make unittest_webconfig independant of CWD
if apphome is unset in ApptestConfiguration constructor, this later looks
for a 'data' directory in CWD, making this test runnable only from
web/test (and pytest do chdir before executing tests, so we did not noticed
this problem).
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 28 Nov 2014 11:51:36 +0100] rev 10070
[webctl] do not ask questions if verbosity is at 0
Closes #4641960.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 28 Nov 2014 10:16:37 +0100] rev 10069
[web] Slight tweak on jQueryUI's colors on links (related to #4564046)
Follow up to commit 16f550b48d57 which was somewhat brutal. This change
only overrides jQueryUI's CSS rules inside tab panes and leaves actual
tab buttons alone.
Rémi Cardona <remi.cardona@free.fr> [Wed, 30 Jul 2014 22:26:18 +0200] rev 10068
[view] Remove unused imports
Rémi Cardona <remi.cardona@free.fr> [Tue, 29 Jul 2014 07:36:41 +0200] rev 10067
Remove obsolete __future__ imports
Generators have been available since 2.3, "with" statements since 2.6.
Rémi Cardona <remi.cardona@free.fr> [Tue, 19 Aug 2014 12:04:23 +0200] rev 10066
[devtools] Remove unused local function
Unused since cw's first commit.
Florent Cayré <florent.cayre@gmail.com> [Sun, 04 May 2014 22:29:20 +0200] rev 10065
[uihelper] Fix a possible NameError in meta_formconfig
could occur when using FormConfig with a custom uicfg object.
Closes #3802298.
Christophe de Vienne <christophe@unlish.com> [Wed, 19 Nov 2014 11:30:18 +0100] rev 10064
[devtools] Avoid db_cache collisions and mis-loading
This is done by stopping to share the db_cache between
TestDataBaseHandler instances
It may seem overkill, but is the only way I could get it to work
properly. I think the whole db caching code needs some rework to better
work with different db handlers.
Closes #4601328
Christophe de Vienne <christophe@unlish.com> [Mon, 06 Oct 2014 12:08:41 +0200] rev 10063
[devtools][pg] Remove a wrong assertion in _backup_database
When using pre_setup_database, a repo gets initialised before calling
backup_database. Hence self._repo is NOT None it that case.
David Douard <david.douard@logilab.fr> [Wed, 26 Nov 2014 16:24:28 +0100] rev 10062
[pkg] prepare 3.19.6
David Douard <david.douard@logilab.fr> [Wed, 26 Nov 2014 17:58:23 +0100] rev 10061
[merge] backport 3.18 fixes
Christophe de Vienne <christophe@unlish.com> [Fri, 19 Sep 2014 13:08:26 +0200] rev 10060
Accept '==' operator in cubes dependencies
'==' is the operator used in the python dependencies specifications.
See PEP 440 http://legacy.python.org/dev/peps/pep-0440/#version-specifiers
Using the same operator in cubes dependencies allow to make setuptools handle
the cubes dependencies while keeping cubicweb happy about the dependencies.
Closes #4375144
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Sep 2014 13:51:12 +0200] rev 10059
[session] don't silently ignore commits
commits while in the precommit or postcommit phase are silently ignored.
This is OK in precommit since there'll be a commit afterwards anyway;
OTOH in postcommit it may surprise the developer who didn't read the
documentation for postcommit operations carefully enough. Related to
#4383922.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 11:49:28 +0100] rev 10058
[migration/bootstrap] add explicit index removal for sqlserver, be tolerant to migration replay
Closes #4618944.
David Douard <david.douard@logilab.fr> [Wed, 26 Nov 2014 17:39:59 +0100] rev 10057
Added tag cubicweb-version-3.18.7, cubicweb-debian-version-3.18.7-1, cubicweb-centos-version-3.18.7-1 for changeset cb96f4403cf2
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 25 Nov 2014 12:15:41 +0100] rev 10056
[pkg] prepare 3.18.7
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 19 Nov 2014 12:36:43 +0100] rev 10055
[migration/3.18] speed up the migration and be a little bit more informative
Closes #4619277.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 12:36:17 +0100] rev 10054
[schemaserial] be robust against duplicated CWUniqueTogetherConstrain entities arising from bug in the pre 3.18 era
Closes #4619278.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 17 Feb 2014 15:01:23 +0100] rev 10053
[server] Handle unique constraint violations under recent sqlite
The error message changed from "columns foo, bar, baz are not unique" to
"UNIQUE constraint failed: table.foo, table.bar, table.baz".
Closes #3564510
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 18:43:51 +0100] rev 10052
[merge] backport 3.17 fixes
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 18:40:09 +0100] rev 10051
Added tag cubicweb-version-3.17.18, cubicweb-debian-version-3.17.18-1, cubicweb-centos-version-3.17.18-1 for changeset cda4b066933f
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 17:42:08 +0100] rev 10050
[pkg] prepare 3.17.18
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 16:22:40 +0100] rev 10049
[source/native] handle newer Integrity error messages from sqlite > 3.7
Similar to a0cf2993b6d3 that was done for 3.18.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 24 Nov 2014 15:43:18 +0100] rev 10048
[source/native/backup_restore] have a unique tunable blocksize for the dump phase
Thus we make memory errors much less likely.
Closes #4618949.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 24 Nov 2014 17:43:29 +0100] rev 10047
[urlpublishing] handle sub-types in RestPathEvaluator
Since commit 31a1813d53f3 "[entity/url publishing] fetch_rqlst should
use 'is_instance_of' instead of 'is'", the RestPathEvaluator's input
rset can have more than one etype, so it can't always use sameetypelist.
Related to #3825488
David Douard <david.douard@logilab.fr> [Mon, 24 Nov 2014 14:43:28 +0100] rev 10046
[views] fix ecsvexport selector
introduced by e48e5a597ccc
Fix the view and make web/test/test_views.py pass again.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Oct 2014 12:14:58 +0200] rev 10045
Add custom checker for Password values
We override the default converter to pass Binary values through, but
don't do anything about the checker. This worked previously because
yams allowed StringIO instances, although its converter didn't do the
right thing for them. Fixing this in yams requires that we properly
register a checker.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 22 Oct 2014 15:59:52 +0200] rev 10044
[component] give Links a __repr__
Julien Cristau <julien.cristau@logilab.fr> [Wed, 12 Nov 2014 14:33:12 +0100] rev 10043
[debian] move markdown dependency from cubicweb-web to cubicweb-common
Pointed out by David Douard.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 04 Nov 2014 16:09:42 +0100] rev 10042
[web/auth] stop playing games with locals()
We only want to know if any retriever found something.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 13 Nov 2014 15:48:33 +0100] rev 10041
[entity] rather than crashing with an IndexError on entity creation, raise a meaningful exception
David Douard <david.douard@logilab.fr> [Wed, 12 Nov 2014 22:18:55 +0100] rev 10040
[web] partial backout of #8391bf718485 to restore RelatedObjectsVComponent
Apparently the intended deprecation did not work, and this component is
used in at least the tracker cube.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 13 Nov 2014 10:38:39 +0100] rev 10039
[server] typo fix
Christophe de Vienne <christophe@unlish.com> [Mon, 06 Oct 2014 10:34:38 +0200] rev 10038
[devtools][pg] Activate the non-durability settings of Postgresql.
It speed up the PG tests by a factor of 3.
See http://www.postgresql.org/docs/current/static/non-durability.html.
David Douard <david.douard@logilab.fr> [Mon, 17 Nov 2014 09:32:37 +0100] rev 10037
[server] fix LoginPasswordAuthentifier.authenticate
some kind of typo there.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 07 Nov 2014 10:33:40 +0100] rev 10036
[web] Override jQueryUI's colors on links (closes #4564046)
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 29 Oct 2014 16:39:36 +0100] rev 10035
[hooks] Fix precommit event logging message
Julien Cristau <julien.cristau@logilab.fr> [Thu, 23 Oct 2014 13:51:13 +0200] rev 10034
[service] allow repo_stats for users
It's used by the siteinfo view, which is available to managers and
users. This change prevents a crash in that view.
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 11 Sep 2014 15:17:08 +0200] rev 10033
[views] Escape class attribute value in CWGroup incontext view
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Sep 2014 10:50:23 +0200] rev 10032
[devtools] use a specific test_db_id when disabling anon
The anonymous user is created (or not) in postcreate, which for tests
means when creating the cached empty database. The
anonymous_allowed=False test classes should thus not share their
template db with other test classes, otherwise either they end up with
an unexpected anonymous user, or the others miss theirs and things fall
apart.
Christophe de Vienne <christophe@unlish.com> [Wed, 19 Nov 2014 11:59:08 +0100] rev 10031
Restrict yams version
CW 3.19 is not compatible with yams >= 0.40
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 20 Oct 2014 12:50:04 +0200] rev 10030
[facets] Honor 'start_unfolded' facet attribute (closes #4502799)
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 20 Oct 2014 12:23:13 +0200] rev 10029
[facets] Correctly look for inputs of type "hidden" (closes #4502768)
jQuery ':hidden' selector looks at CSS visual properties (eg, 'display',
'visibility'). The intent here was probably to look for inputs of type
"hidden", which many facets use to store user selection data (eg,
FacetRangeWidget).
The problem is that regular text inputs (eg the "has_text" facet which
has a '<input type="text"/>') will be picked up by this selector if they
are inside a folded facet. Chaos and destruction ensue.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 15 Oct 2014 18:23:54 +0200] rev 10028
[web] Cache results from 'i18n' ajax controller (closes #4487856)
This is a simple transient cache which will be forgotten as soon as the
user leaves the current page.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 15 Oct 2014 17:29:29 +0200] rev 10027
[web] There is no global noop(), use jQuery's instead (closes #4487832)
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 10 Oct 2014 09:18:28 +0200] rev 10026
[server] Add missing import of logilab.database
Closes #4469407.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 13 Nov 2014 10:37:44 +0100] rev 10025
[migration] hackish black magic to bootstrap addition of formula attr during migration
Turns out we can't add an attribute to CWAttribute before the attribute
exists. add_attribute generates rql with a 'formula' relation, which CW
doesn't know about yet, so things get unhappy. Once that is fixed, we
need to make the CWAttribute addition operation deal with CWAttribute
entities that don't have a formula yet.
Finally, move the migration to bootstrapmigration_repository so it
happens early on, and use add_entity_type rather than add_relation_type
for CWComputedRType.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 04 Nov 2014 14:10:02 +0100] rev 10024
[server] commit after serializing schema
Use separate transactions for schema serialization and postcreate
scripts execution, so that the latter can rely on the schema being
persistently stored. This matters e.g. if something in a postcreate
violates a unique_together constraint, we need the constraint persisted
in order to raise a meaningful error. See #4525069.
David Douard <david.douard@logilab.fr> [Thu, 28 Aug 2014 18:54:21 +0200] rev 10023
[book] fix docstrings to please sphinx
example rst roles in docstring must be protected (in a literal).
David Douard <david.douard@logilab.fr> [Thu, 28 Aug 2014 18:52:41 +0200] rev 10022
[book] several fixes in the rst files
- prevent duplicate markup definitions,
- use existing Workflow markup instead of redefining one (in baseschema.rst)
- include dataimport
- fix non-existant directive autodocfunction
- remove the empty 'embedding.rst' file
David Douard <david.douard@logilab.fr> [Thu, 28 Aug 2014 18:46:41 +0200] rev 10021
[book] activate the viewcode extension
Automagically make link to class/modules/etc. it finds in the documents.
David Douard <david.douard@logilab.fr> [Thu, 28 Aug 2014 16:22:05 +0200] rev 10020
[book] new theme based on pyramid theme (closes #4291287)
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 30 Jul 2014 14:06:38 +0200] rev 10019
Remove unused lgc.interface imports and leftovers
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 17 Jul 2014 14:40:28 +0200] rev 10018
[repository] provide a .new_session entry point
The current .connect only returns a `sessionid` which must be given to
repo._get_session(...) to get the real session object.
Related to #4151635.
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 30 Jun 2014 10:49:53 +0200] rev 10017
[devtools/testlib] Use actual 'admin' user configuration values
Previously ``db-user`` and ``db-password`` configuration values were used to
fill ``admlogin`` and `admpassword`` attributes of CubicWebTC. The correct
data for these should read from `[admin]` section.
Closes #4065070.
Anthony Truchet <anthony.truchet@logilab.fr> [Thu, 25 Apr 2013 10:16:25 +0200] rev 10016
[forms] closes #2437859 - Detect and prevent concurrent edition of the same entity.
Add the timestamp of form generation to each entity's meta-information fields.
On form validation, check that no concurrent change is overwritten and raises
a ValidationError in case of concurrent change.
A nicer handling with a message and a link to the new version of the entity
would be a good thing...
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Apr 2014 16:58:58 +0200] rev 10015
[migration] make sure the repo knows about all constraint types
Adding new constraint types is cumbersome. It's easy to forget to do it
in a migration script. So sync the constraint types at the beginning of
each migration.
Closes #3724892
Julien Cristau <julien.cristau@logilab.fr> [Mon, 07 Jul 2014 16:07:57 +0200] rev 10014
[migration] stop caching the mapping from constraint type name to eid
It's not so frequent that a cache seems necessary, and we were not
invalidating that cache when adding a new constraint type.
Related to #3724892.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Jun 2014 17:53:31 +0200] rev 10013
[web/json] an empty rset is just fine for ejsonexport
The ejsonexport view can just return an empty list for an empty rset.
Closes #4005518
Christophe de Vienne <christophe@unlish.com> [Wed, 30 Apr 2014 21:04:14 +0200] rev 10012
[RichString] Add markdown support
Supporting markdown requires the 'Markdown' python packages, and since it
widely available on the target platforms adding it as a strong requirements
will not be a big constraint.
Closes #3814302
Paul Tonelli <paul.tonelli@logilab.fr> [Thu, 23 Oct 2014 14:57:02 +0200] rev 10011
[ldapfeed] Reduce default value for user-attrs-map option (closes #3824889)
This is needed because lgc.configuration.Configuration does not allow
removing key/value pairs from the default (due to its use of
dict.update() internally).
Since CWUser.login is required, users of the add-source command will
always be able to override it.
Paul Tonelli <paul.tonelli@logilab.fr> [Tue, 29 Apr 2014 11:34:42 +0200] rev 10010
[serverctl] Ask for URL when adding a new source (closes #3824868)
Paul Tonelli <paul.tonelli@logilab.fr> [Mon, 28 Apr 2014 17:34:07 +0200] rev 10009
[serverctl] Ask for parser type when adding a new source (closes #3484231)
Remove 'quick_start' option to load all AppObjects, including feed parsers.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 11 Jun 2014 10:57:28 +0200] rev 10008
[doc/3.20] more details on removed code
related to #3799117
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 02 May 2014 17:58:57 +0200] rev 10007
remove 3.11 bw compat
Closes #3799117.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 02 May 2014 17:57:37 +0200] rev 10006
remove most 3.10 bw compat
Related to #3799117.
The boxes and entityvcomponent objects cannot really be removed as they
are still used throughout the code base (and possible cubes).
This may be caused by a non-working deprecation and needs some more
work.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 02 May 2014 17:41:11 +0200] rev 10005
remove leftover pre 3.9 deprecation warnings
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Jul 2014 15:42:47 +0200] rev 10004
[utils] Remove function-in-the-middle call
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Jul 2014 15:45:04 +0200] rev 10003
[web] set Vary response header to "Accept-Language" when using content negotiation
This is slightly annoying because the response actually only varies
based on the language we decide to send, which has much fewer possible
values than Accept-Language, but that's not in the request, so we can't
easily use it. Deployments using varnish or similar and controlling the
set of available languages will likely want to override this to allow
reasonable amounts of caching.
Closes #2105812
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Jul 2014 16:27:11 +0200] rev 10002
[web/cors] don't overwrite other Vary headers
Vary is a list of request headers, we shouldn't override others.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 15 Jul 2014 16:07:59 +0200] rev 10001
[web] add support for HttpOnly cookie flag
And use it for session cookies. Closes #4142521.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Oct 2014 18:16:58 +0200] rev 10000
merge 3.19.5 into 3.20 branch
Julien Cristau <julien.cristau@logilab.fr> [Tue, 07 Oct 2014 10:06:24 +0200] rev 9999
Added tag cubicweb-version-3.19.5, cubicweb-debian-version-3.19.5-1, cubicweb-centos-version-3.19.5-1 for changeset 3ac86df519af
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Oct 2014 17:50:42 +0200] rev 9998
i18n update
4 strings have disappeared.
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Oct 2014 17:32:49 +0200] rev 9997
[pkg] 3.19.5
Julien Cristau <julien.cristau@logilab.fr> [Mon, 15 Sep 2014 10:06:07 +0200] rev 9996
[server] hold connection to the db in tx_actions
We can be called without a cnxset (e.g. from repoapi).
Christophe de Vienne <christophe@unlish.com> [Mon, 15 Sep 2014 17:23:22 +0200] rev 9995
[wsgi] If multipart cannot parse the POST content, let it pass.
multipart can only parse html form data. It the content_type is, for example,
"application/json", get_posted_data should not fail but just stop trying to
read the content.
Closes #4421845
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 01 Sep 2014 14:56:00 +0200] rev 9994
[devtools] Fix JS tests' HTML code
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 01 Sep 2014 10:22:46 +0200] rev 9993
[devtools] "Keep" some temporary files/dirs around to help with debugging
The whole QUnitTestCase runs with an @with_tempdir so it's redundant
anyway.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 01 Aug 2014 19:28:44 +0200] rev 9992
[devtools] Fix Firefox launcher in QUnitTestCase (closes #4294727)
The main changes are:
- stop creating the profile, firefox will create it
- point firefox to a profile directory instead of giving it a profile name
(this has the added bonus of not polluting the user's profile list)
- start firefox once and kill it 5 seconds later to let it finish its profile
creation (along with system-wide extensions setup)
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 25 Sep 2014 17:38:51 +0200] rev 9991
[devtools] allow cross-origin requests for qunit
We have a mix of file:// html and http:// ajax calls. Which we should
at some point fix to all be http, but. Related to #4294727.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Sep 2014 15:49:13 +0200] rev 9990
merge 3.19.4 in 3.20 branch
Christophe de Vienne <christophe@unlish.com> [Mon, 15 Sep 2014 17:24:18 +0200] rev 9989
[cors] Fix CORS headers generators
The Access-Control-Allow-* and Access-Control-Expose-Headers are response
headers, not request headers.
Hence, we need generators for them. Closes #4412575.
Christophe de Vienne <christophe@unlish.com> [Tue, 09 Sep 2014 22:14:20 +0200] rev 9988
[wsgi] Fix posted files filename reading
The filenames are parsed by multipart.parse_form_data, which does the unicode
decoding. Trying to re-decode the filename was leading to an error.
Christophe de Vienne <christophe@unlish.com> [Tue, 23 Sep 2014 11:18:56 +0200] rev 9987
[pkg] Depend on Pillow instead of PIL
The Pillow library is becoming the de-facto replacement for PIL.
It also is way simpler to install with pip than PIL.
Closes #4411354.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Sep 2014 14:42:00 +0200] rev 9986
Added tag cubicweb-version-3.19.4, cubicweb-debian-version-3.19.4-1, cubicweb-centos-version-3.19.4-1 for changeset c4e740e50fc7
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Sep 2014 14:24:20 +0200] rev 9985
[pkg] 3.19.4
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Sep 2014 18:04:30 +0200] rev 9984
merge 3.18.6 into 3.19
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Sep 2014 17:35:59 +0200] rev 9983
Added tag cubicweb-version-3.18.6, cubicweb-debian-version-3.18.6-1, cubicweb-centos-version-3.18.6-1 for changeset d91501356742
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Sep 2014 15:08:44 +0200] rev 9982
[pkg] 3.18.6
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 28 Jan 2014 15:27:59 +0100] rev 9981
[hooks/security] allow edition of attributes with permissive permissions
If an attribute has more permissive security rules than the entity
type itself, we should be green and not deny action because of an
early global entity permission check (with the more restrictive
rules).
Only if one attribute with the entity-level permission rules is edited
will the global check be performed.
Note:
* the "if action == 'delete'" check at the entry of
check_entity_attributes is a guard for a condition currently not
happening in cubicweb itself (but application hooks could
conceivably call this function with a 'delete' action)
Closes #3489895.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 29 Jul 2014 14:40:29 +0200] rev 9980
Almost backout afcd46716d6a which breaks _select_best raising an ambiguity exception in debug mode.
The problem is, before afcd4, *tests* ran in debug mode and we want
this (e.g. we want to show, rather than swallow, select ambigüities).
We juste replace the bogus __init__(vreg.config) by __init__(True), which is
practically equivalent and also much more clear.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 12 Sep 2014 09:49:01 +0200] rev 9979
[server] fix anonymous_user predicate in tests
devtools' TestServerConfiguration overrides the anonymous_user method,
but not the anonymous-user config option, so testing for the latter
would give the wrong result. Closes #3996664.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 28 Jul 2014 16:05:19 +0200] rev 9978
[entities] cw_rest_attr_info() should only consider required attributes (closes #3766717)
This prevents CW from choosing unique but non-required attributes. None/NULL is
a poor choice for RESTful URIs.
Damien Garaud <damien.garaud@logilab.fr> [Fri, 08 Aug 2014 13:05:07 +0200] rev 9977
[views] csvexport accept an empty rset (closes #4236928)
When you tried to apply the 'csvexport' view on an empty rset, the view
couldn't be selected and you got a HTTP 500 error.
Also add two new test cases.
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 11 Sep 2014 16:43:20 +0200] rev 9976
[views] Display attributes in entity creation form based on "add" permission
Previously, the "update" permission was used. Hence in case the latter is
more restrictive that the "add" permission, an user may not be able to set
such an attribute, despite she may have "add" permission on it.
As a result of the change of permissions action in `editable_attributes`
method (add/update depending on whether the entity is being created or
modified), the "eid" attribute would have shown up in the edition form. To
avoid this, it is moved in the "hidden" section (where it should arguably
belong anyways).
Closes #4342844.
Denis Laxalde <denis.laxalde@logilab.fr> [Thu, 18 Sep 2014 11:03:39 +0200] rev 9975
[datafeed] Commit after all deletions in datafeed parser
This avoids misleading validation error because schema constraints could be
temporarily broken depending on the deletion order.
Closes #4372127.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Sep 2014 17:34:36 +0200] rev 9974
[schema] CWComputedRType is a schema type
Hide it from the default views.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 23 Sep 2014 14:19:11 +0200] rev 9973
[doc] proofreading CWEP002 section
Anthony Truchet <anthony.truchet@logilab.fr> [Mon, 10 Feb 2014 11:03:43 +0100] rev 9972
[CWEP002] document computed relations and attributes
Related to #3546717.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Aug 2014 17:41:34 +0200] rev 9971
[CWEP002 migration] support sync_schema_props_perms for computed attribute
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 22 Jul 2014 11:00:21 +0200] rev 9970
[CWEP002 migration] support drop_relation_type/drop_relation_definition/drop_attribute for computed attributes
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Aug 2014 18:31:18 +0200] rev 9969
[CWEP002 migration] support add_relation_type/add_attribute for computed attributes
Related to #3546717.
Lea Capgen <lea.capgen@logilab.fr> [Tue, 16 Sep 2014 15:28:35 +0200] rev 9968
[CWEP002] properly handle serialization of computed attributes
Until this cset, only serialization of computed attribute's formula was
handled (thanks to the relation definition's properties dict).
We now:
* properly serialize/deserialize attribute's formula
* test first if the database has been migrated and contains related
column or not
Related to #3546717
Sylvain Thénault [Tue, 16 Sep 2014 16:39:23 +0200] rev 9967
[CWEP002] Add support for computed attribute synchronization
Related to #3546717.
Test and handle the behaviour with several formulas and identified use cases. To
do so add a birth year and a computed attribute age to Person in the test
schema.
Laura Médioni <laura.medioni@logilab.fr> [Mon, 28 Apr 2014 14:11:23 +0200] rev 9966
[CWEP002] Add schema finalization checks for computed attributes
``finalize_computed_attributes`` essentially checks that computed attributes
types match with the type declaration of the attribute.
Related to #3546717.
Denis Laxalde <denis.laxalde@logilab.fr> [Mon, 16 Jun 2014 10:08:32 +0200] rev 9965
[CWEP002] Account for attribute formula in schema bootstrap
This isn't enough to have computed attribute support, it is only in order not to
crash when yams 0.40 is used.
Related to #3546717.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Aug 2014 07:44:29 +0200] rev 9964
[CWEP002 migration] support sync_schema_props_perms for computed relations
Laura Médioni <laura.medioni@logilab.fr> [Thu, 28 Aug 2014 08:02:15 +0200] rev 9963
[CWEP002 migration] support add_relation_type for computed relations
Related to #3546717.
Laura Médioni <laura.medioni@logilab.fr> [Thu, 28 Aug 2014 07:55:33 +0200] rev 9962
[CWEP002 migration] support drop_relation_type for computed relations
Related to #3546717.
Laura Médioni <laura.medioni@logilab.fr> [Thu, 28 Aug 2014 07:49:31 +0200] rev 9961
[CWEP002 migration] properly raise exception on (add|drop)_relation_definition for computed relation
Related to #3546717
Laura Médioni <laura.medioni@logilab.fr> [Fri, 27 Jun 2014 12:00:17 +0200] rev 9960
[hooks] do not abuse of inheritance for CWRType hooks
Just copy the selector to ease readability.
Laura Médioni <laura.medioni@logilab.fr> [Mon, 16 Jun 2014 10:08:18 +0200] rev 9959
[schema serial] add some comments
Laura Médioni <laura.medioni@logilab.fr> [Mon, 16 Jun 2014 10:07:57 +0200] rev 9958
[schema] define full_rql on RQLExpression class
without it, we may have an error while displaying error which occured during
some expression initialization because this attribute is not yet defined while
used in the __str__ method.
Laura Médioni <laura.medioni@logilab.fr> [Fri, 29 Aug 2014 07:44:13 +0200] rev 9957
[schema] properly raise BadSchemaDefinition
when some expression mains variables may not be guessed
Lea Capgen <lea.capgen@logilab.fr> [Thu, 28 Aug 2014 18:29:14 +0200] rev 9956
[CWEP002] properly handle serialization of computed relations
We now:
* have CWComputedRelation in the bootstrap schema to store computed relations
* properly serialize/deserialize it
* test first if the database has been migrated and contains the related table
Related to #3546717
[jcr: adjust unittest_querier to pass with the added entity type]
Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 27 Jun 2014 16:11:53 +0200] rev 9955
[CWEP002] Plug the computed relation rewriter in the querier
Related to #3546717.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 13 Feb 2014 13:58:28 +0100] rev 9954
[CWEP002] refactor rql read security checking
Split 'check_read_perms' into 'check_relations_perms' which checks relations
'read' permissions and 'get_local_checks' which build dictionary of local
security checks (rql expression) for variables.
This allows to check relations 'read' permissions earlier in the process and so
to prepare insertion of the rql rewriter: we want to check permissions of the
computed relation, not permissions of relations introduced by the associated
rule, to conform to the CWEP.
Related to #3546717
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 16 Jun 2014 10:22:24 +0200] rev 9953
[CWEP002] introduce RQLRelationRewriter
Refactor existing RQLRewriter for later reuse of rewriting relation as specified
by CWEP002. Work is different because we simply want to replace a relation by
another rql snippet and we don't have to bother with EXISTS, subqueries and all.
This rewriter is not yet plugged into the querier.
Depends on yams 0.40 API.
Related to #3546717
Lea Capgen <lea.capgen@logilab.fr>, Sylvain Thénault <sylvain.thenault@logilab.fr>, Denis Laxalde <denis.laxalde@logilab.fr> [Fri, 12 Sep 2014 14:46:11 +0200] rev 9952
[CWEP002] Add schema finalization checks for computed relations (rules)
Related to #3546717
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 12 Sep 2014 14:10:03 +0200] rev 9951
[schema] add utility function to build a CubicWebSchema from a namespace
Will be useful for testing computed attributes and relations.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Aug 2014 18:12:28 +0200] rev 9950
Fix test migration crash waiting to happen due to inferred relations
Avoid crashing when a relation definition which is already known (due to
being inferred) gets explicitly added. As explained in a comment, this
would deserve more thinking, but at least this fixes a test failure with
computed relations.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 28 Aug 2014 07:42:10 +0200] rev 9949
fix typo in syncschema hooks
Julien Cristau <julien.cristau@logilab.fr> [Tue, 16 Sep 2014 18:01:51 +0200] rev 9948
[test] Make test_undo_api less random
The order in which hooks are run is not predictable if they have the
same 'order' attribute, which is the case for SetOwnershipHook and
SetInitialStateHook. So don't assume in_state will be set before
created_by.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 17 Sep 2014 13:43:31 +0200] rev 9947
merge 3.17.17 into 3.18 branch
Christophe de Vienne <christophe@unlish.com> [Wed, 10 Sep 2014 21:28:33 +0200] rev 9946
[wsgi] Fix unicode decoding in POST
The application/x-www-form-urlencoded sent by firefox or chrome is utf-8
encoded BEFORE being urlencoded.
Hence, decoding must urldecode THEN decode the utf-8 string, and not the
other way around.
Christophe de Vienne <christophe@unlish.com> [Thu, 21 Aug 2014 22:42:48 +0200] rev 9945
[wsgi] add the --debug / -D option to the wsgi command
Christophe de Vienne <christophe@unlish.com> [Mon, 08 Sep 2014 10:55:30 +0200] rev 9944
[wsgi] Fix multiple variables reading in params
Closes #4306081
Christophe de Vienne <christophe@unlish.com> [Tue, 02 Sep 2014 13:00:47 +0200] rev 9943
[wsgi] Set self.vreg
Closes #4306049
Christophe de Vienne <christophe@unlish.com> [Tue, 02 Sep 2014 10:31:13 +0200] rev 9942
[wsgi] Add missing import
Closes #4305988
Christophe de Vienne <christophe@unlish.com> [Tue, 02 Sep 2014 10:30:28 +0200] rev 9941
[wsgi] Fix https detection
- 'HTTPS' is not part of wsgi, it is a CGI variable. The right wsgi variable
is 'wsgi.url_scheme'
- Force https if url starts with '/https/' (and remove the prefix from the
path.
Closes #4305985
Christophe de Vienne <christophe@unlish.com> [Thu, 24 Jul 2014 20:57:14 +0200] rev 9940
[wsgi] Re-set the request content after calling the inherited constructor.
Closes #4191813
Christophe de Vienne <christophe@unlish.com> [Thu, 24 Jul 2014 20:53:21 +0200] rev 9939
[wsgi] Honor the 'CONTENT_TYPE' wsgi variable
See http://legacy.python.org/dev/peps/pep-0333/#environ-variables
Closes #4191812
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 17 Sep 2014 10:31:50 +0200] rev 9938
Added tag cubicweb-version-3.17.17, cubicweb-debian-version-3.17.17-1, cubicweb-centos-version-3.17.17-1 for changeset 57e9d1c70512
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 16 Sep 2014 18:39:07 +0200] rev 9937
[pkg] prepare 3.17.17
Julien Cristau <julien.cristau@logilab.fr> [Tue, 29 Jul 2014 16:26:09 +0200] rev 9936
[web/headers] don't list a request header twice in "Vary"
Julien Cristau <julien.cristau@logilab.fr> [Mon, 28 Jul 2014 17:22:49 +0200] rev 9935
[test] silence a few more deprecation warnings in unittest_hooks
self.session → cnx.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 25 Jul 2014 16:24:44 +0200] rev 9934
[session] call rollback in Connection.__exit__
If we just free the cnxset and clear the Connection, we're missing the
pending operation's rollback_event callbacks, which may be needed for
cleanup.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 24 Jul 2014 14:52:16 +0200] rev 9933
[devtools] pre_setup_database takes a Connection, not a Session
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 03 Jun 2014 18:00:53 +0200] rev 9932
[source/native] cPickle is available in all supported pythons
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 22 Jul 2014 18:16:23 +0200] rev 9931
devtools: deprecate .req_from_url
Which uses .request()
And instead provide .admin_request_from_url, which
is a context manager yielding the request.
Christophe de Vienne <christophe@unlish.com> [Tue, 17 Jun 2014 11:14:20 +0200] rev 9930
[tests] Add a webtest based TestCase class
Closes #4002134
Christophe de Vienne <christophe@unlish.com> [Tue, 17 Jun 2014 11:53:35 +0200] rev 9929
[tests] Move 'anonymous_allowed' property from CubicWebServerTC to CubicWebTC
The effective set of the property on the config is now done later that before,
ie at the end of CubicWebTC.init_config instead of before.
It is believed not to have an impact on the test suites that uses
`anonymous_allowed`.
Related to #4002134
David Douard <david.douard@logilab.fr> [Tue, 02 Sep 2014 12:22:18 +0200] rev 9928
[compat] Remove imports of "any" and "all" from lgc (closes #4306044)
They're builtin since python 2.5.
Florent Cayré <florent.cayre@logilab.fr> [Tue, 26 Aug 2014 10:12:09 +0200] rev 9927
[css] Remove the `div` tag specification of the pendingDelete css rule
The HTML tag was changed by e2f96b16c3bd from a div to a span without
changing the css rule accordingly.
Closes #4285248.
Alain Leufroy <alain.leufroy@logilab.fr> [Wed, 21 May 2014 16:14:17 +0200] rev 9926
[cwvreg] cleanup the event manager when reloading modules
Closes #3848995
The event manager callbacks are not cleaned during reloading.
So the callback defined in the reloaded module appears twice (old and new
version). This may cause problem when the old version is called.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 12 Jun 2014 12:28:10 +0200] rev 9925
[test] Add missing attribute 'add' permission in test schema
Silences yams warning.
Florent Cayré <florent.cayre@gmail.com> [Thu, 01 May 2014 23:35:56 +0200] rev 9924
[facet html] Add surrounding div with "facetBody" class to "has_text" facet.
This makes its html structure consistent with the other facets
and fixes both css and a javascript behaviour (hide the facet body
when clicking on its title).
Closes #3797501.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Jun 2014 11:00:41 +0200] rev 9923
[cwctl] don't prompt for cube options in automatic mode
Closes #3984223
Julien Cristau <julien.cristau@logilab.fr> [Fri, 13 Jun 2014 11:21:45 +0200] rev 9922
[serverctl] fix default value for db-init config-level
Otherwise cubicweb-ctl db-init --automatic complains that "--automatic
and --config-level should not be used together" when they weren't.
Closes #3984336
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 05 Jun 2014 17:41:14 +0200] rev 9921
[web] Return useful error messages when exceptions arise in ajax controllers (closes #3932503)
The call to super() in RemoteCallException passes 'reason' all the way to
python's Exception.__init__() which is then stored in Exception.args. This way,
CubicWebPublisher.ajax_error_handler() gets a useful error message when calling
unicode(exc).
The change to uilib is just to prepend the exception type name. Just a small
improvement.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Jul 2014 19:42:42 +0200] rev 9920
[test] Fix test breakage uncovered by previous changeset
Now that Binary.__eq__ doesn't always return true, this test started
failing. CWAttribute.defaultval is zpickled, and the description_format
attribute is a String, meaning unicode, so adjust the expected test
result.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Jul 2014 11:33:32 +0200] rev 9919
[etwist] use more specific REQUEST_ENTITY_TOO_LARGE instead of BAD_REQUEST
When a request body exceeds the configured limit, return 413 to the
client instead of a generic 400.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 08 Jul 2014 10:34:50 +0200] rev 9918
[entities, view] delete dead code
The auto_unwrap_bw_compat metaclass calls unwrap_adapter_compat, which
was removed in changeset 697a8181ba30 "remove 3.9 bw compat". So this
can't possibly work anymore, meaning we can get rid of it.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 04 Jul 2014 14:37:08 +0200] rev 9917
[book] stop talking about the hg `forest` extension
Julien Cristau <julien.cristau@logilab.fr> [Fri, 04 Jul 2014 14:28:26 +0200] rev 9916
[book] update sections about dependencies
This is probably incomplete, but it's a start.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Jul 2014 16:24:17 +0200] rev 9915
[web/component] move unicode() call around
Makes Aurélien happier.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 23 Jul 2014 12:07:50 +0200] rev 9914
[web/js] replace callAddOrDeleteThenReload with more generic callAjaxFuncThenReload
That's going to be a more useful replacement for callUserCallbackThenReload.
Closes #4178566.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Jul 2014 17:45:38 +0200] rev 9913
[hooks/syncsession] try to remove cnx vs session confusion
Julien Cristau <julien.cristau@logilab.fr> [Tue, 22 Jul 2014 17:22:23 +0200] rev 9912
Fix Binary.__eq__ (closes #4172701)
Due to a typo we always returned true, which was unhelpful.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 16:35:02 +0200] rev 9911
[dataimport] stop ignoring errors on flush
That can only result in database corruption.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 16:31:34 +0200] rev 9910
[dataimport] don't commit on flush
Changeset 26cdfc6dd6f8 introduced this confusion for no apparent reason,
and it doesn't make much sense.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 15:35:28 +0200] rev 9909
[test] Add test for dataimport's RQLObjectStore
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 16:00:21 +0200] rev 9908
[dataimport] Stop swallowing errors from commit/flush
Silent DB corruption is not OK.
Also drop comment from ObjectStore.commit that I don't understand.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 15:59:34 +0200] rev 9907
[dataimport] Update RQLObjectStore to Connection API
Take a connection instead of a session. Don't play games with set_cnxset.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 15:51:58 +0200] rev 9906
[dataimport] remove _rql heresy
1) ObjectStore knows nothing about rql, it just drops it on the floor
2) RQLObjectStore has a session, it can run rql that way
3) setting an object's "_rql" attribute is not a reasonable user-facing
interface
Also drop _commit attribute from base ObjectStore, it doesn't use it.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 09 Jul 2014 15:40:50 +0200] rev 9905
[dataimport] remove dead code
The only caller of ObjectStore._put is ObjectStore.create_entity, which
RQLObjectStore overrides (and doesn't call up).
Alain Leufroy <alain.leufroy@logilab.fr> [Tue, 03 Jun 2014 12:41:06 +0200] rev 9904
[dataimport] do not use sys.exit() to raise missing argument error
Related to #3845572
Alain Leufroy <alain.leufroy@logilab.fr> [Mon, 02 Jun 2014 17:51:45 +0200] rev 9903
[dataimport] _create_copyfrom_buffer: add the tests
Related to #3845572
Alain Leufroy <alain.leufroy@logilab.fr> [Mon, 02 Jun 2014 15:53:09 +0200] rev 9902
[dataimport] _create_copyfrom_buffer: do not ignore columns if data is a list
Related to #3845572
Alain Leufroy <alain.leufroy@logilab.fr> [Mon, 02 Jun 2014 17:52:43 +0200] rev 9901
[dataimport] _create_copyfrom_buffer: fix datetime converter + add time converter
Include second and microsecond in the output instead of dropping them on the
floor. The time zone is not supported for now, though.
Related to #3845572
Alain Leufroy <alain.leufroy@logilab.fr> [Mon, 02 Jun 2014 15:45:35 +0200] rev 9900
[dataimport] _create_copyfrom_buffer: raise ValueError if conversion cannot be performed
If the conversion fails, there is no reason to continue execution. One should
notify the error.
Continuing after a misconverted data could corrupt the database.
Related to #3845572
Alain Leufroy <alain.leufroy@logilab.fr> [Mon, 02 Jun 2014 13:50:15 +0200] rev 9899
[dataimport] _create_copyfrom_buffer: fix separator check in string converter
The empty string is a valid replace_sep.
Related to #3845572
Alain Leufroy <alain.leufroy@logilab.fr> [Mon, 02 Jun 2014 13:50:15 +0200] rev 9898
[dataimport] _create_copyfrom_buffer: put converters into a list
Cleans up the code to avoid a succession of ifs.
Related to #3845572
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jul 2014 17:35:25 +0200] rev 9897
merge 3.19.3 into 3.20 branch
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jul 2014 16:44:44 +0200] rev 9896
Added tag cubicweb-version-3.19.3, cubicweb-debian-version-3.19.3-1, cubicweb-centos-version-3.19.3-1 for changeset 37f7c60f89f1
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jul 2014 16:16:53 +0200] rev 9895
[pkg] prepare 3.19.3
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jul 2014 16:14:58 +0200] rev 9894
merge from 3.18 branch
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jul 2014 16:11:41 +0200] rev 9893
merge 3.17.16 into 3.18 branch
Rémi Cardona <remi.cardona@logilab.fr> [Thu, 17 Jul 2014 11:08:56 +0200] rev 9892
Remove uses of logilab.common.compat.{all,any}
They're just aliases to the builtin ones on python 2.5+. If anyone needs
convincing:
>>> from logilab.common import compat
>>> compat.any
<built-in function any>
>>> compat.all
<built-in function all>
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 09 Jul 2014 15:44:09 +0200] rev 9891
remove references to global environment variable APYCOT_ROOT
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Jul 2014 11:37:57 +0200] rev 9890
Add warning messages when enabling remote pickle-based repository access
Warn when starting a pyro or zmq-only repo, or when one of these access
methods is enabled. Closes #2919295
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jul 2014 12:23:01 +0200] rev 9889
[web] Fix expiry of anonymous sessions (closes #4154479)
Things like:
try:
foo
except:
bar
else:
baz
doesn't work very well if you expect baz to run even in the exception
case. Plus, session.cnx.check() is a dbapi remnant, so drop it and just
look at session.mtime.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 16 Jul 2014 17:20:55 +0200] rev 9888
[hooks/syncschema] avoid altering a dropped table
If the constraint's rdef is being removed, CWConstraintDelOp doesn't
need to do anything. Otherwise it may try to alter a removed
table/column. Closes #4154549
Florent Cayré <florent.cayre@logilab.fr> [Thu, 12 Jun 2014 09:59:55 +0200] rev 9887
[js] fix name error
Alain Leufroy <alain.leufroy@logilab.fr> [Tue, 03 Jun 2014 12:37:54 +0200] rev 9886
[devtools] improve error message when postgresql tools are missing
By default in at least Debian, some pg tools are not present in the
PATH. Or they may not be installed. But the tests tools expects them
to be in the PATH, and give an unhelpful 'No such file or directory'
backtrace if they're not found. To help devs using the pg tests we
improve the error message.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 11 Jul 2014 17:13:32 +0200] rev 9885
[server] Replace non portable strftime formatter (closes #4132161)
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 12 Jun 2014 12:15:18 +0200] rev 9884
[web/request] use a picklable Counter object for tab index counters
Related to #1381328.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 15 Jul 2014 18:07:31 +0200] rev 9883
[web/auth] The auth retriever's authenticated() callback takes a session, not a cnx
We don't have a cnx at that point.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 11 Jul 2014 16:44:42 +0200] rev 9882
[test] Fix the query-log-file test
Testing this functionality in a CubicWebTC is awkward because the
wrapping happens in handle_request, which tests basically bypass (they
call core_handle directly, and do their own magic for linking the
request with a cnx). The test method worked when ran on its own, but
not together with the rest of the test class. So use a CubicWebServerTC
instead, which goes through the whole stack.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 11 Jul 2014 13:48:07 +0200] rev 9881
[doc/book] spelling fixes in security tutorial
Julien Cristau <julien.cristau@logilab.fr> [Fri, 11 Jul 2014 13:15:11 +0200] rev 9880
[doc/book] spelling fixes in "testing" chapter
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 16:54:31 +0200] rev 9879
[datafeed sources] finish the session -> cnx switch
Related to #3933480.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 06 Jun 2014 15:56:24 +0200] rev 9878
[doc/book] update examples, using the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 11 Jun 2014 17:20:18 +0200] rev 9877
[test/entities] use the new connection api
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Jul 2014 12:52:50 +0200] rev 9876
[web] restore query logging functionality (closes #3972561)
The query-log-file option stopped working when the web stack was moved
from dbapi to repoapi.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 17 Jun 2014 12:03:30 +0200] rev 9875
[cwctl] make cubicweb-ctl versions lighter (closes #4002158)
Set config.quick_start to avoid unnecessary appobjects and schema
loading.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 08 Jul 2014 14:02:43 +0200] rev 9874
Added tag cubicweb-version-3.17.16, cubicweb-debian-version-3.17.16-1, cubicweb-centos-version-3.17.16-1 for changeset a979d1594af6
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 23 Sep 2013 14:55:56 +0200] rev 9873
[forms] consider inline creation form information as linkto info. Closes #3161121
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 07 Jul 2014 19:28:30 +0200] rev 9872
[pkg] prepare 3.17.16
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 02 Jun 2014 12:37:52 +0200] rev 9871
[reledit] Fix reledit icons jumpiness (closes #4106867)
Introduce an "invisible" class (copied verbatim from Bootstrap) that
only sets the "visibility" property. "display: none" is the reason for
the whole jumpiness as it actually detaches the element from the
rendered layout. "visibility: hidden" only makes it transparent while
keeping its original box properties (width, height, etc).
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 02 Jun 2014 12:29:37 +0200] rev 9870
[views] Replace poorly named "invisible" class with "list-unstyled"
"li.invisible" actually means "hide bullet". Use a reasonable name
instead, such as bootstrap's "list-unstyled" class.
This patch also changes the DOM element the class is applied to.
"li.invisible" had to be enabled on every "li" tag, whereas the
"list-unstyled" class only needs to be applied to the parent "ul"
element.
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 02 Jun 2014 12:23:18 +0200] rev 9869
[views] a 'div' with 'display: inline' screams 'span'
(grafted from af6e3db801fcfbd6f562c4a7cfdc89f187042792)
Julien Cristau <julien.cristau@logilab.fr> [Fri, 04 Jul 2014 14:30:16 +0200] rev 9868
[pkg] remove simplejson dependency
We no longer use it, the stdlib's json module is fine.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 03 Jul 2014 12:18:34 +0200] rev 9867
Added tag cubicweb-version-3.19.2, cubicweb-debian-version-3.19.2-1, cubicweb-centos-version-3.19.2-1 for changeset 8ac2202866e7
Julien Cristau <julien.cristau@logilab.fr> [Thu, 03 Jul 2014 10:22:36 +0200] rev 9866
[pkg] Fix version number
Note to self: don't phase -p before coffee.
Julien Cristau <julien.cristau@logilab.fr> [Thu, 03 Jul 2014 10:01:58 +0200] rev 9865
[pkg] 3.19.2
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 06 Jun 2014 14:55:26 +0200] rev 9864
[webtests] finish to give all self.view(....) a req=req parameter
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 05 Jun 2014 16:30:58 +0200] rev 9863
[tests/syncsession] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 01 Jul 2014 12:44:04 +0200] rev 9862
[webtests/application] remove unused imports
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 05 Jun 2014 11:56:33 +0200] rev 9861
[webtests/application] .user(...) really wants a request object
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 15:46:16 +0200] rev 9860
[tests/datafeed] use the new connection api (a small leftover)
Test assertions get indented because of self.session -> scoped cnx.
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Jul 2014 18:19:47 +0200] rev 9859
[entitiestests/base] don't store an entity on the test case
Make do with an eid.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 05 Jun 2014 17:06:03 +0200] rev 9858
[entitiestests/base] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 15:21:18 +0200] rev 9857
[testlib] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 05 Jun 2014 11:56:19 +0200] rev 9856
[exttests/rest] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 14:04:40 +0200] rev 9855
[webtests/bookmarks] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 14:19:56 +0200] rev 9854
[hookstests/integrity] use the new connection api
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Jul 2014 18:01:16 +0200] rev 9853
[hookstests/base] use connections instead of web requests
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 14:55:07 +0200] rev 9852
[hookstests/base] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 14:54:53 +0200] rev 9851
[hookstests/syncschema] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Wed, 04 Jun 2014 13:28:24 +0200] rev 9850
[tests/rqlannotation,querier] use the new connection api
Julien Cristau <julien.cristau@logilab.fr> [Wed, 02 Jul 2014 17:31:54 +0200] rev 9849
[webtests/web] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 03 Jun 2014 14:55:02 +0200] rev 9848
[webtests/navigation] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 03 Jun 2014 14:45:32 +0200] rev 9847
[webtests/basetemplates] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr> [Thu, 05 Jun 2014 15:14:13 +0200] rev 9846
[webtests/basecontrollers] use the new connection api