oe-python-template 0.2.5__tar.gz → 0.2.7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.copier-answers.yml +1 -1
  2. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.devcontainer/onCreateCommand +1 -1
  3. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.github/workflows/package-build-publish-release.yml +1 -1
  4. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.github/workflows/test-and-report.yml +5 -10
  5. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.secrets.baseline +1 -1
  6. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.vscode/settings.json +4 -4
  7. oe_python_template-0.2.5/RELEASE_NOTES.md → oe_python_template-0.2.7/CHANGELOG.md +14 -0
  8. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/CODEOWNERS +1 -1
  9. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/PKG-INFO +2 -2
  10. oe_python_template-0.2.7/RELEASE_NOTES.md +8 -0
  11. oe_python_template-0.2.7/VERSION +1 -0
  12. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/compose.yaml +1 -1
  13. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/conf.py +2 -2
  14. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/index.rst +4 -4
  15. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/noxfile.py +5 -1
  16. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/pyproject.toml +27 -7
  17. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/sonar-project.properties +1 -1
  18. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.devcontainer/onCreateCommand.jinja +1 -1
  19. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.github/workflows/package-build-publish-release.yml.jinja +1 -1
  20. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.github/workflows/test-and-report.yml.jinja +5 -10
  21. oe_python_template-0.2.5/template/.vscode/settings.json → oe_python_template-0.2.7/template/.vscode/settings.json.jinja +1 -1
  22. oe_python_template-0.2.7/template/CODEOWNERS.jinja +3 -0
  23. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/compose.yaml.jinja +1 -1
  24. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/conf.py.jinja +1 -1
  25. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/index.rst.jinja +4 -4
  26. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/noxfile.py.jinja +5 -1
  27. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/pyproject.toml.jinja +25 -5
  28. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/uv.lock +33 -33
  29. oe_python_template-0.2.5/CHANGELOG.md +0 -118
  30. oe_python_template-0.2.5/VERSION +0 -1
  31. oe_python_template-0.2.5/template/CODEOWNERS.jinja +0 -3
  32. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.act-env +0 -0
  33. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.act-secret +0 -0
  34. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.devcontainer/Dockerfile +0 -0
  35. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.devcontainer/devcontainer.json +0 -0
  36. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.devcontainer/postAttachCommand +0 -0
  37. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.devcontainer/postCreateCommand +0 -0
  38. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.env.example +0 -0
  39. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.github/workflows/docker-image-build-publish.yml +0 -0
  40. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.gitignore +0 -0
  41. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.pre-commit-config.yaml +0 -0
  42. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.python-version +0 -0
  43. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.readthedocs.yml +0 -0
  44. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/.vscode/extensions.json +0 -0
  45. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/CONTRIBUTING.md +0 -0
  46. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/Dockerfile +0 -0
  47. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/LICENSE +0 -0
  48. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/README.md +0 -0
  49. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/SERVICE_CONNECTIONS.md +0 -0
  50. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/_readme_footer.md +0 -0
  51. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/_readme_header.md +0 -0
  52. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/_readme_main.md +0 -0
  53. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/bin/git-cliff +0 -0
  54. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/bump +0 -0
  55. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/codecov.yml +0 -0
  56. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/copier.yml +0 -0
  57. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/Makefile +0 -0
  58. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/make.bat +0 -0
  59. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/_static/.keep +0 -0
  60. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/contributing.rst +0 -0
  61. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/latexmkrc +0 -0
  62. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/main.rst +0 -0
  63. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/reference.rst +0 -0
  64. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/docs/source/release-notes.rst +0 -0
  65. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/examples/__init__.py +0 -0
  66. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/examples/jupyter.ipynb +0 -0
  67. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/examples/notebook.ipynb +0 -0
  68. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/examples/notebook.py +0 -0
  69. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/examples/script.py +0 -0
  70. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/examples/streamlit.py +0 -0
  71. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/CHANGELOG.md +0 -0
  72. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/LICENSE-APACHE +0 -0
  73. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/LICENSE-MIT +0 -0
  74. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/README.md +0 -0
  75. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/completions/_git-cliff +0 -0
  76. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/completions/_git-cliff.ps1 +0 -0
  77. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/completions/git-cliff.bash +0 -0
  78. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/completions/git-cliff.elv +0 -0
  79. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/completions/git-cliff.fish +0 -0
  80. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/git-cliff-completions +0 -0
  81. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/git-cliff-mangen +0 -0
  82. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0/man/git-cliff.1 +0 -0
  83. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/git-cliff-2.7.0-x86_64-unknown-linux-gnu.tar.gz +0 -0
  84. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/github-action-run +0 -0
  85. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/latexmkrc +0 -0
  86. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/logo.png +0 -0
  87. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/reports/mypy.xml +0 -0
  88. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/src/oe_python_template/__init__.py +0 -0
  89. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/src/oe_python_template/cli.py +0 -0
  90. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/src/oe_python_template/constants.py +0 -0
  91. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/src/oe_python_template/service.py +0 -0
  92. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.act-env.jinja +0 -0
  93. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.act-secret.jinja +0 -0
  94. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.devcontainer/Dockerfile.jinja +0 -0
  95. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.devcontainer/devcontainer.json.jinja +0 -0
  96. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.devcontainer/postAttachCommand.jinja +0 -0
  97. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.devcontainer/postCreateCommand.jinja +0 -0
  98. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.env.example.jinja +0 -0
  99. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.github/workflows/docker-image-build-publish.yml.jinja +0 -0
  100. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.gitignore.jinja +0 -0
  101. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.pre-commit-config.yaml.jinja +0 -0
  102. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.python-version +0 -0
  103. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.readthedocs.yml.jinja +0 -0
  104. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/.vscode/extensions.json +0 -0
  105. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/CHANGELOG.md +0 -0
  106. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/CONTRIBUTING.md.jinja +0 -0
  107. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/Dockerfile.jinja +0 -0
  108. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/LICENSE.jinja +0 -0
  109. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/SERVICE_CONNECTIONS.md.jinja +0 -0
  110. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/VERSION +0 -0
  111. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/_readme_footer.md.jinja +0 -0
  112. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/_readme_header.md.jinja +0 -0
  113. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/_readme_main.md.jinja +0 -0
  114. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/bump.jinja +0 -0
  115. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/codecov.yml.jinja +0 -0
  116. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/Makefile.jinja +0 -0
  117. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/make.bat.jinja +0 -0
  118. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/_static/.keep +0 -0
  119. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/contributing.rst.jinja +0 -0
  120. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/latexmkrc.jinja +0 -0
  121. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/main.rst.jinja +0 -0
  122. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/reference.rst.jinja +0 -0
  123. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/docs/source/release-notes.rst.jinja +0 -0
  124. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/examples/__init__.py.jinja +0 -0
  125. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/examples/notebook.ipynb.jinja +0 -0
  126. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/examples/notebook.py.jinja +0 -0
  127. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/examples/script.py.jinja +0 -0
  128. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/examples/streamlit.py.jinja +0 -0
  129. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/github-action-run.jinja +0 -0
  130. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/latexmkrc.jinja +0 -0
  131. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/logo.png +0 -0
  132. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/sonar-project.properties.jinja +0 -0
  133. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/src/{{ project_name_snake_case }}/__init__.py.jinja +0 -0
  134. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/src/{{ project_name_snake_case }}/cli.py.jinja +0 -0
  135. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/src/{{ project_name_snake_case }}/constants.py.jinja +0 -0
  136. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/src/{{ project_name_snake_case }}/service.py.jinja +0 -0
  137. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/tests/__init__.py.jinja +0 -0
  138. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/tests/cli_test.py.jinja +0 -0
  139. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/tests/fixtures/.keep +0 -0
  140. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/template/{{_copier_conf.answers_file}}.jinja +0 -0
  141. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/tests/__init__.py +0 -0
  142. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/tests/cli_test.py +0 -0
  143. {oe_python_template-0.2.5 → oe_python_template-0.2.7}/tests/fixtures/.keep +0 -0
