Lineage附加组件:子站点本地Plone注册
项目描述
此包为 Lineage 子站点提供 plone.app.registry。它添加了一个带有分层/代理注册表的本地组件。
行为
如果在 Lineage 子站点注册表中未找到值,则从父注册表加载。
在设置值时,它会检查值是否不在子注册表中,并且值是否与父值不同。然后根据父记录创建一个新记录,并将其添加到子注册表中,并设置新值。如果它已在子注册表中存在,则设置值。
在删除值时,它只删除子注册表中现有的值,并不影响父注册表。
限制
没有编辑 UI。要修改注册表中的值,请查找 lineage.controlpanels。
安装
只需在您的 buildout 上依赖 egg lineage.registry。ZCML 会自动通过 z3c.autoinclude 加载。
将其作为 Plone 控制面板或 portal_setup 中的插件安装。
此包是为 Plone 4.3 或更高版本编写的。
源代码和贡献
如果您想帮助开发(改进、更新、错误修复等)lineage.registry,这是一个很好的主意!
代码位于 github collective。
您可以克隆它或获取对 github-collective 的访问权限,并直接在项目上工作。
维护者是 Jens Klein 和 BlueDynamics Alliance 开发团队。我们感激任何贡献,如果需要在 pypi 上发布版本,请与其中之一联系 dev@bluedynamics dot com
贡献者
Jens W. Klein <jens@bluedynamics.com>
Johannes Raggam <raggam-nl@adm.at>
Kim Nguyen <kim@sixfeetup.com>
历史
1.5 (2020-02-26)
为 Plone 5.2 和 Python 3 更新,添加 PyPI 类别 [tkimnguyen]
1.4.0 (2016-11-18)
添加了卸载。注意:卸载会删除本地注册表![jensens]
1.3.3 (2016-04-19)
修复:返回排序键,因为 RecordsProxyCollection 期望它们按顺序排列。修复了一个效果,即子站点中的资源包不会在 11 到 10 次之间交付。[jensens]
1.3.1 (2016-02-25)
添加配置文件以正确注册升级步骤。[thet]
1.3 (2015-07-15)
修复数据库冲突错误,由于 LineageRegistry 对象上缺少 __parent__ 参数,导致每次请求都写入它。提供了一个升级步骤。请注意,升级步骤绑定到 collective.lineage 配置文件,因为我们在这里没有配置文件。[thet]
1.2 (2014-06-06)
修复 lineage.registry 的子子站点和其他任意嵌套站点。[thet]
添加 enableRegistry 和 disableRegistry 以简化事件订阅者。现在您可以在简单的文件夹中启用本地注册表,而不仅是在 collective.lineage.content.ChildFolder 中。请参阅:tests.TestLineageRegistry [gborelli]
1.1 (2014-01-30)
修复禁用 Lineage 站点时的错误。[thet]
1.0.1
在 README.rst 中纠正了错误信息。[jensens]
1.0
使其工作 [jensens, 2012-01-25]
许可证
版权(c)2012-2016,BlueDynamics Alliance,奥地利,瑞士,德国
GNU 通用公共许可证
复制、分发和修改的条款和条件
本许可证适用于包含版权所有者放置的通知的任何程序或其他作品,表明它可以在本通用公共许可证的条款下分发。"程序"一词以下指任何此类程序或作品,而"基于程序的作品"则指程序本身或任何受版权法保护的衍生作品:也就是说,包含程序或其一部分的作品,无论是原样还是经过修改和/或翻译成其他语言。(以下所述,翻译包括但不限于“修改”一词。)每个许可证持有人均称为“您”。
本许可证不涵盖复制、分发和修改之外的活动;它们超出了其范围。运行程序的行为不受限制,只有当程序的内容构成基于程序的作品(独立于是否通过运行程序制作)时,程序输出的内容才受保护。这取决于程序的功能。
您可以以您接收到的任何形式复制和分发程序源代码的完整副本,只要您在每一份副本上显著且适当地公布适当的版权声明和免责声明;保持所有提及本许可证和不存在任何保修声明的通知完整;并给任何程序的其他接收者提供本许可证的副本以及程序。
您可以为转移副本的物理行为收费,并且您可以选择以费用换取提供保修保护。
- 2 您可以修改程序的副本或其任何部分
,从而形成基于程序的作品,并根据上文第1节的规定复制和分发此类修改或作品,前提是您还满足所有这些条件
a) 您必须使修改后的文件包含突出显示的通知,声明您已更改文件以及任何更改的日期。
b) 您必须使您分发或发布的任何作品,无论是全部还是部分包含或源于程序或其任何部分,在没有任何费用的情况下,根据本许可证的条款以整体形式许可给所有第三方。
c) 如果修改后的程序在运行时通常以交互方式读取命令,您必须在以最普通的方式启动用于此类交互用途时,打印或显示包含适当版权声明和声明没有保修(或者,表示您提供保修)以及用户可以按这些条件重新分发程序的通知,并告知用户如何查看本许可证的副本。(例外:如果程序本身是交互式的但通常不打印此类公告,您的基于程序的作品不需要打印公告。)
这些要求适用于整个修改作品。如果该作品的可识别部分不是源自程序,并且可以合理地被认为是独立且独立的作品,那么在您将其作为单独的作品分发时,本许可证及其条款不适用于这些部分。但当您将相同的部分作为整体的一部分分发,该整体是基于程序的作品时,整个的分发必须符合本许可证的条款,其许可权扩展到整个整体,以及每个部分,无论谁编写。
因此,本节的目的不是主张权利或质疑您对完全由您编写的作品的权力;相反,目的是行使控制基于程序的作品的衍生或集体作品分发的权利。
此外,仅将另一部与程序(或基于程序的著作)无关的作品与程序(或基于程序的著作)一起聚合在存储或分发媒介的体积中,并不会使该其他作品纳入本许可证的范围。
您可以在第1节和第2节的条款下复制和分发程序(或根据第2节基于它的作品)的对象代码或可执行形式,前提是您还必须做以下之一:
a) 伴随完整的相应机器可读源代码,该源代码必须根据第1节和第2节的条款在通常用于软件交换的媒介上分发;或者,
b) 伴随一份书面要约,有效期为至少三年,向任何第三方提供,费用不超过您实际进行源代码分发的成本,完整机器可读的源代码副本,根据第1节和第2节的条款在通常用于软件交换的媒介上分发;或者,
c) 伴随您收到的关于分发相应源代码的要约信息。(此替代方案仅适用于非商业分发,并且仅在您根据上述b节收到以对象代码或可执行形式提供此类要约的程序时才适用。)
一个作品的源代码是指修改该作品的首选形式。对于可执行作品,完整的源代码意味着它包含的所有模块的源代码,以及任何相关的接口定义文件,以及用于控制编译和安装可执行文件的脚本。但是,作为一项特殊例外,分发的源代码不必包括通常与操作系统的主要组件(编译器、内核等)一起分发的任何内容,除非该组件本身与可执行文件一起提供。
如果通过提供从指定地点复制可执行或对象代码的方式分发,则提供从同一地点复制源代码的等效访问权限视为分发源代码,即使第三方没有义务与对象代码一起复制源代码。
您不得复制、修改、再许可或分发程序,除非本许可证明确提供。任何其他复制、修改、再许可或分发程序的行为都是无效的,并且将自动终止您根据本许可证的权利。但是,从您处获得副本或权利的各方,只要这些方完全遵守,其许可证不会被终止。
您不需要接受本许可证,因为您没有签署它。然而,没有其他东西授予您修改或分发程序或其衍生作品的权利。如果您不接受本许可证,这些行为将受到法律的禁止。因此,通过修改或分发程序(或任何基于程序的著作),您表明您接受本许可证以及复制、分发或修改程序或基于它的著作的所有条款和条件。
每次您重新分发程序(或任何基于程序的著作),接受者自动从原始许可方获得一份许可证,以根据这些条款和条件复制、分发或修改程序。您不得对接受者行使本许可证赋予的权利施加任何进一步的限制。您不负责强制第三方遵守本许可证。
如果由于法院判决或专利侵权指控或其他任何原因(不仅限于专利问题),对你(无论是由法院命令、协议或其他方式)施加的条件与本许可证的条件相矛盾,这并不免除你遵守本许可证的条件。如果你无法同时满足本许可证和任何其他相关义务,那么作为结果,你可能根本不能分发该程序。例如,如果专利许可不会允许所有直接或间接通过你接收复制品的人免费重新分发该程序,那么满足这两个条件的方法就是完全停止分发程序。
如果在本节的任何部分在任何特定情况下被认定为无效或不可执行,本节的其余部分应适用,并且本节作为一个整体在其他情况下应适用。
本节的目的不是诱导你侵犯任何专利或其他产权主张,或质疑任何此类主张的有效性;本节的目的仅仅是保护免费软件分发系统的完整性,该系统是通过公共许可证实践实现的。许多人已经通过那个系统为广泛分布的软件做出了慷慨的贡献,他们依赖于该系统的一致应用;作者/捐赠者决定是否愿意通过任何其他系统分发软件,许可方无权强加这种选择。
本节旨在彻底明确本许可证其余部分被认为的结果。
如果由于专利或版权接口,在特定国家限制分发和使用该程序,将程序置于本许可证之下的原始版权所有者可以添加一个明确的地理分发限制,排除那些国家,以便仅在或仅在未被排除的国家或地区允许分发。在这种情况下,本许可证包含该限制,就像它被写入本许可证正文一样。
自由软件基金会可能会不时发布修订版和/或新的通用公共许可证版本。这些新版本的精神将与当前版本相似,但在细节上可能有所不同,以解决新的问题或担忧。
每个版本都有一个区分的版本号。如果程序指定本许可证的版本号适用于它,并且是“任何后续版本”,你有权选择遵循该版本的条款和条件或自由软件基金会发布的任何后续版本的条款和条件。如果程序未指定本许可证的版本号,你可以选择自由软件基金会发布的任何版本。
如果你希望将程序的部分内容纳入其他分发条件不同的免费程序中,请写信给作者请求许可。对于由自由软件基金会拥有的版权软件,请写信给自由软件基金会;我们有时会对此类请求做出例外。我们的决定将受两个目标的指导:保持我们免费软件的所有衍生品的免费状态,并促进软件的一般共享和再利用。
不提供保证
由于该程序免费许可,根据适用法律的规定,对该程序不提供任何保证。除非在书面中另有说明,版权所有者和其他方提供该程序“现状”,不提供任何形式的保证,无论是明示的还是暗示的,包括但不限于暗示的商品性和特定用途适用性保证。该程序的质量和性能的全部风险由您承担。如果该程序被发现存在缺陷,您将承担所有必要的维修、修复或纠正的费用。
除非适用法律要求或书面同意,否则在任何情况下,任何版权所有者或任何其他可能根据上述许可修改和/或重新分发程序的方,对您不承担任何赔偿责任,包括但不限于因使用或无法使用该程序而产生的任何一般、特殊、偶然或后果性损害(包括但不限于数据丢失、数据被错误处理或您或第三方遭受的损失,或该程序与任何其他程序无法协同工作),即使该所有者或其他方已被告知此类损害的可能性。
条款和条件结束
项目详情
lineage.registry-1.5.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 02e5364467bba4a90d4460ee8192f5c377677d5c16ad47888de57353f5d9670c |
|
MD5 | 8487d1c896fdba09043efd8665df8176 |
|
BLAKE2b-256 | 171becd552d84e5ca3b3937e159d5441438bd5392e0cc77451eb928f94ca43b7 |