跳转到主要内容

asyncio REST API 资源数据库

项目描述

简介

https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat https://travis-ci.org/plone/guillotina.svg?branch=master Test Coverage Python Versions https://img.shields.io/pypi/v/guillotina.svg License Chat Docker Cloud Build Status

阅读详细文档

这是基于asyncio的下一代Guillotina服务器的实际工作项目。

依赖关系

  • Python >= 3.7

  • PostgreSQL >= 9.6

快速入门

我们使用pip

pip install guillotina

运行PostgreSQL

如果您没有可玩用的PostgreSQL服务器,您可以使用Docker运行一个。

通过运行以下命令下载并启动Docker容器

make run-postgres

运行服务器

要运行服务器

g

然后...

curl http://localhost:8080

或者,更好的是,使用 Postman 开始使用API。

您还可以通过访问 http://localhost:8080/+admin/ 使用内置的Web管理界面在Guillotina服务器中导航。

在Heroku上部署

更多信息 Guillotina-Heroku.

https://www.herokucdn.com/deploy/button.svg

开始开发

使用pip(需要Python > 3.7)

git clone git@github.com:plone/guillotina.git
cd guillotina
python3.7 -m venv .
./bin/pip install -r requirements.txt
./bin/pip install -r contrib-requirements.txt
./bin/pip install -e '.[test]'
./bin/pre-commit install

运行测试

我们使用pytest

./bin/pytest guillotina

以及测试覆盖率

./bin/pytest --cov=guillotina guillotina/

使用文件监视器...

./bin/ptw guillotina --runner=./bin/py.test

使用cockroach db运行测试

USE_COCKROACH=true ./bin/pytest guillotina

默认

默认root访问可以通过AUTHORIZATION头完成:Basic root:root

Docker

您还可以使用Docker运行Guillotina!

首先,运行PostgreSQL

docker run --rm \
    -e POSTGRES_DB=guillotina \
    -e POSTGRES_USER=guillotina \
    -p 127.0.0.1:5432:5432 \
    --name postgres \
    postgres:9.6

然后,运行Guillotina

docker run --rm -it \
    --link=postgres -p 127.0.0.1:8080:8080 \
    plone/guillotina:latest \
    g -c '{"databases": [{"db": {"storage": "postgresql", "dsn": "postgres://guillotina:@postgres/guillotina"}}], "root_user": {"password": "root"}}'

这假设您在当前工作目录中有一个config.yaml文件

聊天

加入我们,在https://gitter.im/plone/guillotina讨论Guillotina

变更日志

7.0.3 (2024-10-01)

  • 排序OrderedDicts时调用register和notify

  • 删除文件键时调用register和notify [nilbacardit26]

7.0.2 (2024-01-23)

  • 假释发布 [bloodbare]

7.0.1 (2024-01-23)

  • 能够使用schema.Time [nilbacardit26]

  • 特性:向工作流添加元数据信息

  • 修复:更新工作流词汇名称

  • 特性:更新工作流词汇标题属性以使用元数据 [rboixaderg]

7.0.0 (2023-12-06)

  • 重大更改:将sql_copy_from_where和jit参数传递给asyncpg.connection.ServerCapabilities,并将requirements中的asyncpg固定到0.29.0。停止支持3.7.0 Python [nilbacardit26]

6.4.5 (2023-11-28)

  • 修复:移动后更新索引全文 [rboixaderg]

  • 杂项:更新multidict依赖项 [rboixaderg]

6.4.4 (2023-11-20)

  • 从components/interfaces.py中删除implements导入 [nilbacardit26]

6.4.3 (2023-10-11)

  • 修复在复制资源时未检查ID是否有效 [masipcat]

  • 修复content.async_get()捕获与txn.get_child()无关的KeyError异常 [masipcat]

  • 依赖:用redis-py替换aioredis [masipcat]

  • 依赖:更新flake8,使其不依赖于‘importlib-metadata<5’ [masipcat]

  • 修复path__starts。如果搜索的上下文不是容器,则在解析查询的路径时添加一个斜杠,以避免获取以相同路径开始的上下文的结果。 [nilbacardit26]

  • 在注册用户时添加render_options。 [nilbacardit26]

  • 添加OrderedDict字段,并将@orderImages公开给图像的API以对字段的键进行排序 [nilbacardit26]

