ras-commander 0.57.0__tar.gz → 0.58.0__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 (40) hide show
  1. {ras_commander-0.57.0/ras_commander.egg-info → ras_commander-0.58.0}/PKG-INFO +4 -14
  2. {ras_commander-0.57.0 → ras_commander-0.58.0}/README.md +3 -13
  3. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasExamples.py +12 -3
  4. {ras_commander-0.57.0 → ras_commander-0.58.0/ras_commander.egg-info}/PKG-INFO +4 -14
  5. {ras_commander-0.57.0 → ras_commander-0.58.0}/setup.py +1 -1
  6. {ras_commander-0.57.0 → ras_commander-0.58.0}/LICENSE +0 -0
  7. {ras_commander-0.57.0 → ras_commander-0.58.0}/pyproject.toml +0 -0
  8. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/Decorators.py +0 -0
  9. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfBase.py +0 -0
  10. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfBndry.py +0 -0
  11. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfFluvialPluvial.py +0 -0
  12. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfInfiltration.py +0 -0
  13. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfMesh.py +0 -0
  14. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfPipe.py +0 -0
  15. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfPlan.py +0 -0
  16. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfPlot.py +0 -0
  17. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfPump.py +0 -0
  18. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfResultsMesh.py +0 -0
  19. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfResultsPlan.py +0 -0
  20. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfResultsPlot.py +0 -0
  21. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfResultsXsec.py +0 -0
  22. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfStruc.py +0 -0
  23. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfUtils.py +0 -0
  24. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/HdfXsec.py +0 -0
  25. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/LoggingConfig.py +0 -0
  26. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasCmdr.py +0 -0
  27. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasGeo.py +0 -0
  28. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasGpt.py +0 -0
  29. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasMapper.py +0 -0
  30. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasPlan.py +0 -0
  31. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasPrj.py +0 -0
  32. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasToGo.py +0 -0
  33. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasUnsteady.py +0 -0
  34. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/RasUtils.py +0 -0
  35. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander/__init__.py +0 -0
  36. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander.egg-info/SOURCES.txt +0 -0
  37. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander.egg-info/dependency_links.txt +0 -0
  38. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander.egg-info/requires.txt +0 -0
  39. {ras_commander-0.57.0 → ras_commander-0.58.0}/ras_commander.egg-info/top_level.txt +0 -0
  40. {ras_commander-0.57.0 → ras_commander-0.58.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ras-commander
3
- Version: 0.57.0
3
+ Version: 0.58.0
4
4
  Summary: A Python library for automating HEC-RAS 6.x operations
5
5
  Home-page: https://github.com/gpt-cmdr/ras-commander
6
6
  Author: William M. Katzenmeyer, P.E., C.F.M.
@@ -34,16 +34,10 @@ Dynamic: summary
34
34
 
35
35
  RAS Commander is a Python library for automating HEC-RAS operations, providing a set of tools to interact with HEC-RAS project files, execute simulations, and manage project data. This library was initially conceptualized in the Australian Water School course "AI Tools for Modelling Innovation", and subsequently expanded to cover the basic functionality of the HECRASController COM32 interface using open-source python libraries. This library uses a Test Driven Development strategy, leveraging the publicly-available HEC-RAS Example projects to create repeatable demonstration examples. The "Commmander" moniker is inspired by the "Command Line is All You Need" approach to HEC-RAS automation that was first implemented in the HEC-Commander Tools repository.
36
36
 
37
- ## Contributors:
38
- William Katzenmeyer, P.E., C.F.M.
37
+ ## Repository Author:
38
+ (William Katzenmeyer, P.E., C.F.M.)[https://engineeringwithllms.info]
39
39
 
40
- Sean Micek, P.E., C.F.M.
41
-
42
- Aaron Nichols, P.E., C.F.M.
43
-
44
- (Additional Contributors Here)
45
-
46
- ## Don't Ask Me, Ask ChatGPT!
40
+ ## Don't Ask Me, Ask GPT!
47
41
 
48
42
  This repository has several methods of interaction with Large Language Models and LLM-Assisted Coding built right in:
49
43
 
@@ -160,8 +154,6 @@ results = RasCmdr.compute_parallel(
160
154
  RasPlan.set_geom("01", "02")
161
155
  ```
162
156
 
163
- Certainly! I'll provide you with an updated Key Components section and Project Organization diagram based on the current structure of the ras-commander library.
164
-
165
157
  #### Key Components
166
158
 
167
159
  - `RasPrj`: Manages HEC-RAS projects, handling initialization and data loading
@@ -267,8 +259,6 @@ Example usage:
267
259
  from ras_commander import RasExamples
268
260
 
269
261
  ```
270
- ras_examples = RasExamples()
271
- ras_examples.get_example_projects() # Downloads example projects if not already present
272
262
  categories = ras_examples.list_categories()
273
263
  projects = ras_examples.list_projects("Steady Flow")
274
264
  extracted_paths = ras_examples.extract_project(["Bald Eagle Creek", "Muncie"])
@@ -2,16 +2,10 @@
2
2
 
3
3
  RAS Commander is a Python library for automating HEC-RAS operations, providing a set of tools to interact with HEC-RAS project files, execute simulations, and manage project data. This library was initially conceptualized in the Australian Water School course "AI Tools for Modelling Innovation", and subsequently expanded to cover the basic functionality of the HECRASController COM32 interface using open-source python libraries. This library uses a Test Driven Development strategy, leveraging the publicly-available HEC-RAS Example projects to create repeatable demonstration examples. The "Commmander" moniker is inspired by the "Command Line is All You Need" approach to HEC-RAS automation that was first implemented in the HEC-Commander Tools repository.
4
4
 
5
- ## Contributors:
6
- William Katzenmeyer, P.E., C.F.M.
5
+ ## Repository Author:
6
+ (William Katzenmeyer, P.E., C.F.M.)[https://engineeringwithllms.info]
7
7
 
8
- Sean Micek, P.E., C.F.M.
9
-
10
- Aaron Nichols, P.E., C.F.M.
11
-
12
- (Additional Contributors Here)
13
-
14
- ## Don't Ask Me, Ask ChatGPT!
8
+ ## Don't Ask Me, Ask GPT!
15
9
 
16
10
  This repository has several methods of interaction with Large Language Models and LLM-Assisted Coding built right in:
17
11
 
@@ -128,8 +122,6 @@ results = RasCmdr.compute_parallel(
128
122
  RasPlan.set_geom("01", "02")
129
123
  ```
130
124
 
131
- Certainly! I'll provide you with an updated Key Components section and Project Organization diagram based on the current structure of the ras-commander library.
132
-
133
125
  #### Key Components
134
126
 
135
127
  - `RasPrj`: Manages HEC-RAS projects, handling initialization and data loading
@@ -235,8 +227,6 @@ Example usage:
235
227
  from ras_commander import RasExamples
236
228
 
237
229
  ```
238
- ras_examples = RasExamples()
239
- ras_examples.get_example_projects() # Downloads example projects if not already present
240
230
  categories = ras_examples.list_categories()
241
231
  projects = ras_examples.list_projects("Steady Flow")
242
232
  extracted_paths = ras_examples.extract_project(["Bald Eagle Creek", "Muncie"])
@@ -122,8 +122,16 @@ class RasExamples:
122
122
  self._save_to_csv()
123
123
 
124
124
  @classmethod
125
- def extract_project(cls, project_names: Union[str, List[str]]):
126
- """Extract one or more specific HEC-RAS projects from the zip file."""
125
+ def extract_project(cls, project_names: Union[str, List[str]]) -> Union[Path, List[Path]]:
126
+ """Extract one or more specific HEC-RAS projects from the zip file.
127
+
128
+ Args:
129
+ project_names: Single project name as string or list of project names
130
+
131
+ Returns:
132
+ Path: Single Path object if one project extracted
133
+ List[Path]: List of Path objects if multiple projects extracted
134
+ """
127
135
  logger.debug(f"Extracting projects: {project_names}")
128
136
 
129
137
  # Initialize if needed
@@ -178,7 +186,8 @@ class RasExamples:
178
186
  except Exception as e:
179
187
  logger.error(f"An error occurred while extracting project '{project_name}': {str(e)}")
180
188
 
181
- return extracted_paths
189
+ # Return single path if only one project was extracted, otherwise return list
190
+ return extracted_paths[0] if len(project_names) == 1 else extracted_paths
182
191
 
183
192
  @classmethod
184
193
  def _find_zip_file(cls):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ras-commander
3
- Version: 0.57.0
3
+ Version: 0.58.0
4
4
  Summary: A Python library for automating HEC-RAS 6.x operations
5
5
  Home-page: https://github.com/gpt-cmdr/ras-commander
6
6
  Author: William M. Katzenmeyer, P.E., C.F.M.
@@ -34,16 +34,10 @@ Dynamic: summary
34
34
 
35
35
  RAS Commander is a Python library for automating HEC-RAS operations, providing a set of tools to interact with HEC-RAS project files, execute simulations, and manage project data. This library was initially conceptualized in the Australian Water School course "AI Tools for Modelling Innovation", and subsequently expanded to cover the basic functionality of the HECRASController COM32 interface using open-source python libraries. This library uses a Test Driven Development strategy, leveraging the publicly-available HEC-RAS Example projects to create repeatable demonstration examples. The "Commmander" moniker is inspired by the "Command Line is All You Need" approach to HEC-RAS automation that was first implemented in the HEC-Commander Tools repository.
36
36
 
37
- ## Contributors:
38
- William Katzenmeyer, P.E., C.F.M.
37
+ ## Repository Author:
38
+ (William Katzenmeyer, P.E., C.F.M.)[https://engineeringwithllms.info]
39
39
 
40
- Sean Micek, P.E., C.F.M.
41
-
42
- Aaron Nichols, P.E., C.F.M.
43
-
44
- (Additional Contributors Here)
45
-
46
- ## Don't Ask Me, Ask ChatGPT!
40
+ ## Don't Ask Me, Ask GPT!
47
41
 
48
42
  This repository has several methods of interaction with Large Language Models and LLM-Assisted Coding built right in:
49
43
 
@@ -160,8 +154,6 @@ results = RasCmdr.compute_parallel(
160
154
  RasPlan.set_geom("01", "02")
161
155
  ```
162
156
 
163
- Certainly! I'll provide you with an updated Key Components section and Project Organization diagram based on the current structure of the ras-commander library.
164
-
165
157
  #### Key Components
166
158
 
167
159
  - `RasPrj`: Manages HEC-RAS projects, handling initialization and data loading
@@ -267,8 +259,6 @@ Example usage:
267
259
  from ras_commander import RasExamples
268
260
 
269
261
  ```
270
- ras_examples = RasExamples()
271
- ras_examples.get_example_projects() # Downloads example projects if not already present
272
262
  categories = ras_examples.list_categories()
273
263
  projects = ras_examples.list_projects("Steady Flow")
274
264
  extracted_paths = ras_examples.extract_project(["Bald Eagle Creek", "Muncie"])
@@ -28,7 +28,7 @@ class CustomBuildPy(build_py):
28
28
 
29
29
  setup(
30
30
  name="ras-commander",
31
- version="0.57.0",
31
+ version="0.58.0",
32
32
  packages=find_packages(),
33
33
  include_package_data=True,
34
34
  python_requires='>=3.10',
File without changes
File without changes