Skip to content

Commit e9e84ea

Browse files
authored
🌱 Initial Commit - Alpha Release Candidate
* 🌱 Initial Commit * Pre-commit Fixes * Fixup Workflow file * pyproject.toml Update dependencies * Fixup imports in import / export thread * Fix Odoo Lib Import * Invoice9.py fix import * Fixup Refactor product Processor * Fixup Mapper and Transform * Pre-commit fixes * Fixup tests * Fixup transform pre-commit * Update mapper and tests * Update export threaded for py 3.10+ compatability * main.py ypdate * Update noxfile * Docs update * src/odoo_data_flow/lib/internal/tools.py * src/odoo_data_flow/logging_config.py * src/odoo_data_flow/lib/mapper.py * src/odoo_data_flow/lib/conf_lib.py * src/odoo_data_flow/lib/internal/io.py * src/odoo_data_flow/lib/internal/rpc_thread.py * src/odoo_data_flow/lib/workflow/invoice_v9.py * src/odoo_data_flow/workflow_runner.py * src/odoo_data_flow/lib/transform.py * src/odoo_data_flow/import_threaded.py * src/odoo_data_flow/__main__.py * src/odoo_data_flow/converter.py * src/odoo_data_flow/importer.py * src/odoo_data_flow/migrator.py * src/odoo_data_flow/lib/mapper.py * src/odoo_data_flow/exporter.py * src/odoo_data_flow/migrator.py * src/odoo_data_flow/lib/transform.py * src/odoo_data_flow/export_threaded.py * src/odoo_data_flow/converter.py * src/odoo_data_flow/lib/mapper.py * src/odoo_data_flow/exporter.py * src/odoo_data_flow/migrator.py * Pre-commit fixes * update noxfile.py * Updated Noxfile in all sessions * Update toml file * pre-commit fixes * Cleanup * Gitignore update * pre-commit config * Noxfile Fix Create Coverage Report * Updare noxfile * Re-introduce workflow runner * Update Docs * [IMP] --model argument is optional on import if csv file is following the naming convention. * [FEAT] set default connection.conf * Invoice V9 ref print statements to logger * [IMP] Update tests to allow no config param * [IMP] Add failure reson to failure file * [IMP] Write log to file * Test Failure handling * Test converter * tests/test_export_threaded.py * tests/test_exporter.py * Fixup tests/test_failure_handling.py * tests/test_converter.py * Update conf_lib * Fixup mypy failure handling * tests/test_io.py * tests/test_mapper.py * tests/test_io.py * Update tests * Fix typeguard tests/test_mapper.py * tests/test_import_threaded.py * Update tests * src/odoo_data_flow/importer.py * Update coverage settings * tests cleanup * Big Bang Update * Cleaup Docs build dir * Update config * Update docs * Restore Product Template Mappers * Change theme in toml file * Noxfile linting * coverage update * Clean * upd Readme * tests/test_mapper.py
1 parent a63c2fd commit e9e84ea

File tree

143 files changed

+10298
-3876
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

143 files changed

+10298
-3876
lines changed

.cookiecutter.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"_checkout": "2025.06.25",
3+
"_output_dir": "/home/data/git/odoodataflow/odoo-data-flow",
4+
"_repo_dir": "/home/bosd/.cookiecutters/cookiecutter-uv-hypermodern-python",
5+
"_template": "gh:bosd/cookiecutter-uv-hypermodern-python",
6+
"author": "bosd",
7+
"copyright_year": "2025",
8+
"development_status": "Development Status :: 3 - Alpha",
9+
"email": "[email protected]",
10+
"friendly_name": "Odoo Data Flow",
11+
"github_user": "bosd",
12+
"license": "GPL-3.0",
13+
"package_name": "odoo-data-flow",
14+
"project_name": "odoo-data-flow",
15+
"version": "0.0.0"
16+
}

.coverage

128 KB
Binary file not shown.

.editorconfig

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
end_of_line = lf
6+
insert_final_newline = true
7+
trim_trailing_whitespace = true
8+
9+
[*.{py,toml}]
10+
indent_style = space
11+
indent_size = 4
12+
13+
[*.yml,yaml,json]
14+
indent_style = space
15+
indent_size = 2

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* text=auto eol=lf

.github/dependabot.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: github-actions
4+
directory: "/"
5+
schedule:
6+
interval: weekly
7+
groups:
8+
github-actions-updates:
9+
applies-to: version-updates
10+
dependency-type: development
11+
github-actions-security-updates:
12+
applies-to: security-updates
13+
dependency-type: development
14+
- package-ecosystem: pip
15+
directory: "/.github/workflows"
16+
schedule:
17+
interval: weekly
18+
groups:
19+
workflow-updates:
20+
applies-to: version-updates
21+
dependency-type: development
22+
workflow-security-updates:
23+
applies-to: security-updates
24+
dependency-type: development
25+
- package-ecosystem: pip
26+
directory: "/docs"
27+
schedule:
28+
interval: weekly
29+
groups:
30+
doc-updates:
31+
applies-to: version-updates
32+
dependency-type: development
33+
doc-security-updates:
34+
applies-to: security-updates
35+
dependency-type: production
36+
- package-ecosystem: pip
37+
directory: "/"
38+
schedule:
39+
interval: weekly
40+
versioning-strategy: lockfile-only
41+
allow:
42+
- dependency-type: "all"
43+
groups:
44+
pip-version-updates:
45+
applies-to: version-updates
46+
dependency-type: development
47+
pip-security-updates:
48+
applies-to: security-updates
49+
dependency-type: production

