- 新增图像生成接口,支持试用、积分和自定义API Key模式 - 实现生成图片结果异步上传至MinIO存储,带重试机制 - 优化积分预扣除和异常退还逻辑,保障用户积分准确 - 添加获取生成历史记录接口,支持时间范围和分页 - 提供本地字典配置接口,支持模型、比例、提示模板和尺寸 - 实现图片批量上传接口,支持S3兼容对象存储 feat(admin): 增加管理员角色管理与权限分配接口 - 实现角色列表查询、角色创建、更新及删除功能 - 增加权限列表查询接口 - 实现用户角色分配接口,便于统一管理用户权限 - 增加系统字典增删查改接口,支持分类过滤和排序 - 权限控制全面覆盖管理接口,保证安全访问 feat(auth): 完善用户登录注册及权限相关接口与页面 - 实现手机号验证码发送及校验功能,保障注册安全 - 支持手机号注册、登录及退出接口,集成日志记录 - 增加修改密码功能,验证原密码后更新 - 提供动态导航菜单接口,基于权限展示不同菜单 - 实现管理界面路由及日志、角色、字典管理页面访问权限控制 - 添加系统日志查询接口,支持关键词和等级筛选 feat(app): 初始化Flask应用并配置蓝图与数据库 - 创建应用程序工厂,加载配置,初始化数据库和Redis客户端 - 注册认证、API及管理员蓝图,整合路由 - 根路由渲染主页模板 - 应用上下文中自动创建数据库表,保证运行环境准备完毕 feat(database): 提供数据库创建与迁移支持脚本 - 新增数据库创建脚本,支持自动检测是否已存在 - 添加数据库表初始化脚本,支持创建和删除所有表 - 实现RBAC权限初始化,包含基础权限和角色创建 - 新增字段手动修复脚本,添加用户API Key和积分字段 - 强制迁移脚本支持清理连接和修复表结构,初始化默认数据及角色分配 feat(config): 新增系统配置参数 - 配置数据库、Redis、Session和MinIO相关参数 - 添加AI接口地址及试用Key配置 - 集成阿里云短信服务配置及开发模式相关参数 feat(extensions): 初始化数据库、Redis和MinIO客户端 - 创建全局SQLAlchemy数据库实例和Redis客户端 - 配置基于boto3的MinIO兼容S3客户端 chore(logs): 添加示例系统日志文件 - 记录用户请求、验证码发送成功与失败的日志信息
444 lines
13 KiB
Plaintext
444 lines
13 KiB
Plaintext
Metadata-Version: 2.4
|
|
Name: propcache
|
|
Version: 0.4.1
|
|
Summary: Accelerated property cache
|
|
Home-page: https://github.com/aio-libs/propcache
|
|
Author: Andrew Svetlov
|
|
Author-email: andrew.svetlov@gmail.com
|
|
Maintainer: aiohttp team <team@aiohttp.org>
|
|
Maintainer-email: team@aiohttp.org
|
|
License: Apache-2.0
|
|
Project-URL: Chat: Matrix, https://matrix.to/#/#aio-libs:matrix.org
|
|
Project-URL: Chat: Matrix Space, https://matrix.to/#/#aio-libs-space:matrix.org
|
|
Project-URL: CI: GitHub Workflows, https://github.com/aio-libs/propcache/actions?query=branch:master
|
|
Project-URL: Code of Conduct, https://github.com/aio-libs/.github/blob/master/CODE_OF_CONDUCT.md
|
|
Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/propcache
|
|
Project-URL: Docs: Changelog, https://propcache.readthedocs.io/en/latest/changes/
|
|
Project-URL: Docs: RTD, https://propcache.readthedocs.io
|
|
Project-URL: GitHub: issues, https://github.com/aio-libs/propcache/issues
|
|
Project-URL: GitHub: repo, https://github.com/aio-libs/propcache
|
|
Keywords: cython,cext,propcache
|
|
Classifier: Development Status :: 5 - Production/Stable
|
|
Classifier: Intended Audience :: Developers
|
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
Classifier: Programming Language :: Cython
|
|
Classifier: Programming Language :: Python
|
|
Classifier: Programming Language :: Python :: 3
|
|
Classifier: Programming Language :: Python :: 3.9
|
|
Classifier: Programming Language :: Python :: 3.10
|
|
Classifier: Programming Language :: Python :: 3.11
|
|
Classifier: Programming Language :: Python :: 3.12
|
|
Classifier: Programming Language :: Python :: 3.13
|
|
Classifier: Programming Language :: Python :: 3.14
|
|
Classifier: Topic :: Internet :: WWW/HTTP
|
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
Requires-Python: >=3.9
|
|
Description-Content-Type: text/x-rst
|
|
License-File: LICENSE
|
|
License-File: NOTICE
|
|
Dynamic: license-file
|
|
|
|
propcache
|
|
=========
|
|
|
|
The module provides a fast implementation of cached properties for Python 3.9+.
|
|
|
|
.. image:: https://github.com/aio-libs/propcache/actions/workflows/ci-cd.yml/badge.svg
|
|
:target: https://github.com/aio-libs/propcache/actions?query=workflow%3ACI
|
|
:align: right
|
|
|
|
.. image:: https://codecov.io/gh/aio-libs/propcache/branch/master/graph/badge.svg
|
|
:target: https://codecov.io/gh/aio-libs/propcache
|
|
|
|
.. image:: https://badge.fury.io/py/propcache.svg
|
|
:target: https://badge.fury.io/py/propcache
|
|
|
|
|
|
.. image:: https://readthedocs.org/projects/propcache/badge/?version=latest
|
|
:target: https://propcache.readthedocs.io
|
|
|
|
|
|
.. image:: https://img.shields.io/pypi/pyversions/propcache.svg
|
|
:target: https://pypi.python.org/pypi/propcache
|
|
|
|
.. image:: https://img.shields.io/matrix/aio-libs:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat
|
|
:target: https://matrix.to/#/%23aio-libs:matrix.org
|
|
:alt: Matrix Room — #aio-libs:matrix.org
|
|
|
|
.. image:: https://img.shields.io/matrix/aio-libs-space:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs-space%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat
|
|
:target: https://matrix.to/#/%23aio-libs-space:matrix.org
|
|
:alt: Matrix Space — #aio-libs-space:matrix.org
|
|
|
|
Introduction
|
|
------------
|
|
|
|
The API is designed to be nearly identical to the built-in ``functools.cached_property`` class,
|
|
except for the additional ``under_cached_property`` class which uses ``self._cache``
|
|
instead of ``self.__dict__`` to store the cached values and prevents ``__set__`` from being called.
|
|
|
|
For full documentation please read https://propcache.readthedocs.io.
|
|
|
|
Installation
|
|
------------
|
|
|
|
::
|
|
|
|
$ pip install propcache
|
|
|
|
The library is Python 3 only!
|
|
|
|
PyPI contains binary wheels for Linux, Windows and MacOS. If you want to install
|
|
``propcache`` on another operating system where wheels are not provided,
|
|
the the tarball will be used to compile the library from
|
|
the source code. It requires a C compiler and and Python headers installed.
|
|
|
|
To skip the compilation you must explicitly opt-in by using a PEP 517
|
|
configuration setting ``pure-python``, or setting the ``PROPCACHE_NO_EXTENSIONS``
|
|
environment variable to a non-empty value, e.g.:
|
|
|
|
.. code-block:: console
|
|
|
|
$ pip install propcache --config-settings=pure-python=false
|
|
|
|
Please note that the pure-Python (uncompiled) version is much slower. However,
|
|
PyPy always uses a pure-Python implementation, and, as such, it is unaffected
|
|
by this variable.
|
|
|
|
|
|
API documentation
|
|
------------------
|
|
|
|
The documentation is located at https://propcache.readthedocs.io.
|
|
|
|
Source code
|
|
-----------
|
|
|
|
The project is hosted on GitHub_
|
|
|
|
Please file an issue on the `bug tracker
|
|
<https://github.com/aio-libs/propcache/issues>`_ if you have found a bug
|
|
or have some suggestion in order to improve the library.
|
|
|
|
Discussion list
|
|
---------------
|
|
|
|
*aio-libs* google group: https://groups.google.com/forum/#!forum/aio-libs
|
|
|
|
Feel free to post your questions and ideas here.
|
|
|
|
|
|
Authors and License
|
|
-------------------
|
|
|
|
The ``propcache`` package is derived from ``yarl`` which is written by Andrew Svetlov.
|
|
|
|
It's *Apache 2* licensed and freely available.
|
|
|
|
|
|
.. _GitHub: https://github.com/aio-libs/propcache
|
|
|
|
=========
|
|
Changelog
|
|
=========
|
|
|
|
..
|
|
You should *NOT* be adding new change log entries to this file, this
|
|
file is managed by towncrier. You *may* edit previous change logs to
|
|
fix problems like typo corrections or such.
|
|
To add a new change log entry, please see
|
|
https://pip.pypa.io/en/latest/development/#adding-a-news-entry
|
|
we named the news folder "changes".
|
|
|
|
WARNING: Don't drop the next directive!
|
|
|
|
.. towncrier release notes start
|
|
|
|
0.4.1
|
|
=====
|
|
|
|
*(2025-10-08)*
|
|
|
|
|
|
Bug fixes
|
|
---------
|
|
|
|
- Fixed reference leak caused by ``Py_INCREF`` because Cython has its own reference counter systems -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#162 <https://github.com/aio-libs/propcache/issues/162>`__.
|
|
|
|
|
|
Contributor-facing changes
|
|
--------------------------
|
|
|
|
- Fixes the default value for the ``os``
|
|
parameter in ``reusable-build-wheel.yml``
|
|
to be ``ubuntu-latest`` instead of
|
|
``ubuntu``.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#155 <https://github.com/aio-libs/propcache/issues/155>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.4.0
|
|
=====
|
|
|
|
*(2025-10-04)*
|
|
|
|
|
|
Features
|
|
--------
|
|
|
|
- Optimized propcache by replacing sentinel ``object`` for checking if
|
|
the ``object`` is ``NULL`` and changed ``dict`` API for
|
|
Python C-API -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#121 <https://github.com/aio-libs/propcache/issues/121>`__.
|
|
|
|
|
|
Contributor-facing changes
|
|
--------------------------
|
|
|
|
- Builds have been added for arm64 Windows
|
|
wheels and the ``reusable-build-wheel.yml``
|
|
workflow has been modified to allow for
|
|
an OS value (``windows-11-arm``) which
|
|
does not include the ``-latest`` postfix
|
|
-- by `@finnagin <https://github.com/sponsors/finnagin>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#133 <https://github.com/aio-libs/propcache/issues/133>`__.
|
|
|
|
- Added CI for CPython 3.14 -- by `@kumaraditya303 <https://github.com/sponsors/kumaraditya303>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#140 <https://github.com/aio-libs/propcache/issues/140>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.3.2
|
|
=====
|
|
|
|
*(2025-06-09)*
|
|
|
|
|
|
Improved documentation
|
|
----------------------
|
|
|
|
- Fixed incorrect decorator usage in the ``~propcache.api.under_cached_property`` example code -- by `@meanmail <https://github.com/sponsors/meanmail>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#109 <https://github.com/aio-libs/propcache/issues/109>`__.
|
|
|
|
|
|
Packaging updates and notes for downstreams
|
|
-------------------------------------------
|
|
|
|
- Updated to use Cython 3.1 universally across the build path -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#117 <https://github.com/aio-libs/propcache/issues/117>`__.
|
|
|
|
- Made Cython line tracing opt-in via the ``with-cython-tracing`` build config setting -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
Previously, line tracing was enabled by default in ``pyproject.toml``, which caused build issues for some users and made wheels nearly twice as slow.
|
|
|
|
Now line tracing is only enabled when explicitly requested via ``pip install . --config-setting=with-cython-tracing=true`` or by setting the ``PROPCACHE_CYTHON_TRACING`` environment variable.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#118 <https://github.com/aio-libs/propcache/issues/118>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.3.1
|
|
=====
|
|
|
|
*(2025-03-25)*
|
|
|
|
|
|
Bug fixes
|
|
---------
|
|
|
|
- Improved typing annotations, fixing some type errors under correct usage
|
|
and improving typing robustness generally -- by `@Dreamsorcerer <https://github.com/sponsors/Dreamsorcerer>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#103 <https://github.com/aio-libs/propcache/issues/103>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.3.0
|
|
=====
|
|
|
|
*(2025-02-20)*
|
|
|
|
|
|
Features
|
|
--------
|
|
|
|
- Implemented support for the free-threaded build of CPython 3.13 -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#84 <https://github.com/aio-libs/propcache/issues/84>`__.
|
|
|
|
|
|
Packaging updates and notes for downstreams
|
|
-------------------------------------------
|
|
|
|
- Started building wheels for the free-threaded build of CPython 3.13 -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#84 <https://github.com/aio-libs/propcache/issues/84>`__.
|
|
|
|
|
|
Contributor-facing changes
|
|
--------------------------
|
|
|
|
- GitHub Actions CI/CD is now configured to manage caching pip-ecosystem
|
|
dependencies using `re-actors/cache-python-deps`_ -- an action by
|
|
`@webknjaz <https://github.com/sponsors/webknjaz>`__ that takes into account ABI stability and the exact
|
|
version of Python runtime.
|
|
|
|
.. _`re-actors/cache-python-deps`:
|
|
https://github.com/marketplace/actions/cache-python-deps
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#93 <https://github.com/aio-libs/propcache/issues/93>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.2.1
|
|
=====
|
|
|
|
*(2024-12-01)*
|
|
|
|
|
|
Bug fixes
|
|
---------
|
|
|
|
- Stopped implicitly allowing the use of Cython pre-release versions when
|
|
building the distribution package -- by `@ajsanchezsanz <https://github.com/sponsors/ajsanchezsanz>`__ and
|
|
`@markgreene74 <https://github.com/sponsors/markgreene74>`__.
|
|
|
|
*Related commits on GitHub:*
|
|
`64df0a6 <https://github.com/aio-libs/propcache/commit/64df0a6>`__.
|
|
|
|
- Fixed ``wrapped`` and ``func`` not being accessible in the Cython versions of ``propcache.api.cached_property`` and ``propcache.api.under_cached_property`` decorators -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#72 <https://github.com/aio-libs/propcache/issues/72>`__.
|
|
|
|
|
|
Removals and backward incompatible breaking changes
|
|
---------------------------------------------------
|
|
|
|
- Removed support for Python 3.8 as it has reached end of life -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#57 <https://github.com/aio-libs/propcache/issues/57>`__.
|
|
|
|
|
|
Packaging updates and notes for downstreams
|
|
-------------------------------------------
|
|
|
|
- Stopped implicitly allowing the use of Cython pre-release versions when
|
|
building the distribution package -- by `@ajsanchezsanz <https://github.com/sponsors/ajsanchezsanz>`__ and
|
|
`@markgreene74 <https://github.com/sponsors/markgreene74>`__.
|
|
|
|
*Related commits on GitHub:*
|
|
`64df0a6 <https://github.com/aio-libs/propcache/commit/64df0a6>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.2.0
|
|
=====
|
|
|
|
*(2024-10-07)*
|
|
|
|
|
|
Bug fixes
|
|
---------
|
|
|
|
- Fixed loading the C-extensions on Python 3.8 -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#26 <https://github.com/aio-libs/propcache/issues/26>`__.
|
|
|
|
|
|
Features
|
|
--------
|
|
|
|
- Improved typing for the ``propcache.api.under_cached_property`` decorator -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#38 <https://github.com/aio-libs/propcache/issues/38>`__.
|
|
|
|
|
|
Improved documentation
|
|
----------------------
|
|
|
|
- Added API documentation for the ``propcache.api.cached_property`` and ``propcache.api.under_cached_property`` decorators -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#16 <https://github.com/aio-libs/propcache/issues/16>`__.
|
|
|
|
|
|
Packaging updates and notes for downstreams
|
|
-------------------------------------------
|
|
|
|
- Moved ``propcache.api.under_cached_property`` and ``propcache.api.cached_property`` to `propcache.api` -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
Both decorators remain importable from the top-level package, however importing from `propcache.api` is now the recommended way to use them.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#19 <https://github.com/aio-libs/propcache/issues/19>`__, `#24 <https://github.com/aio-libs/propcache/issues/24>`__, `#32 <https://github.com/aio-libs/propcache/issues/32>`__.
|
|
|
|
- Converted project to use a src layout -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#22 <https://github.com/aio-libs/propcache/issues/22>`__, `#29 <https://github.com/aio-libs/propcache/issues/29>`__, `#37 <https://github.com/aio-libs/propcache/issues/37>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.1.0
|
|
=====
|
|
|
|
*(2024-10-03)*
|
|
|
|
|
|
Features
|
|
--------
|
|
|
|
- Added ``armv7l`` wheels -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
|
|
*Related issues and pull requests on GitHub:*
|
|
`#5 <https://github.com/aio-libs/propcache/issues/5>`__.
|
|
|
|
|
|
----
|
|
|
|
|
|
0.0.0
|
|
=====
|
|
|
|
*(2024-10-02)*
|
|
|
|
|
|
- Initial release.
|