view .hgtags @ 4212:5f2d496c633f

core: get rid of `pickle`: Use of `pickle` to serialise data was a technical legacy that was causing trouble to store in database, to update (if a class was serialised, a change could break update), and to security (pickle can lead to code execution). This patch remove all use of Pickle in favour in JSON, notably: - for caching data, a Pydantic model is now used instead - for SQLAlchemy model, the LegacyPickle is replaced by JSON serialisation - in XEP-0373 a class `PublicKeyMetadata` was serialised. New method `from_dict` and `to_dict` method have been implemented to do serialisation. - new methods to (de)serialise data can now be specified with Identity data types. It is notably used to (de)serialise `path` of avatars. A migration script has been created to convert data (for upgrade or downgrade), with special care for XEP-0373 case. Depending of size of database, this migration script can be long to run. rel 443
author Goffi <goffi@goffi.org>
date Fri, 23 Feb 2024 13:31:04 +0100
parents af09b5aaa5d7
children
line wrap: on
line source

d660d1e5cee410bf9ac15b89ceb93543bcff0a6f 0.0.2
b95550704b4f965c9dca5f6681186bf8a9b64074 0.0.3
b778622b87337785252d47d2b3c4fe3085a37ab4 0.1.0
53aa958a2d3d6451ae75610e3c6fb947d3d6f21b 0.1.1
cc2afb92ab93a4c6399ca9b6cdc5224878a57a24 0.2.0
df6b9b881f0e9f335483c986b00fd58f2ed6164a 0.3.0
12cfa23c6ab9235dddb2e8887eb0fe90fc98da75 0.4.0
f93e917be3f41a254a4612da22ed9fc5e0209f80 0.4.1
a090e5ee83c2c2d9d110c7516c3d74573426a97b 0.5.0
008c8ccd5dcc4c47578ee7190e6823186720c864 0.5.1
21e6d11615eaeb7e03bacf4eb53e5c3c5d54ce08 0.6.0
b075c5a576ef3ce628e30b0ce02bf00ec35a3c4c 0.6.1
eecd84a2530aacb3255f702cdab2010b39bb1851 0.7.0a1
eecd84a2530aacb3255f702cdab2010b39bb1851 0.7.0a1
0000000000000000000000000000000000000000 0.7.0a1
0000000000000000000000000000000000000000 0.7.0a1
534b264d63df0e6241395b26cfd994b9fee187f0 0.7.0a1
b42aa52d262106ee6743d0205830be9d837ebfa9 0.7.0a2
7d2d28564b3e8c540e7dfc38f0742cbd440f9013 0.7.0a3
1798d4ace296a95fa4081b2e84fa6c97b60a22e3 0.7.0a4
c6464685fcbbb368823919affca3fc16cb3c83c4 0.7.0b1
43e5e0dc8c609cbd1d814043a384a72bef16e55e 0.7.0b2
dbf24ba40396ec3f517f8f7855531d24d0ee701f 0.7.0b3
86bfdf73d24a7a1b7f56abdf5ca51552c6e41101 0.7.0b4
c7138e9132138f79ba66b0d65c45d45399f55a2b 0.7.0
efe2445b053c989c73d0f0462cf7543de9d67f1c v0.8.0b1
f97be63871e4187d6db5667fd0df264c64017655 v0.8.0