pallets-eco / flask-session

Server side session extension for Flask
https://flask-session.readthedocs.io
BSD 3-Clause "New" or "Revised" License
488 stars 236 forks source link

0.7.0 #212

Closed Lxstr closed 3 months ago

Lxstr commented 4 months ago

Lots of changes and fixes. The main two being a refactor for maintainability and adding msgspec.

Added

-   Use msgpack for serialization, along with ``SESSION_SERIALIZATION_FORMAT`` to choose between ``'json'`` and ``'msgpack'``.
-   All sessions that are accessed or modified while using 0.7.0 will convert to msgspec. Once using 1.0.0, any sessions that are still in pickle will be cleared upon access.
-   Add time-to-live expiration for MongoDB.
-   Add retry for SQL based storage.
-   Add ``flask session_cleanup`` command and alternatively, ``SESSION_CLEANUP_N_REQUESTS`` for SQLAlchemy or future non-TTL backends.
-   Type hints.
-   Add logo and additional documentation.

Deprecated

Fixed


-   Prevent sid reuse on storage miss.
-   Abstraction to improve consistency between backends.
-   Enforce ``PERMANENT_SESSION_LIFETIME`` as expiration consistently for all backends.
-   Use Vary cookie header as per Flask.
-   Specifically include backend session interfaces in public API and document usage.