CubicWeb Monthly news July-December 2024
July to December activity report
Usage of api cube as backend for cwclientlib
The Python package cwclientlib was relying on the presence of the
rqlcontroller cube to work. It is now compatible with the
api cube!
Once the api cube is enabled on your instance, the only change to do
is to add request-mech = api in your cwclientlibrc file.
# ~/.config/cwclientlibrc
[example]
url = http://example.com/api
request-mech = api
token-id = xxx
secret = xxx
Custom authentication in @cubicweb/client
A authenticator parameter can now be provided when creating a Client instance
to define the authentication provider. @cubicweb/client provided two mechanisms:
SignedRequestAuthenticatorallows connecting to a CubicWeb instance with thesignedrequestcube by using aAuthToken.CookieAuthenticatoruses native cookies to the web browser to connect to an instance that is not necessarily on the same domain as the client.
When the client is on the same domain as the CubicWeb instance, there is no
need to provide a CookieAuthenticator as the browser automatically adds cookies to
same-origin requests.
Upgrade of the reference target platform
Until now, the CubicWeb's test suite was running on Debian bullseye which uses Python 3.9. We now officially target Debian Bookworm which provides Python 3.11 and PostgreSQL 15.
Removal of mercurial support in read the docs
On 2024-03-18 Readthedocs announced that Mercurial support would be dropped on 2024-06-03. Since then, we haven't done any change to our doc publication process and the doc on https://cubicweb.readthedocs.io/en/stable/ is now outdated. We are in the process of restoring the documentation on Readthedocs. Meanwhile, the latest version of the documentation is available here: https://cubicweb.pages.logilab.fr/cubicweb/.
api cube dependencies upgrade
The api dependencies have been upgraded making it incompatible with Python 3.9.
Other fixes
- When selecting a relation target using the “Search” option of the selector in an edition/creation form, the user is sent to a selection page and the fact that a search is being done was stored in the session. This lead to strange behaviors when navigating outside the selection page.
- RQL Entity methods were not called on some RQL queries when the column types are not known ahead of execution.
- In
cwclientlib, in some conditions multiple CSRF tokens could be created for a single domain but different paths. In this case cwclientlib now select the more appropriate one.
Coming soon
Cubicweb
- A new List function in RQL when using PostgreSQL (merge request)
- Make CubicWeb compatible with Python 3.12 (issue)
API
- Ability to refer to result set columns by name in transaction (merge request)
Documentation
- Mirror CubicWeb in a git repository to build documentation on Readthedocs (issue)