6.4.2 (2022-08-25)

  • 在Workflow实用程序中能够使用超级力量调用do_action [nilbacardit26]

6.4.1 (2022-07-27)

  • 修复构建查询,PG目录,忽略null和格式元组类型。 [rboixaderg]

6.4.0 (2022-04-12)

  • 修复当Redis连接中断时,PubSub实用程序陷入无限循环 [masipcat]

6.4.0rc3 (2022-03-16)

  • 修复Pillow依赖项 [bloodbare]

  • 重大更改:guillotina futures将不再设置txn。 [masipcat]

  • 修复@pytest.mark.app_settings修改了原始设置字典 [masipcat]

  • 修复邮件器实用程序中的先前更改 [masipcat]

  • 改进futures中的错误日志 [masipcat]

  • 文档:增强搜索端点文档 [ksuess]

  • 文档:添加有关catalog_max_results的信息 [ksuess]

  • 在EmailValidationUtility中添加一个名为render_options的字典参数,以传递自定义值到渲染的模板 [jotare]

6.4.0rc2 (2021-11-22)

  • 尚未更改。

6.4.0rc1 (2021-11-22)

  • 对新的TransactionConnectionContextManager的一些修复和改进 [masipcat]

  • 端口以下更改

  • 删除数据库事务策略支持

  • 尽可能不保留连接 [vangheem]

  • Black到21.10b0版本 [bloodbare]

  • 通过在email_validation实用程序中使用app_settings[“ttl_email_validation”]添加配置电子邮件验证ttl的可能性。默认为3660s。 [nilbacardit26]

  • 修复文档:创建具有id/names的组 [ksuess]

  • 文档:安装:修复重复行和链接到contrib/dbusers [jotare]

6.4.0rc0 (2021-10-20)

  • 添加对Python 3.10的支持 [masipcat]

  • 重新实现了IRedisUtility以适应aioredis v2.0的破坏性更改 [masipcat]

  • 从实用程序初始化中删除了参数“loop”(遵循Python 3.10更改) [masipcat]

  • 升级开发依赖项 [masipcat]

  • 修复通过SearchableText进行搜索 [frapell]

  • 修复词汇表国家代码AN

6.3.15 (2021-08-05)

  • 修复:在父MIMEMultipart中添加MIMEMultipart(‘alternative’)以附加消息,以便仅渲染HTML正文。 [rboixaderg]

6.3.14 (2021-08-04)

  • 特性:将MIMEMultipart ‘alternative’更改为‘mixed’。当使用‘alternative’时,Outlook和Thunderbird不会接收附件

  • 任务:修复版本 aioredis 1.3.1 [rboixaderg]

6.3.13 (2021-07-05)

  • 隐藏 Textline 字段以在获取时恢复被屏蔽的值 [bloodbare]

  • 修复 navigate_to() 在遍历非文件夹对象时引发 'AttributeError' 的崩溃 [masipcat]

6.3.12 (2021-07-01)

  • shell:导入 'app_settings'。修复拼写错误

  • 文档:修复示例应用程序和其他小修复 [jianaijun]

  • 特性:在 pgcatalog 中添加 null 和 not null 操作符,用于 int、float 和 timestamp 类型 [rboixaderg]

6.3.11 (2021-06-10)

  • 添加不是 null 操作符 Search pgcatalog

  • 修复按 int 和 float 排序 Search pgcatalog [rboixaderg]

您看到的是截断的变更日志。

您可以在变更日志文件中查看完整列表。

项目详情


发布历史 发布通知 | RSS 源

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

guillotina-7.0.3.tar.gz (7.3 MB 查看哈希值)

上传时间

由以下支持