mirror of
https://github.com/OCA/contract.git
synced 2025-02-13 17:57:24 +02:00
[13.0][ADD] copier
This commit is contained in:
17
.copier-answers.yml
Normal file
17
.copier-answers.yml
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# Do NOT update manually; changes here will be overwritten by Copier
|
||||||
|
_commit: v1.7.0
|
||||||
|
_src_path: https://github.com/OCA/oca-addons-repo-template.git
|
||||||
|
ci: GitHub
|
||||||
|
dependency_installation_mode: PIP
|
||||||
|
generate_requirements_txt: true
|
||||||
|
include_wkhtmltopdf: false
|
||||||
|
odoo_version: 13.0
|
||||||
|
org_name: Odoo Community Association (OCA)
|
||||||
|
org_slug: OCA
|
||||||
|
rebel_module_groups: []
|
||||||
|
repo_description: null
|
||||||
|
repo_name: Contracts management
|
||||||
|
repo_slug: contract
|
||||||
|
repo_website: https://github.com/OCA/contract
|
||||||
|
travis_apt_packages: []
|
||||||
|
travis_apt_sources: []
|
||||||
@@ -1,9 +1,16 @@
|
|||||||
env:
|
env:
|
||||||
browser: true
|
browser: true
|
||||||
|
es6: true
|
||||||
|
|
||||||
# See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449
|
# See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449
|
||||||
parserOptions:
|
parserOptions:
|
||||||
ecmaVersion: 2017
|
ecmaVersion: 2019
|
||||||
|
|
||||||
|
overrides:
|
||||||
|
- files:
|
||||||
|
- "**/*.esm.js"
|
||||||
|
parserOptions:
|
||||||
|
sourceType: module
|
||||||
|
|
||||||
# Globals available in Odoo that shouldn't produce errorings
|
# Globals available in Odoo that shouldn't produce errorings
|
||||||
globals:
|
globals:
|
||||||
@@ -14,7 +21,7 @@ globals:
|
|||||||
moment: readonly
|
moment: readonly
|
||||||
odoo: readonly
|
odoo: readonly
|
||||||
openerp: readonly
|
openerp: readonly
|
||||||
Promise: readonly
|
owl: readonly
|
||||||
|
|
||||||
# Styling is handled by Prettier, so we only need to enable AST rules;
|
# Styling is handled by Prettier, so we only need to enable AST rules;
|
||||||
# see https://github.com/OCA/maintainer-quality-tools/pull/618#issuecomment-558576890
|
# see https://github.com/OCA/maintainer-quality-tools/pull/618#issuecomment-558576890
|
||||||
|
|||||||
4
.flake8
4
.flake8
@@ -1,5 +1,5 @@
|
|||||||
[flake8]
|
[flake8]
|
||||||
max-line-length = 80
|
max-line-length = 88
|
||||||
max-complexity = 16
|
max-complexity = 16
|
||||||
# B = bugbear
|
# B = bugbear
|
||||||
# B9 = bugbear opinionated (incl line length)
|
# B9 = bugbear opinionated (incl line length)
|
||||||
@@ -8,3 +8,5 @@ select = C,E,F,W,B,B9
|
|||||||
# E501: flake8 line length (covered by bugbear B950)
|
# E501: flake8 line length (covered by bugbear B950)
|
||||||
# W503: line break before binary operator (black behaviour)
|
# W503: line break before binary operator (black behaviour)
|
||||||
ignore = E203,E501,W503
|
ignore = E203,E501,W503
|
||||||
|
per-file-ignores=
|
||||||
|
__init__.py:F401
|
||||||
|
|||||||
37
.github/workflows/pre-commit.yml
vendored
Normal file
37
.github/workflows/pre-commit.yml
vendored
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
name: pre-commit
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- "13.0*"
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- "13.0"
|
||||||
|
- "13.0-ocabot-*"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
pre-commit:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: "3.8"
|
||||||
|
- name: Get python version
|
||||||
|
run: echo "PY=$(python -VV | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
|
||||||
|
- uses: actions/cache@v1
|
||||||
|
with:
|
||||||
|
path: ~/.cache/pre-commit
|
||||||
|
key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}
|
||||||
|
- name: Install pre-commit
|
||||||
|
run: pip install pre-commit
|
||||||
|
- name: Run pre-commit
|
||||||
|
run: pre-commit run --all-files --show-diff-on-failure --color=always
|
||||||
|
- name: Check that all files generated by pre-commit are in git
|
||||||
|
run: |
|
||||||
|
newfiles="$(git ls-files --others --exclude-from=.gitignore)"
|
||||||
|
if [ "$newfiles" != "" ] ; then
|
||||||
|
echo "Please check-in the following files:"
|
||||||
|
echo "$newfiles"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
69
.github/workflows/stale.yml
vendored
Normal file
69
.github/workflows/stale.yml
vendored
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
name: Mark stale issues and pull requests
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: "0 12 * * 0"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
stale:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Stale PRs and issues policy
|
||||||
|
uses: actions/stale@v4
|
||||||
|
with:
|
||||||
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
# General settings.
|
||||||
|
ascending: true
|
||||||
|
remove-stale-when-updated: true
|
||||||
|
# Pull Requests settings.
|
||||||
|
# 120+30 day stale policy for PRs
|
||||||
|
# * Except PRs marked as "no stale"
|
||||||
|
days-before-pr-stale: 120
|
||||||
|
days-before-pr-close: 30
|
||||||
|
exempt-pr-labels: "no stale"
|
||||||
|
stale-pr-label: "stale"
|
||||||
|
stale-pr-message: >
|
||||||
|
There hasn't been any activity on this pull request in the past 4 months, so
|
||||||
|
it has been marked as stale and it will be closed automatically if no
|
||||||
|
further activity occurs in the next 30 days.
|
||||||
|
|
||||||
|
If you want this PR to never become stale, please ask a PSC member to apply
|
||||||
|
the "no stale" label.
|
||||||
|
# Issues settings.
|
||||||
|
# 180+30 day stale policy for open issues
|
||||||
|
# * Except Issues marked as "no stale"
|
||||||
|
days-before-issue-stale: 180
|
||||||
|
days-before-issue-close: 30
|
||||||
|
exempt-issue-labels: "no stale,needs more information"
|
||||||
|
stale-issue-label: "stale"
|
||||||
|
stale-issue-message: >
|
||||||
|
There hasn't been any activity on this issue in the past 6 months, so it has
|
||||||
|
been marked as stale and it will be closed automatically if no further
|
||||||
|
activity occurs in the next 30 days.
|
||||||
|
|
||||||
|
If you want this issue to never become stale, please ask a PSC member to
|
||||||
|
apply the "no stale" label.
|
||||||
|
|
||||||
|
# 15+30 day stale policy for issues pending more information
|
||||||
|
# * Issues that are pending more information
|
||||||
|
# * Except Issues marked as "no stale"
|
||||||
|
- name: Needs more information stale issues policy
|
||||||
|
uses: actions/stale@v4
|
||||||
|
with:
|
||||||
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
ascending: true
|
||||||
|
only-labels: "needs more information"
|
||||||
|
exempt-issue-labels: "no stale"
|
||||||
|
days-before-stale: 15
|
||||||
|
days-before-close: 30
|
||||||
|
days-before-pr-stale: -1
|
||||||
|
days-before-pr-close: -1
|
||||||
|
remove-stale-when-updated: true
|
||||||
|
stale-issue-label: "stale"
|
||||||
|
stale-issue-message: >
|
||||||
|
This issue needs more information and there hasn't been any activity
|
||||||
|
recently, so it has been marked as stale and it will be closed automatically
|
||||||
|
if no further activity occurs in the next 30 days.
|
||||||
|
|
||||||
|
If you think this is a mistake, please ask a PSC member to remove the "needs
|
||||||
|
more information" label.
|
||||||
69
.github/workflows/test.yml
vendored
Normal file
69
.github/workflows/test.yml
vendored
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
name: tests
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- "13.0*"
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- "13.0"
|
||||||
|
- "13.0-ocabot-*"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
unreleased-deps:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Detect unreleased dependencies
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- run: |
|
||||||
|
for reqfile in requirements.txt test-requirements.txt ; do
|
||||||
|
if [ -f ${reqfile} ] ; then
|
||||||
|
result=0
|
||||||
|
# reject non-comment lines that contain a / (i.e. URLs, relative paths)
|
||||||
|
grep "^[^#].*/" ${reqfile} || result=$?
|
||||||
|
if [ $result -eq 0 ] ; then
|
||||||
|
echo "Unreleased dependencies found in ${reqfile}."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container: ${{ matrix.container }}
|
||||||
|
name: ${{ matrix.name }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
- container: ghcr.io/oca/oca-ci/py3.6-odoo13.0:latest
|
||||||
|
makepot: "true"
|
||||||
|
name: test with Odoo
|
||||||
|
- container: ghcr.io/oca/oca-ci/py3.6-ocb13.0:latest
|
||||||
|
name: test with OCB
|
||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:9.6
|
||||||
|
env:
|
||||||
|
POSTGRES_USER: odoo
|
||||||
|
POSTGRES_PASSWORD: odoo
|
||||||
|
POSTGRES_DB: odoo
|
||||||
|
ports:
|
||||||
|
- 5432:5432
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
persist-credentials: false
|
||||||
|
- name: Install addons and dependencies
|
||||||
|
run: oca_install_addons
|
||||||
|
- name: Check licenses
|
||||||
|
run: manifestoo -d . check-licenses
|
||||||
|
- name: Check development status
|
||||||
|
run: manifestoo -d . check-dev-status --default-dev-status=Beta
|
||||||
|
- name: Initialize test db
|
||||||
|
run: oca_init_test_database
|
||||||
|
- name: Run tests
|
||||||
|
run: oca_run_tests
|
||||||
|
- uses: codecov/codecov-action@v1
|
||||||
|
- name: Update .pot files
|
||||||
|
run: oca_export_and_push_pot https://x-access-token:${{ secrets.GIT_PUSH_TOKEN }}@github.com/${{ github.repository }}
|
||||||
|
if: ${{ matrix.makepot == 'true' && github.event_name == 'push' && github.repository_owner == 'OCA' }}
|
||||||
19
.gitignore
vendored
19
.gitignore
vendored
@@ -1,6 +1,8 @@
|
|||||||
# Byte-compiled / optimized / DLL files
|
# Byte-compiled / optimized / DLL files
|
||||||
__pycache__/
|
__pycache__/
|
||||||
*.py[cod]
|
*.py[cod]
|
||||||
|
/.venv
|
||||||
|
/.pytest_cache
|
||||||
|
|
||||||
# C extensions
|
# C extensions
|
||||||
*.so
|
*.so
|
||||||
@@ -41,6 +43,19 @@ coverage.xml
|
|||||||
# Pycharm
|
# Pycharm
|
||||||
.idea
|
.idea
|
||||||
|
|
||||||
|
# Eclipse
|
||||||
|
.settings
|
||||||
|
|
||||||
|
# Visual Studio cache/options directory
|
||||||
|
.vs/
|
||||||
|
.vscode
|
||||||
|
|
||||||
|
# OSX Files
|
||||||
|
.DS_Store
|
||||||
|
|
||||||
|
# Django stuff:
|
||||||
|
*.log
|
||||||
|
|
||||||
# Mr Developer
|
# Mr Developer
|
||||||
.mr.developer.cfg
|
.mr.developer.cfg
|
||||||
.project
|
.project
|
||||||
@@ -56,5 +71,5 @@ docs/_build/
|
|||||||
*~
|
*~
|
||||||
*.swp
|
*.swp
|
||||||
|
|
||||||
# OSX Files
|
# OCA rules
|
||||||
*.DS_Store
|
!static/lib/
|
||||||
|
|||||||
@@ -10,3 +10,4 @@ known_odoo=odoo
|
|||||||
known_odoo_addons=odoo.addons
|
known_odoo_addons=odoo.addons
|
||||||
sections=FUTURE,STDLIB,THIRDPARTY,ODOO,ODOO_ADDONS,FIRSTPARTY,LOCALFOLDER
|
sections=FUTURE,STDLIB,THIRDPARTY,ODOO,ODOO_ADDONS,FIRSTPARTY,LOCALFOLDER
|
||||||
default_section=THIRDPARTY
|
default_section=THIRDPARTY
|
||||||
|
ensure_newline_before_comments = True
|
||||||
|
|||||||
@@ -1,7 +1,11 @@
|
|||||||
exclude: |
|
exclude: |
|
||||||
(?x)
|
(?x)
|
||||||
|
# NOT INSTALLABLE ADDONS
|
||||||
|
# END NOT INSTALLABLE ADDONS
|
||||||
# Files and folders generated by bots, to avoid loops
|
# Files and folders generated by bots, to avoid loops
|
||||||
^setup/|/static/description/index\.html$|
|
^setup/|/static/description/index\.html$|
|
||||||
|
# We don't want to mess with tool-generated files
|
||||||
|
.svg$|/tests/([^/]+/)?cassettes/|^.copier-answers.yml$|^.github/|
|
||||||
# Maybe reactivate this when all README files include prettier ignore tags?
|
# Maybe reactivate this when all README files include prettier ignore tags?
|
||||||
^README\.md$|
|
^README\.md$|
|
||||||
# Library files can have extraneous formatting (even minimized)
|
# Library files can have extraneous formatting (even minimized)
|
||||||
@@ -14,25 +18,48 @@ default_language_version:
|
|||||||
python: python3
|
python: python3
|
||||||
node: "14.13.0"
|
node: "14.13.0"
|
||||||
repos:
|
repos:
|
||||||
|
- repo: local
|
||||||
|
hooks:
|
||||||
|
# These files are most likely copier diff rejection junks; if found,
|
||||||
|
# review them manually, fix the problem (if needed) and remove them
|
||||||
|
- id: forbidden-files
|
||||||
|
name: forbidden files
|
||||||
|
entry: found forbidden files; remove them
|
||||||
|
language: fail
|
||||||
|
files: "\\.rej$"
|
||||||
|
- repo: https://github.com/oca/maintainer-tools
|
||||||
|
rev: ab1d7f6
|
||||||
|
hooks:
|
||||||
|
# update the NOT INSTALLABLE ADDONS section above
|
||||||
|
- id: oca-update-pre-commit-excluded-addons
|
||||||
|
- id: oca-fix-manifest-website
|
||||||
|
args: ["https://github.com/OCA/contract"]
|
||||||
|
- repo: https://github.com/myint/autoflake
|
||||||
|
rev: v1.4
|
||||||
|
hooks:
|
||||||
|
- id: autoflake
|
||||||
|
args:
|
||||||
|
- --expand-star-imports
|
||||||
|
- --ignore-init-module-imports
|
||||||
|
- --in-place
|
||||||
|
- --remove-all-unused-imports
|
||||||
|
- --remove-duplicate-keys
|
||||||
|
- --remove-unused-variables
|
||||||
- repo: https://github.com/psf/black
|
- repo: https://github.com/psf/black
|
||||||
rev: 19.10b0
|
rev: 19.10b0
|
||||||
hooks:
|
hooks:
|
||||||
- id: black
|
- id: black
|
||||||
- repo: https://github.com/prettier/pre-commit
|
additional_dependencies: ["click<8.1.0"]
|
||||||
rev: "v1.19.1"
|
- repo: https://github.com/pre-commit/mirrors-prettier
|
||||||
|
rev: v1.19.1
|
||||||
hooks:
|
hooks:
|
||||||
- id: prettier
|
- id: prettier
|
||||||
# TODO Avoid awebdeveloper/pre-commit-prettier if possible
|
name: prettier (with plugin-xml)
|
||||||
# HACK https://github.com/prettier/prettier/issues/7407
|
entry: prettier --write --list-different
|
||||||
- repo: https://github.com/awebdeveloper/pre-commit-prettier
|
|
||||||
rev: v0.0.1
|
|
||||||
hooks:
|
|
||||||
- id: prettier
|
|
||||||
name: prettier xml plugin
|
|
||||||
additional_dependencies:
|
additional_dependencies:
|
||||||
- "prettier@1.19.1"
|
- "prettier@1.19.1"
|
||||||
- "@prettier/plugin-xml@0.7.2"
|
- "@prettier/plugin-xml@0.7.2"
|
||||||
files: \.xml$
|
files: \.(css|htm|html|js|json|jsx|less|md|scss|toml|ts|xml|yaml|yml)$
|
||||||
- repo: https://github.com/pre-commit/mirrors-eslint
|
- repo: https://github.com/pre-commit/mirrors-eslint
|
||||||
rev: v6.8.0
|
rev: v6.8.0
|
||||||
hooks:
|
hooks:
|
||||||
@@ -63,34 +90,11 @@ repos:
|
|||||||
- id: check-xml
|
- id: check-xml
|
||||||
- id: mixed-line-ending
|
- id: mixed-line-ending
|
||||||
args: ["--fix=lf"]
|
args: ["--fix=lf"]
|
||||||
- repo: https://gitlab.com/pycqa/flake8
|
|
||||||
rev: 3.7.9
|
|
||||||
hooks:
|
|
||||||
- id: flake8
|
|
||||||
name: flake8 except __init__.py
|
|
||||||
exclude: /__init__\.py$
|
|
||||||
additional_dependencies: ["flake8-bugbear==19.8.0"]
|
|
||||||
- id: flake8
|
|
||||||
name: flake8 only __init__.py
|
|
||||||
args: ["--extend-ignore=F401"] # ignore unused imports in __init__.py
|
|
||||||
files: /__init__\.py$
|
|
||||||
additional_dependencies: ["flake8-bugbear==19.8.0"]
|
|
||||||
- repo: https://github.com/pre-commit/mirrors-pylint
|
|
||||||
rev: v2.5.3
|
|
||||||
hooks:
|
|
||||||
- id: pylint
|
|
||||||
name: pylint with optional checks
|
|
||||||
args: ["--rcfile=.pylintrc", "--exit-zero"]
|
|
||||||
verbose: true
|
|
||||||
additional_dependencies: ["pylint-odoo==3.5.0"]
|
|
||||||
- id: pylint
|
|
||||||
name: pylint with mandatory checks
|
|
||||||
args: ["--rcfile=.pylintrc-mandatory"]
|
|
||||||
additional_dependencies: ["pylint-odoo==3.5.0"]
|
|
||||||
- repo: https://github.com/asottile/pyupgrade
|
- repo: https://github.com/asottile/pyupgrade
|
||||||
rev: v1.26.2
|
rev: v1.26.2
|
||||||
hooks:
|
hooks:
|
||||||
- id: pyupgrade
|
- id: pyupgrade
|
||||||
|
args: ["--keep-percent-format"]
|
||||||
- repo: https://github.com/pre-commit/mirrors-isort
|
- repo: https://github.com/pre-commit/mirrors-isort
|
||||||
rev: v4.3.21
|
rev: v4.3.21
|
||||||
hooks:
|
hooks:
|
||||||
@@ -101,3 +105,25 @@ repos:
|
|||||||
rev: 2.5.2
|
rev: 2.5.2
|
||||||
hooks:
|
hooks:
|
||||||
- id: setuptools-odoo-make-default
|
- id: setuptools-odoo-make-default
|
||||||
|
- repo: https://gitlab.com/pycqa/flake8
|
||||||
|
rev: 3.7.9
|
||||||
|
hooks:
|
||||||
|
- id: flake8
|
||||||
|
name: flake8
|
||||||
|
additional_dependencies: ["flake8-bugbear==19.8.0"]
|
||||||
|
- repo: https://github.com/pre-commit/mirrors-pylint
|
||||||
|
rev: v2.5.3
|
||||||
|
hooks:
|
||||||
|
- id: pylint
|
||||||
|
name: pylint with optional checks
|
||||||
|
args:
|
||||||
|
- --rcfile=.pylintrc
|
||||||
|
- --exit-zero
|
||||||
|
verbose: true
|
||||||
|
additional_dependencies: &pylint_deps
|
||||||
|
- pylint-odoo==3.5.0
|
||||||
|
- id: pylint
|
||||||
|
name: pylint with mandatory checks
|
||||||
|
args:
|
||||||
|
- --rcfile=.pylintrc-mandatory
|
||||||
|
additional_dependencies: *pylint_deps
|
||||||
|
|||||||
@@ -5,4 +5,4 @@ printWidth: 88
|
|||||||
proseWrap: always
|
proseWrap: always
|
||||||
semi: true
|
semi: true
|
||||||
trailingComma: "es5"
|
trailingComma: "es5"
|
||||||
xmlWhitespaceSensitivity: "ignore"
|
xmlWhitespaceSensitivity: "strict"
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
|
||||||
|
|
||||||
[MASTER]
|
[MASTER]
|
||||||
load-plugins=pylint_odoo
|
load-plugins=pylint_odoo
|
||||||
score=n
|
score=n
|
||||||
@@ -46,8 +48,6 @@ enable=anomalous-backslash-in-string,
|
|||||||
method-inverse,
|
method-inverse,
|
||||||
method-required-super,
|
method-required-super,
|
||||||
method-search,
|
method-search,
|
||||||
missing-import-error,
|
|
||||||
missing-manifest-dependency,
|
|
||||||
openerp-exception-warning,
|
openerp-exception-warning,
|
||||||
pointless-statement,
|
pointless-statement,
|
||||||
pointless-string-statement,
|
pointless-string-statement,
|
||||||
@@ -73,6 +73,7 @@ enable=anomalous-backslash-in-string,
|
|||||||
deprecated-module,
|
deprecated-module,
|
||||||
file-not-used,
|
file-not-used,
|
||||||
invalid-commit,
|
invalid-commit,
|
||||||
|
missing-manifest-dependency,
|
||||||
missing-newline-extrafiles,
|
missing-newline-extrafiles,
|
||||||
missing-readme,
|
missing-readme,
|
||||||
no-utf8-coding-comment,
|
no-utf8-coding-comment,
|
||||||
@@ -82,6 +83,7 @@ enable=anomalous-backslash-in-string,
|
|||||||
too-complex,
|
too-complex,
|
||||||
unnecessary-utf8-coding-comment
|
unnecessary-utf8-coding-comment
|
||||||
|
|
||||||
|
|
||||||
[REPORTS]
|
[REPORTS]
|
||||||
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
|
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
|
||||||
output-format=colorized
|
output-format=colorized
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
[MASTER]
|
[MASTER]
|
||||||
load-plugins=pylint_odoo
|
load-plugins=pylint_odoo
|
||||||
score=n
|
score=n
|
||||||
@@ -39,8 +40,6 @@ enable=anomalous-backslash-in-string,
|
|||||||
method-inverse,
|
method-inverse,
|
||||||
method-required-super,
|
method-required-super,
|
||||||
method-search,
|
method-search,
|
||||||
missing-import-error,
|
|
||||||
missing-manifest-dependency,
|
|
||||||
openerp-exception-warning,
|
openerp-exception-warning,
|
||||||
pointless-statement,
|
pointless-statement,
|
||||||
pointless-string-statement,
|
pointless-string-statement,
|
||||||
|
|||||||
49
.travis.yml
49
.travis.yml
@@ -1,49 +0,0 @@
|
|||||||
language: python
|
|
||||||
cache:
|
|
||||||
directories:
|
|
||||||
- $HOME/.cache/pip
|
|
||||||
- $HOME/.cache/pre-commit
|
|
||||||
|
|
||||||
python:
|
|
||||||
- "3.6"
|
|
||||||
|
|
||||||
addons:
|
|
||||||
postgresql: "9.6"
|
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- expect-dev # provides unbuffer utility
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- linting
|
|
||||||
- test
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
include:
|
|
||||||
- stage: linting
|
|
||||||
name: "pre-commit"
|
|
||||||
before_install:
|
|
||||||
install: pip install pre-commit
|
|
||||||
script: pre-commit run --all --show-diff-on-failure --verbose --color always
|
|
||||||
after_success:
|
|
||||||
- stage: test
|
|
||||||
env:
|
|
||||||
- TESTS="1" ODOO_REPO="odoo/odoo" MAKEPOT="1"
|
|
||||||
- stage: test
|
|
||||||
env:
|
|
||||||
- TESTS="1" ODOO_REPO="OCA/OCB"
|
|
||||||
|
|
||||||
env:
|
|
||||||
global:
|
|
||||||
- VERSION="13.0" TESTS="0" LINT_CHECK="0" MAKEPOT="0"
|
|
||||||
|
|
||||||
install:
|
|
||||||
- git clone --depth=1 https://github.com/OCA/maintainer-quality-tools.git
|
|
||||||
${HOME}/maintainer-quality-tools
|
|
||||||
- export PATH=${HOME}/maintainer-quality-tools/travis:${PATH}
|
|
||||||
- travis_install_nightly
|
|
||||||
|
|
||||||
script:
|
|
||||||
- travis_run_tests
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- travis_after_tests_success
|
|
||||||
12
LICENSE
12
LICENSE
@@ -1,7 +1,7 @@
|
|||||||
GNU AFFERO GENERAL PUBLIC LICENSE
|
GNU AFFERO GENERAL PUBLIC LICENSE
|
||||||
Version 3, 19 November 2007
|
Version 3, 19 November 2007
|
||||||
|
|
||||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
Everyone is permitted to copy and distribute verbatim copies
|
||||||
of this license document, but changing it is not allowed.
|
of this license document, but changing it is not allowed.
|
||||||
|
|
||||||
@@ -633,8 +633,8 @@ the "copyright" line and a pointer to where the full notice is found.
|
|||||||
Copyright (C) <year> <name of author>
|
Copyright (C) <year> <name of author>
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU Affero General Public License as published
|
it under the terms of the GNU Affero General Public License as published by
|
||||||
by the Free Software Foundation, either version 3 of the License, or
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
(at your option) any later version.
|
(at your option) any later version.
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
This program is distributed in the hope that it will be useful,
|
||||||
@@ -643,7 +643,7 @@ the "copyright" line and a pointer to where the full notice is found.
|
|||||||
GNU Affero General Public License for more details.
|
GNU Affero General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU Affero General Public License
|
You should have received a copy of the GNU Affero General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Also add information on how to contact you by electronic and paper mail.
|
Also add information on how to contact you by electronic and paper mail.
|
||||||
|
|
||||||
@@ -658,4 +658,4 @@ specific requirements.
|
|||||||
You should also get your employer (if you work as a programmer) or school,
|
You should also get your employer (if you work as a programmer) or school,
|
||||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||||
For more information on this, and how to apply and follow the GNU AGPL, see
|
For more information on this, and how to apply and follow the GNU AGPL, see
|
||||||
<http://www.gnu.org/licenses/>.
|
<https://www.gnu.org/licenses/>.
|
||||||
|
|||||||
43
README.md
43
README.md
@@ -1,16 +1,37 @@
|
|||||||
[](https://runbot.odoo-community.org/runbot/repo/github-com-oca-contract-110)
|
|
||||||
[](https://travis-ci.org/OCA/contract)
|
|
||||||
[](https://coveralls.io/r/OCA/contract?branch=13.0)
|
|
||||||
|
|
||||||
# Contracts
|
[](https://runboat.odoo-community.org/builds?repo=OCA/contract&target_branch=13.0)
|
||||||
|
[](https://github.com/OCA/contract/actions/workflows/pre-commit.yml?query=branch%3A13.0)
|
||||||
|
[](https://github.com/OCA/contract/actions/workflows/test.yml?query=branch%3A13.0)
|
||||||
|
[](https://codecov.io/gh/OCA/contract)
|
||||||
|
[](https://translation.odoo-community.org/engage/contract-13-0/?utm_source=widget)
|
||||||
|
|
||||||
Odoo Contracts are special types of Analytic Accounts.
|
<!-- /!\ do not modify above this line -->
|
||||||
This repository provides features extending Contracts.
|
|
||||||
|
|
||||||
Dependencies on Project features should not be required.
|
# Contracts management
|
||||||
For Project related extensions please see the
|
|
||||||
[OCA/Project](https://github.com/OCA/project) repository.
|
|
||||||
|
|
||||||
|
None
|
||||||
|
|
||||||
## Translation Status
|
<!-- /!\ do not modify below this line -->
|
||||||
[](https://translation.odoo-community.org/engage/contract-13-0/?utm_source=widget)
|
|
||||||
|
<!-- prettier-ignore-start -->
|
||||||
|
|
||||||
|
[//]: # (addons)
|
||||||
|
|
||||||
|
This part will be replaced when running the oca-gen-addons-table script from OCA/maintainer-tools.
|
||||||
|
|
||||||
|
[//]: # (end addons)
|
||||||
|
|
||||||
|
<!-- prettier-ignore-end -->
|
||||||
|
|
||||||
|
## Licenses
|
||||||
|
|
||||||
|
This repository is licensed under [AGPL-3.0](LICENSE).
|
||||||
|
|
||||||
|
However, each module can have a totally different license, as long as they adhere to Odoo Community Association (OCA)
|
||||||
|
policy. Consult each module's `__manifest__.py` file, which contains a `license` key
|
||||||
|
that explains its license.
|
||||||
|
|
||||||
|
----
|
||||||
|
OCA, or the [Odoo Community Association](http://odoo-community.org/), is a nonprofit
|
||||||
|
organization whose mission is to support the collaborative development of Odoo features
|
||||||
|
and promote its widespread use.
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
"author": "Akretion, "
|
"author": "Akretion, "
|
||||||
"Yves Goldberg (Ygol Internetwork), "
|
"Yves Goldberg (Ygol Internetwork), "
|
||||||
"Odoo Community Association (OCA)",
|
"Odoo Community Association (OCA)",
|
||||||
"website": "https://github.com/oca/contract",
|
"website": "https://github.com/OCA/contract",
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"depends": ["mail"],
|
"depends": ["mail"],
|
||||||
"data": [
|
"data": [
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
"version": "13.0.1.0.0",
|
"version": "13.0.1.0.0",
|
||||||
"category": "Contract",
|
"category": "Contract",
|
||||||
"author": "Akretion, " "Odoo Community Association (OCA)",
|
"author": "Akretion, " "Odoo Community Association (OCA)",
|
||||||
"website": "https://github.com/oca/contract",
|
"website": "https://github.com/OCA/contract",
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"depends": ["sale_management", "agreement"],
|
"depends": ["sale_management", "agreement"],
|
||||||
"data": [
|
"data": [
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
"category": "Contract Management",
|
"category": "Contract Management",
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"author": "Tecnativa, ACSONE SA/NV, Odoo Community Association (OCA)",
|
"author": "Tecnativa, ACSONE SA/NV, Odoo Community Association (OCA)",
|
||||||
"website": "https://github.com/oca/contract",
|
"website": "https://github.com/OCA/contract",
|
||||||
"depends": ["base", "account", "product", "portal"],
|
"depends": ["base", "account", "product", "portal"],
|
||||||
"external_dependencies": {"python": ["dateutil"]},
|
"external_dependencies": {"python": ["dateutil"]},
|
||||||
"data": [
|
"data": [
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
"summary": "Add formula to invoice ",
|
"summary": "Add formula to invoice ",
|
||||||
"version": "13.0.1.0.0",
|
"version": "13.0.1.0.0",
|
||||||
"category": "Contract Management",
|
"category": "Contract Management",
|
||||||
"website": "https://github.com/oca/contract",
|
"website": "https://github.com/OCA/contract",
|
||||||
"author": "Tecnativa, " "Odoo Community Association (OCA)",
|
"author": "Tecnativa, " "Odoo Community Association (OCA)",
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"installable": True,
|
"installable": True,
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
"category": "Contract Management",
|
"category": "Contract Management",
|
||||||
"license": "AGPL-3",
|
"license": "AGPL-3",
|
||||||
"author": "Tecnativa," "Odoo Community Association (OCA)",
|
"author": "Tecnativa," "Odoo Community Association (OCA)",
|
||||||
"website": "https://www.tecnativa.com",
|
"website": "https://github.com/OCA/contract",
|
||||||
"depends": ["contract"],
|
"depends": ["contract"],
|
||||||
"data": [
|
"data": [
|
||||||
"security/ir.model.access.csv",
|
"security/ir.model.access.csv",
|
||||||
|
|||||||
Reference in New Issue
Block a user