cubicweb #11217958 session data handling (in web/views/autoform.py at least) is not friendly with redis [validation pending]

by doing things like (web/views/autoform.py +487):

pendings = req.session.data.setdefault(key, set())
pendings.add( (int(eidfrom), rel, int(eidto)) )

cw do modify a value inside the dictionnary holding session data, but when one uses pyramid-redis-session (for example) to store session data, these modifications of the values are not detected, thus not stored in the redis backend.

This is why for example the generic relation edition form is broken when using pyramid-redis-session.

We should fix this by never store a mutable type as session's data values (and we shoud only store json-serializable types).

priorityimportant
typebug
done in3.22.4
load left0.000
closed by#67373614e125 [web/session] make sure not to modify an inner value of session.data (closes #11217958)
patch[web/session] make sure not to modify an inner value of session.data (closes #11217958) [applied]