%global _empty_manifest_terminate_build 0 Name: python-sanic-session Version: 0.8.0 Release: 1 Summary: Provides server-backed sessions for Sanic using Redis, Memcache and more. License: MIT URL: http://github.com/subyraman/sanic_session Source0: https://mirrors.nju.edu.cn/pypi/web/packages/da/99/14e37b8a0141495d5141adbc62bb88c223a6fd53255b8ab623d20dc89c09/sanic_session-0.8.0.tar.gz BuildArch: noarch Requires: python3-sanic Requires: python3-ujson Requires: python3-aiomcache Requires: python3-aioredis Requires: python3-pytest Requires: python3-aiohttp Requires: python3-pytest-asyncio Requires: python3-pytest-mock Requires: python3-pytest-cov Requires: python3-wheel Requires: python3-sphinx Requires: python3-sphinxcontrib-fulltoc Requires: python3-flake8 Requires: python3-black Requires: python3-sanic-motor Requires: python3-pymongo Requires: python3-asyncio-redis %description # Sanic session management for humans [![ReadTheDocs](https://img.shields.io/readthedocs/sanic_session.svg)](https://sanic-session.readthedocs.io) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) [![PyPI version](https://img.shields.io/pypi/v/sanic_session.svg)](https://pypi.org/project/sanic_session/) :warning: Warning: This poject in Pull-Request-Only mode. I don't use Sanic anymore for any of my projects and will not make any changes by my own in foreseeable future. I recommend to use AIOHTTP since it more mature and have bigger adoption (I'm not judging by github stars only). Though I will accept pull requests from others if you want to see updates in the code. `sanic_session` is session management extension for [Sanic](http://sanic.readthedocs.io/) that integrates server-backed sessions with most convenient API. `sanic_session` provides a number of *session interfaces* for you to store a client's session data. The interfaces available right now are: * Redis (supports both drivers `aioredis` and `asyncio_redis`) * Memcache (via `aiomcache`) * Mongodb (via `sanic_motor` and `pymongo`) * In-Memory (suitable for testing and development environments) ## Installation Install with `pip` (there is other options for different drivers, check documentation): `pip install sanic_session` or if you prefer `Pipenv`: `pipenv install sanic_session` ## Documentation Documentation is available at [sanic-session.readthedocs.io](http://sanic-session.readthedocs.io/en/latest/). Also, make sure you read [OWASP's Session Management Cheat Sheet](https://www.owasp.org/index.php/Session_Management_Cheat_Sheet) for some really useful info on session management. ## Example A simple example uses the in-memory session interface. ```python from sanic import Sanic from sanic.response import text from sanic_session import Session, InMemorySessionInterface app = Sanic() session = Session(app, interface=InMemorySessionInterface()) @app.route("/") async def index(request): # interact with the session like a normal dict if not request.ctx.session.get('foo'): request.ctx.session['foo'] = 0 request.ctx.session['foo'] += 1 return text(request.ctx.session['foo']) if __name__ == "__main__": app.run(host="0.0.0.0", port=8000) ``` Examples of using redis and memcache backed sessions can be found in the documentation, under [Using the Interfaces](http://sanic-session.readthedocs.io/en/latest/using_the_interfaces.html).

— ⭐️ —

