CubicWeb Monthly news July-December 2024
July to December activity report
Usage of cubicweb-api
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
param can now be provided when creating a Client
instance
to define the authentication provider. @cubicweb/client
provided two mechanisms:
SignedRequestAuthenticator
allow to connect to a CubicWeb instance with thesignedrequest
cube by using aAuthToken
.CookieAuthenticator
uses 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 implicly add 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/.
cubicweb-api
dependencies upgrade
The api
dependencies have been upgraded making it incomaptible 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 of 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)