terrakio-core 0.4.98.1b7__tar.gz → 0.4.98.1b8__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.

Potentially problematic release.


This version of terrakio-core might be problematic. Click here for more details.

Files changed (63) hide show
  1. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/PKG-INFO +1 -1
  2. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/pyproject.toml +1 -1
  3. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/mass_stats.py +38 -24
  4. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/README.md +0 -0
  5. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/__init__.py +0 -0
  6. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/async_client.py +0 -0
  7. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/client.py +0 -0
  8. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/config.py +0 -0
  9. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/convenience_functions/convenience_functions.py +0 -0
  10. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/auth.py +0 -0
  11. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/dataset_management.py +0 -0
  12. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/group_management.py +0 -0
  13. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/mass_stats.py +0 -0
  14. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/model_management.py +0 -0
  15. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/space_management.py +0 -0
  16. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/endpoints/user_management.py +0 -0
  17. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/exceptions.py +0 -0
  18. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/helper/bounded_taskgroup.py +0 -0
  19. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/helper/decorators.py +0 -0
  20. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/helper/tiles.py +0 -0
  21. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/__editable__.terrakio_core-0.3.9-py3-none-any/terrakio_core/sync_client.py +0 -0
  22. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/__init__.py +0 -0
  23. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/accessors.py +0 -0
  24. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/async_client.py +0 -0
  25. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/client.py +0 -0
  26. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/config.py +0 -0
  27. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/convenience_functions/convenience_functions.py +0 -0
  28. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/auth.py +0 -0
  29. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/dataset_management.py +0 -0
  30. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/group_management.py +0 -0
  31. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/mass_stats.py +0 -0
  32. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/model_management.py +0 -0
  33. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/space_management.py +0 -0
  34. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/endpoints/user_management.py +0 -0
  35. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/exceptions.py +0 -0
  36. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/helper/bounded_taskgroup.py +0 -0
  37. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/helper/decorators.py +0 -0
  38. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/helper/tiles.py +0 -0
  39. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/build/lib/terrakio_core/sync_client.py +0 -0
  40. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/__init__.py +0 -0
  41. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/accessors.py +0 -0
  42. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/async_client.py +0 -0
  43. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/client.py +0 -0
  44. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/config.py +0 -0
  45. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/convenience_functions/create_dataset_file.py +0 -0
  46. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/convenience_functions/geoquries.py +0 -0
  47. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/convenience_functions/zonal_stats.py +0 -0
  48. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/auth.py +0 -0
  49. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/dataset_management.py +0 -0
  50. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/group_management.py +0 -0
  51. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/model_management.py +0 -0
  52. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/space_management.py +0 -0
  53. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/endpoints/user_management.py +0 -0
  54. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/exceptions.py +0 -0
  55. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/helper/bounded_taskgroup.py +0 -0
  56. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/helper/decorators.py +0 -0
  57. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/helper/tiles.py +0 -0
  58. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core/sync_client.py +0 -0
  59. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core.egg-info/PKG-INFO +0 -0
  60. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core.egg-info/SOURCES.txt +0 -0
  61. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core.egg-info/dependency_links.txt +0 -0
  62. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core.egg-info/requires.txt +0 -0
  63. {terrakio_core-0.4.98.1b7 → terrakio_core-0.4.98.1b8}/terrakio_core.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: terrakio-core
3
- Version: 0.4.98.1b7
3
+ Version: 0.4.98.1b8
4
4
  Summary: Core package for the terrakio-python-api
5
5
  Requires-Python: >=3.11
6
6
  Requires-Dist: aiofiles>=24.1.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "terrakio-core"
3
- version = "0.4.98.1b7"
3
+ version = "0.4.98.1b8"
4
4
  description = "Core package for the terrakio-python-api"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -1,7 +1,7 @@
1
1
  import json
2
2
  import os
3
3
  import time
4
- from typing import Dict, Any, Optional, List
4
+ from typing import Dict, Any, Optional, List, Union
5
5
 
6
6
  import aiohttp
7
7
  import typer
@@ -991,10 +991,10 @@ class MassStats:
991
991
  async def gen_and_process(
992
992
  self,
993
993
  collection: str,
994
- requests_file: str,
994
+ requests_file: Union[str, Any],
995
995
  output: str,
996
996
  folder: str,
997
- consumer: str,
997
+ consumer: Union[str, Any],
998
998
  extra: Optional[Dict[str, Any]] = None,
999
999
  force_loc: Optional[bool] = False,
1000
1000
  skip_existing: Optional[bool] = True,
@@ -1005,10 +1005,10 @@ class MassStats:
1005
1005
 
1006
1006
  Args:
1007
1007
  collection: Name of collection
1008
- requests_file: Path to JSON file containing request configurations
1008
+ requests_file: Path to JSON file or file object containing request configurations
1009
1009
  output: Output type (str)
1010
1010
  folder: Folder to store output
1011
- consumer: Path to post processing script
1011
+ consumer: Path to post processing script or file object
1012
1012
  extra: Additional configuration parameters (optional)
1013
1013
  force_loc: Write data directly to the cloud under this folder (optional, defaults to False)
1014
1014
  skip_existing: Skip existing data (optional, defaults to True)
@@ -1025,25 +1025,39 @@ class MassStats:
1025
1025
 
1026
1026
  upload_urls = await self._upload_requests(collection=collection)
1027
1027
  url = upload_urls['url']
1028
- await self._upload_file(requests_file, url)
1029
-
1030
- with open(consumer, 'rb') as f:
1031
- form = aiohttp.FormData()
1032
- form.add_field('output', output)
1033
- form.add_field('force_loc', str(force_loc).lower())
1034
- form.add_field('skip_existing', str(skip_existing).lower())
1035
-
1036
- if server is not None:
1037
- form.add_field('server', server)
1038
-
1039
- form.add_field('extra', json.dumps(extra or {}))
1040
- form.add_field('folder', folder)
1041
- form.add_field(
1042
- 'consumer',
1043
- f.read(),
1044
- filename='consumer.py',
1045
- content_type='text/x-python'
1046
- )
1028
+
1029
+ # Handle requests_file - either file path (str) or file object
1030
+ if isinstance(requests_file, str):
1031
+ await self._upload_file(requests_file, url)
1032
+ else:
1033
+ # File object - read JSON and upload directly
1034
+ json_data = json.load(requests_file)
1035
+ await self._upload_json_data(json_data, url)
1036
+
1037
+ # Handle consumer - either file path (str) or file object
1038
+ if isinstance(consumer, str):
1039
+ with open(consumer, 'rb') as f:
1040
+ consumer_content = f.read()
1041
+ else:
1042
+ # Assume it's a file object
1043
+ consumer_content = consumer.read()
1044
+
1045
+ form = aiohttp.FormData()
1046
+ form.add_field('output', output)
1047
+ form.add_field('force_loc', str(force_loc).lower())
1048
+ form.add_field('skip_existing', str(skip_existing).lower())
1049
+
1050
+ if server is not None:
1051
+ form.add_field('server', server)
1052
+
1053
+ form.add_field('extra', json.dumps(extra or {}))
1054
+ form.add_field('folder', folder)
1055
+ form.add_field(
1056
+ 'consumer',
1057
+ consumer_content,
1058
+ filename='consumer.py',
1059
+ content_type='text/x-python'
1060
+ )
1047
1061
 
1048
1062
  response, status = await self._client._terrakio_request(
1049
1063
  "POST",