跳转到主要内容

ftw.copymovepatches

项目描述

介绍

本包相较于默认的plone复制/移动/重命名实现,实现了一些神奇的改进。

只要我们能在Plone/CMFCore中实现更改,这个包就不再必要。

快速移动/重命名

本包提供了一个改进的移动/重命名实现。你想要移动的文件越多,相较于默认的Plone实现,速度越快。

基本上,它不会先取消索引对象,然后再对对象进行索引,而是在必要时更新索引数据。这让我们避免了重新索引整个移动的结构。主要问题是文件的searchableText再次被索引。

例如,对一个包含1个文件夹、1个文档和300个文件(几乎为空的PDF文件)的测量

Plone:约80秒 使用本包:约8秒

此更改的PR已开放在:XXX(添加PR URL)

移动时更新修改日期

在根据对象的修改日期构建缓存键时,更新任何更改时的修改日期至关重要。默认情况下,当内容更改时更新修改日期,但在移动对象时并非如此。

本包中的“移动”补丁更改了行为,使得移动也会触发修改日期更新,从而让缓存在构建时有机会使它们无效,当它们需要根据修改日期构建并需要根据路径更新时。

dexterity 补丁的回滚:设置复制标志

问题

在复制一个具有AT子项的DX容器时,AT子项的UID没有更新。错误的原因是DX容器复制没有具有_v_is_cp标志,而AT子项正在处理,因此标志没有被正确委派。

解决方案

通过将_v_is_cp_v_cp_refs标志复制到副本中,我们有了与AT相同的行为,这修复了错误。

修复不一致状态

没有这个补丁,复制/粘贴可能会导致不一致的状态。当你在一个现有的安装上安装ftw.copymovepatches并遇到目录一致性问题时,你的最佳选择是尝试使用ftw.catalogdoctor来解决这个问题。有关如何安装和运行此包的更多信息,请参阅https://github.com/4teamwork/ftw.catalogdoctor/

兼容性

Plone 4.3.x

安装

  • 将此包添加到你的buildout配置中

[instance]
eggs +=
    ...
    ftw.copymovepatches

开发

Python

  1. 分叉此仓库

  2. 克隆你的分叉

  3. Shell: ln -s development.cfg buidlout.cfg

  4. Shell: python boostrap.py

  5. Shell: bin/buildout

运行 bin/test 以测试您的更改。

或者通过运行 bin/instance fg 来启动一个实例。

变更日志

2.0.0 (2019-07-15)

1.1.1 (2019-06-19)

  • 在移动对象时,还重新索引日期(默认为修改日期)。[njohner]

  • 修复了在重命名Plone站点时出现的错误(问题13)。[maurits]

1.1.0 (2018-03-01)

  • 支持Plone 5.1。[mbaechtold]

  • 支持Products.CMFCore >= 2.2.11。[avoinea]

1.0.1 (2016-09-26)

  • ZCML:在使用之前包含monkeypatcher。[jone]

1.0.0 (2016-09-13)

  • 修复了与collective.indexing和其他第三方软件包的边缘情况,并重命名了嵌套结构。[mathias.leimgruber]

1.0.0a4 (2016-09-07)

  • 在移动对象时更新修改日期。[jone]

1.0.0a3 (2016-09-07)

  • 通过处理“collective.indexing”安装时可能发生的一个特殊情况,使插件更健壮。[mbaechtold, mathias.leimgruber]

1.0.0a2 (2016-09-05)

  • 实现删除。[mathias.leimgruber]

1.0.0a1 (2016-09-02)

  • 初始化实施。[jone & mathias.leimgruber]

  • 使用bobtemplates.4teamwork生成的包。

项目详情


下载文件

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

源代码分发

ftw.copymovepatches-2.0.0.tar.gz (12.0 kB 查看散列)

上传时间 源代码

由以下支持