%package -n python3-sanic-session Summary: Provides server-backed sessions for Sanic using Redis, Memcache and more. Provides: python-sanic-session BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-sanic-session # Sanic session management for humans [![ReadTheDocs](https://img.shields.io/readthedocs/sanic_session.svg)](https://sanic-session.readthedocs.io) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) [![PyPI version](https://img.shields.io/pypi/v/sanic_session.svg)](https://pypi.org/project/sanic_session/) :warning: Warning: This poject in Pull-Request-Only mode. I don't use Sanic anymore for any of my projects and will not make any changes by my own in foreseeable future. I recommend to use AIOHTTP since it more mature and have bigger adoption (I'm not judging by github stars only). Though I will accept pull requests from others if you want to see updates in the code. `sanic_session` is session management extension for [Sanic](http://sanic.readthedocs.io/) that integrates server-backed sessions with most convenient API. `sanic_session` provides a number of *session interfaces* for you to store a client's session data. The interfaces available right now are: * Redis (supports both drivers `aioredis` and `asyncio_redis`) * Memcache (via `aiomcache`) * Mongodb (via `sanic_motor` and `pymongo`) * In-Memory (suitable for testing and development environments) ## Installation Install with `pip` (there is other options for different drivers, check documentation): `pip install sanic_session` or if you prefer `Pipenv`: `pipenv install sanic_session` ## Documentation Documentation is available at [sanic-session.readthedocs.io](http://sanic-session.readthedocs.io/en/latest/). Also, make sure you read [OWASP's Session Management Cheat Sheet](https://www.owasp.org/index.php/Session_Management_Cheat_Sheet) for some really useful info on session management. ## Example A simple example uses the in-memory session interface. ```python from sanic import Sanic from sanic.response import text from sanic_session import Session, InMemorySessionInterface app = Sanic() session = Session(app, interface=InMemorySessionInterface()) @app.route("/") async def index(request): # interact with the session like a normal dict if not request.ctx.session.get('foo'): request.ctx.session['foo'] = 0 request.ctx.session['foo'] += 1 return text(request.ctx.session['foo']) if __name__ == "__main__": app.run(host="0.0.0.0", port=8000) ``` Examples of using redis and memcache backed sessions can be found in the documentation, under [Using the Interfaces](http://sanic-session.readthedocs.io/en/latest/using_the_interfaces.html).

— ⭐️ —

%package help Summary: Development documents and examples for sanic-session Provides: python3-sanic-session-doc %description help # Sanic session management for humans [![ReadTheDocs](https://img.shields.io/readthedocs/sanic_session.svg)](https://sanic-session.readthedocs.io) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) [![PyPI version](https://img.shields.io/pypi/v/sanic_session.svg)](https://pypi.org/project/sanic_session/) :warning: Warning: This poject in Pull-Request-Only mode. I don't use Sanic anymore for any of my projects and will not make any changes by my own in foreseeable future. I recommend to use AIOHTTP since it more mature and have bigger adoption (I'm not judging by github stars only). Though I will accept pull requests from others if you want to see updates in the code. `sanic_session` is session management extension for [Sanic](http://sanic.readthedocs.io/) that integrates server-backed sessions with most convenient API. `sanic_session` provides a number of *session interfaces* for you to store a client's session data. The interfaces available right now are: * Redis (supports both drivers `aioredis` and `asyncio_redis`) * Memcache (via `aiomcache`) * Mongodb (via `sanic_motor` and `pymongo`) * In-Memory (suitable for testing and development environments) ## Installation Install with `pip` (there is other options for different drivers, check documentation): `pip install sanic_session` or if you prefer `Pipenv`: `pipenv install sanic_session` ## Documentation Documentation is available at [sanic-session.readthedocs.io](http://sanic-session.readthedocs.io/en/latest/). Also, make sure you read [OWASP's Session Management Cheat Sheet](https://www.owasp.org/index.php/Session_Management_Cheat_Sheet) for some really useful info on session management. ## Example A simple example uses the in-memory session interface. ```python from sanic import Sanic from sanic.response import text from sanic_session import Session, InMemorySessionInterface app = Sanic() session = Session(app, interface=InMemorySessionInterface()) @app.route("/") async def index(request): # interact with the session like a normal dict if not request.ctx.session.get('foo'): request.ctx.session['foo'] = 0 request.ctx.session['foo'] += 1 return text(request.ctx.session['foo']) if __name__ == "__main__": app.run(host="0.0.0.0", port=8000) ``` Examples of using redis and memcache backed sessions can be found in the documentation, under [Using the Interfaces](http://sanic-session.readthedocs.io/en/latest/using_the_interfaces.html).

— ⭐️ —

%prep %autosetup -n sanic-session-0.8.0 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-sanic-session -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Sun Apr 23 2023 Python_Bot - 0.8.0-1 - Package Spec generated