微服务API工具包
项目描述
Cliquet
Cliquet 是一个工具包,用于简化 HTTP 微服务的实现,例如数据驱动的 REST API。
变更日志
本文件描述了每个过去版本之间的更改。
3.1.5 (2016-05-17)
错误修复
防止浏览器在两次会话之间缓存服务器响应。(#593)
3.1.4 (2016-05-10)
错误修复
当启用 trailing_slash_redirect 时,将版本前缀重定向到 hello 页面。(#700)
修复使用 PostgreSQL 权限后端设置空权限列表时的崩溃(修复 Kinto/kinto#575)
修复查询字符串中 exclude/include 的值类型错误时的崩溃(修复 Kinto/kinto#587)
修复在使用 PostgreSQL 权限后端时提供重复的 principal 的权限时的崩溃(修复 #702)
3.1.3 (2016-04-29)
错误修复
修复从 <3.0.0 升级时 PostgreSQL 存储后端触发器的迁移。运行 migrate 命令将基本上重新创建它们(修复 Kinto/kinto#559)
文档
修复文档中的某些拼写错误(#696)
更新链接到 readthedocs(#697)
3.1.2 (2016-04-19)
错误修复
修复当记录以前存在具有相同 id 时创建安全请求(Kinto/kinto#512)
新功能
为缓存后端添加了 cache_prefix 设置。(#680)
3.1.1 (2016-04-05)
错误修复
允许使用 PostgreSQL 后端进行数值比较和排序。(#690)
3.1.0 (2016-03-07)
协议
添加了 __lbheartbeat__ 端点,用于负载均衡器成员资格测试。
新功能
默认控制台日志渲染器现在有颜色(#671)
错误修复
当请求头 If-None-Match: * 在 POST /collection 上发送时,不总是返回 412 错误(修复 #673)
内部更改
在初始化时删除一些导入以提高启动速度(#674)
3.0.0 (2016-02-26)
破坏性更改
在执行 ResourceChanged 事件订阅者时不再吞咽错误。
订阅者仍然像以前一样在事务中执行。
即使事务最终回滚,订阅者也会执行。每个订阅者执行成功,或者都不成功。
因此,这些事件的订阅者应仅执行在事务回滚时可以反转的操作:最可能是数据库存储操作。
对于不可逆操作,请参阅新的 AfterResourceChanged 事件。
协议
仅在当前 URL 不存在时,客户端才会重定向到不带尾斜杠的 URL(#656)
现在可以指定嵌套对象的部分响应(#660,Kinto/kinto#445)。例如,/records?_fields=address.street。
列表响应现在默认按最后修改时间降序排序(#662,感谢 @ayusharma)
新功能
资源事件现在合并到批量请求中。当事务提交时,每个资源每个操作的每个事件都会发射(#634)
监控事件监听器执行时间(修复 #503)
添加了从每个用户中删除 principal 的方法
验证客户端是否可以接受 JSON 响应。(#667)
验证客户端是否只能发送 JSON 请求体。(#667)
添加了一个新的 AfterResourceChanged 事件,仅在数据库提交完成且成功时发送。
此事件的订阅者可能会失败,错误将被吞咽并记录。最终事务结果(或响应)无法更改。
由于提交成功且操作不会回滚,运行不可逆操作的订阅者应订阅此事件(如发送消息、删除文件或运行异步任务)。
跟踪每个身份验证子策略的执行时间(#639)
使用 –version 输出 cliquet 版本(#636)
错误修复
如果批子请求失败(#634),则不会发出ResourceChanged事件。如果整个批事务最终回滚,则仍然会发出。
修复了在#604中引入但从未执行过的PostgreSQL模式迁移。
修复了集合为空时PostgreSQL后端的时间戳(参考Kinto/kinto#433)。
修复了存储上的statsd初始化(#637)。
在删除时提供无效的最后修改值现在返回400(#665)。
在删除时提供过去的时间作为最后修改值现在遵循创建/更新的行为(#665)。
内部更改
将utils.current_service(request)移动到具象请求方法(参考#631)。
优化(并清理)了(非)认证的userid的使用(#641)。
在伪造请求上应用请求扩展(参考Kinto/kinto#438)。
删除自定义枚举(修复#645)。
更新了Pyramid配置链接(#654,感谢@ayusharma)。
为PostgreSQL中的读操作添加了缺少的只读参数(#653)。
将“Retry-After”移动到文档中的错误响应中(#657)。
改进了批端点文档关于事务的内容(参考#629)。
更新了Mac OS python安装命令(#661)。
添加了关于强制时间戳的详细信息(#665)。
在文档中添加了故障排除部分(感谢@ayusharma)。
2.15.0 (2016-01-27)
协议
在JSON响应中不再对斜杠(/)进行转义(#537)。
API功能现在可以暴露在根URL中的capabilities属性中(#628)。客户端可以依赖这一点来检测服务器上的可选功能(例如启用的插件)。
错误修复
批操作现在依赖于自定义视图响应(@viewconfig(context=Error))(修复mozilla-services/syncto#78,rel #629)。
修复了启动时监听器名称记录的问题(#626)。
新功能
用于在设置中配置身份验证的策略名称现在用于用户ID前缀和StatsD authn_type计数器。
2.14.0 (2016-01-15)
协议
可以使用查询字符串中的_fields=f1,f2来过滤GET请求中的字段(修复#384)。
新功能
添加了从查询字符串中过滤字段的能力(#601,感谢@MrChoclate)。
在启动时检查后端配置(修复Kinto/kinto#228)。
错误修复
在批请求中不要覆盖原始错误消息和详细信息(修复#617)。
修复了插件无法使用自定义请求方法的问题(#618)。
不要在日志中重复记录批子请求(修复#450,修复Kinto/kinto#264)。
内部更改
重构事件过滤以使用Pyramid订阅者谓词(修复#609)。
重构记录导入(修复#102)。
2.13.1 (2015-12-15)
错误修复
修复了python3中的hmac摘要(修复Kinto/kinto#288)。
文档
修复了RHEL包管理器命令中的拼写错误(#610,感谢@FooBarQuaxx)。
2.13.0 (2015-12-01)
错误修复
修复了通过设置强制限制时的分页结果中重复记录的问题(修复#588)。
新功能
在更新或创建记录时允许保留记录的last_modified字段。这对于远程集合的复制很有用(修复#604)。
内部更改
更新了文档以更好地解释如何处理版本控制(修复#603)。
2.12.0 (2015-11-27)
协议
根URL(hello视图)中的一些小变化。
添加了http_api_version(#600)。
将hello重命名为project_name。
将protocol_version重命名为cliquet_protocol_version。
将documentation重命名为project_docs。
将version重命名为project_version。
破坏性更改
当使用cliquet-fxa时,必须将设置multiauth.policy.fxa.use显式设置为cliquet_fxa.authentication.FxAOAuthAuthenticationPolicy。
根视图中的一些字段已被重命名(#600)。
错误修复
在设置组件(如authn/authz)之后包含插件,以便插件可以注册具有权限检查的视图。
从ResourceChanged事件中影响记录值的__permissions__中删除(#586)。
新功能
在监听器配置中添加了新选项,以指定过滤的操作和资源名称(#492,#555)。
添加监听资源读取操作的权限(默认禁用)(#493)
添加通过GET端点上的_fields参数请求部分响应的能力
内部
修复快速入门文档中的一些细节,因为后端不再是Redis默认的
由于当Python以-O运行时,前者可以被忽略,因此将assert的使用替换为显式异常(修复#592)
改进了关于权限的文档(#572,感谢@MrChoclate的反馈)
修复了在Python 3下构建文档的问题(#591)
2.11.0 (2015-11-17)
协议
_since和_before现在可以接受一个在引号内的整数值,就像它会在ETag响应头中返回的那样。
如果其中一个子请求失败,批处理请求现在会失败(#510)(请参阅关于事务的新功能)
破坏性更改
对于PostgreSQL后端,建议指定postgresql://。
新功能
事务现在覆盖整个请求/响应周期(#510,Kinto/kinto#194)。如果在请求处理过程中发生错误,则执行的所有操作都会回滚。注意:这仅在PostgreSQL后端上启用。换句话说,回滚对Redis或Memory等后端没有影响。
将protocol_version添加到hello页面,以告诉服务实现了哪个协议版本。(#324)
使用PostgreSQL时,为后端添加了新设置:*_pool_maxoverflow,*_pool_recycle,*_pool_timeout,以控制连接池的行为。
添加自定义池,支持一个限制等待连接的线程数的max_backlog参数(#509)
在ResourceChanged事件上添加了impacted_records属性(#501)。这也允许监听器对特定字段的更改做出反应,因为提供了记录的旧版本和新版本。
错误修复
修复了当插件包含时服务CORS未设置的问题
修复了如果记录的父项/ID是unicode时Redis后端崩溃的问题(修复#556)
修复了权限后端的主体默认未插入的问题(修复#573)
修复了Redis错误跟踪未记录的问题(修复#560)
修复了权限后端的主体默认未插入的问题。(修复#573)
在某些情况下维护分页偏移量,以防止分页循环。(#366)
内部更改
切换到SQLAlchemy以实现更智能的连接池。
在Loads上添加了一个简单的端到端测试,使用Cliquet示例应用程序。(修复#512)
切换到SQLAlchemy会话而不是原始连接和游标。(#510)
重构Redis客户端实例化以避免重复的默认值。(#567,#568)
在包含插件之前初始化Service类的属性。(#578)
添加了一个statsd_count辅助函数,以简化statsd的使用。(#574)
在缺少PostgreSQL依赖项时提及SQLAlchemy。(#545)
2.10.2 (2015-11-10)
错误修复
修复了与ProtectedResource共享记录的问题(修复#549)
修复了受保护资源上的通知(修复#548)
记录任何心跳异常(修复#559)
修复了如果记录的父项/ID是unicode时Redis后端崩溃的问题(修复#556)
修复了Redis客户端实例化(修复#564)
2.10.1 (2015-11-03)
错误修复
确保在只读模式下激活读取端点(GET,OPTIONS,HEAD)。(#539)
2.10.0 (2015-10-30)
协议
将userid属性移至hello视图中专门的user映射。
修复了503错误消息,除了不可用之外还提到了后端错误。
仅当匿名时设置缓存头(修复#449)
在批处理子请求中遵循重定向(修复#511)
在重新创建之前已删除的记录时,状态码现在是201(参考#530)。
新功能
在批处理子请求中遵循重定向(修复#511)
为服务以只读模式运行添加一个 readonly 设置。(#525)
如果没有设置客户端缓存,默认添加 Cache-Control: no-cache,以便强制客户端重新验证其缓存与服务器。(#522,参考 Kinto/kinto#231)
错误修复
修复在受保护资源中删除空集合时 PostgreSQL 错误(修复 #528)
修复当存在 tombstone 时存储后端中不使用 create() 方法进行 PUT 操作(修复 #530)
当记录被重新创建时删除 tombstone(修复 #518)
修复 PATCH 为空体时的崩溃(修复 #477,修复 #516)
修复 404 错误消息中的英文拼写错误(修复 #527)
内部更改
改进 __pycache__ 清理
2.9.0 (2015-10-27)
新功能
添加了 Pyramid 事件,当资源内容发生变化时触发。(#488)
添加 cliquet.includes 设置,允许在 Cliquet 初始化后加载插件(与 pyramid.includes 不同)(#504)
协议
从欢迎页面中移除损坏的 git 修订 commit 字段。(#495)。
破坏性更改
重命名内部后端类以实现更好的一致性。设置保持不变,但如果您在 Cliquet 应用程序中导入了后端类,则可能会损坏。(#491)
cliquet.schema 现已弃用,并已移动到 cliquet.resource 模块。(#505)
资源集合属性现已弃用。请使用 model 属性代替。(#506)
内部更改
重新设计 PostgreSQL 后端,以使用组合而不是继承来处理客户端代码。(#491)
在 PostgreSQL 模式中用条件创建代替 DROP INDEX。(#487,#496 感谢 @rodo)
文档和视图集代码中的小重构(#490,#498,#502)
添加 build-requirements,distclean 和 maintainer-clean Makefile 规则。
文档 JSON 补丁格式。(#484)
修复 412 错误中记录字段之间的权限问题。(#499)
2.8.2 (2015-10-22)
错误修复
修复设置具有列表值时的崩溃。(#481)
修复 Redis 权限后端中的崩溃(参考 Kinto/kinto#215)
内部更改
使用虚拟环境中的 tox 安装。(#486)
跳过 tox 中不可用的 Python 版本。(#486)
2.8.1 (2015-10-14)
公开设置,不带前缀,除非我们显式配置 public_settings 以公开它们(使用 cliquet. 或 project_name.)(参考 #476)
2.8.0 (2015-10-06)
破坏性更改
弃用的设置 cliquet.cache_pool_maxconn,cliquet.storage_pool_maxconn 和 cliquet.basic_auth_enabled 已被删除(参考 #448)
如果未定义 project_name,则带前缀的设置将不起作用。(使用 cliquet.initialize() 或使用 cliquet.project_name 配置变量)。
现在应在代码中不带前缀读取设置: request.registry.settings['max_duration'] 而不是 request.registry.settings['cliquet.max_duration']
新功能
添加缓存 CORS 头部。(参考 #466)
使用项目名称作为设置前缀(参考 #472)
内部更改
公开 statsd 客户端,以便使用 cliquet 的项目可以发送 statsd 指标。(参考 #465)
重构 BaseWebTest。(参考 #468)
移除硬编码的 CORS 原因,以便能够通过配置覆盖它。(参考 #467)
允许覆盖 405 响应错误以提供上下文(参考 #471)
允许覆盖 503 响应错误以提供上下文(参考 #473)
2.7.0 (2015-09-23)
破坏性更改
默认情况下不再实例化后端(曾经使用 Redis) (#461)
新功能
将 URL 末尾的斜杠重定向(修复 Kinto/kinto#112)
通过设置添加资源缓存控制头部(修复 #401)
添加请求 bound_data 属性,与子请求共享。例如,在批量请求之间共享上下文或缓存值很有用 (#459)
错误修复
修复 Werkzeug 配置文档和代码 (#451)
修复与 UTF-8 输出相关的日志编码错误 (#455)
如果没有配置,则不实例化后端 (修复 #386)
内部更改
对 Resource 和 Permission 后端之间的交互进行大规模重构 (#454)
使用资源上的 PUT 请求只从存储中检索记录一次 (#452)
对权限列建立索引,为共享集合带来巨大性能提升 (#458,参考 #354)
在文档中添加说明,提及贡献者列表 (#408)
在 PUT 请求中显式调用集合的 create_record (#460)
2.6.2 (2015-09-09)
错误修复
在子请求错误响应和对于非服务错误的情况下公开 CORS 头部 (#435)。
确保即使对于 id 也为 PostgreSQL 列比较传递一个元组 (#443)。
内部更改
使用 get_bound_permissions 回调来在集合列表中选择共享记录 (#444)。
2.6.1 (2015-09-08)
错误修复
确保在条件中为 PostgreSQL 传递一个元组 (#441)。
2.6.0 (2015-09-08)
协议
修复 API 中修改权限的 PATCH 的一致性 (#437,参考 Kinto/kinto#155)。现在,每个指定权限的主机列表现在被提供的列表所替换。
新功能
当用户没有 read 权限时,对 ProtectedResource 进行部分记录收集 (修复 #354)。Alice 现在可以获取 Bob 记录的列表,她有读取/写入权限。
内部更改
修复 Pypy 的 Wheel 打包 (修复 Kinto/kinto#177)
添加额外的测试以确保 400 错误返回 CORS 允许头部
2.5.0 (2015-09-04)
协议
现在可以使用多个值对集合记录进行过滤 (?in_status=1,2,3) (修复 #39)
现在可以使用多个值排除集合记录 (?exclude_status=1,2,3) (修复 mozilla-services/readinglist#68)
内部更改
我们可以从用户主体中获取集合中的可访问 objects_id (修复 #423)
2.4.3 (2015-08-26)
错误修复
修复 cliquet 的打包 (#430)
2.4.2 (2015-08-26)
内部更改
移除对 cliquet_docs 的符号链接,并将文档直接放在 cliquet_docs 内 (#426)
2.4.1 (2015-08-25)
内部更改
通过使用 cliquet_docs 在外部提供文档 (#413)
2.4.0 (2015-08-14)
协议
当请求带有 Authorization 头部的 hello 端点时,现在提供用户 ID (#319)
UUID 验证现在接受任何类型的 UUID,而不仅仅是 v4 (修复 #387)
将 _to 查询字符串参数重命名为 _before (前者现在已弃用)(#391)
新功能
Cliquet Service 类现在附加了默认的错误处理器 (#388)
允许使用 cliquet.error_info_link 设置配置错误响应中的信息链接 (#395)
存储后端现在有一个 purge_deleted() 来移除 墓碑 (#400)
错误修复
修复 304 响应中缺少 Backoff 头部 (修复 #416)
修复 Python3 编码错误 (#328)
如果资源没有定义任何模式或没有必填字段,则请求体中的 data 不是必需的 (修复 mozilla-services/kinto#63)
修复在 PATCH 中使用未知属性时没有验证错误 (修复 #374)
修复在 PATCH 中未验证权限 (修复 #375)
修复在未知 URL 的 404 响应中缺少 CORS 头部 (修复 #414)
内部更改
将主要文档部分重命名为 HTTP 协议 和 内部 (#394)
在文档中删除对存储的提及,以避免与 Kinto 项目混淆。
在时间戳文档中添加详细信息。
在 README 中提及在 Python Meetup Barcelona 的演讲
修复关于 postgres-contrib 依赖的文档 (#409)
将 cliquet.utils 添加到 内部 文档 (#407)
默认 id 生成器现在接受破折号和下划线 (#411)
2.3.1 (2015-07-15)
错误修复
修复在应用程序未从 Git 存储库部署时 hello 视图崩溃 (修复 #382)
将 Content-Length 头部公开给 Kinto.js (#390)
2.3 (2015-07-13)
新功能
在412错误响应中提供现有记录的详细信息(修复了mozilla-services/kinto#122)
在记录PUT/PATCH响应中添加ETag(修复了#352)
为权限后端添加StatsD计数器
错误修复
修复权限集合为空时权限后端的崩溃(修复了#368,#371)
修复记录ETag的值:仅在集合端点上提供集合时间戳(修复了#356)
默认资源不再接受有效负载中的
属性 默认资源不再需要根工厂(修复了#348)
默认资源不再击中权限后端
默认视图集已分割,不再处理权限(修复了#322)
视图上的权限现在仅在资源上设置
修复在没有任何字段更改时PATCH响应中缺失的
字段(修复了#371) 修复版本重定向期间的查询字符串丢失(修复了#364)
内部更改
在hello视图中记录公共设置列表(mozilla-services/kinto#133)
2.2.1 (2015-07-06)
错误修复
修复PATCH/resource上的权限处理(修复了#358)
2.2.0 (2015-07-02)
新功能
在hello视图中添加公共设置(#318)
错误修复
修复对不受支持的版本的重定向行为(修复了#341)
代码中的PostgreSQL依赖现在是完全可选的(#340)
防止在cliquet.initialize()中的default_settings参数覆盖最终设置(#343)
内部更改
修复有关PostgreSQL 9.4的安装文档(#338,感谢@elemoine!)
添加关于UTC和UTF-8的详细信息(#347,感谢@elemoine!)
在运行测试时删除UserWarning异常(#339,感谢@elemoine!)
将build_request和build_response移动到cliquet.utils(#344)
Pypy现在在Travis CI上进行了测试(#337)
2.1.0 (2015-06-26)
新功能
Cliquet不再需要认证策略来前缀用户ID(修复了#299)。
Pypy支持(感谢Balthazar Rouberol #325)
允许覆盖资源的父ID(#333)
错误修复
修复在OPTIONS请求上授权时的崩溃(#331)
修复在提供If-Match但没有If-None-Match时丢失的崩溃(#335)
内部更改
修复文档字符串和文档(#329)
2.0.0 (2015-06-16)
新功能
现在可以通过配置指定认证和授权策略,以及组查找函数(修复了#40,#265)
资源现在可以由细粒度权限保护(#288 via #291,#302)
次要
使用POST在集合上保留记录提供的id字段(#293 via #294)
现在可以为任何类型的认证策略提供认证类型的日志值。
现在可以从设置中禁用任何资源端点(#46 via #268)
错误修复
不要限制缓存值到字符串(#279)
当PUT创建记录时,HTTP状态码现在是201(#298,#300)
在utils.current_service()中添加安全检查(#316)
破坏性更改
cliquet.storage.postgresql现在需要PostgreSQL版本9.4,因为它现在依赖于JSONB。数据将通过migrate命令自动迁移。
将@crud装饰器替换为@register()(修复了#12,#268)
删除了Firefox Accounts代码,并将其作为外部包cliquet-fxa发布
将云存储存储后端从Cliquet中删除,并应在Kinto存储库中重新设计(mozilla-services/kinto#45)
API
资源端点现在期望有效负载具有data属性(#254,#287)
资源端点已从If-Modified-Since和If-Unmodified-Since切换到ETags(修复了#251 via #275),感谢@michielbdejong!
次要
existing 属性已从冲突错误响应移至通用的 details 属性内,该属性也用于列出验证错误。
现在 cliquet.basic_auth_enabled 已弃用。请使用 pyramid_multiauth 配置来指定身份验证策略。
身份验证类型的日志值现在是 authn_type(默认值为 FxAOAuth 或 BasicAuth)。
内部更改
Cliquet 资源代码已拆分为 Collection 和 Resource(修复 #243, #282)
在 Resource 和新概念 ViewSet 之间实现更清晰的职责分离 (#268)
快速入门文档改进 (#271, #312) 感谢 @N1k0 和 @brouberol!
API 版本控制文档改进 (#313)
贡献文档改进 (#306)
1.8.0 (2015-05-13)
破坏性更改
将 PostgreSQL 存储切换到 JSONB:需要 9.4+ (#104)
资源名称不再是 Python 属性(参见 #243)
在 POST 时返回现有记录而不是引发 409 错误(修复 #75)
cliquet.storage.postgresql 现在需要 PostgreSQL 9.4 版本,因为它现在依赖于 JSONB。数据将自动使用 migrate 命令迁移。
冲突错误响应的 existing 属性已移至通用的 details 属性内,该属性也用于列出验证错误。
心跳端点响应中的 database 属性已被重命名为 storage
新功能
存储记录的 ID 现在由 Python 管理(修复 #71, #208)
添加设置以禁用版本重定向 (#107,感谢 @hiromipaw)
为记录的 PATCH 添加响应行为头 (#234)
在错误响应中提供详细信息 (#233)
通过 cliquet.load_default_settings() 函数公开新的功能,以简化从默认值和环境变量中读取设置 (#264)
现在可以在启动时注册心跳回调函数 (#261)
错误修复
修复当元数据表刷新时的迁移行为 (#221)
修复在设置中禁用时后缀头出现的错误 (#238)
内部更改
测试必须达到 100% 的覆盖率才能通过
将原始错误消息添加到存储后端错误中
在文档中进行了大量改进 (#212, #225, #228, #229, #237, #246, #247, #248, #256, #266,感谢 Michiel De Jong)
在启动时迁移 Kinto 存储架构 (#218)
字段 id 和 last_modified 已不再属于资源架构的一部分 (#217, mozilla-services/readinlist#170)
删除了存储架构中的冗余索引 (#208,参考 #138)
禁用 Cornice 架构请求绑定 (#172)
不要隐藏 FxA 错误(修复 mozilla-services/readinglist#70)
将初始化函数移至专用模块(参考 #137)
删除了存储和缓存的自定义请求属性 (#245)
1.7.0 (2015-04-10)
破坏性更改
在部署期间必须运行 命令以进行数据库架构迁移
$ cliquet –ini production.ini migrate
已删除 Sentry 自定义代码。Sentry 日志现在通过日志配置管理,如文档中所述 在此。
新功能
添加 PostgreSQL 架构迁移系统 (#139)
在心跳视图中添加缓存和 OAuth (#184)
使用 NewRelic 添加监控功能 (#189)
使用 Werkzeug 添加性能分析功能 (#196)
在初始化时添加覆盖默认设置的功能 (#136)
为视图和身份验证添加更多 statsd 计数器 (#200)
添加内存缓存类 (#127)
错误修复
修复使用 PostgreSQL 后端进行集合 DELETE 时崩溃的问题
修复对象 Heka 日志格式的问题 (#199)
修复使用有序索引进行记录插入的性能问题 (#138)
修复 405 错误未以 JSON 格式显示 (#88)
修复禁用基本认证时的提示 (#182)
内部更改
改进开发环境设置文档(感谢 @hiromipaw)
弃用 cliquet.initialize_cliquet,重命名为 cliquet.initialize。
测试代码覆盖率现在为100%
在TravisCI上跳过不稳定的测试,原因是它们的PostgreSQL中设置 fsync = off。
在心跳视图中执行随机的创建和删除 (#202)
1.6.0 (2015-03-30)
新功能
将模式初始化从应用程序启动中分离出来,使用命令行工具。
cliquet --ini production.ini init
错误修复
修复连接池未被缓存和存储共享 (#176)
将默认连接池大小设置为10(而不是50) (#176)
如果PostgreSQL会话未使用UTC时区,则发出警告 (#177)
内部更改
弃用 cliquet.storage_pool_maxconn 和 cliquet.cache_pool_maxconn 设置(重命名为 cliquet.storage_pool_size 和 cliquet.cache_pool_size)
1.5.0 (2015-03-27)
新功能
测量认证策略的调用 (#167)
破坏性更改
将statsd度量指标前缀为 cliquet.statsd_prefix 或 cliquet.project_name (#162)
设置 http_scheme 已被 cliquet.http_scheme 替换,并引入了 cliquet.http_host ((#151, #166))
hello视图中的URL现在有版本前缀 (#165)
错误修复
如果服务在URL中有密钥,则修复Next-Page URL (#158)
修复一些PostgreSQL连接瓶颈 (#170)
内部更改
更新PyFxA以使其与gevent monkey patching兼容 (#168)
在更改时重新加载kinto (#158)
1.4.1 (2015-03-25)
错误修复
依赖Pyramid API构建分页Next-Url (#147)
1.4.0 (2015-03-24)
破坏性更改
将监控依赖项设置为可选 (#121)
错误修复
强制PostgreSQL会话时区为UTC (#122)
修复基本认证混淆和前缀 (#128)
确保 paginate_by 设置覆盖传递的 limit 参数 (#129)
修复Python3下的limit比较 (#143)
如果不需要,则不要使用JSON进行序列化 (#131)
修复经典日志器与unicode崩溃 (#142)
修复CloudStorage后端在远程返回500时崩溃 (#142)
修复CloudStorage在查询字符串中的反斜杠的行为 (#142)
修复python3.4段错误 (#142)
在Next-Page头中添加缺失的端口 (#147)
内部更改
再次使用ujson,它已在1.3.2版本中删除 (#132)
为as_epoch(last_modified)添加索引 (#130)。请将以下语句添加到SQL以进行迁移
ALTER FUNCTION as_epoch(TIMESTAMP) IMMUTABLE; CREATE INDEX idx_records_last_modified_epoch ON records(as_epoch(last_modified)); CREATE INDEX idx_deleted_last_modified_epoch ON deleted(as_epoch(last_modified));
防止为一个用户集合获取过多记录 (#130)
为心跳使用UPSERT (#141)
在安装文档中添加缺少的OpenSSL (#146)
改进基本认证的测试 (#128)
1.3.2 (2015-03-20)
撤销ujson的使用 (#132)
1.3.1 (2015-03-20)
错误修复
修复打包 (#118)
1.3.0 (2015-03-20)
新功能
添加PostgreSQL连接池,具有新的设置 cliquet.storage_pool_maxconn 和 cliquet.cache_pool_maxconn(默认值:50) (#112)
添加 StatsD 支持,通过 cliquet.statsd_url = udp://server:port 启用 (#114)
添加 Sentry 支持,通过 cliquet.sentry_url = http://user:pass@server/1 启用 (#110)
错误修复
修复FxA验证缓存未被使用 (#103)
修复心跳数据库检查 (#109)
修复如果没有请求体,则PATCH端点崩溃 (#115)
内部更改
切换到 ujson 以进行JSON反/序列化优化 (#108)
1.2.1 (2015-03-18)
修复有关BATCH查询字符串补丁中unicode字符的测试
移除postgresql后端的CREATE CAST
修复环境变量覆盖
1.2 (2015-03-18)
破坏性更改
cliquet.storage.postgresql 现在使用UUID作为记录主键 (#70)
设置 cliquet.session_backend 和 cliquet.session_url 分别重命名为 cliquet.cache_backend 和 cliquet.cache_url。
FxA用户ID不再被散列 (#82)
设置 cliquet.retry_after 被重命名为 cliquet.retry_after_seconds
OAuth2 重定向URL现在需要列在 fxa-oauth.webapp.authorized_domains 中(例如 *.mozilla.com)
默认情况下,批次请求限制为25个(#90)
新功能
每个设置都可以通过环境变量指定(例如,使用 CLIQUET_STORAGE_URL 的 cliquet.storage_url)
日志现在依赖于 structlog (#78)
日志输出可以配置为流式JSON(#78)
为PostgreSQL添加了新的缓存后端(#44)
文档在多个方面得到改进(#64,#86)
处理每个后端错误并返回503错误(#21)
OAuth2舞蹈状态验证现在在1小时后过期(#83)
错误修复
FxA OAuth视图错误现在为JSON格式(#67)
防止分页令牌格式错误时的错误(#72)
在集合的POST中修复了CORS公开头列表(#54)
内部更改
在 cliquet.resource.Resource 中添加了一个方法来覆盖已知字段(由Kinto要求)
每个设置都有一个默认值
默认情况下,每个端点都需要身份验证
会话后端重命名为缓存(#96)
1.1.4 (2015-03-03)
更新对PostgreSQL的deleted_field支持(#62)
1.1.3 (2015-03-03)
修复redis后端的include_deleted代码(#60)
改进update_record API(#61)
1.1.2 (2015-03-03)
修复打包以包含.sql文件。
1.1.1 (2015-03-03)
修复打包以包含.sql文件。
1.1 (2015-03-03)
新功能
支持使用since进行已删除数据的筛选(#51)
内部更改
移除对python 2.6的支持(#50)
将Resource.deleted_mark重命名为Resource.deleted_field(#51)
改进native_value(#56)
修复了Schema选项的继承(#55)
当setup.py更改时重新构建virtualenv
将storage.url重命名为cliquet.storage_url(#49)
重构了tests/support.py文件(#38)
1.0 (2015-03-02)
初始版本,从Mozilla Services Reading List项目提取(#1)
新功能
公开CORS头,以便客户端可以访问它们(#5)
Postgresql后端(#8)
将RedisSession用作PyFxA的缓存后端(#10)
通过collection_path的DELETE删除多个记录(#13)
端点的批次默认前缀(#14 / #16)
在/端点中使用应用程序版本(#22)
提升Basic Auth为适当的身份验证后端(#37)
内部更改
后端文档(#15)
用于过滤和排序的命名元组(#17)
Postgresql中的多个DELETE(#18)
改进Resource API(#29)
错误管理的重构(#41)
Schema的默认选项(#47)
贡献者
Alexis Metaireau <alexis@mozilla.com>
Andy McKay <amckay@mozilla.com>
Ayush Sharma <ayush.aceit@gmail.com>
Balthazar Rouberol <br@imap.cc>
Clément Villain <choclatefr@gmail.com>
Dan Phrawzty <phrawzty+github@gmail.com>
Éric Lemoine <eric.lemoine@gmail.com>
Ethan Glasser-Camp <ethan@betacantrips.com>
FooBarQuaxx
Greeshma <greeshmabalabadra@gmail.com>
Hiromipaw <silvia@nopressure.co.uk>
Lavish Aggarwal <lucky.lavish@gmail.com>
Mathieu Leplatre <mathieu@mozilla.com>
Michiel de Jong <michiel@unhosted.org>
Nicolas Perriault <nperriault@mozilla.com>
Rémy Hubscher <rhubscher@mozilla.com>
Rodolphe Quiédeville <rodolphe@quiedeville.org>
塔雷克·齐亚德 <tarek@mozilla.com>
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码发行版
编译发行版
cliquet-3.1.5.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fce4f064b8a070f2008f4243913a3eb338f9771ad5006466254092076e5cf49b |
|
MD5 | ae45dba88ab6ea62dca87b07ed09f0bc |
|
BLAKE2b-256 | df6b6084037d20ce1797d94f5d91b1ecd756b227ffd32bc1b2bc06193fe4fead |
cliquet-3.1.5-cp2.cp3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e1911db45ed62cbe9d1f33c5f2a917153d200f362eb50e0da4021335213ac52b |
|
MD5 | b594b2f213fdd1f3f7e19ee0c569fbc6 |
|
BLAKE2b-256 | d32cefd6fff304ce84b6800acd8f53604b416e78edff0cad17bb35805941ab67 |