.github/labels.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
# Labels names are important as they are used by Release Drafter to decide
3+
# regarding where to record them in changelog or if to skip them.
4+
#
5+
# The repository labels will be automatically configured using this file and
6+
# the GitHub Action https://github.com/marketplace/actions/github-labeler.
7+
- name: breaking
8+
description: Breaking Changes
9+
color: bfd4f2
10+
- name: bug
11+
description: Something isn't working
12+
color: d73a4a
13+
- name: build
14+
description: Build System and Dependencies
15+
color: bfdadc
16+
- name: ci
17+
description: Continuous Integration
18+
color: 4a97d6
19+
- name: dependencies
20+
description: Pull requests that update a dependency file
21+
color: 0366d6
22+
- name: documentation
23+
description: Improvements or additions to documentation
24+
color: 0075ca
25+
- name: duplicate
26+
description: This issue or pull request already exists
27+
color: cfd3d7
28+
- name: enhancement
29+
description: New feature or request
30+
color: a2eeef
31+
- name: github_actions
32+
description: Pull requests that update Github_actions code
33+
color: "000000"
34+
- name: good first issue
35+
description: Good for newcomers
36+
color: 7057ff
37+
- name: help wanted
38+
description: Extra attention is needed
39+
color: 008672
40+
- name: invalid
41+
description: This doesn't seem right
42+
color: e4e669
43+
- name: performance
44+
description: Performance
45+
color: "016175"
46+
- name: python
47+
description: Pull requests that update Python code
48+
color: 2b67c6
49+
- name: question
50+
description: Further information is requested
51+
color: d876e3
52+
- name: refactoring
53+
description: Refactoring
54+
color: ef67c4
55+
- name: removal
56+
description: Removals and Deprecations
57+
color: 9ae7ea
58+
- name: style
59+
description: Style
60+
color: c120e5
61+
- name: testing
62+
description: Testing
63+
color: b1fc6f
64+
- name: wontfix
65+
description: This will not be worked on
66+
color: ffffff

.github/release-drafter.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
categories:
2+
- title: ":boom: Breaking Changes"
3+
label: "breaking"
4+
- title: ":rocket: Features"
5+
label: "enhancement"
6+
- title: ":fire: Removals and Deprecations"
7+
label: "removal"
8+
- title: ":beetle: Fixes"
9+
label: "bug"
10+
- title: ":racehorse: Performance"
11+
label: "performance"
12+
- title: ":rotating_light: Testing"
13+
label: "testing"
14+
- title: ":construction_worker: Continuous Integration"
15+
label: "ci"
16+
- title: ":books: Documentation"
17+
label: "documentation"
18+
- title: ":hammer: Refactoring"
19+
label: "refactoring"
20+
- title: ":lipstick: Style"
21+
label: "style"
22+
- title: ":package: Dependencies"
23+
labels:
24+
- "dependencies"
25+
- "build"
26+
template: |
27+
## Changes
28+
29+
$CHANGES

.github/workflows/constraints.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
pip==24.3.1
2+
nox==2024.10.09
3+
virtualenv==20.27.1

.github/workflows/labeler.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Labeler
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- master
8+
9+
jobs:
10+
labeler:
11+
runs-on: ubuntu-latest
12+
permissions:
13+
contents: read
14+
issues: write
15+
steps:
16+
- name: Check out the repository
17+
uses: actions/checkout@v4
18+
19+
- name: Run Labeler
20+
uses: crazy-max/[email protected]
21+
with:
22+
skip-delete: true

.github/workflows/release.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- master
8+
9+
jobs:
10+
release:
11+
name: Release
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Check out the repository
15+
uses: actions/checkout@v4
16+
with:
17+
fetch-depth: 0
18+
19+
- name: Set up Python
20+
uses: actions/setup-python@v5
21+
with:
22+
python-version: "3.13"
23+
24+
- name: Install uv
25+
uses: astral-sh/setup-uv@v4
26+
27+
- name: Check if there is a parent commit
28+
id: check-parent-commit
29+
run: |
30+
echo "sha=$(git rev-parse --verify --quiet HEAD^)" >> $GITHUB_OUTPUT
31+
32+
- name: Detect and tag new version
33+
id: check-version
34+
if: steps.check-parent-commit.outputs.sha
35+
uses: salsify/[email protected]
36+
with:
37+
version-command: |
38+
bash -o pipefail -c "uv version | awk '{ print \$2 }'"
39+
40+
- name: Bump version for developmental release
41+
if: "! steps.check-version.outputs.tag"
42+
run: |
43+
sed -i -e "s/0.0.0/${GITHUB_REF#refs/*/}/" pyproject.toml
44+
# uv bump patch &&
45+
# version=$(uv version | awk '{ print $2 }') &&
46+
# uv bump $version.dev.$(date +%s)
47+
48+
- name: Build package
49+
run: |
50+
uv build
51+
52+
- name: Publish package on PyPI
53+
if: steps.check-version.outputs.tag
54+
uses: pypa/[email protected]
55+
with:
56+
user: __token__
57+
password: ${{ secrets.PYPI_TOKEN }}
58+
59+
- name: Publish package on TestPyPI
60+
if: "! steps.check-version.outputs.tag"
61+
uses: pypa/[email protected]
62+
with:
63+
user: __token__
64+
password: ${{ secrets.TEST_PYPI_TOKEN }}
65+
repository_url: https://test.pypi.org/legacy/
66+
67+
- name: Publish the release notes
68+
uses: release-drafter/[email protected]
69+
with:
70+
publish: ${{ steps.check-version.outputs.tag != '' }}
71+
tag: ${{ steps.check-version.outputs.tag }}
72+
env:
73+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)