🐛 Fixes
- fix: html escape client detail on email #2830
- fix: prevent disabled mailbox from being used #2831
- chore: change User.is_active conditions #2833
- fix: sanitize cc contact name #2836
🔧 Enhancements
- chore: session id rotation after api-to-cookie #2832
- feat: unify alt email checks #2835
- chore: serialize sessions in JSON #2841
Uncategorized
- feat: add exists and upload_raw helpers to app/s3.py #2824
- Script to migrate S3 objects from an old storage to a new one #2825
- feat: suppress subscription-end reminders for partner subscription users #2826
- Increase max line length #2822
- Properly store the sign-in count in the fido credentials. #2828
- Ensure proton link is made by the source user #2834
- chore: display files as text instead of html #2837
- fix(db): bind Session to the engine instead of a shared connection #2838
- fix: always hard-delete aliases when deleting a user #2839
- fix: keep user audit log traceable for deleted accounts #2840
- fix(ci): Prevent direct injection in the CI #2842
- Allow to write the sessin in pickle #2844