@@ -1,4 +1,4 @@
1
- _commit: v0.2.4-1-g698be6f
1
+ _commit: v0.2.6-1-g7c1a7b4
2
2
  _src_path: .
3
3
  author_email: helmuthva@gmail.com
4
4
  author_github_username: helmut-hoffer-von-ankershoffen
@@ -1,7 +1,7 @@
1
1
  #!/bin/sh
2
2
 
3
3
  echo "onCreateCommand: start"
4
- git config --global --add safe.directory /workspaces/
4
+ git config --global --add safe.directory /workspaces/oe-python-template
5
5
  rm -rf .nox
6
6
  rm -rf .venv
7
7
  uv sync --frozen
@@ -25,7 +25,7 @@ jobs:
25
25
  id: git-cliff
26
26
  with:
27
27
  config: pyproject.toml
28
- args: --verbose
28
+ args: --verbose --latest --strip header
29
29
  env:
30
30
  OUTPUT: RELEASE_NOTES.md
31
31
  GITHUB_REPO: ${{ github.repository }}
@@ -31,11 +31,6 @@ jobs:
31
31
  enable-cache: true
32
32
  cache-dependency-glob: uv.lock
33
33
 
34
- - uses: actions/setup-node@v4
35
- with:
36
- node-version: 18
37
- - run: npm install @modelcontextprotocol/inspector@0.3.0
38
-
39
34
  - name: Install Python, venv and dependencies
