Merge branch 'dev'

- Add git repo in manifest OmniaGit odoo PLM
- fix CybroOdoo_OpenHRMS
- update cg generator, better support inherit
- better documentation about code generator
- can compile all documentation with odoo dev
- improve poetry update with insensitive dependency
This commit is contained in:
Mathieu Benoit 2022-03-03 13:23:56 -05:00
commit ce9ec687d0
11 changed files with 334 additions and 211 deletions

View file

@ -186,7 +186,7 @@ image_db_create_erplibre_website:
./script/make.sh image_db_create_erplibre_base
./script/addons/install_addons.sh test website,erplibre_website_snippets_basic_html,erplibre_website_snippets_cards,erplibre_website_snippets_structures,erplibre_website_snippets_timelines,website_form_builder,muk_website_branding,website_snippet_anchor,website_anchor_smooth_scroll
./.venv/bin/python3 ./odoo/odoo-bin db --backup --database test --restore_image erplibre_website
./script/addons/install_addons.sh test crm,website_crm
./script/addons/install_addons.sh test crm,website_crm,crm_team_quebec
./.venv/bin/python3 ./odoo/odoo-bin db --backup --database test --restore_image erplibre_website_crm
./script/addons/install_addons.sh test website_livechat
./.venv/bin/python3 ./odoo/odoo-bin db --backup --database test --restore_image erplibre_website_chat_crm
@ -243,48 +243,53 @@ addons_install_code_generator_full:
.PHONY: addons_install_code_generator_demo
addons_install_code_generator_demo:
./script/db_restore.py --database code_generator
./script/addons/install_addons_dev.sh code_generator code_generator_demo
.PHONY: addons_uninstall_code_generator_demo
addons_uninstall_code_generator_demo:
./script/addons/uninstall_addons.sh code_generator code_generator_demo
.PHONY: addons_reinstall_code_generator_demo
addons_reinstall_code_generator_demo:
./script/make.sh addons_uninstall_code_generator_demo
./script/make.sh addons_install_code_generator_demo
.PHONY: addons_install_all_code_generator_demo
addons_install_all_code_generator_demo:
./script/db_restore.py --database code_generator
./script/addons/install_addons_dev.sh code_generator code_generator_demo,code_generator_demo_export_helpdesk,code_generator_demo_internal,code_generator_demo_internal_inherit,code_generator_demo_portal,code_generator_demo_theme_website,code_generator_demo_website_leaflet,code_generator_demo_website_snippet,code_generator_auto_backup
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_export_helpdesk
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_internal
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_internal_inherit
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_portal
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_theme_website
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_website_leaflet
# ./script/addons/install_addons_dev.sh code_generator code_generator_demo_website_snippet
# ./script/addons/install_addons_dev.sh code_generator code_generator_auto_backup
# TODO ignore code_generator_demo_internal cause (demo_internal, demo_model_2_internal_view_form) already exists
./script/addons/install_addons_dev.sh code_generator code_generator_demo,code_generator_demo_export_helpdesk,code_generator_demo_export_website,code_generator_demo_internal_inherit,code_generator_demo_portal,code_generator_demo_theme_website,code_generator_demo_website_leaflet,code_generator_demo_website_snippet,code_generator_auto_backup
#./script/addons/install_addons_dev.sh code_generator code_generator_demo
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_export_helpdesk
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_export_website
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_internal
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_internal_inherit
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_portal
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_theme_website
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_website_leaflet
#./script/addons/install_addons_dev.sh code_generator code_generator_demo_website_snippet
#./script/addons/install_addons_dev.sh code_generator code_generator_auto_backup
.PHONY: addons_install_all_code_generator_template
addons_install_all_code_generator_template:
./script/db_restore.py --database template
./script/addons/install_addons_dev.sh template demo_portal,auto_backup,demo_internal_inherit
./script/addons/install_addons_dev.sh template code_generator_template_demo_portal,code_generator_template_demo_sysadmin_cron,code_generator_template_demo_internal_inherit
#./script/code_generator/search_class_model.py --quiet -d addons/TechnoLibre_odoo-code-generator-template/demo_portal -t addons/TechnoLibre_odoo-code-generator-template/code_generator_template_demo_portal
#./script/addons/install_addons_dev.sh template demo_portal
#./script/addons/install_addons_dev.sh template code_generator_template_demo_portal
#./script/code_generator/search_class_model.py --quiet -d addons/OCA_server-tools/auto_backup -t addons/TechnoLibre_odoo-code-generator-template/code_generator_template_demo_sysadmin_cron
#./script/addons/install_addons_dev.sh template auto_backup
#./script/addons/install_addons_dev.sh template code_generator_template_demo_sysadmin_cron
#./script/code_generator/search_class_model.py --quiet -d addons/TechnoLibre_odoo-code-generator-template/demo_internal -t addons/TechnoLibre_odoo-code-generator-template/code_generator_template_demo_internal
#./script/addons/install_addons_dev.sh template demo_internal
#./script/addons/install_addons_dev.sh template code_generator_template_demo_internal
#./script/code_generator/search_class_model.py --quiet -d addons/TechnoLibre_odoo-code-generator-template/demo_internal_inherit -t addons/TechnoLibre_odoo-code-generator-template/code_generator_template_demo_internal_inherit
#./script/addons/install_addons_dev.sh template demo_internal_inherit
#./script/addons/install_addons_dev.sh template code_generator_template_demo_internal_inherit
.PHONY: addons_install_all_generated_demo
addons_install_all_generated_demo:
./script/db_restore.py --database template
./script/addons/install_addons_dev.sh template demo_helpdesk_data,demo_internal,demo_internal_inherit,demo_portal,demo_website_leaflet,demo_website_snippet,auto_backup
./script/addons/install_addons_dev.sh template demo_helpdesk_data,demo_website_data,demo_internal,demo_internal_inherit,demo_portal,demo_website_leaflet,demo_website_snippet,auto_backup
#./script/addons/install_addons_dev.sh template demo_helpdesk_data
#./script/addons/install_addons_dev.sh template demo_website_data
#./script/addons/install_addons_dev.sh template demo_internal
#./script/addons/install_addons_dev.sh template demo_internal_inherit
#./script/addons/install_addons_dev.sh template demo_portal
@ -294,10 +299,6 @@ addons_install_all_generated_demo:
# TODO support installation theme with cli
#./script/addons/install_addons_dev.sh template theme_website_demo_code_generator
.PHONY: addons_install_all_code_generator
addons_install_all_code_generator:
./script/addons/install_addons_dev.sh code_generator code_generator_auto_backup
##################
# Code generator #
##################
@ -715,6 +716,7 @@ clean:
.PHONY: doc
doc:
./script/make.sh doc_dev
./script/make.sh doc_dev_odoo
./script/make.sh doc_migration
./script/make.sh doc_test
./script/make.sh doc_user
@ -724,10 +726,20 @@ doc:
.PHONY: doc_clean
doc_clean:
./script/make.sh doc_clean_dev
./script/make.sh doc_clean_dev_odoo
./script/make.sh doc_clean_migration
./script/make.sh doc_clean_test
./script/make.sh doc_clean_user
# open documentation all
.PHONY: open_doc_all
open_doc_all:
./script/make.sh open_doc_dev
./script/make.sh open_doc_dev_odoo
./script/make.sh open_doc_migration
./script/make.sh open_doc_test
./script/make.sh open_doc_user
# documentation dev
.PHONY: doc_dev
doc_dev:
@ -741,6 +753,19 @@ open_doc_dev:
doc_clean_dev:
make -C doc/itpp-labs_odoo-development/docs clean
# documentation odoo dev
.PHONY: doc_dev_odoo
doc_dev_odoo:
source ./.venv/bin/activate && make -C odoo/doc html || exit 1
.PHONY: open_doc_dev_odoo
open_doc_dev_odoo:
-$(BROWSER) odoo/doc/_build/html/index.html
.PHONY: doc_clean_dev_odoo
doc_clean_dev_odoo:
make -C odoo/doc clean
# documentation migration
.PHONY: doc_migration
doc_migration:

