Thu, 23 Oct 2014 13:51:13 +0200 [service] allow repo_stats for users
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.
Thu, 11 Sep 2014 15:17:08 +0200 [views] Escape class attribute value in CWGroup incontext 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
Thu, 25 Sep 2014 10:50:23 +0200 [devtools] use a specific test_db_id when disabling anon
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.
Wed, 19 Nov 2014 11:59:08 +0100 Restrict yams version
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
Mon, 20 Oct 2014 12:50:04 +0200 [facets] Honor 'start_unfolded' facet attribute (closes #4502799)
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)
Mon, 20 Oct 2014 12:23:13 +0200 [facets] Correctly look for inputs of type "hidden" (closes #4502768)
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.
Wed, 15 Oct 2014 18:23:54 +0200 [web] Cache results from 'i18n' ajax controller (closes #4487856)
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.
Wed, 15 Oct 2014 17:29:29 +0200 [web] There is no global noop(), use jQuery's instead (closes #4487832)
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)
Fri, 10 Oct 2014 09:18:28 +0200 [server] Add missing import of logilab.database
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.
Thu, 13 Nov 2014 10:37:44 +0100 [migration] hackish black magic to bootstrap addition of formula attr during migration
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.
Tue, 04 Nov 2014 14:10:02 +0100 [server] commit after serializing schema
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.
Thu, 28 Aug 2014 18:54:21 +0200 [book] fix docstrings to please sphinx
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).
Thu, 28 Aug 2014 18:52:41 +0200 [book] several fixes in the rst files
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
Thu, 28 Aug 2014 18:46:41 +0200 [book] activate the viewcode extension
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.
Thu, 28 Aug 2014 16:22:05 +0200 [book] new theme based on pyramid theme (closes #4291287)
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)
Wed, 30 Jul 2014 14:06:38 +0200 Remove unused lgc.interface imports and leftovers
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 30 Jul 2014 14:06:38 +0200] rev 10019
Remove unused lgc.interface imports and leftovers
Thu, 17 Jul 2014 14:40:28 +0200 [repository] provide a .new_session entry point
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.
Mon, 30 Jun 2014 10:49:53 +0200 [devtools/testlib] Use actual 'admin' user configuration values
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.
Thu, 25 Apr 2013 10:16:25 +0200 [forms] closes #2437859 - Detect and prevent concurrent edition of the same entity.
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...
Wed, 09 Apr 2014 16:58:58 +0200 [migration] make sure the repo knows about all constraint types
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
Mon, 07 Jul 2014 16:07:57 +0200 [migration] stop caching the mapping from constraint type name to eid
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.
Tue, 17 Jun 2014 17:53:31 +0200 [web/json] an empty rset is just fine for ejsonexport
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
Wed, 30 Apr 2014 21:04:14 +0200 [RichString] Add markdown support
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
Thu, 23 Oct 2014 14:57:02 +0200 [ldapfeed] Reduce default value for user-attrs-map option (closes #3824889)
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.
Tue, 29 Apr 2014 11:34:42 +0200 [serverctl] Ask for URL when adding a new source (closes #3824868)
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)
Mon, 28 Apr 2014 17:34:07 +0200 [serverctl] Ask for parser type when adding a new source (closes #3484231)
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.
Wed, 11 Jun 2014 10:57:28 +0200 [doc/3.20] more details on removed code
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
Fri, 02 May 2014 17:58:57 +0200 remove 3.11 bw compat
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 02 May 2014 17:58:57 +0200] rev 10007
remove 3.11 bw compat Closes #3799117.
Fri, 02 May 2014 17:57:37 +0200 remove most 3.10 bw compat
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.
Fri, 02 May 2014 17:41:11 +0200 remove leftover pre 3.9 deprecation warnings
Aurelien Campeas <aurelien.campeas@logilab.fr> [Fri, 02 May 2014 17:41:11 +0200] rev 10005
remove leftover pre 3.9 deprecation warnings
Tue, 22 Jul 2014 15:42:47 +0200 [utils] Remove function-in-the-middle call
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 22 Jul 2014 15:42:47 +0200] rev 10004
[utils] Remove function-in-the-middle call
Tue, 29 Jul 2014 15:45:04 +0200 [web] set Vary response header to "Accept-Language" when using content negotiation
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
Tue, 29 Jul 2014 16:27:11 +0200 [web/cors] don't overwrite other Vary headers
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.
Tue, 15 Jul 2014 16:07:59 +0200 [web] add support for HttpOnly cookie flag
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.
Fri, 17 Oct 2014 18:16:58 +0200 merge 3.19.5 into 3.20 branch
Julien Cristau <julien.cristau@logilab.fr> [Fri, 17 Oct 2014 18:16:58 +0200] rev 10000
merge 3.19.5 into 3.20 branch
Tue, 07 Oct 2014 10:06:24 +0200 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> [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
Mon, 06 Oct 2014 17:50:42 +0200 i18n update 3.19.5 centos/3.19.5-1 cubicweb-centos-version-3.19.5-1 cubicweb-debian-version-3.19.5-1 cubicweb-version-3.19.5 debian/3.19.5-1
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Oct 2014 17:50:42 +0200] rev 9998
i18n update 4 strings have disappeared.
Mon, 06 Oct 2014 17:32:49 +0200 [pkg] 3.19.5
Julien Cristau <julien.cristau@logilab.fr> [Mon, 06 Oct 2014 17:32:49 +0200] rev 9997
[pkg] 3.19.5
Mon, 15 Sep 2014 10:06:07 +0200 [server] hold connection to the db in tx_actions
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).
Mon, 15 Sep 2014 17:23:22 +0200 [wsgi] If multipart cannot parse the POST content, let it pass.
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
Mon, 01 Sep 2014 14:56:00 +0200 [devtools] Fix JS tests' HTML code
Rémi Cardona <remi.cardona@logilab.fr> [Mon, 01 Sep 2014 14:56:00 +0200] rev 9994
[devtools] Fix JS tests' HTML code
Mon, 01 Sep 2014 10:22:46 +0200 [devtools] "Keep" some temporary files/dirs around to help with debugging
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.
Fri, 01 Aug 2014 19:28:44 +0200 [devtools] Fix Firefox launcher in QUnitTestCase (closes #4294727)
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)
Thu, 25 Sep 2014 17:38:51 +0200 [devtools] allow cross-origin requests for qunit
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.
Thu, 25 Sep 2014 15:49:13 +0200 merge 3.19.4 in 3.20 branch
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Sep 2014 15:49:13 +0200] rev 9990
merge 3.19.4 in 3.20 branch
Mon, 15 Sep 2014 17:24:18 +0200 [cors] Fix CORS headers generators
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.
Tue, 09 Sep 2014 22:14:20 +0200 [wsgi] Fix posted files filename reading
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.
Tue, 23 Sep 2014 11:18:56 +0200 [pkg] Depend on Pillow instead of PIL
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.
Thu, 25 Sep 2014 14:42:00 +0200 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: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
Thu, 25 Sep 2014 14:24:20 +0200 [pkg] 3.19.4 3.19.4 centos/3.19.4-1 cubicweb-centos-version-3.19.4-1 cubicweb-debian-version-3.19.4-1 cubicweb-version-3.19.4 debian/3.19.4-1
Julien Cristau <julien.cristau@logilab.fr> [Thu, 25 Sep 2014 14:24:20 +0200] rev 9985
[pkg] 3.19.4
Wed, 24 Sep 2014 18:04:30 +0200 merge 3.18.6 into 3.19
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Sep 2014 18:04:30 +0200] rev 9984
merge 3.18.6 into 3.19
Wed, 24 Sep 2014 17:35:59 +0200 Added tag cubicweb-version-3.18.6, cubicweb-debian-version-3.18.6-1, cubicweb-centos-version-3.18.6-1 for changeset d91501356742 stable
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
Wed, 24 Sep 2014 15:08:44 +0200 [pkg] 3.18.6 stable cubicweb-centos-version-3.18.6-1 cubicweb-debian-version-3.18.6-1 cubicweb-version-3.18.6
Julien Cristau <julien.cristau@logilab.fr> [Wed, 24 Sep 2014 15:08:44 +0200] rev 9982
[pkg] 3.18.6
Tue, 28 Jan 2014 15:27:59 +0100 [hooks/security] allow edition of attributes with permissive permissions stable
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.
Tue, 29 Jul 2014 14:40:29 +0200 Almost backout afcd46716d6a which breaks _select_best raising an ambiguity exception in debug mode. stable
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.
Fri, 12 Sep 2014 09:49:01 +0200 [server] fix anonymous_user predicate in tests
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.
Mon, 28 Jul 2014 16:05:19 +0200 [entities] cw_rest_attr_info() should only consider required attributes (closes #3766717)
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.
Fri, 08 Aug 2014 13:05:07 +0200 [views] csvexport accept an empty rset (closes #4236928)
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.
Thu, 11 Sep 2014 16:43:20 +0200 [views] Display attributes in entity creation form based on "add" permission
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.
Thu, 18 Sep 2014 11:03:39 +0200 [datafeed] Commit after all deletions in datafeed parser
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.
(0) -10000 -3000 -1000 -300 -100 -60 +60 +100 +300 +1000 tip