python-template-project 0.2.4__tar.gz → 0.2.5__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.
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.readthedocs.yaml +3 -3
- {python_template_project-0.2.4 → python_template_project-0.2.5}/HISTORY.md +14 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/Makefile +12 -6
- {python_template_project-0.2.4/src/python_template_project.egg-info → python_template_project-0.2.5}/PKG-INFO +2 -19
- {python_template_project-0.2.4 → python_template_project-0.2.5}/README.md +0 -1
- python_template_project-0.2.5/config.yaml +41 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/usage/cli.md +28 -12
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/usage/config.md +19 -10
- {python_template_project-0.2.4 → python_template_project-0.2.5}/pyproject.toml +4 -5
- {python_template_project-0.2.4 → python_template_project-0.2.5}/scripts/generate_config_docs.py +2 -2
- python_template_project-0.2.5/src/python_template_project/_version.py +24 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/config/config.py +5 -1
- {python_template_project-0.2.4 → python_template_project-0.2.5/src/python_template_project.egg-info}/PKG-INFO +2 -19
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project.egg-info/SOURCES.txt +2 -0
- python_template_project-0.2.5/src/python_template_project.egg-info/requires.txt +6 -0
- python_template_project-0.2.5/src/python_template_project.egg-info/scm_file_list.json +78 -0
- python_template_project-0.2.5/src/python_template_project.egg-info/scm_version.json +8 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/uv.lock +71 -21
- python_template_project-0.2.4/config.yaml +0 -41
- python_template_project-0.2.4/src/python_template_project/_version.py +0 -34
- python_template_project-0.2.4/src/python_template_project.egg-info/requires.txt +0 -25
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/FUNDING.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/actions/setup-environment/action.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/dependabot.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/init.sh +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/release_message.sh +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/rename_project.sh +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/template.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/update_funding.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/build-linux.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/build-macos.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/build-windows.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/main.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/release.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/rename_project.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/update_readme.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.gitignore +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.idea/runConfigurations/config_generate.xml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.idea/runConfigurations/module_cli.xml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.idea/runConfigurations/module_gui.xml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.pre-commit-config-linux.yaml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/.pre-commit-config.yaml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/LICENSE +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/.nav.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/_static/img/favicon.png +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/_static/img/logo.png +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/css/custom.css +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/contributing.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/make_windows.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/naming_convention.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/pypi_release.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/funding/funding.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/getting-started/install.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/getting-started/virtual-environment.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/docs/index.md +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/examples/kuhkopfsteig.gpx +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/examples/rother_lilienstein.gpx +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/examples/teneriffa.gpx +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/mkdocs.yml +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/pytest.ini +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/scripts/show_filelist.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/scripts/show_tree.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/scripts/update_readme.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/setup.cfg +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/firewall_handler.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/main.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/__main__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/cli/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/cli/__main__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/cli/cli.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/config/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/core/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/core/base.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/core/logging.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/gui/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/gui/__main__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project/gui/gui.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project.egg-info/dependency_links.txt +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project.egg-info/entry_points.txt +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/src/python_template_project.egg-info/top_level.txt +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/template.yml.url +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/tests/__init__.py +0 -0
- {python_template_project-0.2.4 → python_template_project-0.2.5}/tests/test_gpx.py +0 -0
|
@@ -4,6 +4,20 @@ Changelog
|
|
|
4
4
|
|
|
5
5
|
(unreleased)
|
|
6
6
|
------------
|
|
7
|
+
- Ich habe .readthedocs.yaml auf Read the Docs’ uv-Integration mit der
|
|
8
|
+
Gruppe docs umgestellt. Hinweis: uv sync wählt standardmäßig auch die
|
|
9
|
+
dev-Gruppe aus. [Paul Magister]
|
|
10
|
+
- Updated pyproject.toml to remove Deptry’s deprecated setting, which
|
|
11
|
+
pointed at optional-dependency groups that this project doesn’t use.
|
|
12
|
+
Added a targeted exception for lxml, an intentional dependency that
|
|
13
|
+
Deptry otherwise flags as unused. [Paul Magister]
|
|
14
|
+
- Bump version of config-cli-gui to latest version. [Paul Magister]
|
|
15
|
+
- Improve makefile. [Paul Magister]
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
0.2.4 (2025-11-30)
|
|
19
|
+
------------------
|
|
20
|
+
- Docs: Update HISTORY.md for release 0.2.4. [Paul Magister]
|
|
7
21
|
- Add linux build workflow. [Paul Magister]
|
|
8
22
|
- Avoid warning by adding lxml package. [Paul Magister]
|
|
9
23
|
- Fix format. [Paul Magister]
|
|
@@ -18,8 +18,7 @@ show: ## Show the current environment.
|
|
|
18
18
|
.PHONY: install
|
|
19
19
|
install: ## Install the project in dev mode.
|
|
20
20
|
$(MAKE) lock
|
|
21
|
-
|
|
22
|
-
uv pip install -e .[dev,docs]
|
|
21
|
+
uv sync --all-groups
|
|
23
22
|
|
|
24
23
|
.PHONY: lock
|
|
25
24
|
lock: ## builds the uv.make lock file and syncs the packages
|
|
@@ -40,6 +39,7 @@ fmt: ## Format code using black & isort.
|
|
|
40
39
|
uv run ruff format tests/
|
|
41
40
|
uv run ruff check src/ --fix
|
|
42
41
|
uv run ruff check tests/ --fix
|
|
42
|
+
$(MAKE) syncdocs
|
|
43
43
|
|
|
44
44
|
.PHONY: lint
|
|
45
45
|
lint: ## Run pep8, black, mypy linters.
|
|
@@ -74,6 +74,7 @@ build-linux: ## Build the Linux executable.
|
|
|
74
74
|
mkdir release
|
|
75
75
|
cp dist/python-template-project release
|
|
76
76
|
cp config.yaml release
|
|
77
|
+
cp README.md release
|
|
77
78
|
|
|
78
79
|
|
|
79
80
|
.PHONY: build-macos
|
|
@@ -158,15 +159,20 @@ release: ## Create a new tag for release.
|
|
|
158
159
|
echo "GitHub Actions will detect the new tag and trigger the release workflows."
|
|
159
160
|
echo "Add modified files to commit and push them to main"
|
|
160
161
|
|
|
161
|
-
.PHONY:
|
|
162
|
-
|
|
162
|
+
.PHONY: syncdocs
|
|
163
|
+
syncdocs: ## Sync the documentation.
|
|
163
164
|
@echo "sync documentation ..."
|
|
164
165
|
@uv run ./scripts/generate_config_docs.py
|
|
165
166
|
@uv run ./scripts/update_readme.py
|
|
166
167
|
@uv run ./.github/update_funding.py
|
|
168
|
+
|
|
169
|
+
.PHONY: docs
|
|
170
|
+
docs: ## Build and sync the documentation.
|
|
171
|
+
## run syncdocs
|
|
172
|
+
$(MAKE) syncdocs
|
|
167
173
|
@echo "building documentation ..."
|
|
168
|
-
@uv run mkdocs build
|
|
169
|
-
@uv run mkdocs serve
|
|
174
|
+
@uv run --group docs mkdocs build
|
|
175
|
+
@uv run --group docs mkdocs serve
|
|
170
176
|
|
|
171
177
|
.PHONY: tree
|
|
172
178
|
tree: ## Show project tree (excluding ignored folders)
|
|
@@ -1,34 +1,17 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-template-project
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.5
|
|
4
4
|
Summary: Feature-rich Python project template designed for robustness and ease of use.
|
|
5
5
|
Author: pamagister
|
|
6
6
|
Requires-Python: <3.12,>=3.10
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
8
|
License-File: LICENSE
|
|
9
|
-
Requires-Dist: config-cli-gui>=0.
|
|
9
|
+
Requires-Dist: config-cli-gui>=0.3.9
|
|
10
10
|
Requires-Dist: fastkml>=1.1.0
|
|
11
11
|
Requires-Dist: gpxpy>=1.6.2
|
|
12
12
|
Requires-Dist: lxml>=6.0.2
|
|
13
13
|
Requires-Dist: shapely>=2.1.1
|
|
14
14
|
Requires-Dist: srtm-py>=0.3.7
|
|
15
|
-
Provides-Extra: dev
|
|
16
|
-
Requires-Dist: pytest>=8.4.0; extra == "dev"
|
|
17
|
-
Requires-Dist: pytest-mock>=3.14.1; extra == "dev"
|
|
18
|
-
Requires-Dist: coverage>=7.8.2; extra == "dev"
|
|
19
|
-
Requires-Dist: flake8>=7.2.0; extra == "dev"
|
|
20
|
-
Requires-Dist: black>=25.1.0; extra == "dev"
|
|
21
|
-
Requires-Dist: isort>=6.0.1; extra == "dev"
|
|
22
|
-
Requires-Dist: pytest-cov>=6.1.1; extra == "dev"
|
|
23
|
-
Requires-Dist: mypy>=1.16.0; extra == "dev"
|
|
24
|
-
Requires-Dist: gitchangelog>=3.0.4; extra == "dev"
|
|
25
|
-
Requires-Dist: pyinstaller>=5.8; extra == "dev"
|
|
26
|
-
Requires-Dist: pre-commit>=4.2.0; extra == "dev"
|
|
27
|
-
Requires-Dist: ruff>=0.11.13; extra == "dev"
|
|
28
|
-
Provides-Extra: docs
|
|
29
|
-
Requires-Dist: mkdocs>=1.6.1; extra == "docs"
|
|
30
|
-
Requires-Dist: mkdocs-awesome-nav>=2.6.1; extra == "docs"
|
|
31
|
-
Requires-Dist: pygments>=2.19.1; extra == "docs"
|
|
32
15
|
Dynamic: license-file
|
|
33
16
|
|
|
34
17
|
# Welcome to python-template-project
|
|
@@ -93,7 +93,6 @@ Getting started on developing your own project based on this template
|
|
|
93
93
|
* Generate a **PyPI API token** from your PyPI account.
|
|
94
94
|
* Go to **GitHub → Settings → Secrets and variables → Actions**.
|
|
95
95
|
* Add the secret as `PYPI_API_TOKEN`.
|
|
96
|
-
* The token probably starts with "pypi-..."
|
|
97
96
|
|
|
98
97
|
16. **Release your first version**
|
|
99
98
|
Run:
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
app:
|
|
2
|
+
# Date format to use | type=str
|
|
3
|
+
date_format: '%Y-%m-%d'
|
|
4
|
+
# Logging level for the application | type=str | choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL']
|
|
5
|
+
log_level: INFO
|
|
6
|
+
# Maximum log file size in MB before rotation | type=int
|
|
7
|
+
log_file_max_size: 10
|
|
8
|
+
# Number of backup log files to keep | type=int
|
|
9
|
+
log_backup_count: 5
|
|
10
|
+
# Log message format style | type=str | choices=['simple', 'detailed', 'json']
|
|
11
|
+
log_format: detailed
|
|
12
|
+
# Maximum number of worker threads | type=int
|
|
13
|
+
max_workers: 4
|
|
14
|
+
# Enable logging to file | type=bool | choices=[True, False]
|
|
15
|
+
enable_file_logging: true
|
|
16
|
+
# Enable logging to console | type=bool | choices=[True, False]
|
|
17
|
+
enable_console_logging: true
|
|
18
|
+
cli:
|
|
19
|
+
# Path to input (file or folder) | type=str | [CLI]
|
|
20
|
+
input: ''
|
|
21
|
+
# Path to output destination | type=str | [CLI]
|
|
22
|
+
output: ''
|
|
23
|
+
# Maximum distance between two waypoints | type=int | [CLI]
|
|
24
|
+
min_dist: 25
|
|
25
|
+
# Extract starting points of each track as waypoint | type=bool | [CLI] | choices=[True, False]
|
|
26
|
+
extract_waypoints: true
|
|
27
|
+
# Include elevation data in waypoints | type=bool | [CLI] | choices=[True, False]
|
|
28
|
+
elevation: true
|
|
29
|
+
gui:
|
|
30
|
+
# GUI theme setting | type=str | choices=['light', 'dark', 'auto']
|
|
31
|
+
theme: light
|
|
32
|
+
# Default window width | type=int
|
|
33
|
+
window_width: 800
|
|
34
|
+
# Default window height | type=int
|
|
35
|
+
window_height: 600
|
|
36
|
+
# Height of the log window in pixels | type=int
|
|
37
|
+
log_window_height: 200
|
|
38
|
+
# Automatically scroll to the newest log entries | type=bool | choices=[True, False]
|
|
39
|
+
auto_scroll_log: true
|
|
40
|
+
# Maximum number of log lines to keep in GUI | type=int
|
|
41
|
+
max_log_lines: 1000
|
|
@@ -3,13 +3,22 @@
|
|
|
3
3
|
Command line options for python_template_project
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
|
-
python
|
|
6
|
+
python-template-project [OPTIONS] <input>
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
For development from a source checkout, the equivalent module invocation is:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
python -m python_template_project [OPTIONS] <input>
|
|
7
13
|
```
|
|
8
14
|
|
|
9
15
|
## Options
|
|
10
16
|
|
|
11
17
|
| Option | Type | Description | Default | Choices |
|
|
12
18
|
|-----------------------|------|---------------------------------------------------|------------|---------------|
|
|
19
|
+
| --config | str | Path to configuration file | - | - |
|
|
20
|
+
| -v, --verbose | bool | Enable debug logging | False | [True, False] |
|
|
21
|
+
| -q, --quiet | bool | Show warnings and errors only | False | [True, False] |
|
|
13
22
|
| `input` | str | Path to input (file or folder) | *required* | - |
|
|
14
23
|
| `--output` | str | Path to output destination | *required* | - |
|
|
15
24
|
| `--min_dist` | int | Maximum distance between two waypoints | 25 | - |
|
|
@@ -23,37 +32,44 @@ python -m python_template_project [OPTIONS] input
|
|
|
23
32
|
### 1. Basic usage
|
|
24
33
|
|
|
25
34
|
```bash
|
|
26
|
-
python
|
|
35
|
+
python-template-project input
|
|
27
36
|
```
|
|
28
37
|
|
|
29
38
|
### 2. With verbose logging
|
|
30
39
|
|
|
31
40
|
```bash
|
|
32
|
-
python
|
|
33
|
-
python
|
|
41
|
+
python-template-project -v input
|
|
42
|
+
python-template-project --verbose input
|
|
34
43
|
```
|
|
35
44
|
|
|
36
45
|
### 3. With quiet mode
|
|
37
46
|
|
|
38
47
|
```bash
|
|
39
|
-
python
|
|
40
|
-
python
|
|
48
|
+
python-template-project -q input
|
|
49
|
+
python-template-project --quiet input
|
|
41
50
|
```
|
|
42
51
|
|
|
43
|
-
### 4. With
|
|
52
|
+
### 4. With output parameter
|
|
44
53
|
|
|
45
54
|
```bash
|
|
46
|
-
python
|
|
55
|
+
python-template-project --output input
|
|
47
56
|
```
|
|
48
57
|
|
|
49
|
-
### 5. With
|
|
58
|
+
### 5. With min_dist parameter
|
|
50
59
|
|
|
51
60
|
```bash
|
|
52
|
-
python
|
|
61
|
+
python-template-project --min_dist 25 input
|
|
53
62
|
```
|
|
54
63
|
|
|
55
|
-
### 6. With
|
|
64
|
+
### 6. With extract_waypoints parameter
|
|
56
65
|
|
|
57
66
|
```bash
|
|
58
|
-
python
|
|
67
|
+
python-template-project --extract_waypoints True input
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Developer usage
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
python -m python_template_project --help
|
|
74
|
+
python -m python_template_project input
|
|
59
75
|
```
|
|
@@ -3,17 +3,16 @@
|
|
|
3
3
|
These parameters are available to configure the behavior of your application.
|
|
4
4
|
The parameters in the cli category can be accessed via the command line interface.
|
|
5
5
|
|
|
6
|
-
##
|
|
6
|
+
## Configuration File Reference
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|-------------------|------|---------------------------------------------------|---------|---------------|
|
|
10
|
-
| input | str | Path to input (file or folder) | '' | - |
|
|
11
|
-
| output | str | Path to output destination | '' | - |
|
|
12
|
-
| min_dist | int | Maximum distance between two waypoints | 25 | - |
|
|
13
|
-
| extract_waypoints | bool | Extract starting points of each track as waypoint | True | [True, False] |
|
|
14
|
-
| elevation | bool | Include elevation data in waypoints | True | [True, False] |
|
|
8
|
+
The actual configuration is stored in [`config.yaml`](../../config.yaml). You can:
|
|
15
9
|
|
|
16
|
-
|
|
10
|
+
- Edit the configuration file directly using your text editor
|
|
11
|
+
- Use the `--config` command-line option to specify a custom config file
|
|
12
|
+
- Place a `config.yaml` in your application's config
|
|
13
|
+
directory (typically `~/.config/config-cli-gui/`)
|
|
14
|
+
|
|
15
|
+
## Category "app" {#app}
|
|
17
16
|
|
|
18
17
|
| Name | Type | Description | Default | Choices |
|
|
19
18
|
|------------------------|------|---------------------------------------------|------------|---------------------------------------------------|
|
|
@@ -26,7 +25,17 @@ The parameters in the cli category can be accessed via the command line interfac
|
|
|
26
25
|
| enable_file_logging | bool | Enable logging to file | True | [True, False] |
|
|
27
26
|
| enable_console_logging | bool | Enable logging to console | True | [True, False] |
|
|
28
27
|
|
|
29
|
-
## Category "
|
|
28
|
+
## Category "cli" {#cli}
|
|
29
|
+
|
|
30
|
+
| Name | Type | Description | Default | Choices |
|
|
31
|
+
|-------------------|------|---------------------------------------------------|---------|---------------|
|
|
32
|
+
| input | str | Path to input (file or folder) | '' | - |
|
|
33
|
+
| output | str | Path to output destination | '' | - |
|
|
34
|
+
| min_dist | int | Maximum distance between two waypoints | 25 | - |
|
|
35
|
+
| extract_waypoints | bool | Extract starting points of each track as waypoint | True | [True, False] |
|
|
36
|
+
| elevation | bool | Include elevation data in waypoints | True | [True, False] |
|
|
37
|
+
|
|
38
|
+
## Category "gui" {#gui}
|
|
30
39
|
|
|
31
40
|
| Name | Type | Description | Default | Choices |
|
|
32
41
|
|-------------------|------|------------------------------------------------|---------|---------------------------|
|
|
@@ -8,7 +8,7 @@ authors = [
|
|
|
8
8
|
readme = "docs/index.md"
|
|
9
9
|
requires-python = ">=3.10,<3.12"
|
|
10
10
|
dependencies = [
|
|
11
|
-
"config-cli-gui>=0.
|
|
11
|
+
"config-cli-gui>=0.3.9",
|
|
12
12
|
"fastkml>=1.1.0",
|
|
13
13
|
"gpxpy>=1.6.2",
|
|
14
14
|
"lxml>=6.0.2",
|
|
@@ -16,8 +16,7 @@ dependencies = [
|
|
|
16
16
|
"srtm-py>=0.3.7",
|
|
17
17
|
]
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
[project.optional-dependencies]
|
|
19
|
+
[dependency-groups]
|
|
21
20
|
dev = [
|
|
22
21
|
"pytest>=8.4.0",
|
|
23
22
|
"pytest-mock>=3.14.1",
|
|
@@ -50,8 +49,8 @@ build-backend = "setuptools.build_meta"
|
|
|
50
49
|
[tool.setuptools_scm]
|
|
51
50
|
write_to = "src/python_template_project/_version.py"
|
|
52
51
|
|
|
53
|
-
[tool.deptry]
|
|
54
|
-
|
|
52
|
+
[tool.deptry.per_rule_ignores]
|
|
53
|
+
DEP002 = ["lxml"]
|
|
55
54
|
|
|
56
55
|
[tool.ruff]
|
|
57
56
|
line-length = 100
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/scripts/generate_config_docs.py
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from config_cli_gui.
|
|
1
|
+
from config_cli_gui.docs import DocumentationGenerator
|
|
2
2
|
|
|
3
3
|
from python_template_project.config.config import ConfigParameterManager
|
|
4
4
|
|
|
@@ -18,5 +18,5 @@ print(f"Generated: {default_config}")
|
|
|
18
18
|
docGen.generate_config_markdown_doc(output_file=default_config_doc)
|
|
19
19
|
print(f"Generated: {default_config_doc}")
|
|
20
20
|
|
|
21
|
-
docGen.generate_cli_markdown_doc(output_file=default_cli_doc)
|
|
21
|
+
docGen.generate_cli_markdown_doc(output_file=default_cli_doc, app_name=config_manager.get_app_name())
|
|
22
22
|
print(f"Generated: {default_cli_doc}")
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# file generated by vcs-versioning
|
|
2
|
+
# don't change, don't track in version control
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
__all__ = [
|
|
6
|
+
"__version__",
|
|
7
|
+
"__version_tuple__",
|
|
8
|
+
"version",
|
|
9
|
+
"version_tuple",
|
|
10
|
+
"__commit_id__",
|
|
11
|
+
"commit_id",
|
|
12
|
+
]
|
|
13
|
+
|
|
14
|
+
version: str
|
|
15
|
+
__version__: str
|
|
16
|
+
__version_tuple__: tuple[int | str, ...]
|
|
17
|
+
version_tuple: tuple[int | str, ...]
|
|
18
|
+
commit_id: str | None
|
|
19
|
+
__commit_id__: str | None
|
|
20
|
+
|
|
21
|
+
__version__ = version = '0.2.5'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 2, 5)
|
|
23
|
+
|
|
24
|
+
__commit_id__ = commit_id = 'g911e64e2d'
|
|
@@ -167,14 +167,18 @@ class ConfigParameterManager(ConfigManager): # Inherit from ConfigManager
|
|
|
167
167
|
categories = (CliConfig(), AppConfig(), GuiConfig())
|
|
168
168
|
super().__init__(categories, config_file, **kwargs)
|
|
169
169
|
|
|
170
|
+
@staticmethod
|
|
171
|
+
def get_app_name() -> str:
|
|
172
|
+
return "python_template_project"
|
|
173
|
+
|
|
170
174
|
|
|
171
175
|
def main():
|
|
172
176
|
"""Main function to generate config file and documentation."""
|
|
173
177
|
default_config: str = "config.yaml"
|
|
174
178
|
default_cli_doc: str = "docs/usage/cli.md"
|
|
175
179
|
default_config_doc: str = "docs/usage/config.md"
|
|
176
|
-
app_name = "python_template_project"
|
|
177
180
|
config_manager = ConfigParameterManager()
|
|
181
|
+
app_name = config_manager.get_app_name()
|
|
178
182
|
doc_gen = DocumentationGenerator(config_manager)
|
|
179
183
|
doc_gen.generate_default_config_file(output_file=default_config)
|
|
180
184
|
print(f"Generated: {default_config}")
|
|
@@ -1,34 +1,17 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: python-template-project
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.5
|
|
4
4
|
Summary: Feature-rich Python project template designed for robustness and ease of use.
|
|
5
5
|
Author: pamagister
|
|
6
6
|
Requires-Python: <3.12,>=3.10
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
8
|
License-File: LICENSE
|
|
9
|
-
Requires-Dist: config-cli-gui>=0.
|
|
9
|
+
Requires-Dist: config-cli-gui>=0.3.9
|
|
10
10
|
Requires-Dist: fastkml>=1.1.0
|
|
11
11
|
Requires-Dist: gpxpy>=1.6.2
|
|
12
12
|
Requires-Dist: lxml>=6.0.2
|
|
13
13
|
Requires-Dist: shapely>=2.1.1
|
|
14
14
|
Requires-Dist: srtm-py>=0.3.7
|
|
15
|
-
Provides-Extra: dev
|
|
16
|
-
Requires-Dist: pytest>=8.4.0; extra == "dev"
|
|
17
|
-
Requires-Dist: pytest-mock>=3.14.1; extra == "dev"
|
|
18
|
-
Requires-Dist: coverage>=7.8.2; extra == "dev"
|
|
19
|
-
Requires-Dist: flake8>=7.2.0; extra == "dev"
|
|
20
|
-
Requires-Dist: black>=25.1.0; extra == "dev"
|
|
21
|
-
Requires-Dist: isort>=6.0.1; extra == "dev"
|
|
22
|
-
Requires-Dist: pytest-cov>=6.1.1; extra == "dev"
|
|
23
|
-
Requires-Dist: mypy>=1.16.0; extra == "dev"
|
|
24
|
-
Requires-Dist: gitchangelog>=3.0.4; extra == "dev"
|
|
25
|
-
Requires-Dist: pyinstaller>=5.8; extra == "dev"
|
|
26
|
-
Requires-Dist: pre-commit>=4.2.0; extra == "dev"
|
|
27
|
-
Requires-Dist: ruff>=0.11.13; extra == "dev"
|
|
28
|
-
Provides-Extra: docs
|
|
29
|
-
Requires-Dist: mkdocs>=1.6.1; extra == "docs"
|
|
30
|
-
Requires-Dist: mkdocs-awesome-nav>=2.6.1; extra == "docs"
|
|
31
|
-
Requires-Dist: pygments>=2.19.1; extra == "docs"
|
|
32
15
|
Dynamic: license-file
|
|
33
16
|
|
|
34
17
|
# Welcome to python-template-project
|
|
@@ -65,6 +65,8 @@ src/python_template_project.egg-info/SOURCES.txt
|
|
|
65
65
|
src/python_template_project.egg-info/dependency_links.txt
|
|
66
66
|
src/python_template_project.egg-info/entry_points.txt
|
|
67
67
|
src/python_template_project.egg-info/requires.txt
|
|
68
|
+
src/python_template_project.egg-info/scm_file_list.json
|
|
69
|
+
src/python_template_project.egg-info/scm_version.json
|
|
68
70
|
src/python_template_project.egg-info/top_level.txt
|
|
69
71
|
src/python_template_project/cli/__init__.py
|
|
70
72
|
src/python_template_project/cli/__main__.py
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
{
|
|
2
|
+
"files": [
|
|
3
|
+
".github/FUNDING.yml",
|
|
4
|
+
".github/ISSUE_TEMPLATE/bug_report.md",
|
|
5
|
+
".github/ISSUE_TEMPLATE/feature_request.md",
|
|
6
|
+
".github/PULL_REQUEST_TEMPLATE.md",
|
|
7
|
+
".github/actions/setup-environment/action.yml",
|
|
8
|
+
".github/dependabot.yml",
|
|
9
|
+
".github/init.sh",
|
|
10
|
+
".github/release_message.sh",
|
|
11
|
+
".github/rename_project.sh",
|
|
12
|
+
".github/template.yml",
|
|
13
|
+
".github/update_funding.py",
|
|
14
|
+
".github/workflows/build-linux.yml",
|
|
15
|
+
".github/workflows/build-macos.yml",
|
|
16
|
+
".github/workflows/build-windows.yml",
|
|
17
|
+
".github/workflows/main.yml",
|
|
18
|
+
".github/workflows/release.yml",
|
|
19
|
+
".github/workflows/rename_project.yml",
|
|
20
|
+
".github/workflows/update_readme.yml",
|
|
21
|
+
".gitignore",
|
|
22
|
+
".idea/runConfigurations/config_generate.xml",
|
|
23
|
+
".idea/runConfigurations/module_cli.xml",
|
|
24
|
+
".idea/runConfigurations/module_gui.xml",
|
|
25
|
+
".pre-commit-config-linux.yaml",
|
|
26
|
+
".pre-commit-config.yaml",
|
|
27
|
+
".readthedocs.yaml",
|
|
28
|
+
"HISTORY.md",
|
|
29
|
+
"LICENSE",
|
|
30
|
+
"Makefile",
|
|
31
|
+
"README.md",
|
|
32
|
+
"config.yaml",
|
|
33
|
+
"docs/.nav.yml",
|
|
34
|
+
"docs/_static/img/favicon.png",
|
|
35
|
+
"docs/_static/img/logo.png",
|
|
36
|
+
"docs/css/custom.css",
|
|
37
|
+
"docs/develop/contributing.md",
|
|
38
|
+
"docs/develop/make_windows.md",
|
|
39
|
+
"docs/develop/naming_convention.md",
|
|
40
|
+
"docs/develop/pypi_release.md",
|
|
41
|
+
"docs/funding/funding.md",
|
|
42
|
+
"docs/getting-started/install.md",
|
|
43
|
+
"docs/getting-started/virtual-environment.md",
|
|
44
|
+
"docs/index.md",
|
|
45
|
+
"docs/usage/cli.md",
|
|
46
|
+
"docs/usage/config.md",
|
|
47
|
+
"examples/kuhkopfsteig.gpx",
|
|
48
|
+
"examples/rother_lilienstein.gpx",
|
|
49
|
+
"examples/teneriffa.gpx",
|
|
50
|
+
"mkdocs.yml",
|
|
51
|
+
"pyproject.toml",
|
|
52
|
+
"pytest.ini",
|
|
53
|
+
"scripts/generate_config_docs.py",
|
|
54
|
+
"scripts/show_filelist.py",
|
|
55
|
+
"scripts/show_tree.py",
|
|
56
|
+
"scripts/update_readme.py",
|
|
57
|
+
"src/__init__.py",
|
|
58
|
+
"src/firewall_handler.py",
|
|
59
|
+
"src/main.py",
|
|
60
|
+
"src/python_template_project/__init__.py",
|
|
61
|
+
"src/python_template_project/__main__.py",
|
|
62
|
+
"src/python_template_project/cli/__init__.py",
|
|
63
|
+
"src/python_template_project/cli/__main__.py",
|
|
64
|
+
"src/python_template_project/cli/cli.py",
|
|
65
|
+
"src/python_template_project/config/__init__.py",
|
|
66
|
+
"src/python_template_project/config/config.py",
|
|
67
|
+
"src/python_template_project/core/__init__.py",
|
|
68
|
+
"src/python_template_project/core/base.py",
|
|
69
|
+
"src/python_template_project/core/logging.py",
|
|
70
|
+
"src/python_template_project/gui/__init__.py",
|
|
71
|
+
"src/python_template_project/gui/__main__.py",
|
|
72
|
+
"src/python_template_project/gui/gui.py",
|
|
73
|
+
"template.yml.url",
|
|
74
|
+
"tests/__init__.py",
|
|
75
|
+
"tests/test_gpx.py",
|
|
76
|
+
"uv.lock"
|
|
77
|
+
]
|
|
78
|
+
}
|
|
@@ -148,15 +148,17 @@ wheels = [
|
|
|
148
148
|
|
|
149
149
|
[[package]]
|
|
150
150
|
name = "config-cli-gui"
|
|
151
|
-
version = "0.
|
|
151
|
+
version = "0.3.9"
|
|
152
152
|
source = { registry = "https://pypi.org/simple" }
|
|
153
153
|
dependencies = [
|
|
154
|
+
{ name = "pillow" },
|
|
154
155
|
{ name = "pydantic" },
|
|
155
156
|
{ name = "pyyaml" },
|
|
157
|
+
{ name = "ttkbootstrap" },
|
|
156
158
|
]
|
|
157
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
159
|
+
sdist = { url = "https://files.pythonhosted.org/packages/14/ea/b663de4e2940b635dc1a7de2cf938eee107414dd717038a685097ffd85fe/config_cli_gui-0.3.9.tar.gz", hash = "sha256:6e5b31d7028af2eaed566542d6323f77ff32eb37629131ac0e50ced1b85ef0d6", size = 250493, upload-time = "2026-10-02T13:50:14.2Z" }
|
|
158
160
|
wheels = [
|
|
159
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
161
|
+
{ url = "https://files.pythonhosted.org/packages/8f/08/c33b6d667483e5254458991b99d4e3173db4be1f3db956b422bd77c4396a/config_cli_gui-0.3.9-py3-none-any.whl", hash = "sha256:10d9c917419b423c2f6e5ecf10cab8d94de9186f5eba7f4a9ebb82279edbaeae", size = 28335, upload-time = "2026-10-02T13:50:12.942Z" },
|
|
160
162
|
]
|
|
161
163
|
|
|
162
164
|
[[package]]
|
|
@@ -647,6 +649,37 @@ wheels = [
|
|
|
647
649
|
{ url = "https://files.pythonhosted.org/packages/55/26/d0ad8b448476d0a1e8d3ea5622dc77b916db84c6aa3cb1e1c0965af948fc/pefile-2023.2.7-py3-none-any.whl", hash = "sha256:da185cd2af68c08a6cd4481f7325ed600a88f6a813bad9dea07ab3ef73d8d8d6", size = 71791, upload-time = "2023-02-07T12:28:36.678Z" },
|
|
648
650
|
]
|
|
649
651
|
|
|
652
|
+
[[package]]
|
|
653
|
+
name = "pillow"
|
|
654
|
+
version = "12.3.0"
|
|
655
|
+
source = { registry = "https://pypi.org/simple" }
|
|
656
|
+
sdist = { url = "https://files.pythonhosted.org/packages/1c/3d/bb7fca845737cf9d7dbde16ed1843984665ff2e0a518f5db43e77ec540b9/pillow-12.3.0.tar.gz", hash = "sha256:3b8182a766685eaa002637e28b4ec8d6b18819a0c71f579bf0dbaa5830297cce", size = 47025035, upload-time = "2026-07-01T11:56:38.965Z" }
|
|
657
|
+
wheels = [
|
|
658
|
+
{ url = "https://files.pythonhosted.org/packages/25/c2/669d88644cddb1485bd9534e63e8cf476c8e51cb3c3a1297677023505c0e/pillow-12.3.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:6c0016e7b354317c4e9e525b937ac8596c38d2d232b419529b9cd7a1cd46e39a", size = 5392418, upload-time = "2026-07-01T11:53:27.808Z" },
|
|
659
|
+
{ url = "https://files.pythonhosted.org/packages/6b/ba/3762f376a2948e3036488d773a146e0ae6ecc2ca03ac20e2615bd0b2ba02/pillow-12.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:bcc33feacfaefce60c12fd500a277533bdc02b10a19f7f6d348763d8140bbba7", size = 4785287, upload-time = "2026-07-01T11:53:29.761Z" },
|
|
660
|
+
{ url = "https://files.pythonhosted.org/packages/07/50/b5d688cc9c52d4482f3d5bcab6ce20bc2a74a85d2343841c907444a3be2c/pillow-12.3.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5594fc43d548a7ed94949d139aa1341b270f1863f11cfd37f5a6c8b778a6b67f", size = 6253754, upload-time = "2026-07-01T11:53:32.298Z" },
|
|
661
|
+
{ url = "https://files.pythonhosted.org/packages/4e/89/36f4cd76cf4baf05c50ababb976249153f18c959171c7f6ba09a6f217260/pillow-12.3.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f0606c8bf2cdefea14a43530f7657cbbb7ecf1c4222512492ef4a4434a9501ec", size = 6925605, upload-time = "2026-07-01T11:53:34.487Z" },
|
|
662
|
+
{ url = "https://files.pythonhosted.org/packages/eb/c0/4de58cf6633b9e3a6061ef4be6fb91fc3c90b812ece886f531e3c523d777/pillow-12.3.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:85f998ea1848bc6757289e739cfbdda3a04adfd58b02fc018ce54d754a5ce468", size = 6327788, upload-time = "2026-07-01T11:53:36.433Z" },
|
|
663
|
+
{ url = "https://files.pythonhosted.org/packages/87/3c/14d53682a19550dbbaf3b598f807d5457646c510805a44c7d7891cd1cd1a/pillow-12.3.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:25b9b82bb22e6e2b3cd07b39c68b7b862001226cb3dff7130d1cb914121b39ed", size = 7036288, upload-time = "2026-07-01T11:53:38.712Z" },
|
|
664
|
+
{ url = "https://files.pythonhosted.org/packages/38/1d/36279e3c77efe034e4cc2b0393ee74ffdb5a62391dacbf9b916154f5f0b8/pillow-12.3.0-cp310-cp310-win32.whl", hash = "sha256:37dc8f7bbb66efe481bb60defacef820c950c24713fb44962ed6aa2a50966de1", size = 6472396, upload-time = "2026-07-01T11:53:40.781Z" },
|
|
665
|
+
{ url = "https://files.pythonhosted.org/packages/48/7c/8fa0039574c476d7c6fa57dd7c32a130436877c6ec1e5ce1cc8ec44878c1/pillow-12.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:300557495eb45ebb8aec96c2da9c4be642fbf7cd937278b4013ba894ea8eb0eb", size = 7226887, upload-time = "2026-07-01T11:53:42.764Z" },
|
|
666
|
+
{ url = "https://files.pythonhosted.org/packages/fa/17/e324be141d173c1c919428066c3259f21c1b8982e564e01a4a81e96dbdcf/pillow-12.3.0-cp310-cp310-win_arm64.whl", hash = "sha256:514435a37670e3e5e08f3945b68718b6ed329bb84367777e16f9f4dfe1e61a0f", size = 2568039, upload-time = "2026-07-01T11:53:45.372Z" },
|
|
667
|
+
{ url = "https://files.pythonhosted.org/packages/fb/c8/0a78b0e02d7ac54bc03e5321c9220da52f0c2ea83b21f7c40e7f3169c502/pillow-12.3.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:00808c5e14ef63ac5161091d242999076604ff74b883423a11e5d7bbb38bf756", size = 5392415, upload-time = "2026-07-01T11:53:47.162Z" },
|
|
668
|
+
{ url = "https://files.pythonhosted.org/packages/b2/5b/a02d30018abd97ced9f5a6c63d28597694a00d066516b9c1c6de45859fc9/pillow-12.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37d6d0a00072fd2948eb22bce7e1475f34569d90c87c59f7a2ec59541b77f7a6", size = 4785266, upload-time = "2026-07-01T11:53:49.079Z" },
|
|
669
|
+
{ url = "https://files.pythonhosted.org/packages/c8/98/766667a4be768150a202836acd9fad19c06824ca86c4286d3cf6b274964e/pillow-12.3.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bcb46e2f9feff8d06323983bd83ed00c201fdcab3d74973e7072a889b3979fcd", size = 6263814, upload-time = "2026-07-01T11:53:51.32Z" },
|
|
670
|
+
{ url = "https://files.pythonhosted.org/packages/3b/2d/ede717bc1144f63886c21fd349bb95860b0d1a21149ff16f2bb362b612b6/pillow-12.3.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:23d27a3e0307ec2244cc51e7287b919aa68d097504ebe19df4e76a98a3eea5bd", size = 6934408, upload-time = "2026-07-01T11:53:53.487Z" },
|
|
671
|
+
{ url = "https://files.pythonhosted.org/packages/a3/48/9c58b685e69d49c31af6c8eb9012055fab7e665785165c84796e2c73ce72/pillow-12.3.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:4f883547d4b7f0495ebe7056b0cc2aea76094e7a4abc8e933540f3271df27d9c", size = 6337160, upload-time = "2026-07-01T11:53:55.457Z" },
|
|
672
|
+
{ url = "https://files.pythonhosted.org/packages/ff/fa/dc2a5c0ba6df93f67c31d34b808b7ce440b40cdbf96f0b81cde1d1e6fa93/pillow-12.3.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:236ff70b9312fb68943c703aa842ca6a758abfa45ac187a5e7c1452e96ef72b5", size = 7045172, upload-time = "2026-07-01T11:53:57.736Z" },
|
|
673
|
+
{ url = "https://files.pythonhosted.org/packages/86/a5/444817a4d4c4c2417df00513086ca196f388d8f9ef40c2e4ccd1ad1af54b/pillow-12.3.0-cp311-cp311-win32.whl", hash = "sha256:10e41f0fbf1eec8cfd234b8fe17a4caac7c9d0db4c204d3c173a8f9f6ef3232b", size = 6472232, upload-time = "2026-07-01T11:53:59.767Z" },
|
|
674
|
+
{ url = "https://files.pythonhosted.org/packages/63/c6/4bad1b18d132a50b27e1365e1ab163616f7a5bb56d330f66f9d1d9d4f9d4/pillow-12.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:8e95e1385e4998ae9694eeaa4730ba5457ff61185b3a55e2e7bea0880aef452a", size = 7233653, upload-time = "2026-07-01T11:54:02.066Z" },
|
|
675
|
+
{ url = "https://files.pythonhosted.org/packages/fd/16/00f91ab7760dc842f5aad55217e80fc4a7067a0604535249bc8a2d6d9870/pillow-12.3.0-cp311-cp311-win_arm64.whl", hash = "sha256:ebaea975e03d3141d9d3a507df75c9b3ec90fa9d2ffd07567b3a978d9d790b26", size = 2568195, upload-time = "2026-07-01T11:54:04.622Z" },
|
|
676
|
+
{ url = "https://files.pythonhosted.org/packages/75/18/2e8b40223153ccbc60df07f9e8928dc0c76202aa4e55ae9f53962b6510d6/pillow-12.3.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:b3c777e849237620b022f7f297dd67705f9f5cf1685f09f02e46f93e92725468", size = 5302510, upload-time = "2026-07-01T11:56:25.736Z" },
|
|
677
|
+
{ url = "https://files.pythonhosted.org/packages/46/3e/51fabf59d5ab801ceab709453d3ab6b180083496579549de4c45ced6528a/pillow-12.3.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:b343699e8308bdc51978310e1c959c584e7869cc8c40780058c87da7781a1e94", size = 4736058, upload-time = "2026-07-01T11:56:28.041Z" },
|
|
678
|
+
{ url = "https://files.pythonhosted.org/packages/bf/20/22fe9384b7949e25fb1293bcfc84fb82590ff4ea6b37c95b24d26d793d86/pillow-12.3.0-pp311-pypy311_pp73-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fbd139c8447d25dd750ab79ee274cc5e1fe80fc56340ab10b18a195e1b6eca3e", size = 5237776, upload-time = "2026-07-01T11:56:30.263Z" },
|
|
679
|
+
{ url = "https://files.pythonhosted.org/packages/08/14/f6ba68107680ffa74b39985f3f30884e41318fbc4250caa423c79b4788bb/pillow-12.3.0-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e7e480451b9fa137494bccd3a7d69adbe8ac65a87d97be61e11f1b1050a5bac3", size = 5860358, upload-time = "2026-07-01T11:56:32.68Z" },
|
|
680
|
+
{ url = "https://files.pythonhosted.org/packages/36/54/0169bc772ec491108b62f644f8ecf1fe5d8ae5ebafde2ee2142210166903/pillow-12.3.0-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:04f01d28a6aaff387bf842a13be313df23ba0597a44f1a976c9feb3c6ff4711a", size = 7231786, upload-time = "2026-07-01T11:56:35.046Z" },
|
|
681
|
+
]
|
|
682
|
+
|
|
650
683
|
[[package]]
|
|
651
684
|
name = "platformdirs"
|
|
652
685
|
version = "4.3.8"
|
|
@@ -900,7 +933,7 @@ dependencies = [
|
|
|
900
933
|
{ name = "srtm-py" },
|
|
901
934
|
]
|
|
902
935
|
|
|
903
|
-
[package.
|
|
936
|
+
[package.dev-dependencies]
|
|
904
937
|
dev = [
|
|
905
938
|
{ name = "black" },
|
|
906
939
|
{ name = "coverage" },
|
|
@@ -923,29 +956,34 @@ docs = [
|
|
|
923
956
|
|
|
924
957
|
[package.metadata]
|
|
925
958
|
requires-dist = [
|
|
926
|
-
{ name = "
|
|
927
|
-
{ name = "config-cli-gui", specifier = ">=0.2.2" },
|
|
928
|
-
{ name = "coverage", marker = "extra == 'dev'", specifier = ">=7.8.2" },
|
|
959
|
+
{ name = "config-cli-gui", specifier = ">=0.3.9" },
|
|
929
960
|
{ name = "fastkml", specifier = ">=1.1.0" },
|
|
930
|
-
{ name = "flake8", marker = "extra == 'dev'", specifier = ">=7.2.0" },
|
|
931
|
-
{ name = "gitchangelog", marker = "extra == 'dev'", specifier = ">=3.0.4" },
|
|
932
961
|
{ name = "gpxpy", specifier = ">=1.6.2" },
|
|
933
|
-
{ name = "isort", marker = "extra == 'dev'", specifier = ">=6.0.1" },
|
|
934
962
|
{ name = "lxml", specifier = ">=6.0.2" },
|
|
935
|
-
{ name = "mkdocs", marker = "extra == 'docs'", specifier = ">=1.6.1" },
|
|
936
|
-
{ name = "mkdocs-awesome-nav", marker = "extra == 'docs'", specifier = ">=2.6.1" },
|
|
937
|
-
{ name = "mypy", marker = "extra == 'dev'", specifier = ">=1.16.0" },
|
|
938
|
-
{ name = "pre-commit", marker = "extra == 'dev'", specifier = ">=4.2.0" },
|
|
939
|
-
{ name = "pygments", marker = "extra == 'docs'", specifier = ">=2.19.1" },
|
|
940
|
-
{ name = "pyinstaller", marker = "extra == 'dev'", specifier = ">=5.8" },
|
|
941
|
-
{ name = "pytest", marker = "extra == 'dev'", specifier = ">=8.4.0" },
|
|
942
|
-
{ name = "pytest-cov", marker = "extra == 'dev'", specifier = ">=6.1.1" },
|
|
943
|
-
{ name = "pytest-mock", marker = "extra == 'dev'", specifier = ">=3.14.1" },
|
|
944
|
-
{ name = "ruff", marker = "extra == 'dev'", specifier = ">=0.11.13" },
|
|
945
963
|
{ name = "shapely", specifier = ">=2.1.1" },
|
|
946
964
|
{ name = "srtm-py", specifier = ">=0.3.7" },
|
|
947
965
|
]
|
|
948
|
-
|
|
966
|
+
|
|
967
|
+
[package.metadata.requires-dev]
|
|
968
|
+
dev = [
|
|
969
|
+
{ name = "black", specifier = ">=25.1.0" },
|
|
970
|
+
{ name = "coverage", specifier = ">=7.8.2" },
|
|
971
|
+
{ name = "flake8", specifier = ">=7.2.0" },
|
|
972
|
+
{ name = "gitchangelog", specifier = ">=3.0.4" },
|
|
973
|
+
{ name = "isort", specifier = ">=6.0.1" },
|
|
974
|
+
{ name = "mypy", specifier = ">=1.16.0" },
|
|
975
|
+
{ name = "pre-commit", specifier = ">=4.2.0" },
|
|
976
|
+
{ name = "pyinstaller", specifier = ">=5.8" },
|
|
977
|
+
{ name = "pytest", specifier = ">=8.4.0" },
|
|
978
|
+
{ name = "pytest-cov", specifier = ">=6.1.1" },
|
|
979
|
+
{ name = "pytest-mock", specifier = ">=3.14.1" },
|
|
980
|
+
{ name = "ruff", specifier = ">=0.11.13" },
|
|
981
|
+
]
|
|
982
|
+
docs = [
|
|
983
|
+
{ name = "mkdocs", specifier = ">=1.6.1" },
|
|
984
|
+
{ name = "mkdocs-awesome-nav", specifier = ">=2.6.1" },
|
|
985
|
+
{ name = "pygments", specifier = ">=2.19.1" },
|
|
986
|
+
]
|
|
949
987
|
|
|
950
988
|
[[package]]
|
|
951
989
|
name = "pywin32-ctypes"
|
|
@@ -1108,6 +1146,18 @@ wheels = [
|
|
|
1108
1146
|
{ url = "https://files.pythonhosted.org/packages/6e/c2/61d3e0f47e2b74ef40a68b9e6ad5984f6241a942f7cd3bbfbdbd03861ea9/tomli-2.2.1-py3-none-any.whl", hash = "sha256:cb55c73c5f4408779d0cf3eef9f762b9c9f147a77de7b258bef0a5628adc85cc", size = 14257, upload-time = "2024-11-27T22:38:35.385Z" },
|
|
1109
1147
|
]
|
|
1110
1148
|
|
|
1149
|
+
[[package]]
|
|
1150
|
+
name = "ttkbootstrap"
|
|
1151
|
+
version = "2.2.3"
|
|
1152
|
+
source = { registry = "https://pypi.org/simple" }
|
|
1153
|
+
dependencies = [
|
|
1154
|
+
{ name = "pillow" },
|
|
1155
|
+
]
|
|
1156
|
+
sdist = { url = "https://files.pythonhosted.org/packages/7b/36/c90cc09fc6d5b33f8b8a0cbe6d83e1e58b3df743189777245e1f18eb055a/ttkbootstrap-2.2.3.tar.gz", hash = "sha256:31b71ca273e2cd2fc354f9f736498bb334209703aea22a0abc076b6231dcfc0f", size = 604551, upload-time = "2026-09-12T20:01:25.975Z" }
|
|
1157
|
+
wheels = [
|
|
1158
|
+
{ url = "https://files.pythonhosted.org/packages/9e/cd/45eeaabad8d1a162fd300813da4be4669dd7b531ae14b24ee840e99bfbf3/ttkbootstrap-2.2.3-py3-none-any.whl", hash = "sha256:00db93ee9d064d2d7bcac2158ca2d852f2844277d0da0a526163077ca9623417", size = 553505, upload-time = "2026-09-12T20:01:21.517Z" },
|
|
1159
|
+
]
|
|
1160
|
+
|
|
1111
1161
|
[[package]]
|
|
1112
1162
|
name = "types-python-dateutil"
|
|
1113
1163
|
version = "2.9.0.20250516"
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
app:
|
|
2
|
-
# Date format to use | type=str, default=%Y-%m-%d
|
|
3
|
-
date_format: '%Y-%m-%d'
|
|
4
|
-
# Enable logging to console | type=bool, default=True
|
|
5
|
-
enable_console_logging: true
|
|
6
|
-
# Enable logging to file | type=bool, default=True
|
|
7
|
-
enable_file_logging: true
|
|
8
|
-
# Number of backup log files to keep | type=int, default=5
|
|
9
|
-
log_backup_count: 5
|
|
10
|
-
# Maximum log file size in MB before rotation | type=int, default=10
|
|
11
|
-
log_file_max_size: 10
|
|
12
|
-
# Log message format style | type=str, default=detailed
|
|
13
|
-
log_format: detailed
|
|
14
|
-
# Logging level for the application | type=str, default=INFO
|
|
15
|
-
log_level: INFO
|
|
16
|
-
# Maximum number of worker threads | type=int, default=4
|
|
17
|
-
max_workers: 4
|
|
18
|
-
cli:
|
|
19
|
-
# Include elevation data in waypoints | type=bool, default=True [CLI]
|
|
20
|
-
elevation: true
|
|
21
|
-
# Extract starting points of each track as waypoint | type=bool, default=True [CLI]
|
|
22
|
-
extract_waypoints: true
|
|
23
|
-
# Path to input (file or folder) | type=str, default= [CLI]
|
|
24
|
-
input: ''
|
|
25
|
-
# Maximum distance between two waypoints | type=int, default=25 [CLI]
|
|
26
|
-
min_dist: 25
|
|
27
|
-
# Path to output destination | type=str, default= [CLI]
|
|
28
|
-
output: ''
|
|
29
|
-
gui:
|
|
30
|
-
# Automatically scroll to the newest log entries | type=bool, default=True
|
|
31
|
-
auto_scroll_log: true
|
|
32
|
-
# Height of the log window in pixels | type=int, default=200
|
|
33
|
-
log_window_height: 200
|
|
34
|
-
# Maximum number of log lines to keep in GUI | type=int, default=1000
|
|
35
|
-
max_log_lines: 1000
|
|
36
|
-
# GUI theme setting | type=str, default=light
|
|
37
|
-
theme: light
|
|
38
|
-
# Default window height | type=int, default=600
|
|
39
|
-
window_height: 600
|
|
40
|
-
# Default window width | type=int, default=800
|
|
41
|
-
window_width: 800
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
# file generated by setuptools-scm
|
|
2
|
-
# don't change, don't track in version control
|
|
3
|
-
|
|
4
|
-
__all__ = [
|
|
5
|
-
"__version__",
|
|
6
|
-
"__version_tuple__",
|
|
7
|
-
"version",
|
|
8
|
-
"version_tuple",
|
|
9
|
-
"__commit_id__",
|
|
10
|
-
"commit_id",
|
|
11
|
-
]
|
|
12
|
-
|
|
13
|
-
TYPE_CHECKING = False
|
|
14
|
-
if TYPE_CHECKING:
|
|
15
|
-
from typing import Tuple
|
|
16
|
-
from typing import Union
|
|
17
|
-
|
|
18
|
-
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
-
COMMIT_ID = Union[str, None]
|
|
20
|
-
else:
|
|
21
|
-
VERSION_TUPLE = object
|
|
22
|
-
COMMIT_ID = object
|
|
23
|
-
|
|
24
|
-
version: str
|
|
25
|
-
__version__: str
|
|
26
|
-
__version_tuple__: VERSION_TUPLE
|
|
27
|
-
version_tuple: VERSION_TUPLE
|
|
28
|
-
commit_id: COMMIT_ID
|
|
29
|
-
__commit_id__: COMMIT_ID
|
|
30
|
-
|
|
31
|
-
__version__ = version = '0.2.4'
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 2, 4)
|
|
33
|
-
|
|
34
|
-
__commit_id__ = commit_id = 'gff1b8a26d'
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
config-cli-gui>=0.2.2
|
|
2
|
-
fastkml>=1.1.0
|
|
3
|
-
gpxpy>=1.6.2
|
|
4
|
-
lxml>=6.0.2
|
|
5
|
-
shapely>=2.1.1
|
|
6
|
-
srtm-py>=0.3.7
|
|
7
|
-
|
|
8
|
-
[dev]
|
|
9
|
-
pytest>=8.4.0
|
|
10
|
-
pytest-mock>=3.14.1
|
|
11
|
-
coverage>=7.8.2
|
|
12
|
-
flake8>=7.2.0
|
|
13
|
-
black>=25.1.0
|
|
14
|
-
isort>=6.0.1
|
|
15
|
-
pytest-cov>=6.1.1
|
|
16
|
-
mypy>=1.16.0
|
|
17
|
-
gitchangelog>=3.0.4
|
|
18
|
-
pyinstaller>=5.8
|
|
19
|
-
pre-commit>=4.2.0
|
|
20
|
-
ruff>=0.11.13
|
|
21
|
-
|
|
22
|
-
[docs]
|
|
23
|
-
mkdocs>=1.6.1
|
|
24
|
-
mkdocs-awesome-nav>=2.6.1
|
|
25
|
-
pygments>=2.19.1
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/ISSUE_TEMPLATE/bug_report.md
RENAMED
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/PULL_REQUEST_TEMPLATE.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/build-linux.yml
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/build-macos.yml
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/build-windows.yml
RENAMED
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/release.yml
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/rename_project.yml
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.github/workflows/update_readme.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/.pre-commit-config-linux.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/docs/_static/img/favicon.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/contributing.md
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/make_windows.md
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/naming_convention.md
RENAMED
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/docs/develop/pypi_release.md
RENAMED
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/docs/getting-started/install.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_template_project-0.2.4 → python_template_project-0.2.5}/examples/rother_lilienstein.gpx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|