40
35
  run: |
41
36
  uv sync --all-extras --frozen --link-mode=copy
@@ -52,7 +47,7 @@ jobs:
52
47
  fi
53
48
 
54
49
  - name: Print development version info
55
- if: s${{ !startsWith(github.ref, 'refs/tags/v') }}
50
+ if: ${{ !startsWith(github.ref, 'refs/tags/v') }}
56
51
  run: |
57
52
  TOML_VERSION=$(uv run python -c "import tomli; print(tomli.load(open('pyproject.toml', 'rb'))['project']['version'])")
58
53
  echo "Development build - Current version in pyproject.toml: $TOML_VERSION"
@@ -81,7 +76,7 @@ jobs:
81
76
 
82
77
  - name: Upload test results
83
78
  uses: actions/upload-artifact@v4
84
- if: ${{ always() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}
79
+ if: ${{ always() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
85
80
  with:
86
81
  name: test-results
87
82
  path: |
@@ -95,18 +90,18 @@ jobs:
95
90
 
96
91
  - name: Upload coverage reports to Codecov
97
92
  uses: codecov/codecov-action@v5
98
- if: ${{ !cancelled() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}
93
+ if: ${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
99
94
  with:
100
95
  token: ${{ secrets.CODECOV_TOKEN }}
101
96
  slug: helmut-hoffer-von-ankershoffen/oe-python-template
102
97
 
103
98
  - name: Upload test results to Codecov
104
- if: ${{ !cancelled() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}
99
+ if: ${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
105
100
  uses: codecov/test-results-action@v1
106
101
  with:
107
102
  token: ${{ secrets.CODECOV_TOKEN }}
108
103
  - name: SonarQube Scan
109
- if: ${{ !cancelled() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}
104
+ if: ${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
110
105
  uses: SonarSource/sonarqube-scan-action@v4
111
106
  env:
112
107
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -123,5 +123,5 @@
123
123
  }
124
124
  ],
125
125
  "results": {},
126
- "generated_at": "2025-03-07T08:01:57Z"
126
+ "generated_at": "2025-03-07T19:48:06Z"
127
127
  }
@@ -39,7 +39,7 @@
39
39
  "python.testing.pytestEnabled": true,
40
40
  "python.testing.pytestArgs": [
41
41
  "-v",
42
- "--cov={{ project_name_snake_case }}"
42
+ "--cov=oe_python_template"
43
43
  ],
44
44
  "github.copilot.selectedCompletionModel": "gpt-4o-copilot",
45
45
  "github.copilot.nextEditSuggestions.enabled": true,
@@ -64,7 +64,7 @@
64
64
  "github.copilot.chat.generateTests.codeLens": true,
65
65
  "github.copilot.chat.search.semanticTextResults": true,
66
66
  "sonarlint.connectedMode.project": {
67
- "connectionId": "{{ org_name_kebab_case }}",
68
- "projectKey": "{{ org_name_kebab_case }}_{{ project_name_kebab_case }}"
67
+ "connectionId": "helmut-hoffer-von-ankershoffen",
68
+ "projectKey": "helmut-hoffer-von-ankershoffen_oe-python-template"
69
69
  }
70
- }
70
+ }
@@ -1,5 +1,19 @@
1
1
  [🧠 OE Python Template](https://oe-python-template.readthedocs.io/en/latest/)
2
2
 
3
+ ## [0.2.7](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.2.6..0.2.7) - 2025-03-07
4
+
5
+ ### 🎨 Styling
6
+
7
+ - Missing return in docstring - ([ab7dc70](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/ab7dc708ab5e1ca767cbb0fdfab7f0ffe563532c))
8
+
9
+
10
+ ## [0.2.6](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.2.5..v0.2.6) - 2025-03-07
11
+
12
+ ### 🐛 Bug Fixes
13
+
14
+ - Various - ([b946b87](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/b946b87f951e29c3c82a5847e0ca747d9109e0c1))
15
+
16
+
3
17
  ## [0.2.5](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.2.4..v0.2.5) - 2025-03-07
4
18
 
5
19
  ### ⛰️ Features
@@ -1,3 +1,3 @@
1
- # oe_python_template code owners
1
+ # oe-python-template code owners
2
2
 
3
3
  [*] @helmut-hoffer-von-ankershoffen # noqa
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: oe-python-template
3
- Version: 0.2.5
3
+ Version: 0.2.7
4
4
  Summary: 🧠 Copier template to scaffold Python projects compliant with best practices and modern tooling.
5
5
  Project-URL: Homepage, https://oe-python-template.readthedocs.io/en/latest/
6
6
  Project-URL: Documentation, https://oe-python-template.readthedocs.io/en/latest/
@@ -30,7 +30,7 @@ License: MIT License
30
30
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
31
31
  SOFTWARE.
32
32
  License-File: LICENSE
33
- Keywords: codecov,docker,oe-python-template,pydantic,python,ruff,typer,uv
33
+ Keywords: act,codecov,copier,cyclonedx,detect-secrets,devcontainer,docker,git-cliff,jupyter,marimo,mypy,nox,oe-python-template,pip-audit,pip-licenses,pre-commit,pydantic,pypi,pytest,python,readthedocs,ruff,sonarcloud,sonarqube,sphinx,streamlit,typer,uv
34
34
  Classifier: Development Status :: 2 - Pre-Alpha
35
35
  Classifier: Framework :: Pydantic
36
36
  Classifier: Framework :: Pytest
@@ -0,0 +1,8 @@
1
+ ## [0.2.7](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.2.6..v0.2.7) - 2025-03-07
2
+
3
+ ### 🎨 Styling
4
+
5
+ - Missing return in docstring - ([ab7dc70](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/ab7dc708ab5e1ca767cbb0fdfab7f0ffe563532c))
6
+
7
+
8
+
@@ -0,0 +1 @@
1
+ 0.2.7
@@ -1,5 +1,5 @@
1
1
  services:
2
- oe_python_template:
2
+ oe-python-template:
3
3
  build: .
4
4
  env_file:
5
5
  - path: .env
@@ -25,7 +25,7 @@ extensions = [
25
25
  project = "oe-python-template"
26
26
  author = "Helmut Hoffer von Ankershoffen"
27
27
  copyright = f" (c) 2025-{datetime.now(UTC).year}, {author}" # noqa: A001
28
- version = "0.2.5"
28
+ version = "0.2.7"
29
29
  release = version
30
30
  github_username = "helmut-hoffer-von-ankershoffen"
31
31
  github_repository = "oe-python-template"
@@ -33,7 +33,7 @@ github_repository = "oe-python-template"
33
33
  language = "en"
34
34
 
35
35
  ogp_site_name = "OE Python Template"
36
- ogp_image = "https://.readthedocs.io/en/latest/_static/logo.png"
36
+ ogp_image = "https://oe-python-template.readthedocs.io/en/latest/_static/logo.png"
37
37
  ogp_custom_meta_tags = [
38
38
  '<meta name="twitter:card" content="OE Python Template" />',
39
39
  ]
@@ -1,11 +1,11 @@
1
1
  .. only:: html
2
-
2
+
3
3
  .. include:: main.rst
4
4
 
5
5
  .. toctree::
6
- :hidden:
6
+ :hidden:
7
7
 
8
- Home<self>
8
+ Home<self>
9
9
 
10
10
  .. toctree::
11
11
  :maxdepth: 2
@@ -21,7 +21,7 @@
21
21
  :pypi: oe-python-template
22
22
 
23
23
  Docker <https://hub.docker.com/r/helmuthva/oe-python-template/tags>
24
- SonarQube <https://sonarcloud.io/summary/new_code?id=>
24
+ SonarQube <https://sonarcloud.io/summary/new_code?id=helmut-hoffer-von-ankershoffen_oe-python-template>
25
25
  Codecov <https://app.codecov.io/gh/helmut-hoffer-von-ankershoffen/oe-python-template>
26
26
  ghcr.io <https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/pkgs/container/oe-python-template>
27
27
  License <https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/blob/main/LICENSE>
@@ -25,7 +25,11 @@ def _setup_venv(session: nox.Session, all_extras: bool = True) -> None:
25
25
 
26
26
 
27
27
  def _is_act_environment() -> bool:
28
- """Check if running in Github ACT environment.""" # noqa: DOC201
28
+ """Check if running in GitHub ACT environment.
29
+
30
+ Returns:
31
+ bool: True if running in ACT environment, False otherwise.
32
+ """
29
33
  return os.environ.get("GITHUB_WORKFLOW_RUNTIME") == "ACT"
30
34
 
31
35
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "oe-python-template"
3
- version = "0.2.5"
3
+ version = "0.2.7"
4
4
  description = "🧠 Copier template to scaffold Python projects compliant with best practices and modern tooling."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -10,11 +10,31 @@ license = { file = "LICENSE" }
10
10
 
11
11
  keywords = [
12
12
  "oe-python-template",
13
+ "act",
13
14
  "codecov",
15
+ "copier",
16
+ "cyclonedx",
17
+ "devcontainer",
18
+ "detect-secrets",
14
19
  "docker",
20
+ "git-cliff",
21
+ "jupyter",
22
+ "marimo",
23
+ "mypy",
24
+ "nox",
25
+ "pip-audit",
26
+ "pip-licenses",
27
+ "pre-commit",
15
28
  "pydantic",
29
+ "pytest",
16
30
  "python",
31
+ "pypi",
32
+ "readthedocs",
17
33
  "ruff",
34
+ "sonarqube",
35
+ "sonarcloud",
36
+ "sphinx",
37
+ "streamlit",
18
38
  "typer",
19
39
  "uv",
20
40
  ]
@@ -66,7 +86,7 @@ examples = ["streamlit>=1.42.2", "marimo>=0.11.13","jupyter>=1.1.1", "jinja2 >=3
66
86
  [dependency-groups]
67
87
  dev = [
68
88
  "autodoc-pydantic>=2.2.0",
69
- "bump-my-version>=0.32.2",
89
+ "bump-my-version>=1.0.1",
70
90
  "cyclonedx-py>=1.0.1",
71
91
  "detect-secrets>=1.5.0",
72
92
  "enum-tools>=0.12.0",
@@ -84,8 +104,8 @@ dev = [
84
104
  "pytest-docker>=3.2.0",
85
105
  "pytest-env>=1.1.5",
86
106
  "pytest-xdist[psutil]>=3.6.1",
87
- "ruff>=0.9.7",
88
- "sphinx>=8.2.1",
107
+ "ruff>=0.9.10",
108
+ "sphinx>=8.2.3",
89
109
  "sphinx-autobuild>=2024.10.3",
90
110
  "sphinx-copybutton>=0.5.2",
91
111
  "sphinx-inline-tabs>=2023.4.21",
@@ -93,10 +113,10 @@ dev = [
93
113
  "sphinxext.opengraph>=0.9.1",
94
114
  "sphinx-pydantic>=0.1.1",
95
115
  "sphinx-rtd-theme>=3.0.2",
96
- "sphinx-toolbox>=3.8.3",
116
+ "sphinx-toolbox>=3.9.0",
97
117
  "sphinxext-opengraph>=0.9.1",
98
118
  "tomli>=2.1.0",
99
- "matplotlib>=3.10.0",
119
+ "matplotlib>=3.10.1",
100
120
  "pytest-regressions>=2.7.0",
101
121
  ]
102
122
 
@@ -213,7 +233,7 @@ source = ["src/"]
213
233
 
214
234
 
215
235
  [tool.bumpversion]
216
- current_version = "0.2.5"
236
+ current_version = "0.2.7"
217
237
  parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
218
238
  serialize = ["{major}.{minor}.{patch}"]
219
239
  search = "{current_version}"
@@ -1,6 +1,6 @@
1
1
  sonar.projectKey=helmut-hoffer-von-ankershoffen_oe-python-template
2
2
  sonar.organization=helmut-hoffer-von-ankershoffen
3
- sonar.projectVersion=0.2.5
3
+ sonar.projectVersion=0.2.7
4
4
  sonar.projectDescription=OE Python Template
5
5
  sonar.links.homepage=https://oe-python-template.readthedocs.io/en/latest/
6
6
  sonar.links.scm=https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template
@@ -1,7 +1,7 @@
1
1
  #!/bin/sh
2
2
 
3
3
  echo "onCreateCommand: start"
4
- git config --global --add safe.directory /workspaces/{{ project_name_kebap_case}}
4
+ git config --global --add safe.directory /workspaces/{{ project_name_kebab_case }}
5
5
  rm -rf .nox
6
6
  rm -rf .venv
7
7
  uv sync --frozen
@@ -25,7 +25,7 @@ jobs:
25
25
  id: git-cliff
26
26
  with:
27
27
  config: pyproject.toml
28
- args: --verbose
28
+ args: --verbose --latest --strip header
29
29
  env:
30
30
  OUTPUT: RELEASE_NOTES.md
31
31
  GITHUB_REPO: {% raw %}${{ github.repository }}{% endraw %}
@@ -31,11 +31,6 @@ jobs:
31
31
  enable-cache: true
32
32
  cache-dependency-glob: uv.lock
33
33
 
34
- - uses: actions/setup-node@v4
35
- with:
36
- node-version: 18
37
- - run: npm install @modelcontextprotocol/inspector@0.3.0
38
-
39
34
  - name: Install Python, venv and dependencies
40
35
  run: |
41
36
  uv sync --all-extras --frozen --link-mode=copy
@@ -52,7 +47,7 @@ jobs:
52
47
  fi
53
48
 
54
49
  - name: Print development version info
55
- if: {% raw %}s${{ !startsWith(github.ref, 'refs/tags/v') }}{% endraw %}
50
+ if: {% raw %}${{ !startsWith(github.ref, 'refs/tags/v') }}{% endraw %}
56
51
  run: |
57
52
  TOML_VERSION=$(uv run python -c "import tomli; print(tomli.load(open('pyproject.toml', 'rb'))['project']['version'])")
58
53
  echo "Development build - Current version in pyproject.toml: $TOML_VERSION"
@@ -81,7 +76,7 @@ jobs:
81
76
 
82
77
  - name: Upload test results
83
78
  uses: actions/upload-artifact@v4
84
- if: {% raw %}${{ always() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
79
+ if: {% raw %}${{ always() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
85
80
  with:
86
81
  name: test-results
87
82
  path: |
@@ -95,18 +90,18 @@ jobs:
95
90
 
96
91
  - name: Upload coverage reports to Codecov
97
92
  uses: codecov/codecov-action@v5
98
- if: {% raw %}${{ !cancelled() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
93
+ if: {% raw %}${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
99
94
  with:
100
95
  token: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %}
101
96
  slug: {{ github_repository_owner }}/{{ github_repository_name }}
102
97
 
103
98
  - name: Upload test results to Codecov
104
- if: {% raw %}${{ !cancelled() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
99
+ if: {% raw %}${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
105
100
  uses: codecov/test-results-action@v1
106
101
  with:
107
102
  token: {% raw %}${{ secrets.CODECOV_TOKEN }}{% endraw %}
108
103
  - name: SonarQube Scan
109
- if: {% raw %}${{ !cancelled() && (env.GITLAB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
104
+ if: {% raw %}${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}{% endraw %}
110
105
  uses: SonarSource/sonarqube-scan-action@v4
111
106
  env:
112
107
  GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %}
@@ -67,4 +67,4 @@
67
67
  "connectionId": "{{ org_name_kebab_case }}",
68
68
  "projectKey": "{{ org_name_kebab_case }}_{{ project_name_kebab_case }}"
69
69
  }
70
- }
70
+ }
@@ -0,0 +1,3 @@
1
+ # {{ pypi_distribution_name }} code owners
2
+
3
+ [*] @{{ author_github_username}} # noqa
@@ -1,5 +1,5 @@
1
1
  services:
2
- {{ project_name_snake_case }}:
2
+ {{ pypi_distribution_name }}:
3
3
  build: .
4
4
  env_file:
5
5
  - path: .env
@@ -33,7 +33,7 @@ github_repository = "{{ github_repository_name}}"
33
33
  language = "en"
34
34
 
35
35
  ogp_site_name = "{{ project_name}}"
36
- ogp_image = "https://{{ readthedocs_key }}.readthedocs.io/en/latest/_static/logo.png"
36
+ ogp_image = "https://{{ readthedocs_project_key }}.readthedocs.io/en/latest/_static/logo.png"
37
37
  ogp_custom_meta_tags = [
38
38
  '<meta name="twitter:card" content="{{ project_name }}" />',
39
39
  ]
@@ -1,11 +1,11 @@
1
1
  .. only:: html
2
-
2
+
3
3
  .. include:: main.rst
4
4
 
5
5
  .. toctree::
6
- :hidden:
6
+ :hidden:
7
7
 
8
- Home<self>
8
+ Home<self>
9
9
 
10
10
  .. toctree::
11
11
  :maxdepth: 2
@@ -21,7 +21,7 @@
21
21
  :pypi: {{ pypi_distribution_name }}
22
22
 
23
23
  Docker <https://hub.docker.com/r/{{ docker_io_owner }}/{{ docker_io_image_name }}/tags>
24
- SonarQube <https://sonarcloud.io/summary/new_code?id={{ sonarcloud_key }}>
24
+ SonarQube <https://sonarcloud.io/summary/new_code?id={{ sonarqube_key }}>
25
25
  Codecov <https://app.codecov.io/gh/{{ github_repository_owner }}/{{ github_repository_name }}>
26
26
  ghcr.io <{{ github_repository_url_https }}/pkgs/container/{{ github_repository_name }}>
27
27
  License <{{ github_repository_url_https }}/blob/main/LICENSE>
@@ -25,7 +25,11 @@ def _setup_venv(session: nox.Session, all_extras: bool = True) -> None:
25
25
 
26
26
 
27
27
  def _is_act_environment() -> bool:
28
- """Check if running in Github ACT environment.""" # noqa: DOC201
28
+ """Check if running in GitHub ACT environment.
29
+
30
+ Returns:
31
+ bool: True if running in ACT environment, False otherwise.
32
+ """
29
33
  return os.environ.get("GITHUB_WORKFLOW_RUNTIME") == "ACT"
30
34
 
31
35
 
@@ -10,11 +10,31 @@ license = { file = "LICENSE" }
10
10
 
11
11
  keywords = [
12
12
  "{{ pypi_distribution_name }}",
13
+ "act",
13
14
  "codecov",
15
+ "copier",
16
+ "cyclonedx",
17
+ "devcontainer",
18
+ "detect-secrets",
14
19
  "docker",
20
+ "git-cliff",
21
+ "jupyter",
22
+ "marimo",
23
+ "mypy",
24
+ "nox",
25
+ "pip-audit",
26
+ "pip-licenses",
27
+ "pre-commit",
15
28
  "pydantic",
29
+ "pytest",
16
30
  "python",
31
+ "pypi",
32
+ "readthedocs",
17
33
  "ruff",
34
+ "sonarqube",
35
+ "sonarcloud",
36
+ "sphinx",
37
+ "streamlit",
18
38
  "typer",
19
39
  "uv",
20
40
  ]
@@ -66,7 +86,7 @@ examples = ["streamlit>=1.42.2", "marimo>=0.11.13","jupyter>=1.1.1", "jinja2 >=3
66
86
  [dependency-groups]
67
87
  dev = [
68
88
  "autodoc-pydantic>=2.2.0",
69
- "bump-my-version>=0.32.2",
89
+ "bump-my-version>=1.0.1",
70
90
  "cyclonedx-py>=1.0.1",
71
91
  "detect-secrets>=1.5.0",
72
92
  "enum-tools>=0.12.0",
@@ -84,8 +104,8 @@ dev = [
84
104
  "pytest-docker>=3.2.0",
85
105
  "pytest-env>=1.1.5",
86
106
  "pytest-xdist[psutil]>=3.6.1",
87
- "ruff>=0.9.7",
88
- "sphinx>=8.2.1",
107
+ "ruff>=0.9.10",
108
+ "sphinx>=8.2.3",
89
109
  "sphinx-autobuild>=2024.10.3",
90
110
  "sphinx-copybutton>=0.5.2",
91
111
  "sphinx-inline-tabs>=2023.4.21",
@@ -93,10 +113,10 @@ dev = [
93
113
  "sphinxext.opengraph>=0.9.1",
94
114
  "sphinx-pydantic>=0.1.1",
95
115
  "sphinx-rtd-theme>=3.0.2",
96
- "sphinx-toolbox>=3.8.3",
116
+ "sphinx-toolbox>=3.9.0",
97
117
  "sphinxext-opengraph>=0.9.1",
98
118
  "tomli>=2.1.0",
99
- "matplotlib>=3.10.0",
119
+ "matplotlib>=3.10.1",
100
120
  "pytest-regressions>=2.7.0",
101
121
  ]
102
122