python-template-project 0.2.1__py3-none-any.whl → 0.2.3__py3-none-any.whl

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.
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.2.1'
32
- __version_tuple__ = version_tuple = (0, 2, 1)
31
+ __version__ = version = '0.2.3'
32
+ __version_tuple__ = version_tuple = (0, 2, 3)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -12,7 +12,7 @@ from python_template_project.core.base import BaseGPXProcessor
12
12
  from python_template_project.core.logging import initialize_logging
13
13
 
14
14
 
15
- def validate_config(config: ConfigParameterManager, logger) -> bool:
15
+ def validate_config(config: ConfigParameterManager) -> bool:
16
16
  """Validate the configuration parameters.
17
17
 
18
18
  Args:
@@ -22,6 +22,10 @@ def validate_config(config: ConfigParameterManager, logger) -> bool:
22
22
  Returns:
23
23
  True if configuration is valid, False otherwise
24
24
  """
25
+ # Initialize logging system
26
+ logger_manager = initialize_logging(config)
27
+ logger = logger_manager.get_logger("python_template_project.cli")
28
+
25
29
  # Get CLI category and check required parameters
26
30
  cli_category = config.cli
27
31
  if not cli_category:
@@ -63,16 +67,16 @@ def run_main_processing(config: ConfigParameterManager) -> int:
63
67
  logger_manager.log_config_summary()
64
68
 
65
69
  # Validate configuration
66
- if not validate_config(config, logger):
70
+ if not validate_config(config):
67
71
  logger.error("Configuration validation failed")
68
72
  return 1
69
73
 
70
- # Get CLI parameters
74
+ # Get parameters with cli overrides
71
75
  cli_category = config.cli
72
76
  input_file = cli_category.input.value
73
77
  output_file = cli_category.output.value
74
78
  min_dist = cli_category.min_dist.value
75
- extract_waypoints = cli_category.extract_waypoints.value
79
+ elevation = cli_category.elevation.value
76
80
 
77
81
  # Get app parameters
78
82
  app_category = config.app
@@ -86,7 +90,7 @@ def run_main_processing(config: ConfigParameterManager) -> int:
86
90
  output=output_file,
87
91
  min_dist=min_dist,
88
92
  date_format=date_format,
89
- elevation=extract_waypoints,
93
+ elevation=elevation,
90
94
  logger=logger,
91
95
  )
92
96
 
@@ -34,7 +34,7 @@ class CliConfig(ConfigCategory):
34
34
 
35
35
  min_dist: ConfigParameter = ConfigParameter(
36
36
  name="min_dist",
37
- value=20,
37
+ value=25,
38
38
  help="Maximum distance between two waypoints",
39
39
  is_cli=True,
40
40
  )
@@ -145,7 +145,7 @@ class GuiConfig(ConfigCategory):
145
145
  auto_scroll_log: ConfigParameter = ConfigParameter(
146
146
  name="auto_scroll_log",
147
147
  value=True,
148
- help="Automatically scroll to newest log entries",
148
+ help="Automatically scroll to the newest log entries",
149
149
  )
150
150
 
