用于在pre-commit-config.yml文件中使用的odoo-pre-commit-hooks
项目描述
odoo-pre-commit-hooks
OCA为Odoo模块定制的预提交钩子
安装
您无需直接安装,只需配置您的".pre-commit-config.yaml"文件即可
您甚至可以直接安装
-
从PyPI安装
pip install -U oca-odoo-pre-commit-hooks
-
从GitHub安装
pip install --force-reinstall -U git+https://github.com/OCA/odoo-pre-commit-hooks.git@main
使用pre-commit-config.yaml
将以下输入添加到您的".pre-commit-config.yaml"配置文件中
- repo: https://github.com/OCA/odoo-pre-commit-hooks
rev: v0.0.33
hooks:
- id: oca-checks-odoo-module
- id: oca-checks-po
args: ["--fix"]
直接使用入口点
如果您直接安装了包,请使用入口点
oca-checks-odoo-module --help
oca-checks-po --help
跳过一个xml-check仅针对一个文件
如果您需要在特定的XML文件中跳过一项检查,可以使用以下注释:
<?xml version="1.0" encoding="utf-8"?>
<!-- oca-hooks:disable=xml-check-to-skip -->
<odoo>
...
</odoo>
<?xml version="1.0" encoding="utf-8"?>
<!-- oca-hooks:disable=xml-check-to-skip,
xml-check-to-skip2 -->
<odoo>
...
</odoo>
注释的位置与引发检查的行不相关
它将禁用整个文件
配置
行为可以通过多种方法进行配置,目前只包括启用/禁用检查。
启用或禁用检查
每个可用的钩子都包含多个检查,可以使用以下任何一种方法(按优先级排序)启用或禁用:
- 例如,作为参数,
oca-checks-odoo --enable=check-to-enable --disable=check-to-disable1,check-to-disable2
- 使用环境变量
OCA_HOOKS_ENABLE
或OCA_HOOKS_DISABLE
,例如,export OCA_HOOKS_ENABLE=check1,check2
- 配置文件。可以通过参数
--config
指定其路径。或者(默认情况下)将在以下位置(按顺序)查找名为.oca_hooks.cfg
的文件:- 当前工作目录
- 仓库根目录
- 用户家目录
使用配置文件
要使用配置文件启用或禁用检查,在 MESSAGES_CONTROL
部分 下添加 disable
或 enable
键。例如:
[MESSAGES_CONTROL]
enable=check-enable1,check-enable2
disable=check-to-disable
如前所述,每个源都有一个特定的优先级。这意味着如果存在环境变量 OCA_HOOKS_ENABLE=check1
,则配置文件在上面的启用检查方面不会产生任何影响,并且唯一启用的检查将是 check1
。
然而,如果没有设置 OCA_HOOKS_DISABLE
,则配置文件仍然会产生影响,并且 check-to-disable
将被禁用。
检查
-
检查 manifest-syntax-error 检查清单文件是否有语法错误
-
检查 csv-duplicate-record-id 重复CSV "id"(即xmlid)但用于CSV文件
-
检查 csv-syntax-error 检查清单中声明的CSV文件的语法错误
-
检查 xml-deprecated-data-node xml节点内的弃用节点
-
检查 xml-deprecated-openerp-node 弃用的xml节点
-
检查 xml-deprecated-qweb-directive 使用弃用的QWeb指令 t-*-options
-
检查 xml-not-valid-char-link src/href中的资源包含无效字符。
-
检查 xml-oe-structure-missing-id
Ensure all tags with class 'oe_structure' have an ID. For more information on the rationale, see: https://github.com/OCA/odoo-pre-commit-hooks/issues/27
-
检查 xml-redundant-module-name
If the module is called "module_a" and the xmlid is `<record id="module_a.xmlid_name1" ...` The "module_a." is redundant it could be replaced to only `<record id="xmlid_name1" ...`
-
检查 xml-dangerous-filter-wo-user 检查未分配用户的危险过滤器
-
检查 xml-create-user-wo-reset-password 未带有
context="{'no_reset_password': True}"
的用户记录。此上下文避免发送电子邮件和邮件日志警告 -
检查 xml-view-dangerous-replace-low-priority 在ir.ui.view中的低优先级替换
<field name="priority" eval="10"/> ... <field name="name" position="replace"/>
-
检查 xml-deprecated-tree-attribute 使用弃用的属性声明tree-view
-
检查 xml-record-missing-id 当标签没有id时生成
-
检查 xml-duplicate-record-id
If a module has duplicated record_id AKA xml_ids file1.xml <record id="xmlid_name1" file2.xml <record id="xmlid_name1"
-
检查 xml-duplicate-fields 在所有记录节点 <record id="xmlid_name1"... <field name="field_name1"... <field name="field_name1"...
-
检查 xml-syntax-error 检查Odoo清单中声明的XML文件的语法
-
检查 xml-dangerous-qweb-replace-low-priority 定义低优先级的危险qweb视图
-
检查 xml-duplicate-template-id 当两个模板共享相同的ID时触发
-
检查 xml-xpath-translatable-item 使用
contains(text(), 'Text translatable')
检查xpath
节点。由于文本可以翻译,因此它是一个可变值。如果更改语言,可能会引发ValueError
异常。
检查 PO
-
检查 po-requires-module 翻译条目需要注释
#. module: MODULE
-
检查 po-python-parse-printf 检查
msgid
是否使用str
变量(如%s
)。因此,翻译msgstr
必须具有相同数量的变量 -
检查 po-python-parse-format 检查
msgid
是否使用str
变量(如{}
)。因此,翻译msgstr
必须具有相同数量的变量 -
检查 po-duplicate-message-definition (消息-id)在所有PO文件条目中
-
检查 po-duplicate-model-definition 验证没有条目共享相同的 'model:' 标签
-
检查 po-pretty-format 检查以下内容:1. 条目按字母顺序排序 2. 行在78列处换行(与Odoo相同) 3. 当msgstr与msgid相同时,清除msgstr
-
检查 po-syntax-error 检查i18n*文件夹中PO文件的语法
帮助
usage: oca-checks-odoo-module [-h] [--no-verbose] [--no-exit] [--disable DISABLE] [--enable ENABLE] [--config CONFIG] [--list-msgs] [--fix] [files_or_modules ...]
positional arguments:
files_or_modules Odoo __manifest__.py paths or Odoo module paths.
options:
-h, --help show this help message and exit
--no-verbose If enabled so disable verbose mode.
--no-exit If enabled so it will not call exit.
--disable DISABLE, -d DISABLE Disable the checker with the given 'check-name', separated by commas.
--enable ENABLE, -e ENABLE Enable the checker with the given 'check-name', separated by commas. Default: All checks are enabled by default
--config CONFIG, -c CONFIG Path to a configuration file (default: .oca_hooks.cfg)
--list-msgs List all currently enabled messages.
--fix Automatically fix files when possible
帮助PO
usage: oca-checks-po [-h] [--no-verbose] [--no-exit] [--disable DISABLE] [--enable ENABLE] [--config CONFIG] [--list-msgs] [--fix] [po_files ...]
positional arguments:
po_files PO files.
options:
-h, --help show this help message and exit
--no-verbose If enabled so disable verbose mode.
--no-exit If enabled so it will not call exit.
--disable DISABLE, -d DISABLE Disable the checker with the given 'check-name', separated by commas.
--enable ENABLE, -e ENABLE Enable the checker with the given 'check-name', separated by commas. Default: All checks are enabled by default
--config CONFIG, -c CONFIG Path to a configuration file (default: .oca_hooks.cfg)
--list-msgs List all currently enabled messages.
--fix Automatically fix files when possible
示例
-
csv-duplicate-record-id
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/ir.model.access.csv#L5 重复CSV记录
data/access_account_account_type
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/ir.model.access.csv#L5 重复CSV记录
-
csv-syntax-error
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/syntax_err_module/ir.model.access.csv#L1 'utf-8' 编码器无法解码位置47的0xf1字节:无效的后续字节
-
manifest-syntax-error
-
xml-create-user-wo-reset-password
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/res_users.xml#L10 record res.users没有
context="{'no_reset_password': True}"
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/res_users.xml#L10 record res.users没有
-
xml-dangerous-filter-wo-user
-
xml-dangerous-qweb-replace-low-priority
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L4 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L7 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L18 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy.xml#L4 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy.xml#L7 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy.xml#L18 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy2.xml#L4 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy2.xml#L7 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy2.xml#L18 从优先级为0 < 99的视图中危险使用
replace
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L4 从优先级为0 < 99的视图中危险使用
-
xml-deprecated-data-node
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/demo/duplicated_id_demo.xml#L3 已过时的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L3 已过时的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L3 已过时的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo.xml#L3 已弃用的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo2.xml#L3 已弃用的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/skip_xml_check.xml#L5 已弃用的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/skip_xml_check_2.xml#L3 已弃用的
<data>
节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/model_view.xml#L3 已弃用的
<data>
节点
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/demo/duplicated_id_demo.xml#L3 已过时的
-
xml-deprecated-openerp-node
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L2 已弃用的
<openerp>
xml 节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L2 已弃用的
<openerp>
xml 节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/model_view.xml#L2 已弃用的
<openerp>
xml 节点 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/res_users.xml#L2 已弃用的
<openerp>
xml 节点
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L2 已弃用的
-
xml-deprecated-qweb-directive
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L7 已弃用的 QWeb 指令
t-esc-options
. 请使用t-options
代替 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L20 已弃用的 QWeb 指令
t-field-options
. 请使用t-options
代替
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L7 已弃用的 QWeb 指令
-
xml-deprecated-tree-attribute
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo.xml#L31 已弃用的 "<tree string=..."
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo.xml#L42 已弃用的 "<tree colors=..."
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo.xml#L53 已弃用的 "<tree fonts=..."
-
xml-duplicate-fields
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo2.xml#L6 xml 字段
name
重复 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo2.xml#L19 xml 字段
model
重复 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo2.xml#L74 xml 字段
arch
重复
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view_odoo2.xml#L6 xml 字段
-
xml-duplicate-record-id
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L5 xml 记录 id
data/view_model_form_noupdate_0
重复 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L5 xml 记录 id
data/view_model_form2_noupdate_0
重复
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L5 xml 记录 id
-
xml-duplicate-template-id
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L3 xml 模板 id
qweb/my_template1_noupdate_0
重复 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L10 xml 模板 id
qweb/my_template2_noupdate_0
重复 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L17 重复的xml模板id
qweb/my_template3_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L21 重复的xml模板id
qweb/my_template4_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L25 重复的xml模板id
qweb/my_template5_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L29 重复的xml模板id
qweb/my_duplicate_template_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L5 重复的xml模板id
data/test_template_1_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L18 重复的xml模板id
data/test_template_2_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L36 重复的xml模板id
data/assets_backend_noupdate_0
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L3 xml 模板 id
-
xml-not-valid-char-link
-
xml-oe-structure-missing-id
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L9 考虑移除class
oe_structure
或为标签添加适当的id。id必须包含oe_structure
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L13 考虑移除class
oe_structure
或为标签添加适当的id。id必须包含oe_structure
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L24 考虑移除class
oe_structure
或为标签添加适当的id。id必须包含oe_structure
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L27 考虑移除class
oe_structure
或为标签添加适当的id。id必须包含oe_structure
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L30 考虑移除class
oe_structure
或为标签添加适当的id。id必须包含oe_structure
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates_disable.xml#L21 考虑移除class
oe_structure
或为标签添加适当的id。id必须包含oe_structure
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/website_templates.xml#L9 考虑移除class
-
xml-record-missing-id
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L21 记录没有id,添加一个唯一的id以创建新记录,使用现有的id来更新它
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L24 记录没有id,添加一个唯一的id以创建新记录,使用现有的id来更新它
-
xml-redundant-module-name
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L15 模块名称冗余
<record id="broken_module.view_model_form2" />
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L15 模块名称冗余
-
xml语法错误
-
xml视图危险替换低优先级
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L25 视图中使用
replace
危险,优先级0 < 99 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L37 视图中使用
replace
危险,优先级0 < 99 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L47 视图中使用
replace
危险,优先级0 < 99 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L70 视图中使用
replace
危险,优先级10 < 99 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L92 视图中使用
replace
危险,优先级10 < 99 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L108 视图中使用
replace
危险,优先级10 < 99 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/skip_xml_check_3.xml#L15 视图中使用
replace
危险,优先级0 < 99
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view2.xml#L25 视图中使用
-
xml路径可翻译项
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L11 使用可翻译xpath
text()
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1.xml#L39 使用可翻译xpath
text()
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy.xml#L31 使用可翻译xpath
text()
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/template1_copy2.xml#L31 使用可翻译xpath
text()
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/model_view.xml#L11 使用可翻译xpath
示例 PO
-
po消息定义重复
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L17 PO消息定义重复
Branch
在第23行和第29行 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L35 PO消息定义重复
Message id toooooooooooooooooooooooooooo...
在第41行 - https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L65 PO消息定义重复
One variable {variable1}
在第71行
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L17 PO消息定义重复
-
po模型定义重复
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L17 模型翻译:ir.model.fields,field_description:broken_module.field_wizard_description 在第29行被定义了多次
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L35 模型翻译:ir.model.fields,field_description2:broken_module.field_wizard_description2 在第41行被定义了多次
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L59 模型:ir.model.fields的字段描述5,在行65中定义了多次
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/i18n/fr.po#L24 模型:ir.model.fields的字段描述2,在行24中定义了多次
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/i18n/fr.po#L31 模型:ir.model.fields的字段描述5,在行31中定义了多次
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/i18n/fr.po#L38 模型:ir.model.fields的字段描述3,在行38中定义了多次
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/i18n/fr.po#L45 模型:ir.model.fields的字段描述4,在行45中定义了多次
-
po-pretty-format
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/ar_unicode.po 格式错误
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/broken_module.pot 格式错误
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po 格式错误
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/xml_semi_empty.po 格式错误
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/eleven_module/i18n/ugly.po 格式错误
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/test_module/i18n/fr.po 格式错误
-
po-python-parse-format
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L53 使用str.format解析翻译字符串时出现错误,IndexError('替换索引1超出位置参数元组范围')
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L59 使用str.format解析翻译字符串时出现错误,IndexError('替换索引1超出位置参数元组范围')
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L65 使用str.format解析翻译字符串时出现错误,KeyError('variable2')
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L71 使用str.format解析翻译字符串时出现错误,KeyError('variable2')
-
po-python-parse-printf
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L47 使用str%variables格式化翻译字符串时出现错误,TypeError('not all arguments converted during string formatting')
- https://github.com/OCA/odoo-pre-commit-hooks/blob/v0.0.33/test_repo/broken_module/i18n/es.po#L83 使用str%variables格式化翻译字符串时出现错误,TypeError('%d格式:需要一个实数,而不是str')
-
po-requires-module
-
po-syntax-error
许可证
本存储库采用AGPL-3.0许可。
OCA,或称Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛应用。
变更
v0.0.33
- [改进] check_odoo_module_po:从错误消息中提取行号(#108)
- [改进] 更好的错误输出(#106)
v0.0.32
- [修复] 禁用全局检查时不必要的执行(#105)
- [参考] github-actions:使用 exclude macosx-latest 对 py old(#104)
- [参考] github-actions:在 cache-key 中添加 arch 以使用 macosx m1 和 intel 兼容性(#103)
- [参考] setup:添加 setuptools 依赖项以构建,相关于https://github.com/pypa/build/issues/98
- [参考] github-actions:仅对 py-latest 使用 macosx-latest,对旧版本使用 macosx-14,相关于https://github.com/actions/setup-python/issues/825\#issuecomment-2096792396
v0.0.31
- [参考] setup:添加 py3.12 支持信息(#98)
- [参考] .github:更新 actions 版本,修复缓存并更新 lints(#97)
- [参考] tests:修复 windows po autofix 单元测试(#96)
v0.0.30
- CI 改进(#93)
- [参考] setup:启用 py311 分类器(#87)
v0.0.29
- [改进] 添加 xml-duplicate-template-id 信息(#82)
- [修复] lints(#86)
- [添加] po-duplicate-model-definition 检查(#85)
- [参考] 不要过滤消息,移动 is_message_enabled(#83)
- [改进] 添加 xml-record-missing-id(#84)
v0.0.28
- [修复] oe-structure-missing-id:更改约束,添加文档(#81)
v0.0.27
- [参考] 改进 xpath 表达式(#80)
v0.0.26
- [改进] 改进 XPath 表达式,仅编译一次,修复假阴性,添加性能测试(#79)
- [添加] pretty-format-po 检查(#76)
- [改进] 添加 xml-oe-structure-missing-id 检查(#78)
- [参考] tests:生成不可变的 readme(不带额外空格)
- [改进] README:添加了配置部分
v0.0.25
- [参考] requirements.txt:更新 polib 以修复问题并改进(#72)
v0.0.24
- [修复] pre-commit:修复 isort 钩子 - RuntimeError The Poetry 配置无效(#71)
v0.0.23
- [修复] 正确的文档(#69)
v0.0.22
- [改进] "xml-view-dangerous-replace-low-priority" 的帮助信息(#68)
- 编写了关于提议重构的文档(#66)
- [修复] ci:更新 flake8 仓库 URL,tox.ini 和 gh actions .yml(#65)
- [参考] hooks:添加对 `` 的支持(#62)
v0.0.21
- [参考] duplicate-xml-fields:仅适用于直接记录的子项(#58)
v0.0.20
- [修复] xml-xpath-translatable-item:修复调用方法 o.amount_to_text() 的假阴性(#57)
v0.0.19
- [修复] setup:向包中添加缺失的 "requirements.txt" 文件(#441)(#55)
v0.0.18
- [修复] checks_odoo_module:支持 "qweb" 清单数据部分的 glob 表达式(#54)
- [改进] oca_pre_commit_hooks:添加 --list-msgs 选项(#53)
- [参考] oca_pre_commit_hooks:静默子进程 git 错误(#52)
v0.0.17
- [改进] oca_pre_commit_hooks:支持从 ENV 中启用/禁用(#38)(#49)
v0.0.16
- [添加] xml-xpath-translatable-item:添加新的检查以识别从 xpath 使用的可变项(#50)
v0.0.15
- [修复] oca_pre_commit_hooks:修复 exit_status 假错误(#48)
v0.0.14
- [改进] oca_pre_commit_hooks:支持配置文件(#41)
v0.0.13
- [参考] pylint_odoo:删除 TODO 注释(#47)
- [参考] requirements:删除未使用的库和 pre-commit 钩子(#45)
- [参考] xml-deprecated-data-node:使用数据节点 sourceline 而不是 odoo 节点(#43)
- [改进] oca_pre_commit_hooks:支持从禁用注释中禁用 XML 检查(#42)
- [参考] README:修复 pypi 软件包名称(#35)
- [参考] oca_pre_commit_hooks:cli_po,cli:添加 cli_po 和 cli 全局(#36)
- [REF] 设置:Match requires-python = ">=3.7" 从 pre-commit 中
- [REF] CI:启用 py3.11
v0.0.12
- [REF] checks_odoo_module_xml:允许存在具有 'groups' 的重复字段 (#32)
- [REF] CI:启用 tox 与 parallels + codecov 兼容 (#33)
v0.0.11
- [REF] codecov:再次启用 codecov
- [REM] missing-readme:检查添加到 pylint-odoo
- [REF] TOX:去除名称,移除 no-cover,与 parallels 选项兼容 (#24)
- [REF] lint:针对 py 包而不是 odoo 模块调整 lint
v0.0.10
- [REF] README:更新 README 并修复自动生成的内容 (#22)
- [REF] checks_odoo_module_po:仅在修改的 PO 文件上运行 (#21)
- [REF] manifest:跳过重复的数据文件 (#20)
v0.0.9
- [FIX] README:修复正则表达式以替换自动生成的内容 (#18)
- [REF] README:如果需要,从 CI 检测 README 是否需要更新 (#17)
v0.0.8
- [REF] README:添加检查示例部分和自动生成它的脚本 (#16)
- [REF] README:添加帮助部分和自动生成它的脚本 (#15)
v0.0.7
- [REF] checks:将 name_checks 改为 name-checks (#14)
- [REF] oca_pre_commit_hooks:在消息中使用更短的路径 (#13)
- [FIX] pre-commit-hooks.yaml:即使 manifest 未更改也运行检查
- [REF] test:移除已修复的 TODO 注释
v0.0.6
- [FIX] oca_pre_commit_hooks:修复具有语法错误的检查 (#8)
v0.0.5
- [REF] oca_pre_commit_hooks:进行小的改进 (#7)
v0.0.4
- [IMP] oca_pre_commit_hooks:启用“启用”检查的功能 (#6)
- [IMP] oca_pre_commit_hooks:添加可用于禁用检查的入口点参数 (#5)
v0.0.3
- [REF] README:移除过时的 CI 构建
v0.0.2
- [REF] CI:重新使用 tox 在 CI 中运行 pre-commit,使用相同的缓存和包
- [ADD] .pre-commit-hooks.yaml:与 pre-commit-hooks 兼容,可以直接用作钩子 ID
v0.0.1
- [ADD] 将 pylint-odoo 检查(与 python 无关)迁移到 pre-commit 钩子 (#2)
- 初始化
项目详情
下载文件
为您的平台下载文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分发
构建分发
oca_odoo_pre_commit_hooks-0.0.33.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fc1829f266bcd8cc28c031fadbbf8d3e2559129f406ea897de8d209df05a48f8 |
|
MD5 | 9c291fc3f64c99fd44c480660b224a0e |
|
BLAKE2b-256 | 7c4462fc32f30213722a2d4251791f27062c91e5f65512e8b3482284c3386d07 |
oca_odoo_pre_commit_hooks-0.0.33-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b05caeb46278f202acabfaa723d04181b6d41decc5ebb32e96c1902b63bf678e |
|
MD5 | 7d5489daf4727a46c8e793efaaaebd06 |
|
BLAKE2b-256 | bcdd7bea3f86465af0f079d0df5a44c540cf052709db8aa3822a96184f0d9918 |