Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 22 Mar 2013 18:27:34 +0100] rev 8766
[transaction] initialize hook control attribute in Transaction
There is no reason to not initialize them in __init__ time. this simplify the
transaction code.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 22 Mar 2013 18:34:04 +0100] rev 8765
[session] Move hook control constants out of the class
There is no reason for them to not be global. This will ease they use by
Transaction object.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 25 Mar 2013 14:20:10 +0100] rev 8764
[transaction] initialize transaction data and state related attribute.
There is not reason to not explicitly declare and initialize attribute in
Transaction.__init__. This change requires the introduction of a
Transaction.clear() method to get ride of some wicked ``AttributeError`` based
logic.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 22 Mar 2013 18:51:03 +0100] rev 8763
[transaction] handle ``mode`` default value in Transaction
The transaction mode is now explicitly passed at creation time and always read
from the Transaction object.
Note that there is a slight behavior change. The transaction mode is now set at
the creation of the transaction. Changes made to the default value have no
longer any effect on existing transaction.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 22 Mar 2013 17:47:45 +0100] rev 8762
[transaction] explicit Transaction cnxset attribute
The Transaction object have a lot more attribute that those previously declared
in __init__. They are just dynamically assigned in Session code.
This changeset explicit the ``cnxset`` and ``mode`` attribute declaration.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 22 Mar 2013 17:09:49 +0100] rev 8761
[server] rename TransactionData to Transaction
Transaction will become a full featured object.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 22 Mar 2013 19:31:21 +0100] rev 8760
[doc] update Session documentation
A major refactoring of Session/Transaction handling is commit. This is a good
occasion to improves the documention.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 21 Mar 2013 19:08:07 +0100] rev 8759
merge 3.16 fix in default
Julien Cristau <julien.cristau@logilab.fr> [Thu, 21 Mar 2013 16:52:13 +0100] rev 8758
[devtools] fix a couple issues with xvfb-run
xvfb-run didn't quite clean up correctly after itself, because:
- dash doesn't run EXIT traps on signals
- if we don't run the command in the background, a TERM handler doesn't run
until the command exits
Julien Cristau <julien.cristau@logilab.fr> [Thu, 21 Mar 2013 16:37:06 +0100] rev 8757
[devtools/qunit] don't open-code subprocess.Popen.terminate
Julien Cristau <julien.cristau@logilab.fr> [Thu, 21 Mar 2013 16:01:05 +0100] rev 8756
[devtools/qunit] get rid of unused variable
Alain Leufroy <alain.leufroy@logilab.fr> [Tue, 18 Oct 2011 16:55:16 +0200] rev 8755
[server] *init_repository* lookup the database instead of the schema to drop tables (closes #810743)
So, tables are dropped even if the schema was changed.
:note: if mssql, drop views before tables.
:note: because of table dependencies we try a second drop sequence
Arthur Lutz <arthur.lutz@logilab.fr> [Thu, 18 Oct 2012 15:52:05 +0200] rev 8754
[book] remove XXX to an old discussion about appengine
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 22 Feb 2013 12:20:59 +0100] rev 8753
[web publish] in case of error, ensure proper http status is set and Content-disposition header is reseted. Closes #2553066
Julien Cristau <julien.cristau@logilab.fr> [Tue, 12 Mar 2013 12:34:07 +0100] rev 8752
Add CubicWebRequestBase.content (closes #2742453)
This is the body of the HTTP request (stream)
David Douard <david.douard@logilab.fr> [Thu, 17 Jan 2013 14:55:07 +0100] rev 8751
add the match_http_method predicate (closes #2559932)
This aim at creating views which are selected on other HTTP methods
(PUT, DELETE, ...)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 21 Mar 2013 18:35:19 +0100] rev 8750
[pkg] the previous commit requires new feature in yams.
Alexandre Richardson <alexandre.richardson@logilab.fr> [Fri, 30 Nov 2012 16:43:36 +0100] rev 8749
add a command to compare db schema and file system schema (closes #464991)
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Tue, 12 Mar 2013 12:50:05 +0100] rev 8748
drop typed_eid() in favour of int() (closes #2742462)
typed_eid was introduced to abstract the eid type when running on Google AppEngine.
It is not used anymore and can be removed. Let's use int() instead.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Mar 2013 17:58:14 +0100] rev 8747
merge with stable
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 21 Mar 2013 18:13:31 +0100] rev 8746
3.15 is the new old stable
Arthur Lutz <arthur.lutz@logilab.fr> [Mon, 17 Sep 2012 14:39:29 +0200] rev 8745
[web] don't link to None in author box (when author has been deleted) (closes #2409855)
Julien Cristau <julien.cristau@logilab.fr> [Tue, 19 Mar 2013 18:20:57 +0100] rev 8744
dbapi: try to restore compatibility of the connect api with 3.15
A few issues here:
- urlparse('foo').scheme is '', not None
- cnxprops is an optional argument
Regression from 62213a34726e ("[db-api/configuration] simplify db-api
and configuration so that all the connection information is in the
repository url, closes #2521848")
Closes #2754322
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Mar 2013 17:40:25 +0100] rev 8743
3.16 is the new stable
After discussion with David Douard I'm merging 3.16.x branches in stable and
starting 3.17 feature on default.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 16:56:46 +0100] rev 8742
Added tag cubicweb-debian-version-3.15.10-1 for changeset feca12e4a618
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 16:56:45 +0100] rev 8741
Added tag cubicweb-version-3.15.10 for changeset 89bdb5444cd2
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 16:56:28 +0100] rev 8740
prepare 3.15.10
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 16:54:32 +0100] rev 8739
Added tag cubicweb-debian-version-3.16.1-1 for changeset 84fbcdc8021c
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 16:54:31 +0100] rev 8738
Added tag cubicweb-version-3.16.1 for changeset d95cbb7349f0
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 16:53:57 +0100] rev 8737
prepare 3.16.1
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 15:30:06 +0100] rev 8736
[views/primary] some inner sections should use the `limit` by default to avoid a denial of service (closes #2719110)
Today, it is possible to call .related and get a huge unlimited
database-dos-inducing resultset that will be nevertheless limited a
bit further in pure python in the `autolimited` view.
While we cannot completely avoid potential denial of services such as
these we mitigate the problem with the default ui settings: if the
inner vid is `autolimited`, then the relation result sets is computed
using the user-defined limit.
This change respects the semantics of the `autolimited` view and
shouldn't break anything.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 15:18:22 +0100] rev 8735
[entity] ensure the .related(entities=False) parameter is honored all the way down (closes #2755994)
As of today, such a call will always fill the relation cache by
calling .entities() on every single related rset entry.
As a consequence, the `limit` parameter handling also had to be fixed.
It was bogus in the following ways:
* not used in the related_rql, hence potentially huge database
requests, but also actually
* foolishly used in the .entities()-calling cache routine we now
bypass (this changeset ticket's main topic)
Now:
* we set a limit on the rql expression, and
* forbid caching if given a non-None limit (as we don't want to make
the cache handling code more complicated than it is already)
With this, entity.unrelated gets a better limit implementation (so the
code in related/unrelated is nice and symmetric)
Risk:
* _cw_relation_cache disappears completely, which is good, but this is
Python, so you never know ...
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 15:17:34 +0100] rev 8734
[test/web] fix invisibly bogus test (prepares #2755994)
The test was wrong but that was cancelled out by a cache effect and
fuzzy naming.
Wiping the entity caches restores sanity: the choices list are the
same before and after the SET.
Also field.choices uses entity.unrelated but always returns related +
unrelated elements.
Hence `choice` replaces `unrelated` where it makes sense.
AssertIn is used in place of AssertTrue.
Rémi Cardona <remi.cardona@logilab.fr> [Fri, 08 Mar 2013 11:03:28 +0100] rev 8733
[cwconfig] Fix exception handling when building the cube dependency graph
UnorderableGraph exceptions do not have a 'cycles' property. A simple
cast to str does the job.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 12:25:18 +0100] rev 8732
[merge] backport stable fixes
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 18 Mar 2013 16:38:57 +0100] rev 8731
[test/sobject] fix test regression
Was complaining:
- * updated comment #EID (#EID)
? ^^^^
+ * updated comment #EID (duh?)
? ^^^^
in sobjects/test/unittest_supervising.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 Mar 2013 18:36:49 +0100] rev 8730
[web/request] Prune extraneous 'pageid' from generated ajax URL parameters (closes #2758130)
If 'pageid' is given through extraparams, it is sent twice to the
browser. On the JS side, the final URL loadxhtml() will end up using
will have 'pageid' set twice which CubicWeb will readily accept as a
list.
Pruning this parameter makes sure it is exactly once.
Rémi Cardona <remi.cardona@logilab.fr> [Wed, 13 Mar 2013 19:23:22 +0100] rev 8729
[web/component] Use global variable to point to ajax controller (part of #2758254)
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 19 Mar 2013 12:24:40 +0100] rev 8728
[web] Use the new '/ajax' URL path to access the AjaxController (closes #2758254)
5a81fa526b30 took care of all the JS code, this patch cleans up the
remaining python bits.
Aurelien Campeas <aurelien.campeas@logilab.fr> [Tue, 19 Mar 2013 10:08:20 +0100] rev 8727
[devtools/httptest] fix syntax error introduced by ce5ae7b80d2c
Rémi Cardona <remi.cardona@logilab.fr> [Tue, 12 Mar 2013 19:24:43 +0100] rev 8726
[component] Fix URL generation for navigation component (closes #2464832)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 12 Mar 2013 12:08:22 +0100] rev 8725
merge with another default heads
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 12 Mar 2013 12:04:51 +0100] rev 8724
Merge stable into default (NON-TRIVIAL)
- dropping __future__ statement added by d2472948da9c
- added migration from 407acc41beb5 to migration file for 3.16.1
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Fri, 08 Feb 2013 18:36:00 +0100] rev 8723
maintain python2.5 compatibility
Julien Cristau <julien.cristau@logilab.fr> [Fri, 18 Jan 2013 11:36:21 +0100] rev 8722
[schema/workflow] one more typo fix
Also add proper migration.
Julien Cristau <julien.cristau@logilab.fr> [Fri, 22 Feb 2013 11:17:02 +0100] rev 8721
[devtools] add http_publish to CubicWebTC (closes #2565882)
Fakes a http request, without overriding the normal error handling.
Returns the request object so the caller can check for errors.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 18 Jan 2013 12:47:40 +0100] rev 8720
[testlib] url_publish should give url to the request and the rset returned by the path evaluator to ctrl_publish. Closes #2557468
Also, url_publish now accepts a `data` argument to simulate POST of values.
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Fri, 22 Feb 2013 19:36:40 +0100] rev 8719
[towards py3k] import reduce() from functools (part of #2711624)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 11 Mar 2013 18:37:01 +0100] rev 8718
merge stable fix into default
Sylvain Thénault <sylvain.thenault@logilab.fr> [Wed, 09 Jan 2013 18:37:48 +0100] rev 8717
[doc] document dbapi.Connection
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 08 Mar 2013 09:15:09 +0100] rev 8716
[c-c shell] fix command description (-P option is gone long ago)
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 11 Mar 2013 14:46:09 +0100] rev 8715
[hooks/syncschema] do not crash when adding a new entity type (closes #2741643)
The previous version assumed META_RTYPES provide relation definitions
for all entity types.
pwatteyne [Tue, 29 Jan 2013 16:57:44 +0100] rev 8714
[views/debug] Do not show all web sessions without CNX, just count them (closes #2602161)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 05 Mar 2013 15:37:37 +0100] rev 8713
[facets js] use $ instead of jQuery and other small cleanups
Julien Cristau <julien.cristau@logilab.fr> [Thu, 17 Jan 2013 15:42:09 +0100] rev 8712
[devtools/httptest] allow sending other types of requests besides GET
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 08 Mar 2013 18:43:42 +0100] rev 8711
merge with stable
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Mon, 04 Mar 2013 17:22:57 +0100] rev 8710
[ext/rest] fix docstring of rql_role()
Vincent Michel <vincent.michel@logilab.fr> [Fri, 08 Mar 2013 18:04:40 +0100] rev 8709
[web application] Fix missing self. in error_handler
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 18 Dec 2012 12:42:56 +0100] rev 8708
[ldapfeed] all options of a source should be in the same group, else you get AssertionError on c-c add-source. Closes #2538398
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 20 Feb 2013 16:13:21 +0100] rev 8707
[sources] fix classes that inherit from AbstractSource (closes #2718669)