View file

@ -410,7 +410,6 @@ lst_depend = [
Générer un nouveau module, ceci va écraser `code_generator_template_demo_website_snippet` :
```bash
make db_restore_erplibre_base_db_code_generator
make addons_install_code_generator_demo
```

View file

@ -34,6 +34,28 @@ or
sudo ss -lpnt | grep LISTEN
```
## Git
### Unshallow git
By example, the repo Odoo use a depth clone. If you need all the clone repo, use this command on right directory:
```bash
git fetch REMOTE --unshallow
```
### Amend several commits in Git to change author
```bash
git rebase -i HEAD~4 -x "git commit --amend --author 'Author Name <author.name@mail.com>' --no-edit"
```
### Cherry-pick a merged commit with conflict
```bash
git cherry-pick -m 1 --strategy-option theirs HASH
```
## git-repo
### error.GitError fatal bad revision

View file

@ -125,11 +125,3 @@ Maybe, some version diverge from your manifest. Simply clean all and relaunch yo
```bash
./script/clean_repo_manifest.sh
```
### Unshallow git
By example, the repo Odoo use a depth clone. If you need all the clone repo, use this command on right directory:
```bash
git fetch REMOTE --unshallow
```

View file

@ -5,6 +5,7 @@
<remote name="MathBenTech" fetch="https://github.com/ERPLibre/"/>
<remote name="Numigi" fetch="https://github.com/ERPLibre/"/>
<remote name="OCA" fetch="https://github.com/ERPLibre/"/>
<remote name="OmniaGit" fetch="https://github.com/ERPLibre/"/>
<remote name="Smile-SA" fetch="https://github.com/ERPLibre/"/>
<remote name="TechnoLibre" fetch="https://github.com/ERPLibre/"/>
<remote name="ajepe" fetch="https://github.com/ERPLibre/"/>
@ -26,7 +27,7 @@
<default remote="ERPLibre" revision="12.0" sync-j="4" sync-c="true"/>
<project name="ERPLibre_image_db.git" path="image_db" remote="ERPLibre" revision="12.0" clone-depth="1" groups="base"/>
<project name="OpenHRMS.git" path="addons/CybroOdoo_OpenHRMS" remote="CybroOdoo" groups="addons"/>
<project name="OpenHRMS.git" path="addons/CybroOdoo_OpenHRMS" remote="CybroOdoo" revision="dev_12.0" groups="addons"/>
<project name="Property-Management_odoo.git" path="addons/kinjal-sorathiya_Property-Management_odoo" remote="kinjal-sorathiya" revision="master" groups="addons"/>
<project name="QuotationRevision.git" path="addons/odooaktiv_QuotationRevision" remote="odooaktiv" groups="addons"/>
<project name="access-addons.git" path="addons/itpp-labs_access-addons" remote="itpp-labs" revision="12.0_dev" groups="addons"/>
@ -95,7 +96,7 @@
<project name="multi-company.git" path="addons/OCA_multi-company" remote="OCA" groups="addons"/>
<project name="odoo-addons.git" path="addons/ajepe_odoo-addons" remote="ajepe" groups="addons"/>
<project name="odoo-base-addons.git" path="addons/Numigi_odoo-base-addons" remote="Numigi" revision="12.0_dev" groups="addons"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="12.0_sale_order_line_timesheet_attribution" groups="addons,base"/>
<project name="odoo-business-spending-management-quebec-canada.git" path="addons/MathBenTech_odoo-business-spending-management-quebec-canada" remote="MathBenTech" revision="12.0" groups="addons,base"/>
<project name="odoo-cloud-platform.git" path="addons/camptocamp_odoo-cloud-platform" remote="camptocamp" revision="12.0_dev" groups="addons"/>
<project name="odoo-code-generator-template.git" path="addons/TechnoLibre_odoo-code-generator-template" revision="12.0" remote="TechnoLibre" groups="addons,code_generator,image_db"/>
<project name="odoo-code-generator.git" path="addons/TechnoLibre_odoo-code-generator" remote="TechnoLibre" revision="12.0" groups="addons,code_generator,image_db"/>
@ -120,6 +121,7 @@
<project name="odoo_addons.git" path="addons/Smile-SA_odoo_addons" remote="Smile-SA" revision="12.0_remote_autoinstall" groups="addons"/>
<project name="odoo_dhtmlxgantt.git" path="addons/obayit_odoo_dhtmlxgantt" remote="obayit" groups="addons"/>
<project name="odooapps.git" path="addons/odoomates_odooapps" remote="odoomates" groups="addons"/>
<project name="odooplm.git" path="addons/OmniaGit_odooplm" remote="OmniaGit" groups="addons"/>
<project name="openeducat_erp.git" path="addons/openeducat_openeducat_erp" remote="openeducat" groups="addons"/>
<project name="operating-unit.git" path="addons/OCA_operating-unit" remote="OCA" groups="addons"/>
<project name="partner-contact.git" path="addons/OCA_partner-contact" remote="OCA" groups="addons"/>

381
poetry.lock generated
View file

@ -222,14 +222,14 @@ tornado = ">=4.3"
[[package]]
name = "boto3"
version = "1.20.42"
version = "1.21.0"
description = "The AWS SDK for Python"
category = "main"
optional = false
python-versions = ">= 3.6"
[package.dependencies]
botocore = ">=1.23.42,<1.24.0"
botocore = ">=1.24.0,<1.25.0"
jmespath = ">=0.7.1,<1.0.0"
s3transfer = ">=0.5.0,<0.6.0"
@ -238,7 +238,7 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"]
[[package]]
name = "botocore"
version = "1.23.42"
version = "1.24.0"
description = "Low-level, data-driven core of boto 3."
category = "main"
optional = false
@ -356,6 +356,14 @@ category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
[[package]]
name = "colorclass"
version = "2.2.2"
description = "Colorful worry-free console applications for Linux, Mac OS X, and Windows."
category = "main"
optional = false
python-versions = ">=2.6"
[[package]]
name = "compressed-rtf"
version = "1.0.6"
@ -427,7 +435,7 @@ python-versions = ">=3.6"
[[package]]
name = "cython"
version = "0.29.26"
version = "0.29.27"
description = "The Cython compiler for writing C extensions for the Python language."
category = "main"
optional = false
@ -536,6 +544,14 @@ category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
[[package]]
name = "easygui"
version = "0.98.2"
description = "EasyGUI is a module for very simple, very easy GUI programming in Python. EasyGUI is different from other GUI generators in that EasyGUI is NOT event-driven. Instead, all GUI interactions are invoked by simple function calls."
category = "main"
optional = false
python-versions = "*"
[[package]]
name = "ebaysdk"
version = "2.1.5"
@ -627,17 +643,19 @@ python-versions = ">=3.6"
[[package]]
name = "extract-msg"
version = "0.30.0"
version = "0.30.8"
description = "Extracts emails and attachments saved in Microsoft Outlook's .msg files"
category = "main"
optional = false
python-versions = "*"
[package.dependencies]
beautifulsoup4 = ">=4.10.0"
compressed-rtf = ">=1.0.6"
ebcdic = ">=1.1.1"
imapclient = "2.1.0"
imapclient = ">=2.1.0"
olefile = ">=0.46"
RTFDE = ">=0.0.2"
tzlocal = ">=2.1"
[[package]]
@ -1094,6 +1112,19 @@ category = "main"
optional = false
python-versions = ">=3.7"
[[package]]
name = "lark-parser"
version = "0.12.0"
description = "a modern parsing library"
category = "main"
optional = false
python-versions = "*"
[package.extras]
atomic_cache = ["atomicwrites"]
nearley = ["js2py"]
regex = ["regex"]
[[package]]
name = "lasso"
version = "0.0.5"
@ -1229,6 +1260,18 @@ category = "main"
optional = false
python-versions = "*"
[[package]]
name = "msoffcrypto-tool"
version = "5.0.0"
description = "Python tool and library for decrypting MS Office files with passwords or other keys"
category = "main"
optional = false
python-versions = ">=3.6,<4.0"
[package.dependencies]
cryptography = ">=2.3"
olefile = ">=0.45"
[[package]]
name = "multidict"
version = "5.2.0"
@ -1343,6 +1386,25 @@ category = "main"
optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
[[package]]
name = "oletools"
version = "0.60"
description = "Python tools to analyze security characteristics of MS Office and OLE files (also called Structured Storage, Compound File Binary Format or Compound Document File Format), for Malware Analysis and Incident Response #DFIR"
category = "main"
optional = false
python-versions = "*"
[package.dependencies]
colorclass = "*"
easygui = "*"
msoffcrypto-tool = {version = "*", markers = "platform_python_implementation != \"PyPy\" or python_version >= \"3\" and platform_system != \"Windows\" and platform_system != \"Darwin\""}
olefile = ">=0.46"
pcodedmp = ">=1.2.5"
pyparsing = ">=2.1.0,<3"
[package.extras]
full = ["xlmmacrodeobfuscator"]
[[package]]
name = "openpyxl"
version = "3.0.9"
@ -1356,7 +1418,7 @@ et-xmlfile = "*"
[[package]]
name = "openupgradelib"
version = "3.3.1"
version = "3.3.2"
description = "A library with support functions to be called from Odoo migration scripts."
category = "main"
optional = false
@ -1527,6 +1589,18 @@ category = "main"
optional = false
python-versions = ">=2.6"
[[package]]
name = "pcodedmp"
version = "1.2.6"
description = "A VBA p-code disassembler"
category = "main"
optional = false
python-versions = "*"
[package.dependencies]
oletools = ">=0.54"
win-unicode-console = {version = "*", markers = "platform_system == \"Windows\" and platform_python_implementation != \"PyPy\""}
[[package]]
name = "pdf2image"
version = "1.16.0"
@ -1562,7 +1636,7 @@ ptyprocess = ">=0.5"
[[package]]
name = "phonenumbers"
version = "8.12.41"
version = "8.12.43"
description = "Python version of Google's common library for parsing, formatting, storing and validating international phone numbers."
category = "main"
optional = false
@ -2326,6 +2400,22 @@ python-versions = "*"
[package.extras]
idna2008 = ["idna"]
[[package]]
name = "rtfde"
version = "0.0.2"
description = "A library for extracting HTML content from RTF encapsulated HTML as commonly found in the exchange MSG email format."
category = "main"
optional = false
python-versions = ">=3.6"
[package.dependencies]
lark-parser = ">=0.11"
oletools = ">=0.56"
[package.extras]
dev = ["lxml (>=4.6)"]
msg_parse = ["extract-msg (>=0.27)"]
[[package]]
name = "s3transfer"
version = "0.5.0"
@ -2471,34 +2561,28 @@ python-versions = ">=3.6"
[[package]]
name = "sphinx"
version = "4.3.2"
version = "1.6.7"
description = "Python documentation generator"
category = "main"
optional = false
python-versions = ">=3.6"
python-versions = "*"
[package.dependencies]
alabaster = ">=0.7,<0.8"
babel = ">=1.3"
babel = ">=1.3,<2.0 || >2.0"
colorama = {version = ">=0.3.5", markers = "sys_platform == \"win32\""}
docutils = ">=0.14,<0.18"
docutils = ">=0.11"
imagesize = "*"
Jinja2 = ">=2.3"
packaging = "*"
Pygments = ">=2.0"
requests = ">=2.5.0"
requests = ">=2.0.0"
six = ">=1.5"
snowballstemmer = ">=1.1"
sphinxcontrib-applehelp = "*"
sphinxcontrib-devhelp = "*"
sphinxcontrib-htmlhelp = ">=2.0.0"
sphinxcontrib-jsmath = "*"
sphinxcontrib-qthelp = "*"
sphinxcontrib-serializinghtml = ">=1.1.5"
sphinxcontrib-websupport = "*"
[package.extras]
docs = ["sphinxcontrib-websupport"]
lint = ["flake8 (>=3.5.0)", "isort", "mypy (>=0.920)", "docutils-stubs", "types-typed-ast", "types-pkg-resources", "types-requests"]
test = ["pytest", "pytest-cov", "html5lib", "cython", "typed-ast"]
test = ["pytest", "mock", "simplejson", "html5lib"]
websupport = ["sqlalchemy (>=0.9)", "whoosh (>=2.0)"]
[[package]]
name = "sphinx-intl"
@ -2544,65 +2628,6 @@ sphinx = ">=1.6"
[package.extras]
dev = ["transifex-client", "sphinxcontrib-httpdomain", "bump2version"]
[[package]]
name = "sphinxcontrib-applehelp"
version = "1.0.2"
description = "sphinxcontrib-applehelp is a sphinx extension which outputs Apple help books"
category = "main"
optional = false
python-versions = ">=3.5"
[package.extras]
lint = ["flake8", "mypy", "docutils-stubs"]
test = ["pytest"]
[[package]]
name = "sphinxcontrib-devhelp"
version = "1.0.2"
description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document."
category = "main"
optional = false
python-versions = ">=3.5"
[package.extras]
lint = ["flake8", "mypy", "docutils-stubs"]
test = ["pytest"]
[[package]]
name = "sphinxcontrib-htmlhelp"
version = "2.0.0"
description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files"
category = "main"
optional = false
python-versions = ">=3.6"
[package.extras]
lint = ["flake8", "mypy", "docutils-stubs"]
test = ["pytest", "html5lib"]
[[package]]
name = "sphinxcontrib-jsmath"
version = "1.0.1"
description = "A sphinx extension which renders display math in HTML via JavaScript"
category = "main"
optional = false
python-versions = ">=3.5"
[package.extras]
test = ["pytest", "flake8", "mypy"]
[[package]]
name = "sphinxcontrib-qthelp"
version = "1.0.3"
description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document."
category = "main"
optional = false
python-versions = ">=3.5"
[package.extras]
lint = ["flake8", "mypy", "docutils-stubs"]
test = ["pytest"]
[[package]]
name = "sphinxcontrib-serializinghtml"
version = "1.1.5"
@ -2615,6 +2640,21 @@ python-versions = ">=3.5"
lint = ["flake8", "mypy", "docutils-stubs"]
test = ["pytest"]
[[package]]
name = "sphinxcontrib-websupport"
version = "1.2.4"
description = "Sphinx API for Web Apps"
category = "main"
optional = false
python-versions = ">=3.5"
[package.dependencies]
sphinxcontrib-serializinghtml = "*"
[package.extras]
lint = ["flake8"]
test = ["pytest", "sqlalchemy", "whoosh", "sphinx"]
[[package]]
name = "sqlalchemy"
version = "1.4.31"
@ -2786,7 +2826,7 @@ python-versions = "*"
[[package]]
name = "unidiff"
version = "0.7.0"
version = "0.7.3"
description = "Unified diff parsing/metadata extraction library."
category = "main"
optional = false
@ -2949,6 +2989,14 @@ category = "main"
optional = false
python-versions = "*"
[[package]]
name = "win-unicode-console"
version = "0.5"
description = "Enable Unicode input and display when running Python from Windows console."
category = "main"
optional = false
python-versions = "*"
[[package]]
name = "wrapt"
version = "1.13.3"
@ -3070,7 +3118,7 @@ python-versions = "*"
[metadata]
lock-version = "1.1"
python-versions = "^3.7.12"
content-hash = "a0ff20f5203ceac245624c04e5d9b96956a3453545738056f9a24be8f22f9775"
content-hash = "a7320633c736594f1cac20407135b5c9526af3eef88392d305b30e83e014e5f8"
[metadata.files]
agithub = [
@ -3159,12 +3207,12 @@ bokeh = [
{file = "bokeh-1.1.0.tar.gz", hash = "sha256:70c944ccb99faea9c1bc2b77caba4dbcd884e083fc32511efbd6f895d7cb6832"},
]
boto3 = [
{file = "boto3-1.20.42-py3-none-any.whl", hash = "sha256:49499acf3f1dbb5f09eb93abfeb4025cd76fb7880c16a01a2901dfa335496f0d"},
{file = "boto3-1.20.42.tar.gz", hash = "sha256:d2fce99e42cb7cb263f3ff272bc707aa6a66bc6ab30d90bf0ff6cbdddd867cfa"},
{file = "boto3-1.21.0-py3-none-any.whl", hash = "sha256:25a76b7b530a124d9e526c62ff2b7da5782315195badb9a6273714898d689820"},
{file = "boto3-1.21.0.tar.gz", hash = "sha256:cc40566dec3f48611a82ace07b29489848e9bd35a51e3e992d1902a3c037e9fc"},
]
botocore = [
{file = "botocore-1.23.42-py3-none-any.whl", hash = "sha256:e2e5509934e634a374afa560de4ddc770bb562c7259cb63cd92aa7e54f943bc1"},
{file = "botocore-1.23.42.tar.gz", hash = "sha256:a58f1e559ff2c65495f55ac48217afefb56f2d709d30f7377c40287e8c5765d0"},
{file = "botocore-1.24.0-py3-none-any.whl", hash = "sha256:2bf4463513bd89817aa5d7341ed81c7c76d906e6c70672c8762d64ecf3275771"},
{file = "botocore-1.24.0.tar.gz", hash = "sha256:47723cef6112f451630bf2446cfd6be2782cc1d6b1b92acb12ff00797588c5f3"},
]
cached-property = [
{file = "cached-property-1.5.2.tar.gz", hash = "sha256:9fa5755838eecbb2d234c3aa390bd80fbd3ac6b6869109bfc1b499f7bd89a130"},
@ -3256,6 +3304,10 @@ colorama = [
{file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"},
{file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"},
]
colorclass = [
{file = "colorclass-2.2.2-py2.py3-none-any.whl", hash = "sha256:6f10c273a0ef7a1150b1120b6095cbdd68e5cf36dfd5d0fc957a2500bbf99a55"},
{file = "colorclass-2.2.2.tar.gz", hash = "sha256:6d4fe287766166a98ca7bc6f6312daf04a0481b1eda43e7173484051c0ab4366"},
]
compressed-rtf = [
{file = "compressed_rtf-1.0.6.tar.gz", hash = "sha256:c1c827f1d124d24608981a56e8b8691eb1f2a69a78ccad6440e7d92fde1781dd"},
]
@ -3299,52 +3351,42 @@ cycler = [
{file = "cycler-0.11.0.tar.gz", hash = "sha256:9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f"},
]
cython = [
{file = "Cython-0.29.26-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c4b003b6b7aa9e74552ef8d4e6009b3e3c3e8fa585710b3a6d062e088e460c1b"},
{file = "Cython-0.29.26-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:ce804a021c92fea66c8c100781a111706f21bade7a546895c5a9c57fe2df8b24"},
{file = "Cython-0.29.26-cp27-cp27m-win32.whl", hash = "sha256:8e07121b34221458a2151d37e137b8f5b011a9c51dd38db2499a6198590aa319"},
{file = "Cython-0.29.26-cp27-cp27m-win_amd64.whl", hash = "sha256:233a87db76941626f1db08f4b25a4a5b425b13b64ed0e673c3641f7b650a48d8"},
{file = "Cython-0.29.26-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:93840f2071c1f15e613509eadee1fbcd335e8666772437fe5038e24059edd48c"},
{file = "Cython-0.29.26-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:10402f0f1564ffc6ecb9c45e07f995771d05bb0b0e1d151e40574638292ee3a5"},
{file = "Cython-0.29.26-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:6773cce9d4b3b6168d8feb2b6f06b658ef1e11cbfec075041745666d8e2a5e45"},
{file = "Cython-0.29.26-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:c813799d533194b7d85203d881d8b4f567a8c644a67f50d47f1ffbf316df412f"},
{file = "Cython-0.29.26-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:362fbb9cb4627c7786231429768b54aaba5459a2a0e46c25e59f202ca6155437"},
{file = "Cython-0.29.26-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2b834ff6e4d10ba6d7a0d676dd71c1b427a181ddbbbbf79e91d1861557aab59f"},
{file = "Cython-0.29.26-cp34-cp34m-win32.whl", hash = "sha256:0c3093bc99facfc97e5019f6c5bc39987663792265c1334d9fc9e37c3a3dcd6f"},
{file = "Cython-0.29.26-cp34-cp34m-win_amd64.whl", hash = "sha256:bbf0149680c1fca07200a3ed372b22e6bad7851d191b717a61f9a68af370e180"},
{file = "Cython-0.29.26-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a1cc55db32cd39474081d478263b96e036552cdbbab8831c90ea43fb385a9b66"},
{file = "Cython-0.29.26-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:ebe32e002a9e6553de399033e259ece72aa17c77f740b265e66f122572a8a278"},
{file = "Cython-0.29.26-cp35-cp35m-win32.whl", hash = "sha256:6b385f68789c3e8a75b4827e8a4970ff04605ad3cb1c0b41005cc69368dad65d"},
{file = "Cython-0.29.26-cp35-cp35m-win_amd64.whl", hash = "sha256:1519eb639de308f5763eb0666b4cc7bd3958268f3f6228cc610b7b4d6c94b68b"},
{file = "Cython-0.29.26-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:e118525defec3f67471d8ee5ce04340d43195410a87e5d7ec8a1a9e953c0066a"},
{file = "Cython-0.29.26-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:706ea55f58c2722206e51cd9a8754ed0995c4c4231d24b095875d2641d745222"},
{file = "Cython-0.29.26-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:77913fe27c5e22c995bac090d01e200ff91e5f58aa944e2d2e94cbf67ea2ae34"},
{file = "Cython-0.29.26-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:51923120f57a42c59f5ee6bba9e89a31a394ae8cd419c753f64d8a3aea1ee8b7"},
{file = "Cython-0.29.26-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:82881565d04027728d7762edd8c085927a840873af7ee049d703e0ca226bc08d"},
{file = "Cython-0.29.26-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:531303085503959338e6cdac630626280ef111aecbb22d48321673a8c3897c0a"},
{file = "Cython-0.29.26-cp36-cp36m-win32.whl", hash = "sha256:0205b685802eb4c039b14f67b7ac3f00c55ff04b9e3871df2249576d3e59ba42"},
{file = "Cython-0.29.26-cp36-cp36m-win_amd64.whl", hash = "sha256:7df94e56872df8f396ca669466fee60256f69f678654239f706b1e643c2ac4a5"},
{file = "Cython-0.29.26-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:4b7d04b393d9a4b5fec0cbc4b0f29fe083a9d862d95231a6e7608978bd661d7e"},
{file = "Cython-0.29.26-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:af91dd63ac5f1f7fc70dc91ea063f727db42b5eb934d1f3832611be18e25171e"},
{file = "Cython-0.29.26-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:d83dad8dc6c63706cb3178dc79010b3865b1345090727189d2cd61758a825ee8"},
{file = "Cython-0.29.26-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ca10e9fde0eaba1407ab353ff07a26daaa3e4dbe356108a149e482d441f070dd"},
{file = "Cython-0.29.26-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:fec66cd0a48697fab903854566235aecf1084f62e3163d6589ae7335a1b4d448"},
{file = "Cython-0.29.26-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:b3041e45aefaa4449fd671902132c0ac1f72eedaedac745c0e1a70a13bf990bb"},
{file = "Cython-0.29.26-cp37-cp37m-win32.whl", hash = "sha256:ed76fb98979f02b5e89079906071983a36f3634d3028b86f935cf0196f24fcaa"},
{file = "Cython-0.29.26-cp37-cp37m-win_amd64.whl", hash = "sha256:4d868e1a41f5123f51a20c1b8e82f7cb6fa3370c104e98e707f7c910e8cadad1"},
{file = "Cython-0.29.26-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:868f309095e557f06dc58723ae865e8c65cfedb2646a562bd8080c92d69e4e4b"},
{file = "Cython-0.29.26-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:be550b566345bf53b95616334793ce42a128cf1d9dcde1e28cbf7ce52ea61d6d"},
{file = "Cython-0.29.26-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:be13be1e2b9b7395588f2a23bfa692f2f3e6f7936ccf7825c83431b8c8c3452b"},
{file = "Cython-0.29.26-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:41ee918480371ae5e5851ba9b1ead5a183e24aedb27bf807c7405d124e943f40"},
{file = "Cython-0.29.26-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:c91b1ba0d43f7f7ccde8121c672207c7891735ddcc83496af1e0ab617ddc4aba"},
{file = "Cython-0.29.26-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5ecf5cf5b57086cc6c1cfc76d6353bbd7023e95da32e0883f1302ca50e481c33"},
{file = "Cython-0.29.26-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:0ffce25bf50fa926ec6bf8d6f29650e7cb33fae445938c9880e1ce9b776353ef"},
{file = "Cython-0.29.26-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:5041adfef502d67ecd5e291a7cf645a37fed7a9dac557f40d491053f35204d00"},
{file = "Cython-0.29.26-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:5fd5db458c9d3d2c2abd047f3190624d9cce8a80a8e0ca0baa69cfd133a523bc"},
{file = "Cython-0.29.26-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:75eaa22911d2ec37a3841f77b710b178c805cd378b5e1c4fb82dbc35620d2062"},
{file = "Cython-0.29.26-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:3aed8c642e8fb27024bca46830b7f62335a44a92354acf708d6b8d050f945a3a"},
{file = "Cython-0.29.26-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b5ca05c2bfba0c2480b5fd390ecffe46b8da574d887d600388d6e3caf3f99a88"},
{file = "Cython-0.29.26-py2.py3-none-any.whl", hash = "sha256:f5e15ff892c8afad64931ee3dd723c4755c2c516606f9aae7613bebfac62b0f6"},
{file = "Cython-0.29.26.tar.gz", hash = "sha256:af377d543a762867da11fcf6e558f7a4a535ff8693f30cce123fab10c00fa312"},
{file = "Cython-0.29.27-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:af2b4e1e267737dae1732f02a9b567f58420a3e2f572dc4416829647ec109886"},
{file = "Cython-0.29.27-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:62326774873cd1eff0cf7ca9132a1b6442541fe67c84dcfe97beb6a30f983b22"},
{file = "Cython-0.29.27-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0cb3da73547ed22d4b579990c229620b274d6935e3964f21abe15e4f7af6abf1"},
{file = "Cython-0.29.27-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:314280475ba4ab334e6b40e502a1b3b36ac37a710a63b0a74c6a61dde5f7593c"},
{file = "Cython-0.29.27-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:8e2963153212c3e699276059095fd9e20c5c97872b6dda893e7acfc5cef64df8"},
{file = "Cython-0.29.27-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:80ea3b60d5e5b3b13ce90a4071734bbd88cf688fcfd3c82db0b47ae1e944c6a2"},
{file = "Cython-0.29.27-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:25cb8e663dbd1e14a8f05dd6a79974ce6f0232b4dc417000fd790938face0304"},
{file = "Cython-0.29.27-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7f3a5b826d9650268ff9bd7308bf79d8077b3b452da03337656d455bba05a9be"},
{file = "Cython-0.29.27-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a1035e568cdc48dbd74f565828b36019fdb1b1437b3d7c1164c6f2a0757608f7"},
{file = "Cython-0.29.27-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:179e8cf796f72df8977705c7887eee3231945f665c594ad1631fe690363bfb8e"},
{file = "Cython-0.29.27-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:abcefbfb2c8f1b35c121a727745eb03c64cc15d0d71ebd827a6ce5c609503daa"},
{file = "Cython-0.29.27-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:7742cac4a5a41c73309bc1bab568e955ad35eacaedf3b00971bc44afe0b5f04e"},
{file = "Cython-0.29.27-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:f4a01915e33a524fca2a1e2512c0afc07f9fc51637f874bed1a831b56e789374"},
{file = "Cython-0.29.27-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3138e4f89cb7e79d35bd6cbefe2d62c4723f2184ee414905ee0981ae0fbd92d6"},
{file = "Cython-0.29.27-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:2dfdb4d5f63a0ae6748592b319878cbe360b12997cd8074836ef159381955d16"},
{file = "Cython-0.29.27-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:4b9dbe37907b6b76d9673720e848209399b48530f6ab6178fa3a49d1af4a8d00"},
{file = "Cython-0.29.27-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:ab4301aabcd75a436df0bbe13dbd9a3a9b6d3ad6aeb3ab577606af1642e134c2"},
{file = "Cython-0.29.27-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:93e9f7c522f5ab3ea4e32ce6f42b123cb0bd9cdfe49726b5e43c4e5719654146"},
{file = "Cython-0.29.27-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:6d337965a49dd52bc410685dbf63f2a95d6aa8d8be153a87c4178a06ff0e8ccd"},
{file = "Cython-0.29.27-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1500dce7ae102bb27243b92a8461b9f7fd08c4514886e9a0da8b266de8e5c561"},
{file = "Cython-0.29.27-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:03e0e9164e0a279c094897c6ae1505d816da59f98d664a77911b8d33f492e3f3"},
{file = "Cython-0.29.27-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0636e377ad81b8a106b12cddc57d3e69df94e03c77bdbccd0bd4394dda2484c9"},
{file = "Cython-0.29.27-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:77519bc6816a0fa648795ef0d5337c18e4b7be1c43c4944599a87004037579c5"},
{file = "Cython-0.29.27-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:65757e10590a1fbce84135491a5b53a1dc8c792cff78db4bb76b09d6df21dc0e"},
{file = "Cython-0.29.27-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:0bf5182c6bf3fe73cf14f902506baa2b6ec3cea057775393f24eb66d3f2d1a51"},
{file = "Cython-0.29.27-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d46fef39778dfb1d62e577c02dd2bac3930b9d28419d070ee0dae297e4a90af1"},
{file = "Cython-0.29.27-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:ca361afc6152221476bc89c335d54b8241502c57b89c760ded9f2f2de2e2a0b5"},
{file = "Cython-0.29.27-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:00c0f379763bf5f37a2180e4943cb69d0d96e90637aba596c3d9bc061c09f44d"},
{file = "Cython-0.29.27-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:a571dcba3fbd755c187bb464a4cdaf1ce71ca7b92bdb8122c46c1812b86b6c2f"},
{file = "Cython-0.29.27-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:11e88a9826ad71a0ab7eda04d065cb34f320b2f453bc654436c42870f79a7c47"},
{file = "Cython-0.29.27-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_24_i686.whl", hash = "sha256:f3c738662c572676883561a393c8fb6e7a807ffb8fcd286c510ed88c27f53a65"},
{file = "Cython-0.29.27-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6670e5643fa05112aa88ea8f54088396fe5c113383cd898100450ad156fe1e4a"},
{file = "Cython-0.29.27-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:f054331ed29f81cfd22335b96af9d33788b01338b1a5b7939f18412336ab06fd"},
{file = "Cython-0.29.27-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7149835ef701f8f9a417059253f52f393e4334d3819caf8ceab4194c9c4098ce"},
{file = "Cython-0.29.27-py2.py3-none-any.whl", hash = "sha256:8e7ced83f7a3ab619abe03fa2ae2de888cc429028263c95655189085346b8fcc"},
{file = "Cython-0.29.27.tar.gz", hash = "sha256:c6a442504db906dfc13a480e96850cced994ecdc076bcf492c43515b78f70da2"},
]
dateparser = [
{file = "dateparser-1.1.0-py2.py3-none-any.whl", hash = "sha256:fec344db1f73d005182e214c0ff27313c748bbe0c1638ce9d48a809ddfdab2a0"},
@ -3380,6 +3422,10 @@ docutils = [
{file = "docutils-0.17.1-py2.py3-none-any.whl", hash = "sha256:cf316c8370a737a022b72b56874f6602acf974a37a9fba42ec2876387549fc61"},
{file = "docutils-0.17.1.tar.gz", hash = "sha256:686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125"},
]
easygui = [
{file = "easygui-0.98.2-py2.py3-none-any.whl", hash = "sha256:8d38764803c27bbccab2771e6c021cb20647049b36617f765fac79f01af07a27"},
{file = "easygui-0.98.2.tar.gz", hash = "sha256:073f728ca88a77b74f404446fb8ec3004945427677c5618bd00f70c1b999fef2"},
]
ebaysdk = [
{file = "ebaysdk-2.1.5-py3.7.egg", hash = "sha256:55360edc239037c3a0aaaf3f39889ddea666b8b1d97c893b2c3fd2269d868b45"},
{file = "ebaysdk-2.1.5.tar.gz", hash = "sha256:78458e1ea4a0fc7d693c26de363069696393767e4aa9689fd38efbfb08409acd"},
@ -3412,8 +3458,8 @@ et-xmlfile = [
{file = "et_xmlfile-1.1.0.tar.gz", hash = "sha256:8eb9e2bc2f8c97e37a2dc85a09ecdcdec9d8a396530a6d5a33b30b9a92da0c5c"},
]
extract-msg = [
{file = "extract_msg-0.30.0-py2.py3-none-any.whl", hash = "sha256:bd745b0da524299628721bd7994d7a96450adbd818112fbd0b3450fa12ff91f8"},
{file = "extract_msg-0.30.0.tar.gz", hash = "sha256:445b19f088aee2d9bde35296a1715578ed8fe18e740eb5cd9e31fd2b1c65c48f"},
{file = "extract_msg-0.30.8-py2.py3-none-any.whl", hash = "sha256:d14ca915d3e9aab10b38164aa41b71b3394cba44f9540bdede5c3afeeaaacf39"},
{file = "extract_msg-0.30.8.tar.gz", hash = "sha256:cf54c63d45cb14ba9a08784e0561170cb7e523151456adcc593ea3b0102a4554"},
]
factur-x = [
{file = "factur-x-2.3.tar.gz", hash = "sha256:1b930a09ae6df3c9ed7bdf5d7088e7160304310840a7f29847c4e7296d5b1f0e"},
@ -3632,6 +3678,10 @@ kiwisolver = [
{file = "kiwisolver-1.3.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:bcadb05c3d4794eb9eee1dddf1c24215c92fb7b55a80beae7a60530a91060560"},
{file = "kiwisolver-1.3.2.tar.gz", hash = "sha256:fc4453705b81d03568d5b808ad8f09c77c47534f6ac2e72e733f9ca4714aa75c"},
]
lark-parser = [
{file = "lark-parser-0.12.0.tar.gz", hash = "sha256:15967db1f1214013dca65b1180745047b9be457d73da224fcda3d9dd4e96a138"},
{file = "lark_parser-0.12.0-py2.py3-none-any.whl", hash = "sha256:0eaf30cb5ba787fe404d73a7d6e61df97b21d5a63ac26c5008c78a494373c675"},
]
lasso = [
{file = "lasso-0.0.5.tar.gz", hash = "sha256:e64abaeef6f3e3e5f669cc44ca1423e69ad59360625269f50ee6ecb2172aa824"},
]
@ -3839,6 +3889,10 @@ msgpack = [
{file = "msgpack-1.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:f01b26c2290cbd74316990ba84a14ac3d599af9cebefc543d241a66e785cf17d"},
{file = "msgpack-1.0.3.tar.gz", hash = "sha256:51fdc7fb93615286428ee7758cecc2f374d5ff363bdd884c7ea622a7a327a81e"},
]
msoffcrypto-tool = [
{file = "msoffcrypto-tool-5.0.0.tar.gz", hash = "sha256:34cbdb3efe62d9ca08aa59aadb1dc7d46a8ec2fb4befb89807f2d3c00b9c3ede"},
{file = "msoffcrypto_tool-5.0.0-py3-none-any.whl", hash = "sha256:4fe95a7a4525d6261ff7373a2027b97308ec2302a40a6718b34dffbc738c00c9"},
]
multidict = [
{file = "multidict-5.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3822c5894c72e3b35aae9909bef66ec83e44522faf767c0ad39e0e2de11d3b55"},
{file = "multidict-5.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:28e6d883acd8674887d7edc896b91751dc2d8e87fbdca8359591a13872799e4e"},
@ -4014,13 +4068,17 @@ ofxparse = [
olefile = [
{file = "olefile-0.46.zip", hash = "sha256:133b031eaf8fd2c9399b78b8bc5b8fcbe4c31e85295749bb17a87cba8f3c3964"},
]
oletools = [
{file = "oletools-0.60-py2.py3-none-any.whl", hash = "sha256:bad54d3ced34f3475a5bffc0122f8481c66c3f3e09ad946dbda6ec80b75f72cb"},
{file = "oletools-0.60.zip", hash = "sha256:dfad0328ac83b4f8db9f47e706cbd64db739ae4ebf9d98b2dcc465728a35f4a6"},
]
openpyxl = [
{file = "openpyxl-3.0.9-py2.py3-none-any.whl", hash = "sha256:8f3b11bd896a95468a4ab162fc4fcd260d46157155d1f8bfaabb99d88cfcf79f"},
{file = "openpyxl-3.0.9.tar.gz", hash = "sha256:40f568b9829bf9e446acfffce30250ac1fa39035124d55fc024025c41481c90f"},
]
openupgradelib = [
{file = "openupgradelib-3.3.1-py2.py3-none-any.whl", hash = "sha256:a4b788312084ea24cc4dac2a60c384794b5d2bd57ed51822a5c7ebfa0dd1f6b5"},
{file = "openupgradelib-3.3.1.tar.gz", hash = "sha256:ea05e6ae1f22ccb54377e31483248304273c8af4a9d894b264d130bc769eed1e"},
{file = "openupgradelib-3.3.2-py2.py3-none-any.whl", hash = "sha256:acdd89626a829f1a22bee4a109d4c69b09aa7a461dcb565cb39a380081d0b87e"},
{file = "openupgradelib-3.3.2.tar.gz", hash = "sha256:1480dc046b24b3eb09bb8a6513f5818b2a7800163bab9543262942f086cbe5bc"},
]
optionaldict = [
{file = "optionaldict-0.1.2-py2.py3-none-any.whl", hash = "sha256:278d9b79b3d6a55b1b8ff5f9017bff6383a33426348d09e699ff50162bbcdab7"},
@ -4093,6 +4151,10 @@ pbr = [
{file = "pbr-5.8.0-py2.py3-none-any.whl", hash = "sha256:176e8560eaf61e127817ef93d8a844803abb27a4d4637f0ff3bb783129be2e0a"},
{file = "pbr-5.8.0.tar.gz", hash = "sha256:672d8ebee84921862110f23fcec2acea191ef58543d34dfe9ef3d9f13c31cddf"},
]
pcodedmp = [
{file = "pcodedmp-1.2.6-py2.py3-none-any.whl", hash = "sha256:4441f7c0ab4cbda27bd4668db3b14f36261d86e5059ce06c0828602cbe1c4278"},
{file = "pcodedmp-1.2.6.tar.gz", hash = "sha256:025f8c809a126f45a082ffa820893e6a8d990d9d7ddb68694b5a9f0a6dbcd955"},
]
pdf2image = [
{file = "pdf2image-1.16.0-py3-none-any.whl", hash = "sha256:84f79f2b8fad943e36323ea4e937fcb05f26ded0caa0a01181df66049e42fb65"},
{file = "pdf2image-1.16.0.tar.gz", hash = "sha256:d58ed94d978a70c73c2bb7fdf8acbaf2a7089c29ff8141be5f45433c0c4293bb"},
@ -4105,8 +4167,8 @@ pexpect = [
{file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"},
]
phonenumbers = [
{file = "phonenumbers-8.12.41-py2.py3-none-any.whl", hash = "sha256:2b8c7a7ffac4fe2be3d8bf20dad316ea1292f27422c9e18b1f3cd16734d4a5ed"},
{file = "phonenumbers-8.12.41.tar.gz", hash = "sha256:f477da623a51cba084567d6a67b1882a8aaaf3e7beadad655f8613a8f887ac62"},
{file = "phonenumbers-8.12.43-py2.py3-none-any.whl", hash = "sha256:386ea186019e8f4d646e48e9da9c3e786c254cfb1bd541cc0a8d0a2ccb85d3ca"},
{file = "phonenumbers-8.12.43.tar.gz", hash = "sha256:1c8270a2e257d6c65458a42283f82d3eca7f7b9d925454a6966e2f04df75e1cf"},
]
pillow = [
{file = "Pillow-9.0.0-cp310-cp310-macosx_10_10_universal2.whl", hash = "sha256:113723312215b25c22df1fdf0e2da7a3b9c357a7d24a93ebbe80bfda4f37a8d4"},
@ -4745,6 +4807,10 @@ rfc3986 = [
{file = "rfc3986-1.5.0-py2.py3-none-any.whl", hash = "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"},
{file = "rfc3986-1.5.0.tar.gz", hash = "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835"},
]
rtfde = [
{file = "RTFDE-0.0.2-py3-none-any.whl", hash = "sha256:18386e4f060cee12a2a8035b0acf0cc99689f5dff1bf347bab7e92351860a21d"},
{file = "RTFDE-0.0.2.tar.gz", hash = "sha256:b86b5d734950fe8745a5b89133f50554252dbd67c6d1b9265e23ee140e7ea8a2"},
]
s3transfer = [
{file = "s3transfer-0.5.0-py3-none-any.whl", hash = "sha256:9c1dc369814391a6bda20ebbf4b70a0f34630592c9aa520856bf384916af2803"},
{file = "s3transfer-0.5.0.tar.gz", hash = "sha256:50ed823e1dc5868ad40c8dc92072f757aa0e653a192845c94a3b676f4a62da4c"},
@ -4867,8 +4933,8 @@ soupsieve = [
{file = "soupsieve-2.3.1.tar.gz", hash = "sha256:b8d49b1cd4f037c7082a9683dfa1801aa2597fb11c3a1155b7a5b94829b4f1f9"},
]
sphinx = [
{file = "Sphinx-4.3.2-py3-none-any.whl", hash = "sha256:6a11ea5dd0bdb197f9c2abc2e0ce73e01340464feaece525e64036546d24c851"},
{file = "Sphinx-4.3.2.tar.gz", hash = "sha256:0a8836751a68306b3fe97ecbe44db786f8479c3bf4b80e3a7f5c838657b4698c"},
{file = "Sphinx-1.6.7-py2.py3-none-any.whl", hash = "sha256:d5b91b4dad56ffc9f19425ebaa7bc23290a0a2e9035781d5bc54822384663277"},
{file = "Sphinx-1.6.7.tar.gz", hash = "sha256:832bed0dc6099c2abca957d90ff55bc1a6ec4425c13fc144adbae68a970e3775"},
]
sphinx-intl = [
{file = "sphinx-intl-2.0.1.tar.gz", hash = "sha256:b25a6ec169347909e8d983eefe2d8adecb3edc2f27760db79b965c69950638b4"},
@ -4881,30 +4947,14 @@ sphinx-rtd-theme = [
{file = "sphinx_rtd_theme-1.0.0-py2.py3-none-any.whl", hash = "sha256:4d35a56f4508cfee4c4fb604373ede6feae2a306731d533f409ef5c3496fdbd8"},
{file = "sphinx_rtd_theme-1.0.0.tar.gz", hash = "sha256:eec6d497e4c2195fa0e8b2016b337532b8a699a68bcb22a512870e16925c6a5c"},
]
sphinxcontrib-applehelp = [
{file = "sphinxcontrib-applehelp-1.0.2.tar.gz", hash = "sha256:a072735ec80e7675e3f432fcae8610ecf509c5f1869d17e2eecff44389cdbc58"},
{file = "sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:806111e5e962be97c29ec4c1e7fe277bfd19e9652fb1a4392105b43e01af885a"},
]
sphinxcontrib-devhelp = [
{file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"},
{file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"},
]
sphinxcontrib-htmlhelp = [
{file = "sphinxcontrib-htmlhelp-2.0.0.tar.gz", hash = "sha256:f5f8bb2d0d629f398bf47d0d69c07bc13b65f75a81ad9e2f71a63d4b7a2f6db2"},
{file = "sphinxcontrib_htmlhelp-2.0.0-py2.py3-none-any.whl", hash = "sha256:d412243dfb797ae3ec2b59eca0e52dac12e75a241bf0e4eb861e450d06c6ed07"},
]
sphinxcontrib-jsmath = [
{file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"},
{file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"},
]
sphinxcontrib-qthelp = [
{file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"},
{file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"},
]
sphinxcontrib-serializinghtml = [
{file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"},
{file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"},
]
sphinxcontrib-websupport = [
{file = "sphinxcontrib-websupport-1.2.4.tar.gz", hash = "sha256:4edf0223a0685a7c485ae5a156b6f529ba1ee481a1417817935b20bde1956232"},
{file = "sphinxcontrib_websupport-1.2.4-py2.py3-none-any.whl", hash = "sha256:6fc9287dfc823fe9aa432463edd6cea47fa9ebbf488d7f289b322ffcfca075c7"},
]
sqlalchemy = [
{file = "SQLAlchemy-1.4.31-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:c3abc34fed19fdeaead0ced8cf56dd121f08198008c033596aa6aae7cc58f59f"},
{file = "SQLAlchemy-1.4.31-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:8d0949b11681380b4a50ac3cd075e4816afe9fa4a8c8ae006c1ca26f0fa40ad8"},
@ -5056,8 +5106,8 @@ unidecode = [
{file = "Unidecode-1.0.22.tar.gz", hash = "sha256:8c33dd588e0c9bc22a76eaa0c715a5434851f726131bd44a6c26471746efabf5"},
]
unidiff = [
{file = "unidiff-0.7.0-py2.py3-none-any.whl", hash = "sha256:ae4a9dacb2fba7297dbd85c4d629728ca4b3a6c2606a53a419b53b0388857c89"},
{file = "unidiff-0.7.0.tar.gz", hash = "sha256:91bb13b4969514a400679d9ae5e29a6ffad85346087677f8b5e2e036af817447"},
{file = "unidiff-0.7.3-py2.py3-none-any.whl", hash = "sha256:33152364004b455e11afd67e2d2d6bb8f2c20b28a289b443f2c7b84be18c24cb"},
{file = "unidiff-0.7.3.tar.gz", hash = "sha256:d5f2e53a9a00db3224a8c36349b5380e0e22d1aec6c694b14fb9483ee93c6205"},
]
urllib3 = [
{file = "urllib3-1.26.8-py2.py3-none-any.whl", hash = "sha256:000ca7f471a233c2251c6c7023ee85305721bfdf18621ebff4fd17a8653427ed"},
@ -5111,6 +5161,9 @@ whichcraft = [
{file = "whichcraft-0.6.1-py2.py3-none-any.whl", hash = "sha256:deda9266fbb22b8c64fd3ee45c050d61139cd87419765f588e37c8d23e236dd9"},
{file = "whichcraft-0.6.1.tar.gz", hash = "sha256:acdbb91b63d6a15efbd6430d1d7b2d36e44a71697e93e19b7ded477afd9fce87"},
]
win-unicode-console = [
{file = "win_unicode_console-0.5.zip", hash = "sha256:d4142d4d56d46f449d6f00536a73625a871cba040f0bc1a2e305a04578f07d1e"},
]
wrapt = [
{file = "wrapt-1.13.3-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:e05e60ff3b2b0342153be4d1b597bbcfd8330890056b9619f4ad6b8d5c96a81a"},
{file = "wrapt-1.13.3-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:85148f4225287b6a0665eef08a178c15097366d46b210574a658c1ff5b377489"},

View file

@ -21,7 +21,7 @@ authors = [ "Mathieu Benoit <mathben@technolibre.ca>",]
python = "^3.7.12"
Babel = "2.9.1"
Cerberus = "^1.3.4"
Cython = "^0.29.26"
Cython = "^0.29.27"
GitPython = "3.1.12"
Jinja2 = "2.11.3"
Js2Py = "^0.71"
@ -35,12 +35,13 @@ PyYAML = "6.0"
SOAPpy = "^0.12.22"
SQLAlchemy = "^1.4.31"
Shapely = "1.6.4.post2"
Sphinx = ">=2.4.0"
Sphinx = "1.6.7"
Unidecode = "1.0.22"
Voicent-Python = "^1.0"
Werkzeug = "0.11.15"
XlsxWriter = "0.9.3"
agithub = "^2.2.2"
aioshutil = "^1.1"
altair = "^4.2.0"
argcomplete = "^2.0.0"
asterisk = "^0.0.8"
@ -63,7 +64,7 @@ ebaysdk = "2.1.5"
email-validator = "^1.1.3"
emoji = "^1.6.3"
escpos = "^1.9"
extract-msg = "^0.30.0"
extract-msg = "^0.30.8"
factur-x = "^2.3"
feedparser = "5.2.1"
flake8 = "^4.0.1"
@ -93,14 +94,14 @@ oauthlib = "2.1.0"
oca-decorators = "^0.0.1"
ofxparse = "0.16"
openpyxl = "^3.0.9"
openupgradelib = "^3.3.1"
openupgradelib = "^3.3.2"
pandas = "1.3.5"
paramiko = "^2.9.2"
passlib = "1.6.5"
pdf2image = "^1.16.0"
pdfminer = "^20191125"
pexpect = "^4.8.0"
phonenumbers = "^8.12.41"
phonenumbers = "^8.12.43"
plotly = "4.1.0"
premailer = "^3.10.0"
psutil = "5.9.0"
@ -152,7 +153,7 @@ statsd = "3.2.1"
suds-jurko = "0.6"
toml = "^0.10.2"
twython = "^3.9.1"
unidiff = "^0.7.0"
unidiff = "^0.7.3"
urllib3 = "1.26.8"
vatnumber = "1.2"
vcrpy = ">=2.1.1"
@ -169,7 +170,6 @@ xmlformatter = "^0.2.4"
xmltodict = "^0.12.0"
zeep = "^4.1.0"
zxcvbn = "^4.4.28"
aioshutil = "^1.1"
[tool.poetry.dev-dependencies]
websocket_client = "^1.1.0"

View file

@ -2,7 +2,6 @@
giturlparse
agithub
GitPython==3.1.12
PyYAML
retrying
xmltodict
openupgradelib
@ -18,6 +17,8 @@ cython
wheel
phonenumbers
pytz==2017.3
# TODO Force use odoo/doc/requirements.txt, check when need update
sphinx==1.6.7
# For OCA
factur-x

View file

@ -125,6 +125,7 @@ if [[ ${EL_MINIMAL_ADDONS} = "False" ]]; then
printf "${EL_HOME}/addons/OCA_website," >> ${EL_CONFIG_FILE}
printf "${EL_HOME}/addons/OCA_website-cms," >> ${EL_CONFIG_FILE}
printf "${EL_HOME}/addons/OCA_wms," >> ${EL_CONFIG_FILE}
printf "${EL_HOME}/addons/OmniaGit_odooplm," >> ${EL_CONFIG_FILE}
printf "${EL_HOME}/addons/Smile-SA_odoo_addons," >> ${EL_CONFIG_FILE}
printf "${EL_HOME}/addons/TechnoLibre_odoo-code-generator," >> ${EL_CONFIG_FILE}
printf "${EL_HOME}/addons/TechnoLibre_odoo-code-generator-template," >> ${EL_CONFIG_FILE}

View file

@ -143,6 +143,21 @@ def combine_requirements(config):
dct_requirements = get_manifest_external_dependencies(dct_requirements)
# Merge all requirement by insensitive
dct_requirement_insensitive = {}
copy_dct_requirements = dct_requirements.copy()
dct_requirements = defaultdict(set)
for req_name, set_info in copy_dct_requirements.items():
lower_req_name = req_name.lower()
associate_req_name = dct_requirement_insensitive.get(lower_req_name)
if not associate_req_name:
dct_requirement_insensitive[lower_req_name] = req_name
dct_requirements[req_name] = set_info
else:
dct_requirements[associate_req_name] = set.union(
dct_requirements[associate_req_name], set_info
)
dct_requirements_diff_version = {
k: v for k, v in dct_requirements.items() if len(v) > 1
}
@ -194,9 +209,21 @@ def combine_requirements(config):
lst_version_requirement, key=lambda tup: tup[1]
)[-1]
for version_requirement in lst_version_requirement:
is_compatible &= iscompatible.iscompatible(
version_requirement[0], highest_value[1]
)
# TODO support me in iscompatible lib
# check after ., because b can appear in number
v_r_split = version_requirement[0].split(".", 1)
if len(v_r_split) > 1 and "b" in v_r_split[1]:
version_requirement_upd = version_requirement[0][
: version_requirement[0].rindex("b")
]
else:
version_requirement_upd = version_requirement[0]
try:
is_compatible &= iscompatible.iscompatible(
version_requirement_upd, highest_value[1]
)
except Exception as e:
print(e)
if is_compatible:
result = highest_value[0]
else:

View file

@ -132,3 +132,4 @@ https://github.com/ERPLibre/ERPLibre_image_db.git,,,
https://github.com/odoo/design-themes.git,addons,,
https://github.com/novacode-nl/odoo-formio.git,addons,,
https://github.com/ajepe/odoo-addons.git,addons,,
https://github.com/OmniaGit/odooplm.git,addons,,

1 url path revision clone-depth
132 https://github.com/odoo/design-themes.git addons
133 https://github.com/novacode-nl/odoo-formio.git addons
134 https://github.com/ajepe/odoo-addons.git addons
135 https://github.com/OmniaGit/odooplm.git addons