David Douard <david.douard@logilab.fr> [Thu, 05 Apr 2012 22:42:40 +0200] rev 8343
Fix a Python 2.5 regression introduced by previous commit
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 26 Mar 2012 12:11:48 +0200] rev 8342
[rql annotation] fix has_text_query detection (if coming from sub-query and if has_text on a column aliases. Closes #2275322
Florent Cayré <florent.cayre@gmail.com> [Thu, 05 Apr 2012 14:44:00 +0200] rev 8341
[etwist] fix static directory serving; closes #2174797
Sylvain Thénault <sylvain.thenault@logilab.fr> [Thu, 29 Mar 2012 14:20:41 +0200] rev 8340
[form renderer] refactor inline form renderer to ease overriding. Closes #2282662
Julien Cristau <julien.cristau@logilab.fr> [Wed, 04 Apr 2012 18:44:07 +0200] rev 8339
[devtools] fix bashism in xvfb-run.sh
bash's trap builtin accepts SIGUSR1, whereas dash complains. So use USR1 instead.
David Douard <david.douard@logilab.fr> [Wed, 04 Apr 2012 15:04:16 +0200] rev 8338
[devtools] fix xvfb-run.sh permissions (exec bit)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 20 Mar 2012 11:01:24 +0100] rev 8337
[form] add a new property telling if the form is being generated or posted. Closes #2262340
Katia Saurfelt <katia.saurfelt@logilab.fr> [Thu, 29 Mar 2012 14:25:51 +0200] rev 8336
[workflow] set default test/plain option for workflow default comment (closes #993083)
Katia Saurfelt <katia.saurfelt@logilab.fr> [Thu, 29 Mar 2012 14:24:49 +0200] rev 8335
[js] get rid of `partial` function (closes #1972794)
Katia Saurfelt <katia.saurfelt@logilab.fr> [Wed, 21 Mar 2012 15:23:47 +0100] rev 8334
[css] change `h3` and `h4` styles(closes #893244)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 21 Mar 2012 18:33:12 +0100] rev 8333
querier: Improve error message when ERQLExpression fails on some entity (closes #2267081)
When an RQL variable is indeed "constant" (we know it's eid) ERQL expression are
not inserted but checked prior query execution. If the session have no read
access to the entity an `Unauthorized` exception is raised.
This changeset add a meaningfull message to this exception::
No read acces on "X" with eid 42.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Mon, 26 Mar 2012 12:13:40 +0200] rev 8332
[js] fix error in loadRemote docstring
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 28 Mar 2012 23:30:19 +0200] rev 8331
[doc] add missing section titles
Nicolas Chauvat <nicolas.chauvat@logilab.fr> [Wed, 28 Mar 2012 22:24:55 +0200] rev 8330
[doc] fix bad indentation
Aurelien Campeas <aurelien.campeas@logilab.fr> [Mon, 26 Mar 2012 13:29:27 +0200] rev 8329
[server/ldaputils] do not allow ldap.server_down to crash on us
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Mar 2012 11:50:34 +0100] rev 8328
Add missing with_statement import for python2.5 compat
Julien Cristau <julien.cristau@logilab.fr> [Thu, 22 Mar 2012 11:50:43 +0100] rev 8327
[devtools] make xvfb-run not wait 3s each time (closes #2265710)
Ask Xvfb to tell us when it's ready instead of unconditionally waiting 3
seconds.
Sync from
http://anonscm.debian.org/gitweb/?p=pkg-xorg/xserver/xorg-server.git;a=blob_plain;f=debian/local/xvfb-run;hb=HEAD
Katia Saurfelt <katia.saurfelt@logilab.fr> [Wed, 21 Mar 2012 11:08:31 +0100] rev 8326
[view] breadcrumbs layout broken with long elements (closes #1347486)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 20 Mar 2012 18:29:13 +0100] rev 8325
[static-file] return Unauthorized on blocked directory listing
This is more appropriate than 404 NOT FOUND
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 20 Mar 2012 18:28:24 +0100] rev 8324
[login redirect] only add postlogin_path argument when meaningful
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 19 Mar 2012 14:37:43 +0100] rev 8323
static-file: properly set/use cache header for static file (closes #2255013)
This changesets enables the standard http cache mechanism where the static
controller may reply "304 Not modified" based on `last-modified` in HTTP
response and `if-modified-since` in HTTP query. The last modified time is
computed using the file-system information.
The pre-existing logic using an `Expires` header to prevent client from sending
request stay in place. The new logic just prevents sending the file again if not
necessary.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 20 Mar 2012 18:25:06 +0100] rev 8322
[repository] move task manager instantiation outside repository.
Repository callers are in charge of providing a task manager.
The task manager is optional when the repository is not a server. This
part is not really expected to work well yet. But we aim to remove all task
management responsibilities from the Repository object.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 20 Mar 2012 18:24:46 +0100] rev 8321
[repository] split repo initialization from starting looping task (closes #2204047)
This separation highlights that two distinct operations are done. This is a step
towards a full distinction between repo, server and looping tasks
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 20 Mar 2012 18:24:35 +0100] rev 8320
[repo looping task] move looping task logic in a dedicated object (progress #2204047)
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 20 Mar 2012 18:20:20 +0100] rev 8319
[manage / default index views] discard login/logout templates
Pierre-Yves David <pierre-yves.david@logilab.fr> [Fri, 16 Mar 2012 14:23:58 +0100] rev 8318
devtools-request: transmit the headers keyword argument to the request class
Otherwise the headers kwargs end up in the form.
This is very useful for testing publish logic related to http header (as cache).
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 16 Mar 2012 17:59:48 +0100] rev 8317
[security] use a stronger encryption algorythm for password, keeping bw compat
Administrator should ask their users to reenter new password so they
benefit from the new encryption.
Also, new encryption is cross-platform compatible, eg you may now move an instance
from windows to linux painlessly
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Thu, 15 Mar 2012 17:59:27 +0100] rev 8316
[cache] factorize _validate_cache() logic implemented in wsgi and twisted handlers
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 15 Mar 2012 17:57:40 +0100] rev 8315
[fake-request] support `http_method()`
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 15 Mar 2012 18:34:59 +0100] rev 8314
[Web-Request] Use rich header (closes #2204164)
Unify header management. All web request use the Headers class now (imported
from twisted). Code dedicated to header management have been merged into the
base WebRequest class.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 15 Mar 2012 17:54:40 +0100] rev 8313
http-header: support __contains__ in Headers
You can now use::
>>> 'expires" in headers
True
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 15 Mar 2012 17:48:20 +0100] rev 8312
[web] Move request handling logic into cubicweb application. (closes #2200684)
We improve http status handling in the process:
``application.publish`` have been renamed to ``application.handle`` to better
reflect it's roles.
The request object gain a status_out attribute to convey the HTTP status of the
response.
WSGI and etwist code have been updated.
Exception gain status attribute
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 15 Mar 2012 17:42:31 +0100] rev 8311
[login] split authentication logic from post authentication logic (closes #2200755)
* The Session manager is now only in charge of providing a valid session.
* LoginControllers are now used in all case but wrong credential.
* The LoginControllers are in charge of redirecting the user to the page wanted
to see in the first place, expected to see.
* The login form is now always submitted to the login controller with an extra
argument pointing to the url we should redirect too after successful
authentication.
The ``"log out first logic"`` logic on login controller is removed because:
1. Other web actor do not do that.
2. Removed code do not need to be reimplemented.
3. We can only get it to work again in a single case: use do a GET request on
http://www.my-cw-stuff.io/login
4. I do not see it's purpose.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 01 Mar 2012 12:08:35 +0100] rev 8310
[LoginForm] refactor to ease other implementation
An Abstract BaseLoginForm is created. It is intended to be used by cubes who
want to implement new login form. It gather common login form elements in
particular the form action.
This will ease redefinition of this form action in later commit.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 27 Feb 2012 15:24:14 +0100] rev 8309
[request] gather all base_url logic in a single place (closes #2200756)
* Handle ``https base-url`` in the core code: ``./req.py`` and ``web/request.py``
* Remove custom ``base_url`` handling if web request
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 15 Mar 2012 17:30:28 +0100] rev 8308
[http] drop use-request-subdomain feature (closes #2251986)
This feature do not have any user nowaday and lays in the path to WSGI.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Fri, 16 Mar 2012 10:29:15 +0100] rev 8307
backport stable
Anthony Truchet <anthony.truchet@logilab.fr> [Thu, 15 Mar 2012 14:26:12 +0100] rev 8306
[config, undo] Fix undo-support option migration
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 13 Mar 2012 15:27:30 +0100] rev 8305
Added tag cubicweb-debian-version-3.14.6-1 for changeset 75364c099490
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 13 Mar 2012 15:27:30 +0100] rev 8304
Added tag cubicweb-version-3.14.6 for changeset db021578232b
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 13 Mar 2012 14:21:11 +0100] rev 8303
3.14.6
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Mar 2012 14:20:28 +0100] rev 8302
[debian] add a watch file
Allows tools like uscan to find the tarball for new debian revisions.
Julien Cristau <julien.cristau@logilab.fr> [Tue, 13 Mar 2012 14:20:16 +0100] rev 8301
[uilib] don't print timedeltas between 0 and 23h as negative (closes #2236352)
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 07 Mar 2012 16:16:44 +0100] rev 8300
[storage/bfss] ensure bfss never remove a cw_edited item (closes #2236287)
When the <old value> == <new value> (not really and update but can happen), the
value was popped but never restored. The cw_edited attribut had wrong content
for a small time lapse.
Sylvain Thénault <sylvain.thenault@logilab.fr> [Tue, 13 Mar 2012 14:11:40 +0100] rev 8299
[datafeed xml parser] fix typo
Adrien Di Mascio <Adrien.DiMascio@logilab.fr> [Mon, 27 Feb 2012 17:02:31 +0100] rev 8298
[twisted] move out url logic from twisted (closes #2200593)
Data, fck and static file are now served by cubicweb controller by default.
Some hackish url rewriting is necessary to have them selected. This is necessary
because cubicweb does not selection controller on multi level path.
- 'Expires' header seems to conflict with Cache-Control set by HTTPCacheManger
(don't know yet why HTTPCacheManager is involved here)
mod_wsgi is now usable in simple cases (e.g. still requires persisten sessions).
Pierre-Yves David <pierre-yves.david@logilab.fr> [Thu, 01 Mar 2012 17:22:56 +0100] rev 8297
[cwconfig] improve assert error message.
Single tuple element are processed in a non trivial way.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 07 Mar 2012 16:09:55 +0100] rev 8296
rqlrewrite: remove element in rewritten when we remove them from the select (closes #2236985)
update _cleanup_inserted to avoid leaving rewritten variable behind when
removing a snipset.
insert_varmap_snippets was impacted too for unclear reason
---
Before
A KeyError was raised when:
* multiple snipset is to be inserted on a statement
* some *supported* snipset adds ambiguity (increase the number of solution)
* some *unsupported* snipset adds new variable
* The new variable require rewritting
::
File "/home/pyves/src/fcw/cubicweb/rqlrewrite.py", line 185, in rewrite
newsolutions = self.remove_ambiguities(snippets, newsolutions)
File "/home/pyves/src/fcw/cubicweb/rqlrewrite.py", line 436, in
remove_ambiguities
variantes = self.build_variantes(newsolutions)
File "/home/pyves/src/fcw/cubicweb/devtools/repotest.py", line 340, in
_build_variantes
variantes = _orig_build_variantes(self, newsolutions)
File "/home/pyves/src/fcw/cubicweb/rqlrewrite.py", line 470, in
build_variantes
variante.append( (key, sol[newvar]) )
KeyError: u'D'
This happen because the mechanism removing unsupported snipset does not remove
entry in ``self.rewritten`` when it removes entry from
``self.select.defined_vars``.
Iteration on ``self.rewritten`` then crash because values of ``rewritten`` are
expected to
be found in solution.