151
151
  max_log_lines: ConfigParameter = ConfigParameter(
@@ -170,9 +170,10 @@ class ConfigParameterManager(ConfigManager): # Inherit from ConfigManager
170
170
 
171
171
  def main():
172
172
  """Main function to generate config file and documentation."""
173
- default_config: str = "../../config.yaml"
174
- default_cli_doc: str = "../../docs/usage/cli.md"
175
- default_config_doc: str = "../../docs/usage/config.md"
173
+ default_config: str = "config.yaml"
174
+ default_cli_doc: str = "docs/usage/cli.md"
175
+ default_config_doc: str = "docs/usage/config.md"
176
+ app_name = "python_template_project"
176
177
  config_manager = ConfigParameterManager()
177
178
  doc_gen = DocumentationGenerator(config_manager)
178
179
  doc_gen.generate_default_config_file(output_file=default_config)
@@ -181,7 +182,7 @@ def main():
181
182
  doc_gen.generate_config_markdown_doc(output_file=default_config_doc)
182
183
  print(f"Generated: {default_config_doc}")
183
184
 
184
- doc_gen.generate_cli_markdown_doc(output_file=default_cli_doc)
185
+ doc_gen.generate_cli_markdown_doc(output_file=default_cli_doc, app_name=app_name)
185
186
  print(f"Generated: {default_cli_doc}")
186
187
 
187
188
 
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-template-project
3
- Version: 0.2.1
3
+ Version: 0.2.3
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.2.0
9
+ Requires-Dist: config-cli-gui>=0.2.2
10
10
  Requires-Dist: fastkml>=1.1.0
11
11
  Requires-Dist: gpxpy>=1.6.2
12
12
  Requires-Dist: shapely>=2.1.1
@@ -3,21 +3,21 @@ firewall_handler.py,sha256=qT0dInkeKHulpCQD2x3HH7_lMxz4lwdkIPxEvBSl3No,7336
3
3
  main.py,sha256=d6ZpnMxcPBf860gQmuYwPVJg1di6r2CR6gSvFLkAZkk,4448
4
4
  python_template_project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  python_template_project/__main__.py,sha256=JS28LiHoU9Xo4c_RvyLBTDKHqdZRRytJLj6qyrg26mQ,195
6
- python_template_project/_version.py,sha256=vYqoJTG51NOUmYyL0xt8asRK8vUT4lGAdal_EZ59mvw,704
6
+ python_template_project/_version.py,sha256=kBRz0P2plw1eVdIpt70W6m1LMbEIhLY3RyOfVGdubaI,704
7
7
  python_template_project/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  python_template_project/cli/__main__.py,sha256=qnGkoNNbhnvLTA24X8YTEDxRqDbNEAzgjp9Ki_JYIhs,184
9
- python_template_project/cli/cli.py,sha256=L5UiEeLzgYbbbKeWPKCVG7i509ou9mi6yNMc2K2UG_c,4201
9
+ python_template_project/cli/cli.py,sha256=gje6Q-9MUliX9Ka2mzRW2-CL8lzVTPlFni4cbzVFF-o,4327
10
10
  python_template_project/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- python_template_project/config/config.py,sha256=oTub_qmH4CbQQc7L354qJE5N3CRhajr0o8XULAUvzA8,5359
11
+ python_template_project/config/config.py,sha256=65ihceMBXU4o7JY4WqAG-rfcuUrsDHojz3EPB02j8XQ,5405
12
12
  python_template_project/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
13
  python_template_project/core/base.py,sha256=3S_DSPgPom0wCS_tgdEaNpWub0r8GlytmjKtXlIypRA,28045
14
14
  python_template_project/core/logging.py,sha256=b5Z0g7XVj4fy7nYVfWMTSz8pV6tcXrNEJ6Y7pNJKfWA,6932
15
15
  python_template_project/gui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  python_template_project/gui/__main__.py,sha256=5AaiBxNCAKWcuSQFcQ_lsEQfEsXm6BA5-i5MScdf30c,184
17
17
  python_template_project/gui/gui.py,sha256=8jmwvrJlyez66cnkIoosq65KAx75WmAfwJUUiluh6TY,21647
18
- python_template_project-0.2.1.dist-info/licenses/LICENSE,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
19
- python_template_project-0.2.1.dist-info/METADATA,sha256=515IGLkUpYAHUiCaHrIsh_FXJd4H6RojXZmLQ8_RZos,7924
20
- python_template_project-0.2.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
21
- python_template_project-0.2.1.dist-info/entry_points.txt,sha256=LmgMiqxIVRdD7gkktVBBR0CR4AhkugqlgifuglkPhtI,148
22
- python_template_project-0.2.1.dist-info/top_level.txt,sha256=O-Yg0tzEwgH58MhdcYWpJsgZSUPg6SBbOUwlmVHZo3A,55
23
- python_template_project-0.2.1.dist-info/RECORD,,
18
+ python_template_project-0.2.3.dist-info/licenses/LICENSE,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
19
+ python_template_project-0.2.3.dist-info/METADATA,sha256=3rFpX87_DocNZlL6q0Kp8kuIFy5i9url_wv8XjCfCa8,7924
20
+ python_template_project-0.2.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
21
+ python_template_project-0.2.3.dist-info/entry_points.txt,sha256=LmgMiqxIVRdD7gkktVBBR0CR4AhkugqlgifuglkPhtI,148
22
+ python_template_project-0.2.3.dist-info/top_level.txt,sha256=O-Yg0tzEwgH58MhdcYWpJsgZSUPg6SBbOUwlmVHZo3A,55
23
+ python_template_project-0.2.3.dist-info/RECORD,,