plone.restapi 是 Plone 的一个 RESTful 超媒体 API。
项目描述
简介
plone.restapi 是 Plone 的一个 RESTful 超媒体 API。
文档
入门
在 https://demo.plone.org/ 可以看到 Plone 6 与最新 plone.restapi 版本的实时演示。
以下是在网站根目录上进行的示例 GET 请求。
curl -i https://demo.plone.org/++api++ -H "Accept: application/json"
以下是一个创建新文档的示例 POST 请求。
curl -i -X POST https://demo.plone.org/++api++ \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
--data-raw '{"@type": "Document", "title": "My Document"}' \
--user admin:admin
安装
通过将其添加到您的 buildout 中来安装 plone.restapi。
[buildout]
# ...
eggs =
plone.restapi
…然后运行 bin/buildout。
Python / Plone 兼容性
plone.restapi 9 需要 Python 3,并且与 Plone 5.2 和 Plone 6.x 兼容。
plone.restapi 8 在 plone.restapi 9(2023 年 9 月)发布后进入了“维护”模式。我们不计划将该版本的功能回溯,并强烈建议升级到 plone.restapi 9。
不再支持已达到其 生命周期的结束 的 Python 版本,包括 Python 3.6 和 Python 3.7。
如果您正在运行 Python 2.7 或低于 5.2 的 Plone 版本,请使用 plone.restapi 7。
贡献
示例
plone.restapi 自其第一个 alpha 版本发布以来已在生产中使用。您可以在以下网站上看到其使用情况:
Zeelandia GmbH & Co. KG: https://www.zeelandia.de(由 kitconcept GmbH 提供)
VHS-Ehrenamtsportal: https://vhs-ehrenamtsportal.de(由 kitconcept GmbH 提供)
德国物理学会:https://www.dpg-physik.de(由 kitconcept GmbH 提供)
支持
如果您遇到问题,请通过 问题跟踪器 通知我们。
如果您需要专业支持,这里有一份 Plone 解决方案提供商的名单,他们在过去对 plone.restapi 做出了重大贡献。
kitconcept GmbH(德国)
4teamwork(瑞士)
CodeSyntax(西班牙)
许可证
该项目受 GPLv2 许可证许可。
贡献者
Timo Stollenwerk,原始作者
Thomas Buchberger
Lukas Graf
Víctor Fernández de Alba
Paul Roeland
Mikel Larreategi
Eric Brehault
Andreas Zeidler
Carsten Senger
Tom Gross
Roel Bruggink
Yann Fouillat,别名 Gagaro
Sune Brøndum Wøller
Philippe Gross
Andrea Cecchi
Luca Bellenghi
Giacomo Monari
Alin Voinea
Rodrigo Ferreira de Souza
Jens W. Klein
Maurits van Rees
Gil Forcada Codinachs
David Glick
Philip Bauer
Tiberiu Ichim
Érico Andrei
乔纳斯·鲍曼
塞德里克·梅西亚恩
埃克托尔·韦尔代
约翰内斯·拉加姆
西蒙内·德波恩蒂
韦斯利·巴罗斯·洛佩斯
埃利奥·施穆茨
加乌蒂埃·巴斯蒂安
卡特亚·苏斯
乔恩·彭特兰德
莱昂纳多·J. 卡巴列罗·G.
变更日志
9.7.2 (2024-09-05)
修复了错误
修复了Dexterity内容序列化器:对于 next_item 和 previous_item 返回空对象,除非父项启用了下一项/上一项支持。@JeffersonBledsoe, @davisagli (#1799)
修复了 jwt_auth 插件的实现。现在可以添加,并且可以更新其属性 use_keyring 和 store_tokens。@sauzher (#1802)
内部
明确全局禁用需要禁用的测试中的注释。[maurits] (#244)
文档
更新Plone 6的贡献文档,并从Netlify切换到Read the Docs用于拉取请求预览。[stevepiercy] (#1798)
9.7.1 (2024-06-29)
修复了错误
在上下文导航中删除了 portal_properties 的使用。理论上我们检查了 portal_properties.site_properties.sortAttribute。[maurits] (#125)
内部
更新 test-no-uncommitted-doc-changes 以在Python 3.12上运行,而不是Python 3.9。[tisto, @davisagli] (#1794)
9.7.0 (2024-06-15)
新特性
为 @site 和 @navroot 添加缓存规则。[mamico] (#1779)
添加了 TeaserBlockSerializer,它如果块具有 “overwrite”: false,则从其目标更新占位符块的内容。[pbauer, @davisagli] (#1788)
修复了错误
当验证控制面板字段时,如果发生Invalid错误,将返回错误消息。同时翻译该消息。[wesleybl] (#1771)
用户服务:修复了枚举用户但用户实际不存在时的边缘情况 AttributeError。[davisagli] (#1775)
将Plone 6.1支持添加到分类器中,并针对它进行测试。[tisto] (#1780)
将 plone.app.discussion 设置为可选依赖项(核心附加组件)。[jensens] (#1781)
修复在测试额外内容中对 plone.app.iterate 的要求。[jensens] (#1782)
修复在测试额外内容中对 plone.app.upgrade 的要求。[jensens] (#1783)
文档
在文档示例中修复了事件开始和结束时间区。[davisagli] (#1776)
将共享端点文档移动到正确的部分。[davisagli] (#1778)
9.6.1 (2024-04-25)
修复了错误
通过用 target_user 替换 username 来解决密码重置问题,以正确使用电子邮件进行身份验证。[Hrittik20] (#943)
在Plone 6中,使用 plone.textindexer 将块文本添加到可搜索文本索引中,而不是 plone.indexer。这确保了行为可以使用 plone.textindexer 向可搜索文本添加字段。[wesleybl] (#1744)
在调用 scale 方法时使用 mode 参数而不是 direction。还将值更改为 scale。[wesleybl] (#1758)
序列化器中的 image_scales 以 json_compatible 格式返回。[cekk] (#1772)
内部
测试以确保图像的缩放哈希与具有此图像的图像块的哈希相同。[sneridagh] (#1716)
提高GitHub工作流程中所有版本的版本号。[stevepiercy] (#1762)
9.6.0 (2024-03-03)
新特性
向 @site 端点添加可用语言信息。[erral] (#1738)
将站点时区添加到 @site 端点返回结果中。[folix-01] (#1749)
内部
在测试中使用Python 3.12的最新版本。https://github.com/python/cpython/issues/113267 已修复。[wesleybl] (#1740)
9.5.0 (2024-02-27)
修复了错误
修复了添加用户到组和从组中删除用户的权限检查,以便允许具有站点管理员角色的用户。[wesleybl] (#1750)
增强 Makefile 路径以解决空白兼容性问题。[Vivek-04022001] (#1753)
9.4.2 (2024-02-16)
修复了错误
修复了 Plone 站点的 allow_discussion 序列化,以返回类似于其他内容类型的布尔值。[Akshat2Jain] (#1674)
修复了具有片段前斜杠的块解析uid转换中的边缘情况。[sneridagh] (#1748)
内部
从构建实例部分中删除 debug-exceptions = on。[wesleybl] (#1734)
9.4.1 (2024-02-02)
修复了错误
修复了将公共URL转换为和从基于UID的内部URL的逻辑,如果URL包含片段,则保留它。[sneridagh] (#1746)
9.4.0 (2024-01-26)
新特性
在反序列化器中翻译验证错误信息。@wesleybl (#1742)
9.3.0 (2024-01-10)
新特性
授予网站管理员管理用户的权限。为了实现这一点,我们现在在用户和组端点的许多操作中检查“plone.app.controlpanel.UsersAndGroups”权限,而不是“cmf.ManagePortal”。@wesleybl (#1712)
内部
在测试中使用 Python 3.12.0 来解决 https://github.com/python/cpython/issues/113267。@wesleybl (#1740)
9.2.1 (2023-12-14)
修复了错误
从块(反)序列化器中删除错误的 preview_image_link 添加。@sneridagh (#1737)
9.2.0 (2023-11-23)
新特性
将 preview_image 和 preview_image_link 添加到 resolveuid 和链接完整性智能字段的列表中。@sneridagh (#1735)
内部
未测试 Python 3.7。@wesleybl (#1732)
使用 plone.recipe.precompiler 生成 mo 文件进行测试。@wesleybl (#1733)
9.1.2 (2023-11-04)
修复了错误
修复 jwt_auth extractCredentials 插件,使其仅在请求头中有 Content-Type: application/json 时尝试从请求体中读取凭据。@davisagli (#1728)
暂时禁用文件和图像的表单内存限制检查。这修复了由于 Plone 6.0.7 以来使用的低 Zope 表单内存限制 1MB 而导致的回归。请参阅 CMFPlone 问题 3848 和 Zope PR 1142。@maurits (#3848)
文档
从 sphinx-copybutton 配置中删除正则表达式,因为现在默认排除 linenos。@stevepiercy (#1725)
9.1.1 (2023-10-28)
修复了错误
在检查是否允许显示 mimetype 时更加严格。[maurits] (#1167)
9.1.0 (2023-10-18)
新特性
添加对 Python 3.12 的支持。@tisto (#1722)
修复了错误
将子项像 @linkintegrity 端点中的项一样处理。@jaroel (#1714)
只有当多语言实际安装时才限制使用多语言服务。@mamico (#1723)
内部
删除未使用的代码。@davisagli (#1703)
替换已弃用的 assert 方法。@gforcada (#1719)
取消对已弃用的 plone.app.robotframework 测试的支持。@gforcada (#1720)
文档
修复对 https://json-schema.fullstack.org.cn/ 的重定向。@stevepiercy (#1718)
9.0.0 (2023-09-23)
破坏性更改
删除已弃用的 @unlock、@refresh-lock 端点 @avoinea (#1235)
删除 plone.tiles 和 @tiles 端点。@tisto (#1308)
将 @linkintegrity 端点更改为添加 items_total,即要删除的包含项的数量。@davisagli、@danalvrz、@pgrunewald (#1636)
默认分支已从 master 重命名为 main。@tisto、@davisagli (#1695)
取消对 Python 3.7 的支持。将 python_requires 设置为 >= 3.8 @tisto (#1709)
新特性
添加西班牙语翻译 @macagua (#1684)
添加在特定上下文中获取 /@querystring 端点的支持。@davisagli (#1704)
修复了错误
修复用户肖像中 SVG 图像的存储 XSS(跨站脚本)漏洞。通过强制下载而不是显示在内联中来完成。通过图像标签的正常访问不受影响且安全。请参阅 安全公告。@maurits (#1)
使用传入请求生成 @tus-upload 的位置。@instification (#1570)
取消弃用逗号分隔的扩展参数(这些参数在 plone.restapi 8 中已弃用)@tisto (#1696)
取消弃用词汇表端点的 token 参数 @tisto (#1697)
改进 RESOLVEUID_RE 正则表达式以捕获由链接内容类型生成的路径。@cekk (#1699)
内部
升级 buildout:Plone 6.0.6 -> 6.0.7 和 Plone 5.2.12 -> 5.2.14 @tisto (#1706)
文档
通过扩展添加翻译代码。@Akshat2Jain (#1374)
恢复格式并修复 #1689 中的某些 MyST 语法。@stevepiercy (#1691)
修复 #1599 的文档。@stevepiercy (#1692)
修复 linkcheckbroken 301 重定向到 https://www.4teamwork.ch/en。@stevepiercy (#1693)
为 v9 版本更新文档。@stevepiercy (#1698)
8.43.0 (2023-08-23)
新特性
允许向删除用户端点传递附加参数,以请求不要删除本地角色和成员区域 [erral] (#1598)
8.42.1 (2023-08-23)
修复了错误
修复损坏的关系信息。@ksuess (#1673)
内部
修复测试清理。@davisagli (#1680)
文档
将扩展文档从端点移动到使用说明,并添加所有可扩展组件的列表。修复 #1677。@stevepiercy (#1678)
8.42.0 (2023-07-17)
新特性
在序列化块时,现在将 image_scales 添加到包含基于 resolveuid 的 url 的块中。在反序列化块时,移除 image_scales。@davisagli (#1642)
修复了错误
通过 plone.app.multilingual 移除硬编码依赖,使用它条件性代替 [@folix-01] (#1639)
修复 @history 服务中修订的时区。@davisagli (#1647)
修复 Plone 5.2 根目录中的类型展开器(对于非 Dexterity Plone 站点根目录)。@sneridagh (#1669)
内部
更新包安装,使用 constraints.txt 为 black 包,确保兼容性和版本一致性。@Akshat2Jain (#1671)
更新 Makefile 和 buildout 以使用 Plone 6.0.6。@davisagli (#1672)
文档
添加指令以确保代码格式一致性。@Akshat2Jain (#1664)
8.41.0 (2023-06-29)
新特性
添加 visit_blocks 工具,用于查找所有嵌套块。@davisagli (#1648)
修复了错误
修复 path2uid 方法,以处理带有不可遍历对象的后缀。@cekk @mamico (#1649)
内部
允许 GHA 测试在来自分叉的 PR 上运行。@Akshat2Jain (#1656)
文档
修复 html_meta 标签,并移除阻止术语表渲染的杂散空格。@stevepiercy (#1663)
8.40.0 (2023-06-06)
新特性
添加 @site 和 @navroot 端点。@erral (#1464)
修复了错误
验证 @querystring-search 服务的输入。现在无法处理的输入会导致 400 响应而不是 500。@davisagli (#1653)
8.39.2 (2023-06-01)
修复了错误
修复使用旧版本的项目(已重命名)的内容序列化器。@davisagli (#1651)
8.39.1 (2023-05-30)
修复了错误
通过显式加载 plone.app.contentrules zcml 修复可能的启动错误。此外:只有当此包可用时才加载与 contentrules 相关的代码。[maurits] (#1644)
8.39.0 (2023-05-23)
新特性
创建关系服务。查询、添加、删除。@ksuess (#1432)
8.38.0 (2023-05-19)
新特性
将 portal_type 标题(type_title)添加到内容响应中 @razvanMiu @nileshgulia1 (#1355)
添加对嵌套架构的支持,具有 resolveuid 反序列化器 @JeffersonBledsoe (#1595)
修复了错误
修复通过 GET 请求到端点 /@querystring-search 的 Response 中缺少 metadata_fields。[1letter] (#1628)
尊重密码策略 @tschorr (#1630)
内部
更新 buildout 和 requirements 到 Plone-6.0.4 @1letter (#1632)
8.37.0 (2023-04-19)
新特性
将缓存规则集应用于 /@querystring-search 端点。[ericof] (#1626)
8.36.1 (2023-04-17)
修复了错误
修复在以 GET 方法调用 @querystringsearch 端点时处理参数的 bug。@davisagli (#1621)
8.36.0 (2023-04-07)
新特性
将 UID 添加到 relationvalue_converter 摘要。[ksuess] (#1605)
添加 querystring_search get 方法。[robgietema] (#1616)
修复了错误
以与 Plone 5.2 兼容的方式修复大量弃用警告。应用了正确的 isort。修复了测试中的文件未关闭问题。将 Python 3.11 添加到测试矩阵。[jensens] (#1606)
不再声明对 Python 3.6 的支持(它尚未经过测试)。[davisagli] (#1615)
修复 Python 3 上某些邮件服务器的编码问题。这可能导致电子邮件正文中缺少字符。[maurits] (#3754)
8.35.3 (2023-03-23)
修复了错误
修复 RelationChoice 反序列化器中的 UnboundLocalError。[davisagli] (#1600)
内部
修复与较新版本的 plone.app.z3cform 结合的测试。[maurits] (#162)
文档
更新 intersphinx_mapping 以用于培训 @ksuess (#1596)
8.35.2 (2023-03-10)
修复了错误
修复缺少 Decimal 字段反序列化器。[jensens] (#903)
修复添加用户时密码过短的错误信息翻译。[davisagli] (#4395)
8.35.1 (2023-03-02)
修复了错误
提供 slateTable 块序列化器/反序列化器,以正确转换 URL 到 uids (#1590)
8.35.0 (2023-02-18)
新特性
请求自己的用户数据提供联合组 @ksuess (#1581)
实现 IPurgePaths 以支持 RestAPI 遍历 (++api++) @ericof (#1587)
8.34.0 (2023-02-06)
新特性
在 @controlpanels/content-rules/ 端点中实现 IRuleAction 和 IRuleCondition 架构序列化。[ericof] (#1579)
修复了错误
修复 Plone 站点序列化在 Plone 6 中不返回 review_state 的 bug。[ericof] (#1574)
修复不支持元组记录的注册服务 bug。[ericof] (#1575)
8.33.3 (2023-01-29)
修复了错误
修复 @login 端点未设置正确的 __ac cookie 以供 Zope 用户使用的 bug。[davisagli] (#1572)
8.33.2 (2023-01-19)
修复了错误
修复上下文导航端点 @contextnavigation,根据深度 (bottomLevel) 提供导航树。[andreiggr] (#1562)
修复针对 zope.schema >= 7.0.0 的测试。[petschki] (#1567)
8.33.1 (2023-01-10)
修复了错误
修复 blocks linkintegrity,以找到在 url 和 href 字段中之前被忽略的一些链接。[davisagli] (#1565)
文档
由于 sphinx-book-theme 0.3.3 的需求,固定 Sphinx<5,>=3。[stevepiercy] (#1563)
8.33.0 (2022-12-29)
新特性
国际化 @users 端点错误消息。[wesleybl] (#1548)
添加 pt_BR 翻译。[wesleybl] (#1557)
添加 fr 翻译。[jimbiscuit] (#1560)
修复了错误
修复 @query 服务中关于 sort_on 和 sort_order 参数的错误警告。[davisagli] (#1558)
文档
更新 README 中的演示站点链接。[davisagli] (#1555)
修复 ogp_image URL。[stevepiercy] (#1556)
更新 makefile 以使用 Vale 进行拼写、语法和风格检查。修复 linkcheckbroken 以返回断开链接的正确退出代码。准备链接以使用 5.docs.plone.org,为 Plone 6 文档发布做准备。[stevepiercy] (#1561)
8.32.6 (2022-12-10)
修复了错误
修复保存包含空链接的 slate 块内容时的错误。[davisagli] (#1553)
8.32.5 (2022-12-08)
修复了错误
修复锁定创建日期 @iFlameing 的时间区。[davisagli] (#1551)
8.32.4 (2022-12-01)
修复了错误
在 @search 中允许 sort_on 和 sort_order 参数有多个值。[erral] (#1532)
在文档中模拟插件版本。[erral] (#1538)
将“UID”添加到“Plone Site”的内容类型端点响应中。[ksuess] (#1546)
8.32.3 (2022-11-22)
修复了错误
加强用户 API 以防止缺失用户数据(None)@reebalazs (#1534)
8.32.2 (2022-11-18)
修复了错误
修复在粘贴嵌套内容时 linkintegrity 中的 AttributeError。[maurits] (#1536)
8.32.1 (2022-11-14)
修复了错误
在历史端点中返回带有时间区指定的日期。[reebalazs] (#1530)
8.32.0 (2022-11-03)
新特性
添加 @upgrade 端点以预览或运行 Plone 实例的升级。[ericof] (#1525)
修复了错误
向动作添加 url 字段。[编号 817]
更新 statictime 测试,以反映对 p.a.discussion 的更改(见 https://github.com/plone/plone.app.discussion/pull/204)。[instification] (#1520)
更新 @portrait 端点以使用清理后的用户 ID。[instification] (#1524)
8.31.0 (2022-10-20)
新特性
添加 @rules 端点,支持 GET/POST/DELETE/PATCH。[valipod] (#1397)
为 slate 块添加链接完整性支持。[sneridagh] (#1522)
修复了错误
添加新的行为 volto.blocks.editable.layout,用于与 Volto DX 可编辑布局一起使用。[avoinea] (#1476)
修复 description 字段未包含在字段集中。[JeffersonBledsoe] (#1499)
修复测试中使用的密码。[davisagli] (#1513)
内部
从 buildout 中删除 plone.recipe.codeanalysis。[tisto] (#1507)
在测试 Plone 时不要使用 -latest。[tisto] (#1512)
在 Github Actions 运行之间缓存 buildout eggs。[davisagli] (#1515)
在 requirements.txt 中使用特定的 Plone 版本。删除不必要的固定版本。[wesleybl] (#1516)
从 Makefile 中删除代码分析。[wesleybl] (#1517)
文档
将术语表术语合并到主 plone/documentation 中。[stevepiercy] (#1508)
修复 linkintegrity 文档,添加缺失的响应文件,并使用 MyST 语法。[stevepiercy] (#1509)
添加 Matomo Analytics,删除 Google Analytics。[stevepiercy] (#1518)
当 Volto 文档更新时触发新的部署核心 Plone 文档。[esteele] (#1519)
8.30.0 (2022-10-02)
新特性
为块添加链接完整性支持。[cekk] (#953)
内部
在构建和 CI 中将 Plone 6 作为一等公民。删除不受支持的 Python 版本。添加 3.10 以支持 Plone 6。[sneridagh] (#1503)
8.29.0 (2022-10-01)
新特性
添加 @userschema 端点以获取用户模式。[sneridagh] (#706)
添加 @transactions 端点以获取通过 Plone 网站执行的交易。[@MdSahil-oss] (#1505)
修复了错误
@controlpanels/usergroup 在 Plone 5 中不起作用,因为它在那里不存在。只为 Plone 5 恢复缺失的 title。[sneridagh] (#1501)
8.28.0 (2022-09-29)
新特性
提高序列化图像缩放的性能。[davisagli] (#1498)
修复了错误
撤销“当在内容 POST 端点中明确指定 id 时,如果 id 无效或不可用,则返回 400 错误响应。”该修复不正确,禁止了应该允许的 id。[davisagli] (#1488)
增加测试中使用的密码长度。[davisagli] (#1492)
在 @users 端点序列化用户时使用 json_compatible。[erral] (#1493)
文档
重新组织导航。[stevepiercy] (#1486)
修复Google重定向和单词的连字符。[stevepiercy] (#1495)
8.27.0 (2022-09-14)
新特性
添加了支持 GET/POST/DELETE 的 @aliases 端点。[iulianpetchesi] (#1393)
修复了错误
当在内容 POST 端点中明确指定 id 时,如果它无效或不可用,则返回 400 错误响应。[davisagli] (#1487)
8.26.0 (2022-09-10)
新特性
添加 @portrait 端点。[sneridagh] (#1480)
修复了错误
将头像添加到文档的 toctree 中以修复构建警告。[stevepiercy] (#1485)
8.25.1 (2022-09-02)
修复了错误
修复 '用户和组设置' 控制面板适配器的类别。[sneridagh] (#1482)
8.25.0 (2022-08-31)
新特性
在 @addons 端点中添加导入配置文件的支持。[sneridagh] (#1479)
修复了错误
修复 @registry 端点中的 Object of type datetime is not JSON serializable。[iulianpetchesi] (#1189)
修复了关于错误代码 404 的小型文档。[rohnsha] (#1430)
处理 Plone 5.x 的站点根序列器中的子块。[erral] (#1449)
不要直接依赖于 plone.app.iterate。它不是一个直接的核心包,可能不可用。[jensens] (#1461)
在检查头像时清理用户 ID。[instification] (#1466)
8.24.1 (2022-08-04)
修复了错误
修复了针对 Membrane 用户的用户端点。[ksuess] (#1459)
8.24.0 (2022-07-15)
新特性
在 @users 端点添加对 "search=" 搜索全名、电子邮件和 ID 的支持。[ksuess] (#1443)
修复了错误
测试:给行为添加名称。[maurits] (#169)
8.23.0 (2022-06-23)
新特性
在检索 @groups 时包含用户数据。[@nileshgulia1] (#1325)
将“查看评论”和“回复项目”权限添加到讨论中。[@razvanMiu] (#1327)
改善术语查找错误的错误日志。[ajung] (#1365)
将文档从 reStructuredText 转换为 MyST。[stevepiercy] (#1375)
将缓存规则集移至定义端点的 ZCML。[jensens] (#1414)
列出用户 (@users):添加组 [ksuess] 列出用户 (@users):支持按组筛选 [ksuess] (#1419)
修复:更新组:保留标题和描述。[ksuess] (#1424)
将 UsersGroupsSettings 添加到控制面板集合中。将 UsersGroupsSettings 配置单元移动到正确的组(Volto 控制面板组“用户和组”)[ksuess] (#1436)
修复了错误
仅在测试中修复:在部分测试中规范化 HTML 中的空白。需要不与新版本的 plone.outputfilters 失败。[maurits] (#49)
测试:修补旧或新方式中的缩放唯一 URL。这仅在图像序列化器测试中。[maurits] (#57)
使 PAS 插件与 PyJWT 1 和 2 兼容。[jensens, maurits] (#1193)
修复 displayed_types 变化导致的测试问题。请参阅 https://github.com/plone/Products.CMFPlone/issues/3486 [pbauer] (#1359)
对于代码示例,使用 JSON 而不是 JSON Schema。[stevepiercy] (#1379)
控制面板和翻译在 Plone 5 或更高版本中得到支持。[stevepiercy] (#1380)
添加 html_meta 标签和值以获得更好的 SEO。[stevepiercy] (#1382)
在 README.rst 中更新演示站点到 6.demo.plone.org。[stevepiercy] (#1383)
在 Python 3.10 上修复历史服务中的时间戳计算。[maurits] (#1391)
修复 PATCH 控制面板文档中的空 .resp。[stevepiercy] (#1396)
在 @addon 控制面板上翻译插件标题。[erral] (#1412)
不要在某些边缘情况下破坏 path2uid。[cekk] (#1428)
在用户序列器中排序角色。[maurits] (#1452)
内部
将 URL 属性的命名最佳实践(单数与复数)添加到文档中。[tisto] (#1295)
启用 Google Analytics 4。[stevepiercy] (#1404)
修复了损坏的 make task docs-linkcheckbroken。[stevepiercy] (#1421)
修复指向 Python requests 库文档的损坏链接。[stevepiercy] (#1438)
8.22.0 (2022-04-08)
新特性
修复损坏的链接。将 make netlify 添加为构建目标以仅预览文档更改。准备文档以便导入到主 Plone 文档中,无需进行重大更改。使用 sphinx-book-them 作为主题。[stevepiercy] (#1337)
修复了错误
在尝试使用错误的 @type 参数创建内容对象时返回适当的错误消息。[tisto] (#1188)
修复 GitHub 菜单项“建议编辑”中的链接,使其指向 master 分支。[stevepiercy] (#1346)
修复upc.edu的重定向链接到/en。[stevepiercy] (#1351)
修复测试矩阵以使用正确的Python和Plone组合。[maurits] (#1356)
8.21.2 (2022-02-21)
修复了错误
限制在语言根文件夹上取消链接。[sneridagh] (#1332)
8.21.1 (2022-02-21)
修复了错误
改进处理链接翻译的方式,考虑目标状态。对于LRFs完全限制。如果操作成功,添加事务记录到动作。[sneridagh] (#1329)
8.21.0 (2022-01-25)
新特性
增强@addons端点以返回可升级的插件列表。[sneridagh] (#1319)
8.20.0 (2022-01-19)
新特性
在Plone 6中添加对DX Plone站点根的支持。移除Plone 6中站点根的blocks行为黑客。[sneridagh] (#1219)
8.19.0 (2022-01-19)
新特性
在字段序列化中添加对多语言语言无关字段的支援。[sneridagh] (#1316)
内部
将构建更新到Plone 6 alpha 2。[sneridagh] (#1312)
8.18.1 (2022-01-06)
内部
在测试查询字符串端点的模式时更加宽容。[reebalazs] (#1307)
8.18.0 (2022-01-03)
新特性
当请求标记列表时,改进词汇端点,添加弹性和弃用警告。[sneridagh] (#1298)
将可扩展的参数作为列表,将列表作为逗号分隔的弃用。[sneridagh] (#1300)
修复了错误
在递归转换中,如果子项已经处于目标状态,则不要中断。[cekk] (#1291)
在运行完整的测试套件时解决大部分弃用和资源泄漏警告。[rpatterson] (#1302)
8.17.0 (2021-12-21)
新特性
增强词汇表序列化器以接受标记列表。[sneridagh] (#1294)
修复了错误
可搜索文本索引器应保持块顺序。[ericof] (#1292)
8.16.2 (2021-12-03)
修复了错误
撤销“改进对missing_value和default故事的支持”,因为它破坏了多语言。[timo] (#1289)
8.16.1 (2021-11-30)
修复了错误
在序列化器/反序列化器中改进对default和missing_value的支持和意义。[sneridagh] (#1282)
8.16.0 (2021-11-29)
新特性
启用表块索引。[cekk] (#1281)
8.15.3 (2021-11-29)
修复了错误
类型服务:不要将TypeSchemaContext视为有效上下文。[ericof] (#1278)
改进词汇表端点重构中的错误状态代码。[sneridagh] (#1284)
8.15.2 (2021-11-24)
修复了错误
调整词汇表端点的限制。[ksuess] (#1258)
8.15.1 (2021-11-24)
修复了错误
修复在上下文中使用/@types/时的模式生成问题。[ericof] (#1271)
8.15.0 (2021-11-23)
新特性
对于查询参数b_size=-1返回非批处理的词汇表。[sneridagh] (#1264)
修复了错误
移除所有关于Products.CMFQuickInstaller的痕迹。它在Plone 5.2中被移除。BBB代码仅在plone.app.upgrade中。如果没有提供plone.app.upgrade`,例如仅依赖于Products.CMFPlone,则使用Restapi的Plone会中断。[jensens] (#1267)
修复使用默认配置文件安装JWT PAS插件的问题。[jensens] (#1269)
8.14.0 (2021-11-11)
新特性
在@translations端点中添加当前对象信息的根(INavigationRoot)[sneridagh] (#1263)
8.13.0 (2021-11-05)
新特性
实现IJSONSummarySerializerMetadata,允许插件扩展Summary序列化器返回的元数据。[ericof] (#1250)
启用在POST调用中也使用metadata_fields。[cekk] (#1253)
8.12.1 (2021-10-14)
修复了错误
修复使用新++api++遍历(在plone.rest 2.0.0中引入)时Plone根序列化中错误的@id属性。[sneridagh] (#1248)
8.12.0 (2021-10-11)
新特性
为@logout端点添加缺少的后端注销动作(删除cookie等)[sneridagh] (#1239)
8.11.0 (2021-09-29)
新特性
在DX DeserializeFromJson中使掩码特定的验证错误配置可配置。[fredvd] (#1211)
修复了错误
在http-examples输出中统一不稳定生成的行为名称。不再将测试的端口55001硬编码。[maurits] (#1226)
在使用@search端点和大脑孤儿或结果序列化期间发生KeyError时,避免UnboundLocalError或结果中的重复。[gbastien] (#1231)
8.10.0 (2021-09-24)
新特性
更新默认允许的CORS头部以包括:Lock-Token [@avoinea] (#1181)
@types端点还返回在给定上下文中立即可添加的内容类型[ericof] (#1228)
修复了错误
修复@users端点以使用acl_users.searchResults而不是portal_membership.listMembers [ericof] (#1199)
修复检查出的测试,而不是已发布的包。[maurits] (#1213)
修复 @users 端点以按 fullname 属性顺序返回用户列表。[ericof] (#1222)
8.9.1 (2021-08-27)
修复了错误
修复在创建内容时,如果值等于 defaultFactory 返回的值,则不存储值。[ericof] (#1207)
8.9.0 (2021-08-25)
新特性
基于 CRUD 操作重构 @lock 端点。[@avoinea] (#1181)
8.8.1 (2021-08-20)
修复了错误
修复 @vocabularies 端点以在翻译后的术语标题中进行搜索。[sneridagh] (#1204)
8.8.0 (2021-08-20)
新特性
将 Link 内容类型的 remoteUrl 字段添加 resolveuid 支持。[sneridagh] (#1197)
修复了错误
更新测试以防止在 Plone 网站根为 dexterity 时失败。[jaroel] (#2454)
8.7.1 (2021-08-03)
修复了错误
不要破坏没有工作流的内容的 @workflow 端点。[cekk] (#1184)
在尝试更改没有工作流的内容的状态时,不要破坏 @workflow 端点。[cekk] (#1190)
8.7.0 (2021-07-19)
新特性
改善 resolveUID 字段序列化器/反序列化器的可扩展性。[sneridagh] (#1179)
8.6.1 (2021-07-16)
修复了错误
如果路径不存在但通过获取匹配,则进行错误的反序列化。[sneridagh] (#1176)
8.6.0 (2021-07-13)
新特性
如果用户具有管理门户权限,则在创建内容时设置内容的 UID。[ericof] (#497)
8.5.0 (2021-07-09)
新特性
移除 Python 2,Plone 4.3 和 5.1 代码。[ericof] (#1140)
8.4.2 (2021-07-08)
修复了错误
在 src 中运行 find . -name “*.py”|xargs pyupgrade –py36-plus。然后运行 black 并移除 six 导入残留。[jensens] (#1162)
修复当 URL 指向本地内容但不存在时链接内容的序列化。[sneridagh] (#1167)
修复导航服务不使用 nav_title 元数据。[ericof] (#1169)
8.4.1 (2021-07-07)
修复了错误
修复在序列化后响应中存在插值变量。[sneridagh] (#1164)
8.4.0 (2021-07-06)
新特性
为 Dict 字段传递字段属性 'widget'。[ksuess] (#1153)
修复了错误
在 PAS 插件中使用安全装饰器。[jensens] (#1155)
删除编码魔法的第一行。在 Python 3 中不再需要编码魔法,除非与 utf-8 不同。[jensens] (#1156)
修复 PAS 插件 ZMI 标记以支持 Zope4+。[jensens] (#1157)
消除非 Pythonic 的 'return None' 使用。[jensens] (#1158)
提供 plone.schema / zope.schema Dict 字段的 value_type。[ksuess] (#1159)
8.3.2 (2021-07-05)
修复了错误
通过在查询中添加默认 sort_on=’getObjPositionInParent’ 来修复导航端点的排序。[valipod @tiberiuichim (#1107)]
8.3.1 (2021-07-02)
修复了错误
统一 ZMI、HTML 表单和 API 登录。[rpatterson (#1141)]
8.3.0 (2021-06-07)
新特性
将当前状态和翻译添加到 @workflow 端点。[sneridagh] (#1146)
修复了错误
移除支持 Python 2、Plone 4.3/5.0/5.1 的代码。[timo] (#1140)
移除不必要的对 plone.app.iterate 的检查,该检查破坏了 @components 属性。[timo] (#1148)
8.2.0 (2021-06-02)
新特性
添加工作副本(p.a.iterate)支持。[sneridagh] (#1132)
8.1.0 (2021-05-27)
新特性
添加对 volto-slate 块的支持:使用 resolveuid 进行内部链接,在目录中索引 slate 块,支持块转换。[tiberiuichim (#1125)]
修复了错误
修复导入 UnrestrictedUser 从 AccessControl 时的弃用警告。[timo] (#1129)
内部
使用 collective.zpretty 格式化 zcml 文件。添加 zpretty Github 工作流程。[tiberiuichim]
8.0.0 (2021-05-14)
破坏性更改
停止支持 Python 2 和 Plone 5.1 以及 4.3。Plone RESTAPI >= 8 仅支持 Python 3 和 Plone 5.2/6.x。[timo] (#1121)
7.3.5 (2021-05-03)
修复了错误
修复执行用户没有权限访问目标状态中的 review_history 时 @workflow。[deiferni] (#999)
7.3.4 (2021-04-30)
修复了错误
修复当完整历史记录为空时 @history。[deiferni] (#1113)
7.3.3 (2021-04-29)
修复了错误
修复 @querystring-search 端点,使用正确的 sort_order。[mamico (#1108)]
7.3.2 (2021-04-07)
修复了错误
修复带有 use_site_search_settings 标志的 @search 端点,用于 VHM PhysicalRoot 场景。[tiberiuichim (#1105)]
7.3.1 (2021-03-27)
修复了错误
修复如果使用旧 p.schema 的错误。[sneridagh] (#1103)
7.3.0 (2021-03-25)
新特性
调整 JSONField 适配器,以在序列化时包括要使用的 widget 名称。[sneridagh] (#1089)
修复了错误
修复构建使用的是已发布版本。[sneridagh] (#1090)
7.2.1 (2021-03-22)
修复了错误
@contextnavigation 端点不尊重 nav_title 索引。[sneridagh] (#1092)
7.2.0 (2021-03-18)
新特性
允许在“子块”中运行块转换,这些子块作为块值中的 blocks 字段(或作为 data.blocks)发现。(#1085)
7.1.0 (2021-03-17)
新特性
允许在 @search 端点请求中传递 use_site_search_settings=1,以遵循 Plone 的 ISearchSchema 设置。(#1081)
修复了错误
不要为已知索引如 metadata_fields @cekk 记录“没有这样的索引”警告。(#987)
尊重 @search 端点中的“访问非活动门户内容”权限。[cekk](#1066)
在块变换测试中添加 GSM 取消订阅以测试已注册的适配器。[tiberiuichim](#1083)
将一些包版本固定以修复 buildout。[tiberiuichim](#1086)
7.0.0 (2021-02-20)
重新发布 7.0.0b8 为 7.0.0 最终版本。[timo]
7.0.0b8(2021-02-19)
新特性
为 restapi 7 打上 zcml 功能标志:plonerestapi-7。[sneridagh](#1068)
为 resolveuid 功能添加一些额外的测试以提供保障。[sneridagh](#1072)
修复了错误
避免 DX RestAPI 中的重复字段。[avoinea](#1073)
7.0.0b7(2021-02-10)
新特性
将 root 元素添加到 @breadcrumbs 端点。[sneridagh](#1064)
修复了错误
删除 escape’d 标题。[sneridagh](#1061)
7.0.0b6(2021-02-09)
修复了错误
如果某些自定义代码为 Products.Archetypes 提供别名,则不会中断。[cekk](#1004)
在 @navigation 端点中处理没有工作流程的项目中缺失的 review_state 值。[cekk](#1060)
7.0.0b5(2021-02-03)
修复了错误
修复 transform object_browser href 智能字段未按预期工作。[sneridagh](#1058)
7.0.0b4(2021-02-01)
修复了错误
修复变压器中的 href 智能字段未覆盖 object_widget 用例。[sneridagh](#1054)
7.0.0b3(2021-01-26)
新特性
添加新的 @contextnavigation 端点。[tiberiuichim](#1042)
重构导航端点,添加新的 nav_title 属性。[sneridagh](#1047)
将 nav_title 属性添加到 breadcrumbs 端点。[sneridagh](#1049)
在 navs 中统一 nav_title 和 title。[sneridagh](#1051)
修复了错误
修复当内容查询没有 fullbojects 时 @id 的问题。[sneridagh](#837)
7.0.0b2(2021-01-25)
新特性
为 remoteUrl 链接的字段添加序列化器/反序列化器。[cekk](#1005)
7.0.0b1(2021-01-08)
新特性
为 Site Root 也注册块变换器。[cekk](#1043)
7.0.0a6(2020-12-18)
新特性
添加 sort 功能以重新排列所有文件夹项。[petschki](#812)
删除不必要的 stringtype 检查。[erral](#875)
启用 Plone 4 控制面板:插件、Dexterity 内容类型。[avoinea](#984)
在导入时增强 traceback,使用 __traceback_info__ 检测导致问题的字段。[jensens](#1009)
修复了错误
修复了对 zope.site.hooks、CMFPlone.interfaces.ILanguageSchema 和 plone.dexterity.utils.splitSchemaName 的弃用警告。[maurits](#975)
更新测试以修复 https://github.com/plone/plone.dexterity/pull/137。[avoinea](#1001)
修复 resolveuid 块转换。[tisto, sneridagh](#1006)
修复搜索文档中类型提示示例。[jensens](#1008)
通过确保 Location header 是字符串来修复与 Zope 4.5.2 的兼容性。在 Python 2 中,对于用户和组端点,它可能是 unicode。修复 问题 1019。[maurits](#1019)
如果安装了 plone.app.multilingual,则在内容添加端点中检查 Plone 5。[erral](#1029)
不要测试是否存在 meta_type 索引。它是不必要的负担。[jensens](#2024)
修复与 Products.MailHost 4.10. 的测试。[maurits](#3178)
7.0.0a5(2020-08-21)
新特性
改进块变换器:现在我们可以处理通用变换器。[cekk]
为所有具有 url 或 href 字段的块添加处理 resolveuid 的通用块变换器。[cekk]
添加“智能字段”概念:如果块具有 searchableText 字段,则此字段将在 Plone 中索引。[cekk, tiberiuichim](#952)
7.0.0a4(2020-05-15)
新特性
如果用户没有编辑权限,则在块中使用文件内部链接替换为下载 URL。[csenger](#930)
7.0.0a3(2020-05-13)
新特性
在块文本索引中,查询 IBlockSearchableText 命名适配器,允许从任何块类型中提取。这避免了为“文本”块类型硬编码。[tiberiuichim](#917)
7.0.0a2 (2020-05-12)
新特性
添加了 IBlockFieldDeserializationTransformer 及其对应的概念 IBlockFieldSerializationTransformer,使用订阅者将/调整序列化和反序列化过程中块的值,这为在保存内容时转换块值提供了一种可扩展的机制。
添加了一个HTML块反序列化转换器,它将根据 portal_transform 的 x-html-safe 设置清理“html”块的内容。
添加了一个图片块反序列化转换器,它将使用 resolveuid 机制将 URL 字段转换为内容的 UID。
将 resolveuid 代码从 dexterity 字段反序列化器移至专用块转换适配器,使用上述机制。[tiberiuichim] (#915)
7.0.0a1 (2020-05-11)
新特性
在反序列化过程中将块中的链接解析为 UID,在序列化过程中将它们转回路径。[buchi,timo,cekk] (#808)
6.15.1 (2021-02-20)
修复了错误
通过确保 Location header 是字符串来修复与 Zope 4.5.2 的兼容性。在 Python 2 中,对于用户和组端点,它可能是 unicode。修复 问题 1019。[maurits](#1019)
6.15.0 (2020-10-08)
新特性
添加 sort 功能以重新排列所有文件夹项。[petschki](#812)
删除不必要的 stringtype 检查。[erral](#875)
修复了错误
修复了对 zope.site.hooks、CMFPlone.interfaces.ILanguageSchema 和 plone.dexterity.utils.splitSchemaName 的弃用警告。[maurits](#975)
更新测试以修复 https://github.com/plone/plone.dexterity/pull/137。[avoinea](#1001)
修复与 Products.MailHost 4.10. 的测试。[maurits](#3178)
6.14.0 (2020-08-28)
新特性
添加 @types 端点以能够添加/编辑/删除 CT 架构[Petchesi-Iulian, avoinea] (#951)
6.13.8 (2020-08-20)
修复了错误
删除了 SearchHandler/LazyCatalogResultSerializer 中无用的 metadata_fields 管理,因为它在 DefaultJSONSummarySerializer 中已处理。[gbastien] (#970)
6.13.7 (2020-07-16)
修复了错误
添加 Decimal() 转换器 [fulv] (#963)
6.13.6 (2020-07-09)
修复了错误
修复了 Plone 5.2.x 中已弃用的消息 'ILanguageSchema is deprecated'。[timo] (#975)
在测试中不要硬编码端口,因为它可能依赖于环境变量 [ale-rt] (#978)
6.13.5 (2020-06-29)
修复了错误
在升级代码中移除对 plone.api 的使用 [erral] (#917)
6.13.4 (2020-06-18)
修复了错误
将测试文件夹重新添加到版本中(忽略 tests/images 文件夹)。[timo] (#968)
6.13.3 (2020-06-17)
修复了错误
在 SerializeCollectionToJson 中考虑 include_items 参数。[gbastien] (#957)
6.13.2 (2020-06-15)
修复了错误
将 plone.app.controlpanel permissions.zcml 包含在数据库服务中,以避免在启动 Plone 4.3.x 时出现关于 'plone.app.controlpanel.Overview' 权限的 ConfigurationExecutionError。[gbastien] (#956)
6.13.1 (2020-06-03)
修复了错误
在 @user 端点的 PATCH (编辑) 现在能够使用 null 删除现有值 [sneridagh] (#946)
6.13.0 (2020-05-28)
新特性
在评论端点中公开 author_image [timo] (#948)
6.12.0 (2020-05-11)
新特性
添加数据库端点 [timo] (#941)
6.11.0 (2020-05-08)
新特性
为 Email、URI 和 Password 添加类型架构适配器 [avoinea] (#926)
6.10.0 (2020-05-07)
新特性
添加系统端点。[timo] (#736)
6.9.1 (2020-05-07)
修复了错误
修复 @translations 端点,使其仅通过 get_restricted_translations 使用户真正可以访问翻译。这修复了用户没有权限访问翻译但访问端点时返回 401 的情况。[sneridagh] (#937)
6.9.0 (2020-05-06)
新特性
添加管理插件端点。[esteele] (#733)
6.8.1 (2020-05-04)
修复了错误
处理无序列表文件夹的下一个/上一个条目。[rodfersou] (#928)
6.8.0 (2020-04-23)
新特性
通过 plone.restapi 管理可扩展类型创建(CRUD)[avoinea] (#534)
6.7.0 (2020-04-21)
新特性
使 @querystring-search 端点上下文感知 [sneridagh] (#911)
修复了错误
修复 sphinxbuilder 与 Python 3.8 的问题 [avoinea] (#905)
6.6.1 (2020-04-17)
修复了错误
在将 HTML 保存到 Plone 之前,对收到的 HTML 调用 unescape 方法。[cekk] (#913)
在 IBlocks 测试中进行了小修复,添加了一个缺失的 assert 调用 [tiberiuichim] (#914)
6.6.0 (2020-04-07)
新特性
添加 next_item 和 previous_item 属性,以便在容器中导航到文档的上一级和下一级条目。[rodfersou] (#900)
6.5.2 (2020-04-01)
修复了错误
修复了在 @user 端点更新用户属性时的用例,如果头像已预先设置但请求中包含(先前)序列化的字符串值,则修复头像已预先设置但请求中包含(先前)序列化的字符串值的情况 [sneridagh] (#896)
6.5.1 (2020-04-01)
修复了错误
修复了删除用户头像。[buchi] (#751)
6.5.0 (2020-03-30)
新特性
内容创建功能中的链接翻译和新的 @translation-locator 端点 [sneridagh] (#887)
6.4.1 (2020-03-25)
修复了错误
使讨论端点返回通过 portal transforms 反序列化的内容(例如,'text/x-web-intelligent')[timo] (#889)
6.4.0 (2020-03-23)
新特性
为 dxcontent 序列化器的主要文件字段添加 targetUrl,以便能够直接下载文件。[csenger] (#886)
修复了错误
修复了在 Python 3.6 中没有 locale 时的包安装错误。参见 coredev 问题 642。[maurits] (#642)
plone.app.discussion 扩展了评论的审核工作流。此更改考虑了额外的状态。[ksuess] (#842)
6.3.0 (2020-03-03)
新特性
允许使用对象路径和UID来链接翻译 [erral] (#645)
修复了错误
当返回fullobjects时添加目录序列化器守卫,以防对象由于某些原因未能取消编目。 [sneridagh] (#877)
在测试中使用较长的密码。 [maurits] (#3044)
6.2.4 (2020-02-20)
修复了错误
在批处理操作中,响应批链接中缺少fullobjects qs。 [sneridagh] (#868)
6.2.3 (2020-02-19)
修复了错误
在选择架构序列化器上返回适当的None,而不是字符串“None”。 [sneridagh] (#863)
6.2.2 (2020-01-24)
修复了错误
当内容字段中的术语集合不存在于分配的词汇表中时,优雅地降级。 [sneridagh] (#856)
6.2.1 (2020-01-22)
修复了错误
共享POST:限制角色为用户允许委派的角色。 [lgraf] (#857)
6.2.0 (2020-01-10)
新特性
使 ?fullobjects 在 AT Collections 中正常工作,以获取项目的完整JSON表示形式。 [erral] (#698)
使 ?fullobjects 在 Dexterity Collections 中正常工作,以获取项目的完整JSON表示形式。 [erral] (#848)
修复了错误
修复没有review_state的相关项目的WorkflowException。 [arsenico13] (#376)
6.1.0 (2020-01-05)
新特性
为块中的文本添加SearchableText索引。 [luca-bellenghi] (#844)
6.0.0 (2019-12-22)
破坏性更改
从plone.restapi中移除IAPIRequest标记接口。正确的接口应从plone.rest.interfaces导入。如果有人使用此标记接口,它没有做任何事情。(#819)
修复了错误
在重新排序时防止将字节数组ID转换为Unicode ID(请参阅升级指南以获取潜在的迁移)[deiferni] (#827)
5.1.0 (2019-12-07)
新特性
添加对Python 3.8的支持 @timo (#829)
5.0.3 (2019-12-06)
修复了错误
更改为使用块的短名称而不是接口名称,它修复了#838。 [sneridagh] (#838)
5.0.2 (2019-11-06)
修复了错误
修复通过标题过滤非ASCII字符的词汇和来源。 [lgraf] (#825)
5.0.1 (2019-11-05)
修复了错误
修复字段需要可哈希项(例如集合)的词汇项的序列化。 [buchi] (#788)
5.0.0 (2019-10-31)
破坏性更改
重命名tiles行为和字段为blocks,迁移步骤。 [timo, sneridagh] (#821)
修复了错误
修复了当Archetypes存在但 plone.app.blob 或 plone.app.collection 不存在时的启动错误。 [maurits] (#690)
4.6.0 (2019-10-06)
新特性
添加 @sources 和 @querysources 端点,并从 @types 响应中链接到它们。 [lgraf] (#790)
修复了错误
明确加载依赖项的zcml,而不是使用 includeDependencies [maurits] (#2952)
4.5.1 (2019-09-23)
修复了错误
在PATCH请求中将字段设置为null时触发ModifiedEvent。 [phgross] (#802)
测试:删除freezegun,并选择性地修补一些时间戳访问器。 [lgraf] (#803)
4.5.0 (2019-09-12)
新特性
添加 @querystring-search 端点,该端点返回使用 p.a.querystring 查询的搜索结果。 [sneridagh] (#789)
使用 Plone 5.2 和 Python 3 作为默认值生成文档。 [timo] (#800)
修复了错误
通过返回排序后的项目结果,使组序列化器结果可预测。 [timo] (#798)
4.4.0 (2019-08-30)
新特性
添加 @querystring 端点,该端点转储 p.a.querystring 配置。 [lgraf] (#754)
修复了错误
修复 tiles_layout 字段标题名称中的拼写错误。 [sneridagh] (#785)
4.3.1 (2019-07-10)
修复了错误
修复在 plone 网站根目录上调用时的 @sharing POST。 [csenger] (#780)
4.3.0 (2019-06-30)
新特性
以与搜索结果相同的方式支持在摘要中检索附加元数据字段。 [buchi] (#681)
4.2.0 (2019-06-29)
新特性
使 @types 端点可扩展。 [lgraf] (#766)
将 @users 端点的权限检查因子化,使其更容易自定义。 [lgraf] (#771)
修复了错误
在序列化缩放时优雅地处理损坏的图像。 [lgraf] (#729)
文档:确保 application/json+schema 示例也获得语法高亮显示。 [lgraf] (#764)
对于状态 204(无内容),返回空响应。 [buchi] (#775)
在反序列化期间无法解析引用对象时返回状态 400。 [lgraf] (#777)
4.1.4 (2019-06-21)
修复了错误
在工作流转换时设置有效日期并重新索引obj。 [wkbkhard] (#760)
4.1.3 (2019-06-21)
修复了错误
通过添加一些示例来改进如何设置关系的文档。 [buchi] (#732)
如果无法解析引用对象,则返回错误消息。 [buchi] (#738)
4.1.2 (2019-06-15)
修复了错误
@types 端点:修复对上下文感知默认工厂的支持。 [lgraf] (#748)
4.1.1 (2019-06-13)
修复了错误
在词汇序列化器中将 None 作为词汇术语标题处理。 [Rotonen] (#742)
在词汇序列化器中处理没有标题属性的术语。[Rotonen] (#742)
在词汇序列化器中处理具有非ASCII str 标题属性的术语。[Rotonen] (#743)
修复Plone 5.1测试中的时间冻结。[lgraf] (#745)
4.1.0 (2019-05-25)
新特性
在代码库中使用Black。[timo] (#693)
4.0.0 (2019-05-09)
破坏性更改
@vocabularies服务:不再为术语返回@id。结果分批处理,现在术语以项目形式列出而不是以术语形式,以匹配其他分批响应。默认批大小为25,但可以使用b_size参数覆盖。[davisagli]
@types服务:使用命名词汇的选项字段现在以词汇属性的形式序列化,给出词汇的@vocabularies端点URL,而不是内联包含选择、枚举和枚举名称。主题字段现在使用plone.app.vocabularies.Keywords词汇序列化为字符串项数组。[davisagli]
将小部件参数序列化为widgetOptions对象,而不是将它们添加到模式属性的最高级别。[davisagli]
将
和 过滤器添加到词汇端点。[davisagli, sneridagh, timo] (#535) 使用令牌进行词汇术语的序列化和反序列化。[buchi] (#691)
在序列化中返回词汇术语的令牌和标题。有关更多信息,请参阅升级指南。[buchi] (#726)
新功能
@vocabularies服务:使用
参数按标题筛选术语,使用 获取给定令牌的术语标题。(不区分大小写)。[davisagli, sneridagh, timo]
修复了错误
标准化电子邮件通知端点的错误数据结构。[cekk] (#708)
使用@login-renew续订过期或无效的认证令牌时,将失败并返回401错误,而不是返回新的认证令牌。[thet] (#721)
在tiles配置文件中使用接口名称而不是简写行为名称。这修复了#724。[sneridagh] (#724)
避免对目录结果计算批链接两次。[davisagli]
3.9.0 (2019-04-18)
新特性
添加对AT内容类型的fullobjects支持。[sneridagh] (#698)
3.8.1 (2019-03-21)
修复了错误
修复与工作流服务不兼容的Python 3错误 (#676) [ajung]
隐藏性能、测试和tiles配置文件。(#700)[timo]
3.8.0 (2019-03-21)
新特性
添加对添加/更新用户肖像(@user端点)的支持。[sneridagh] (#701)
3.7.5 (2019-03-14)
修复了错误
不要依赖于已废弃的plone.app.controlpanel包。[sneridagh] (#696)
3.7.4 (2019-03-13)
修复了错误
修复与策略包命名方式相关的ZCML加载问题,这些问题与控制面板和多语言中的权限加载相关。[sneridagh] (#526)
3.7.3 (2019-03-08)
修复了错误
使用环境标记而不是python-logic来指定py2的依赖关系。[pbauer] (#688)
3.7.2 (2019-03-07)
修复了错误
修复TUS上传事件 #689。[buchi] (#689)
3.7.1 (2019-03-06)
错误修正
修复发布版本,不创建通用(Python 2/3)的wheel。[gforcada]
在buildout中安装zestreleaser.towncrier以正确更新changelog。(#684)[maurits]
3.7.0 (2019-03-04)
新功能
将组角色添加到@groups序列化器中。[sneridagh]
3.6.0 (2019-02-16)
新功能
增强网站根目录以序列化和反序列化“tiles”和“tiles_layout”属性。[sneridagh]
修复网站根目录上的@workflow端点,以返回空对象而不是404。[sneridagh]
3.5.2 (2019-02-14)
错误修正
修复序列化事件类型。这修复了https://github.com/plone/plone.restapi/issues/664。[davisagli, elioschmutz]
3.5.1 (2019-02-05)
错误修正
在序列化具有具有非参数化小部件的域的类型时不会失败。修复问题664。[elioschmutz]
3.5.0 (2018-11-06)
新功能
添加Python 3支持。[pbauer, davisagli]
3.4.5 (2018-09-14)
错误修正
在添加组件时避免AttributeError(修复#465。[lukasgraf, hvelarde]
使搜索在包含路径查询列表的虚拟托管设置中正常工作。[sunew]
3.4.4 (2018-08-31)
错误修正
将最后修复的搜索用户ID的方法推广到密码重置请求中,使其与Plone的方法匹配。这涵盖了所有请求用例。[sneridagh]
3.4.3 (2018-08-30)
错误修正
为密码重置添加“使用UUID作为用户ID”的支持。[sneridagh]
3.4.2 (2018-08-27)
错误修正
在创建用户时,将缺失的“使用UUID作为用户ID”的支持添加到POST @users端点。同时通过使用与Plone相同的过程来改进用户ID/用户名选择器。这修复了:https://github.com/plone/plone.restapi/issues/586 [sneridagh]
3.4.1 (2018-07-22)
错误修正
确保在安装tiles配置文件时安装默认配置文件。[timo]
3.4.0 (2018-07-21)
新功能
添加tiles配置文件。[timo]
3.3.0 (2018-07-20)
新功能
在@users端点中,根据用户架构返回成员字段,而不是固定列表的成员属性。[buchi]
3.2.2 (2018-07-19)
错误修正
不再包含使用data_files的HTTP示例,而是将它们移动到src/plone/restapi下面,并使用package_data包含它们。[lgraf]
在将内容添加到容器之前重命名Dexterity内容。[buchi]
避免对3.0.0中引入的Archetypes的硬依赖。这修复了问题570。[buchi]
在setup.py中要求plone.behavior >= 1.1。这修复了#575。[timo]
修复test_search以与修复后的plone.indexer一起工作。现在DXTestDocument显式获得一个属性exclude_from_nav。这修复了问题579。参考Products.CMFPlone问题2469 [jensens]
3.2.1 (2018-06-28)
错误修正
在setup.py中,对于新tiles端点,要求plone.schema >= 1.2.0。[timo]
3.2.0 (2018-06-28)
新功能
添加用于获取所有可用内容tiles及其JSONSchema的tiles端点。[sneridagh]
为plone.restapi的新tiles实现添加tiles行为。[sneridagh]
确保在安装的egg中包含HTTP示例,以便测试_documentation测试也针对plone.restapi的安装版本。[lgraf]
3.1.0 (2018-06-27)
新功能
Plone 5.2兼容性。[sunew, davisagli, timo]
3.0.0 (2018-06-26)
破坏性变更
修复对象创建事件。在此修复之前,创建事件在尚未反序列化的空对象上触发。另外,在反序列化一个新创建的对象之后,还触发了一个修改过的事件。现在,自定义内容反序列化器必须处理create关键字参数,该参数确定是否在对象创建期间或更新对象时执行反序列化。[buchi]
在@sharing GET中包含翻译后的角色标题。[lgraf]
现在使用缓存优化方式创建图片URL。修复了#494。[erral]
2.2.1 (2018-06-25)
错误修正
修复PyPi上的ReST。[timo]
2.2.0 (2018-06-25)
新功能
记录使用Accept-Language HTTP头的信息。[erral]
在@types端点上翻译FTI标题。修复了#337。[erral]
在@cite>@history端点上翻译操作名称、工作流状态和转换名称。[erral]
增强@workflow端点以支持对所有包含项应用转换并设置有效和过期日期。[buchi]
错误修正
确保DX DefaultFieldDeserializer验证字段值。[lgraf]
在PATCH上重新索引AT内容。这修复了问题531。[buchi]
修复Plone 5.2上的更改密码问题。[sunew]
Plone 5.2兼容性测试。[sunew]
2.1.0 (2018-06-23)
新功能
在@roles GET中包含翻译后的角色标题。[lgraf]
2.0.1 (2018-06-22)
错误修正
在附加组件控制面板中隐藏升级。修复了问题532。[maurits]
2.0.0 (2018-04-27)
破坏性变更
在序列化之前将所有datetime、DateTime和时间实例转换为UTC。[thet]
在反序列化时使用python-dateutil而不是DateTime解析日期字符串。[thet]
使@translations端点可扩展。[erral]
将@translations端点中的results属性重命名为'items'。[erral]
从顶级响应条目中移除@translations端点的'language'属性。[erral]
新功能
在@types端点中公开小部件的标记值。[jaroel]
将主题词汇渲染为项目作为主题字段的项。[jaroel]
为GET @user端点中访问用户信息添加新权限 plone.restapi: Access Plone user information 默认映射到Manager角色(如之前一样)。[sneridagh]
错误修正
为 @search 添加 VHM 支持 [csenger]
1.6.0 (2018-04-17)
新功能
将 expand.navigation.depth 参数添加到 @navigation 端点。 [fulv, sneridagh]
1.5.0 (2018-04-03)
新功能
允许用户更新自己的属性和密码。 [sneridagh]
1.4.1 (2018-03-22)
错误修正
修复在调用 fullobjects 参数时对 Discussion Item 和 Collection 内容类型的序列化。 [sneridagh]
1.4.0 (2018-03-19)
新功能
添加可展开的 @actions 端点以检索 portal_actions。 [csenger,timo,sneridagh]
1.3.1 (2018-03-14)
错误修正
支持内容 PATCH 请求中的 null,以删除字段值(仅限 Dexterity)。这修复了 #187。 [csenger]
1.3.0 (2018-03-05)
新功能
在对象序列化时观察 allow_discussion 允许(全局、fti、对象)。 [sneridagh]
添加 ‘@email-send’ 端点,允许授权用户向任意地址发送电子邮件(仅限 Plone 5)。 [sneridagh]
1.2.0 (2018-02-28)
新功能
允许用户获取自己的用户信息。 [erral]
错误修正
将卸载配置文件标记为不可安装。 [hvelarde]
修复基于 Archetypes 站点的 @search 中 fullobjects 的使用 [erral]
修复包含 Unicode 字符的工作流翻译。 [Gagaro]
修复过渡端点中的工作流编码。 [Gagaro]
1.1.0 (2018-01-24)
新功能
添加 ‘@email-notification’ 端点,通过电子邮件联系站点所有者。 (仅限 Plone 5) [sneridagh]
错误修正
从文档中删除关于 alpha 版本的通知。 [timo]
1.0.0 (2018-01-17)
错误修正
删除已弃用的 getSiteEncoding 导入。 [timo]
在 Plone 5.0.x 上构建文档(之前:Plone 4.3.x)。 [timo]
1.0b1 (2018-01-05)
破坏性变更
将导航 / 面包屑中的 'url' 属性重命名为 ‘@id’。 [timo]
新功能
允许客户端在创建对象后通过在 PATCH 请求上设置 'Prefer' 标头来请求对象的完整表示。 [Gagaro]
支持使用序列化(由序列化器增强)输出内容反序列化 relationChoice 字段。 [sneridagh]
添加添加用户时允许属性。这允许匿名用户设置全名。 [jaroel]
在 JSON 模式选择字段适配器上添加对 IContextSourceBinder 词汇表的支持。 [sneridagh]
添加升级指南。 [timo]
错误修正
修复了在带有下载链接的命名文件上执行 POST 或 PATCH 操作时总是返回 self.context.image,而不是实际文件的问题。 [jaroel]
修复 DateTimeDeserializer,当提交非必填字段为 None 时。 [jaroel]
固定 DateTime 字段的 'required'。 [jaroel]
批量处理:在规范化 URL 时保留类似列表的查询字符串参数。 [lgraf]
修复了 NamedFieldDeserializer 以接受空值来删除文件/图片。 [jaroel]
修复了 NamedFieldDeserializer 以验证必填字段。 [jaroel]
防止在获取 @workflow 没有权限获取 review_history 工作流变量时出现致命错误。 [thomasdesvenain]
通过向用户添加 Member 角色,使用户注册行为默认为 Plone 行为。 [sneridagh]
1.0a25 (2017-11-23)
破坏性变更
删除 @components 导航和面包屑。使用顶级 @navigation 和 @breadcrumb 端点代替。 [timo]
从 GET 响应中删除 "sharing" 属性。 [timo,jaroel]
使用 .output_relative_to 转换 richtext。如果没有上下文,不再支持从 RichText 直接转换,因为我们始终需要 ITransformer 的上下文。 [jaroel]
新功能
将 fullobjects 参数添加到内容 GET 请求中。 [timo]
在对象修改事件中包括修改字段的描述。 [buchi]
添加卸载配置文件。 [davilima6]
将 include_items 选项添加到 SerializeFolderToJson。 [Gagaro]
错误修正
修复密码重置的错误消息(用户名错误和密码错误)。 [csenger]
修复 #440,文件夹项的第二级获取内容调用中 URL 和 @id 错误。 [sneridagh]
修复 #441,带有 'fullobjects' 的文件夹内容 GET 包括所有递归项。 [sneridagh]
修复 #443,确保由 authenticateCredentials 返回的 userid 是字节字符串,而不是 Unicode。 [Gagaro]
1.0a24 (2017-11-13)
新功能
将 'is_editable' 和 'is_deletable' 添加到评论对象的序列化中。同时重构了评论端点以实现 DRY。 [sneridagh]
改进 is_folderish 属性以包括 Plone 站点和 AT 内容类型 [sneridagh]
错误修正
全面覆盖文件处理在内容类型中的使用情况。这包括删除图片/文件,并能够在不删除现有值的情况下,将GET操作返回的图片/文件字段的响应馈送到PATCH端点。[sneridagh]
1.0a23 (2017-11-07)
错误修正
修复Zope根用户文件夹中定义的用户JWT身份验证。修复了https://github.com/plone/plone.restapi/issues/168和https://github.com/plone/plone.restapi/issues/127。[buchi]
修复时区感知字段的日期时间反序列化。修复了https://github.com/plone/plone.restapi/issues/253。[buchi]
1.0a22 (2017-11-04)
新功能
添加@translations端点。[erral]
在站点序列化中包含标题。[buchi]
在GET请求响应中包含is_folderish属性。修复了#327。[sneridagh]
错误修正
从TextLine值中删除空格以匹配z3c.form实现。[jaroel]
当TextLine是必需时,不允许None和u''。参考#351。[jaroel]
使获取‘/@types/{type_id}’对非DX类型(例如“Plone Site”)工作。[jaroel]
由于它是软依赖,从setup.py中删除Products.PasswortResetTool。它在Plone >= 5.1中包含。[tomgross]
更新pytz以修复travis构建。[sneridagh]
1.0a21 (2017-09-23)
新功能
添加对可展开元素的支持。有关详细信息,请参阅http://plonerestapi.readthedocs.io/en/latest/expansion.html。[buchi]
在@workflow中翻译标题。[csenger]
添加锁定/解锁端点。有关详细信息,请参阅http://plonerestapi.readthedocs.io/en/latest/locking.html。[buchi]
添加@controlpanels端点。[jaroel, timo]
错误修正
通过显式加载CMFCore中的permissions.zcml来解决ZCML加载顺序问题。[lgraf]
修复使用带有“fullobjects”选项的@search返回的@id值。[ebrehault]
由于已启用展开,现在重新添加了@breadcrumbs和@navigation中跳过的测试。[sneridagh]
1.0a20 (2017-07-24)
错误修正
支持在站点根目录上对内容进行重新排序。[jaroel]
支持在站点根目录上设置布局。[jaroel]
在plone.restapi中使用SearchableText参数时添加说明以避免混淆。[sneridagh]
1.0a19 (2017-06-25)
新功能
实现tus.io上传端点。[buchi]
1.0a18 (2017-06-14)
新功能
在@search中添加“&fullobject”参数以检索完整对象。[ebrehault]
错误修正
调整README.rst。[tkimnguyen]
不要在@types端点中列出非DX类型。参考https://github.com/plone/plone.restapi/issues/150。[jaroel]
1.0a17 (2017-05-31)
破坏性变更
将RichText字段值更改为使用“output”而不是“raw”以修复内联路径。这修复了#302。[erral]
新功能
自动在hub.docker.com上发布docker镜像。[timo]
错误修正
文档:修复批处理示例请求/响应。[lgraf]
1.0a16 (2017-05-23)
新功能
添加@comments端点。[jaroel,timo,pjoshi]
添加@roles端点以列出定义的全局角色。[jaroel]
在@registry列表中添加JSON模式。[jaroel]
允许在@groups端点中操作组成员。[jaroel]
在@users端点中列出和修改分配给用户的全局角色。[jaroel]
错误修正
将模式字段绑定到上下文以处理上下文词汇表。#389 [csenger]
继承标志的方向错误。阻止继承显示为未阻止。[jaroel]
1.0a15 (2017-05-15)
新功能
添加@translations端点。[erral]
使用内容端点重新排序项的子项。[jaroel]
在@registry端点中添加注册条目的批处理列表。[jaroel]
1.0a14 (2017-05-02)
新功能
添加@history端点。[jaroel]
错误修正
修复@move端点在用户对父文件夹没有适当的删除权限时无法返回403。[sneridagh]
1.0a13 (2017-04-18)
新功能
添加对@sharing的“search”参数的支持。这返回了“entries”中的附加主体,并标记了获取和继承的字段。[jaroel]
添加对DX和AT内容端点上的“layout”设置/修改的支持。[jaroel]
在根类型端点中添加获取定义布局的支持。[jaroel]
错误修正
在@workflow端点中添加标题。这修复了#279。[sneridagh]
不要在Plone 5.1中获取不必要的PasswordResetTool。[tomgross]
1.0a12 (2017-04-03)
错误修正
处理用户移动无法删除的内容时的特殊情况,返回正确的403。[sneridagh]
1.0a11 (2017-03-24)
错误修正
从复制/移动端点中删除zope.intid依赖。从principals端点中删除plone.api依赖。仅在安装了z3c.relationfield时,使ChoiceslessRelationListSchemaProvider可用。这修复了https://github.com/plone/plone.restapi/issues/288 [erral]
从测试中删除unittest2导入。[timo]
将Products.PasswortResetTool添加到依赖项。这个依赖项在Plone 5.1中不再存在。[timo]
将LocalrolesModifiedEvent的导入设置为条件,这样plone.restapi就不会阻止Plone 4.3部署(< 4.3.4)启动。[lgraf]
1.0a10 (2017-03-22)
新功能
添加@sharing端点。[timo,csenger,sneridagh]
添加@vocabularies端点。[timo,csenger,sneridagh]
添加@copy和@move端点。[buchi,sneridagh]
文档:将所有HTTP示例转换为使用sphinxcontrib-httpexample。[lgraf]
在@types端点中添加‘addable’属性。它指定内容类型是否可以添加到当前上下文中。请参阅https://github.com/plone/plone.restapi/issues/173。[jaroel]
添加支持名为IJsonSchemaProvider的适配器,以针对模式中的一个字段。这允许我们防止在relatedItems中渲染所有选择。请参阅https://github.com/plone/plone.restapi/issues/199。[jaroel]
将review_state添加到文件夹摘要序列化器。[sneridagh]
添加@principals端点。它搜索主体并返回与查询匹配的用户和组列表。这旨在用于共享UI小部件或其他用户/组搜索小部件。[sneridagh]
在@users端点中添加重置密码操作。https://github.com/plone/plone.restapi/issues/158 [timo,csenger]
错误修正
修复coveralls报告。[timo]
为通过POST创建的文件夹对象返回正确的@id。[lgraf]
修复通过coverage运行测试时的时区相关失败。[witsch]
@search端点:同时预先填充路径查询字典中的上下文路径。这将允许用户提供如path.depth=1之类的参数,并且仍然让path.query在服务器端预先填充到上下文的路径。[lgraf]
重构@types端点的JSON模式生成。现在它按正确的顺序返回字段,并在其适当的字段集中。[lgraf]
将缺失的id添加到Plone站点序列化中,与问题#186相关。[sneridagh]
在JSONFieldSchema生成器中添加缺失的IBytes适配器。这修复了/@types/Image和/@types/File端点的损坏。[sneridagh]
修复@types端点中成员用户的可添加类型和本地分配的角色。[sneridagh]
1.0a9 (2017-03-03)
新功能
使日期和日期时间字段提供‘widget’属性。[timo]
为types端点模式添加文档。[timo]
在@groups端点中添加基本的CRUD操作。[sneridagh]
使@types端点包含一个‘mode’属性。这修复了https://github.com/plone/plone.restapi/issues/198。[timo]
错误修正
修复查询以确保容器项目按getObjectPositionInParent排序。[lgraf]
1.0a8 (2017-01-12)
新功能
在GET @users端点中添加简单的用户搜索功能。[sneridagh]
错误修正
允许安装plone.restapi如果JWT插件已存在。这修复了https://github.com/plone/plone.restapi/issues/119。[buchi]
1.0a7 (2016-12-05)
错误修正
使登录端点无需UseRESTAPI权限即可访问。这修复了https://github.com/plone/plone.restapi/issues/166。[buchi]
1.0a6 (2016-11-30)
新功能
引入了专用的权限,要求使用REST API(默认情况下分配给每个人)。[lgraf]
错误修正
当令牌过期时,PAS插件应返回空凭证。[ebrehault]
1.0a5 (2016-10-07)
错误修正
从用户服务中移除plone.api依赖。这修复了https://github.com/plone/plone.restapi/issues/145。[timo]
1.0a4 (2016-10-05)
新功能
使POST请求返回序列化对象。[timo]
在响应中包含‘id’属性。[timo]
1.0a3 (2016-09-27)
新功能
添加@users端点。[timo]
错误修正
修复了在jwt_auth插件中禁用“使用Keyring”标志未被持久化的bug。[lgraf]
1.0a2 (2016-08-20)
新功能
实现导航和面包屑组件。[ebrehault]
在@types组件中添加小部件和对富文本字段的支持。[ebrehault]
在@types中添加字段集。[ebrehault]
错误修正
禁用对于@login和@login-renew端点的自动CSRF保护:如果启用服务器端持久化令牌,则这些请求需要允许引起数据库写入。[lgraf]
文档:在JWT身份验证文档中修复了参数‘data’到JSON格式的错误。[lccruz]
测试:在docs/source/_json/的未提交更改上失败测试。[lgraf]
测试:使用freezegun冻结用于文档的响应转储中难以控制的日期时间戳。[lgraf]
测试:限制可用的语言集以避免在用于文档的响应转储中出现过多的语言列表。[lgraf]
1.0a1 (2016-07-14)
初始发布。[timo,buchi,lukasgraf,等]