update pylint10, corrije authors manifest
This commit is contained in:
parent
0889cdfc3a
commit
4207afbc3f
9 changed files with 139 additions and 195 deletions
37
.github/copilot-instructions.md
vendored
37
.github/copilot-instructions.md
vendored
|
|
@ -5,12 +5,12 @@
|
|||
Este repositorio contiene addons personalizados y modificados de Odoo 18.0. El proyecto combina:
|
||||
|
||||
- **OCB (Odoo Community Backports)**: Base de Odoo 18.0 community en `/ocb`
|
||||
- **Addons OCA**: Módulos de la comunidad OCA modificados para necesidades específicas
|
||||
- **Addons Custom**: Módulos desarrollados específicamente para este proyecto
|
||||
- **Addons OCA**: Módulos de la comunidad OCA de los que heredan nuestros addons, modificados para adaptarse a nuestras necesidades
|
||||
- **Addons Custom**: Módulos desarrollados por este proyecto
|
||||
|
||||
## Architecture & Stack
|
||||
|
||||
- **Odoo Version**: 18.0
|
||||
- **Odoo Version**: 18.0 (OCB)
|
||||
- **Python Version**: 3.10+
|
||||
- **Framework**: Odoo ORM
|
||||
- **Deployment**: Docker Compose
|
||||
|
|
@ -80,26 +80,22 @@ Este repositorio contiene addons personalizados y modificados de Odoo 18.0. El p
|
|||
|
||||
```bash
|
||||
# Exportar términos a traducir
|
||||
docker-compose exec odoo odoo \
|
||||
--addons-path=/mnt/extra-addons \
|
||||
--i18n-export=/tmp/addon_name.pot \
|
||||
--modules=addon_name \
|
||||
--db=odoo
|
||||
|
||||
# Copiar y renombrar
|
||||
cd addon_name/i18n
|
||||
msgmerge --update es.po addon_name.pot
|
||||
msgmerge --update eu.po addon_name.pot
|
||||
Pedir al usuario generar a través de UI, no sabemos el método correcto para exportar SÓLO las cadenas del addon sin incluir todo el sistema.
|
||||
```
|
||||
|
||||
Usar sólo polib para trataer los archivos .po, msmerge corrompe los archivos.
|
||||
|
||||
```
|
||||
|
||||
5. **Formato de archivos .po**:
|
||||
- Encoding: UTF-8
|
||||
- Content-Type: text/plain; charset=UTF-8
|
||||
- Language codes: `es`, `eu`, `ca`, `gl`, `pt`, `fr`, `it`
|
||||
- Encoding: UTF-8
|
||||
- Content-Type: text/plain; charset=UTF-8
|
||||
- Language codes: `es`, `eu`, `ca`, `gl`, `pt`, `fr`, `it`
|
||||
|
||||
## Project Structure
|
||||
|
||||
```
|
||||
|
||||
addons-cm/
|
||||
├── .github/ # GitHub configs
|
||||
│ └── copilot-instructions.md # Este archivo
|
||||
|
|
@ -110,7 +106,7 @@ addons-cm/
|
|||
├── docker-compose.yml # Configuración Docker
|
||||
├── Makefile # Comandos útiles
|
||||
│
|
||||
├── # === ADDONS OCA MODIFICADOS ===
|
||||
├── # === ADDONS OCA NO MODIFICADOS ===
|
||||
├── account_invoice_triple_discount/ # Triple descuento en facturas (OCA)
|
||||
├── purchase_triple_discount/ # Triple descuento en compras (OCA)
|
||||
├── product_origin/ # Origen del producto (OCA)
|
||||
|
|
@ -123,13 +119,14 @@ addons-cm/
|
|||
├── product_price_category_supplier/ # Extensión categorías precio
|
||||
├── product_sale_price_from_pricelist/ # Auto-cálculo precio venta
|
||||
└── website_sale_aplicoop/ # Sistema eskaera (compras grupo)
|
||||
```
|
||||
|
||||
````
|
||||
|
||||
## Addon References
|
||||
|
||||
**Para arquitectura, detalles de implementación y uso específico de cada addon, consultar su `README.md` individual.**
|
||||
|
||||
### Addons OCA Modificados
|
||||
### Addons OCA No Modificados
|
||||
|
||||
- [account_invoice_triple_discount](../account_invoice_triple_discount/README.rst)
|
||||
- [purchase_triple_discount](../purchase_triple_discount/README.rst)
|
||||
|
|
@ -161,7 +158,7 @@ docker-compose logs -f odoo
|
|||
|
||||
# Ejecutar tests
|
||||
docker-compose exec odoo odoo -d odoo --test-enable --stop-after-init -u addon_name
|
||||
```
|
||||
````
|
||||
|
||||
### Quality Checks
|
||||
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ repos:
|
|||
- "types-requests"
|
||||
- "types-setuptools"
|
||||
- repo: https://github.com/PyCQA/pylint
|
||||
rev: v3.1.1
|
||||
rev: v4.0.4
|
||||
hooks:
|
||||
- id: pylint
|
||||
name: pylint with optional checks
|
||||
|
|
@ -134,7 +134,7 @@ repos:
|
|||
- --exit-zero
|
||||
verbose: true
|
||||
additional_dependencies: &pylint_deps
|
||||
- pylint-odoo==9.1.2
|
||||
- pylint-odoo==10.0.0
|
||||
- id: pylint
|
||||
name: pylint with mandatory checks
|
||||
args:
|
||||
|
|
|
|||
89
.pylintrc
89
.pylintrc
|
|
@ -2,14 +2,6 @@
|
|||
load-plugins=pylint_odoo
|
||||
score=n
|
||||
|
||||
[ODOOLINT]
|
||||
readme_template_url="https://github.com/OCA/maintainer-tools/blob/master/template/module/README.rst"
|
||||
manifest_required_authors=Odoo Community Association (OCA)
|
||||
manifest_required_keys=license
|
||||
manifest_deprecated_keys=description,active
|
||||
license_allowed=AGPL-3,GPL-2,GPL-2 or any later version,GPL-3,GPL-3 or any later version,LGPL-3,Other OSI approved licence,Other proprietary
|
||||
valid_odoo_versions=16.0,17.0,18.0
|
||||
|
||||
[MESSAGES CONTROL]
|
||||
disable=all
|
||||
|
||||
|
|
@ -22,67 +14,76 @@ disable=all
|
|||
# checks.
|
||||
|
||||
enable=anomalous-backslash-in-string,
|
||||
api-one-deprecated,
|
||||
api-one-multi-together,
|
||||
assignment-from-none,
|
||||
attribute-deprecated,
|
||||
class-camelcase,
|
||||
attribute-string-redundant,
|
||||
bad-builtin-groupby,
|
||||
category-allowed,
|
||||
category-allowed-app,
|
||||
consider-merging-classes-inherited,
|
||||
context-overridden,
|
||||
copy-wo-api-one,
|
||||
dangerous-default-value,
|
||||
dangerous-view-replace-wo-priority,
|
||||
deprecated-name-get,
|
||||
deprecated-odoo-model-method,
|
||||
development-status-allowed,
|
||||
duplicate-id-csv,
|
||||
duplicate-key,
|
||||
duplicate-xml-fields,
|
||||
duplicate-xml-record-id,
|
||||
eval-referenced,
|
||||
eval-used,
|
||||
incoherent-interpreter-exec-perm,
|
||||
except-pass,
|
||||
external-request-timeout,
|
||||
inheritable-method-lambda,
|
||||
inheritable-method-string,
|
||||
invalid-commit,
|
||||
invalid-email,
|
||||
license-allowed,
|
||||
manifest-author-string,
|
||||
manifest-behind-migrations,
|
||||
manifest-data-duplicated,
|
||||
manifest-deprecated-key,
|
||||
manifest-external-assets,
|
||||
manifest-maintainers-list,
|
||||
manifest-required-author,
|
||||
manifest-required-key,
|
||||
manifest-required-key-app,
|
||||
manifest-superfluous-key,
|
||||
manifest-version-format,
|
||||
method-compute,
|
||||
method-inverse,
|
||||
method-required-super,
|
||||
method-search,
|
||||
missing-import-error,
|
||||
missing-manifest-dependency,
|
||||
openerp-exception-warning,
|
||||
missing-odoo-file,
|
||||
missing-odoo-file-app,
|
||||
missing-readme,
|
||||
missing-return,
|
||||
no-raise-unlink,
|
||||
no-search-all,
|
||||
no-wizard-in-models,
|
||||
no-write-in-compute,
|
||||
odoo-addons-relative-import,
|
||||
odoo-exception-warning,
|
||||
pointless-statement,
|
||||
pointless-string-statement,
|
||||
prefer-env-translation,
|
||||
print-used,
|
||||
prohibited-method-override,
|
||||
redundant-keyword-arg,
|
||||
redundant-modulename-xml,
|
||||
reimported,
|
||||
relative-import,
|
||||
return-in-init,
|
||||
rst-syntax-error,
|
||||
renamed-field-parameter,
|
||||
resource-not-exist,
|
||||
sql-injection,
|
||||
super-method-mismatch,
|
||||
test-folder-imported,
|
||||
too-few-format-args,
|
||||
translation-contains-variable,
|
||||
translation-field,
|
||||
translation-format-interpolation,
|
||||
translation-format-truncated,
|
||||
translation-fstring-interpolation,
|
||||
translation-not-lazy,
|
||||
translation-positional-used,
|
||||
translation-required,
|
||||
unreachable,
|
||||
translation-too-few-args,
|
||||
translation-too-many-args,
|
||||
translation-unsupported-format,
|
||||
use-vim-comment,
|
||||
wrong-tabs-instead-of-spaces,
|
||||
xml-syntax-error
|
||||
# messages that do not cause the lint step to fail
|
||||
consider-merging-classes-inherited,
|
||||
create-user-wo-reset-password,
|
||||
deprecated-module,
|
||||
file-not-used,
|
||||
invalid-commit,
|
||||
missing-newline-extrafiles,
|
||||
missing-readme,
|
||||
no-utf8-coding-comment,
|
||||
odoo-addons-relative-import,
|
||||
old-api7-method-defined,
|
||||
redefined-builtin,
|
||||
too-complex,
|
||||
unnecessary-utf8-coding-comment
|
||||
website-manifest-key-not-valid-uri
|
||||
|
||||
[REPORTS]
|
||||
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
|
||||
|
|
|
|||
|
|
@ -2,65 +2,58 @@
|
|||
load-plugins=pylint_odoo
|
||||
score=n
|
||||
|
||||
[ODOOLINT]
|
||||
readme_template_url="https://github.com/OCA/maintainer-tools/blob/master/template/module/README.rst"
|
||||
manifest_required_authors=Odoo Community Association (OCA)
|
||||
manifest_required_keys=license
|
||||
manifest_deprecated_keys=description,active
|
||||
license_allowed=AGPL-3,GPL-2,GPL-2 or any later version,GPL-3,GPL-3 or any later version,LGPL-3,Other OSI approved licence,Other proprietary
|
||||
valid_odoo_versions=16.0,17.0,18.0
|
||||
|
||||
[MESSAGES CONTROL]
|
||||
disable=all
|
||||
|
||||
enable=anomalous-backslash-in-string,
|
||||
api-one-deprecated,
|
||||
api-one-multi-together,
|
||||
assignment-from-none,
|
||||
attribute-deprecated,
|
||||
class-camelcase,
|
||||
consider-merging-classes-inherited,
|
||||
context-overridden,
|
||||
copy-wo-api-one,
|
||||
dangerous-default-value,
|
||||
dangerous-view-replace-wo-priority,
|
||||
deprecated-name-get,
|
||||
deprecated-odoo-model-method,
|
||||
development-status-allowed,
|
||||
duplicate-id-csv,
|
||||
duplicate-key,
|
||||
duplicate-xml-fields,
|
||||
duplicate-xml-record-id,
|
||||
eval-referenced,
|
||||
eval-used,
|
||||
incoherent-interpreter-exec-perm,
|
||||
except-pass,
|
||||
external-request-timeout,
|
||||
inheritable-method-lambda,
|
||||
inheritable-method-string,
|
||||
invalid-commit,
|
||||
license-allowed,
|
||||
manifest-author-string,
|
||||
manifest-behind-migrations,
|
||||
manifest-data-duplicated,
|
||||
manifest-deprecated-key,
|
||||
manifest-maintainers-list,
|
||||
manifest-required-author,
|
||||
manifest-required-key,
|
||||
manifest-superfluous-key,
|
||||
manifest-version-format,
|
||||
method-compute,
|
||||
method-inverse,
|
||||
method-required-super,
|
||||
method-search,
|
||||
missing-import-error,
|
||||
missing-manifest-dependency,
|
||||
openerp-exception-warning,
|
||||
missing-readme,
|
||||
missing-return,
|
||||
no-raise-unlink,
|
||||
no-write-in-compute,
|
||||
odoo-addons-relative-import,
|
||||
odoo-exception-warning,
|
||||
pointless-statement,
|
||||
pointless-string-statement,
|
||||
print-used,
|
||||
prohibited-method-override,
|
||||
redundant-keyword-arg,
|
||||
redundant-modulename-xml,
|
||||
reimported,
|
||||
relative-import,
|
||||
return-in-init,
|
||||
rst-syntax-error,
|
||||
renamed-field-parameter,
|
||||
resource-not-exist,
|
||||
sql-injection,
|
||||
test-folder-imported,
|
||||
too-few-format-args,
|
||||
translation-field,
|
||||
translation-positional-used,
|
||||
translation-required,
|
||||
unreachable,
|
||||
use-vim-comment,
|
||||
wrong-tabs-instead-of-spaces,
|
||||
xml-syntax-error
|
||||
use-vim-comment
|
||||
|
||||
[REPORTS]
|
||||
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
# Copyright 2025
|
||||
# Copyright 2025 - Today Criptomart
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
{
|
||||
{ # noqa: B018
|
||||
"name": "Account Invoice Triple Discount Readonly",
|
||||
"version": "18.0.1.0.0",
|
||||
"summary": "Make total discount readonly and fix discount2/discount3 write issue",
|
||||
"license": "AGPL-3",
|
||||
"author": "Criptomart",
|
||||
"website": "https://github.com/OCA/account-invoicing",
|
||||
"author": "Odoo Community Association (OCA), Criptomart",
|
||||
"website": "https://git.criptomart.net/criptomart/addons-cm",
|
||||
"depends": ["account_invoice_triple_discount", "purchase_triple_discount"],
|
||||
"data": [],
|
||||
"installable": True,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
from odoo import fields, models
|
||||
from odoo import fields
|
||||
from odoo import models
|
||||
|
||||
|
||||
class TripleDiscountMixin(models.AbstractModel):
|
||||
|
|
|
|||
|
|
@ -1,39 +1,22 @@
|
|||
# Copyright 2026 Your Company
|
||||
# Copyright 2026 Criptomart
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
{
|
||||
'name': 'Product Price Category - Supplier Extension',
|
||||
'version': '18.0.1.0.0',
|
||||
'category': 'Product',
|
||||
'summary': 'Add default price category to suppliers and bulk update products',
|
||||
'description': '''
|
||||
Extends res.partner (suppliers) with a default price category field.
|
||||
Allows bulk updating all products from a supplier with the default category
|
||||
via a wizard with confirmation dialog.
|
||||
|
||||
Features:
|
||||
- Add default price category to supplier partner
|
||||
- Wizard to bulk update all supplier's products
|
||||
- Column visibility toggle in partner tree view
|
||||
- Access restricted to sales managers
|
||||
''',
|
||||
'author': 'Your Company',
|
||||
'license': 'AGPL-3',
|
||||
'depends': [
|
||||
'product_price_category',
|
||||
'sales_team',
|
||||
'product_main_seller'
|
||||
{ # noqa: B018
|
||||
"name": "Product Price Category - Supplier Extension",
|
||||
"version": "18.0.1.0.0",
|
||||
"category": "Product",
|
||||
"summary": "Add default price category to suppliers and bulk update products",
|
||||
"author": "Odoo Community Association (OCA), Criptomart",
|
||||
"license": "AGPL-3",
|
||||
"depends": ["product_price_category", "sales_team", "product_main_seller"],
|
||||
"data": [
|
||||
"security/ir.model.access.csv",
|
||||
"views/res_partner_views.xml",
|
||||
"views/wizard_update_product_category.xml",
|
||||
],
|
||||
'data': [
|
||||
'security/ir.model.access.csv',
|
||||
'views/res_partner_views.xml',
|
||||
'views/wizard_update_product_category.xml',
|
||||
"i18n": [
|
||||
"i18n/product_price_category_supplier.pot",
|
||||
"i18n/es.po",
|
||||
"i18n/eu.po",
|
||||
],
|
||||
'i18n': [
|
||||
'i18n/product_price_category_supplier.pot',
|
||||
'i18n/es.po',
|
||||
'i18n/eu.po',
|
||||
],
|
||||
'installable': True,
|
||||
'auto_install': False,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
{
|
||||
# Copyright 2025 - Today Criptomart
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
{ # noqa: B018
|
||||
"name": "Product Sale Price from Pricelist",
|
||||
"version": "18.0.1.0.0",
|
||||
"category": "product",
|
||||
"summary": "Set sale price from pricelist based on last purchase price",
|
||||
"description": """
|
||||
Set sale price from pricelist based on last purchase price
|
||||
""",
|
||||
"author": "Criptomart",
|
||||
"website": "https://criptomart.net",
|
||||
"author": "Odoo Community Association (OCA), Criptomart",
|
||||
"maintainers": ["Criptomart"],
|
||||
"website": "https://git.criptomart.net/criptomart/addons-cm",
|
||||
"license": "AGPL-3",
|
||||
"depends": [
|
||||
"product_get_price_helper",
|
||||
|
|
@ -21,5 +21,4 @@
|
|||
"views/actions.xml",
|
||||
"views/product_view.xml",
|
||||
],
|
||||
"installable": True,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,40 +1,14 @@
|
|||
# Copyright 2025 Criptomart
|
||||
# Copyright 2025 - Today Criptomart
|
||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl)
|
||||
|
||||
{
|
||||
{ # noqa: B018
|
||||
"name": "Website Sale - Aplicoop",
|
||||
"version": "18.0.1.0.2",
|
||||
"version": "18.0.1.0.3",
|
||||
"category": "Website/Sale",
|
||||
"summary": "Modern replacement of legacy Aplicoop - Collaborative consumption group orders",
|
||||
"description": """
|
||||
Website Sale - Aplicoop
|
||||
=======================
|
||||
|
||||
A modern Odoo 18 module that replaces the legacy Aplicoop application with
|
||||
a complete, scalable solution for managing collaborative consumption group
|
||||
orders (eskaera in Basque).
|
||||
|
||||
Features
|
||||
--------
|
||||
|
||||
* Group Order Management: Create and manage group purchasing periods
|
||||
* Separate Carts: Each user has an independent cart per group order
|
||||
* Product Associations: Link products, suppliers, and categories to orders
|
||||
* Web Interface: Responsive product catalog and checkout
|
||||
* State Machine: Draft → Open → Closed/Cancelled workflow
|
||||
* Sales Integration: Automatic conversion to Odoo sale.order
|
||||
* Modern UI: AJAX-based cart without page reloads
|
||||
* Security: Enterprise-ready with access control
|
||||
|
||||
Installation
|
||||
-----------
|
||||
|
||||
Add to Odoo addons directory and install via Apps menu.
|
||||
See README.rst for detailed documentation.
|
||||
""",
|
||||
"author": "Criptomart",
|
||||
"author": "Odoo Community Association (OCA), Criptomart",
|
||||
"maintainers": ["Criptomart"],
|
||||
"website": "https://criptomart.net",
|
||||
"website": "https://git.criptomart.net/criptomart/addons-cm",
|
||||
"license": "AGPL-3",
|
||||
"depends": [
|
||||
"website_sale",
|
||||
|
|
@ -77,7 +51,5 @@ See README.rst for detailed documentation.
|
|||
"website_sale_aplicoop/static/tests/test_realtime_search.js",
|
||||
],
|
||||
},
|
||||
"installable": True,
|
||||
"auto_install": False,
|
||||
"application": True,
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue