sibi-dst 2025.1.2__tar.gz → 2025.1.4__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 (79) hide show
  1. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/PKG-INFO +4 -2
  2. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/pyproject.toml +4 -2
  3. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/manifest_manager.py +3 -3
  4. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/README.md +0 -0
  5. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/__init__.py +0 -0
  6. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/__init__.py +0 -0
  7. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/_artifact_updater_multi_wrapper.py +0 -0
  8. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/_df_helper.py +0 -0
  9. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/_parquet_artifact.py +0 -0
  10. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/_parquet_reader.py +0 -0
  11. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/__init__.py +0 -0
  12. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/http/__init__.py +0 -0
  13. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/http/_http_config.py +0 -0
  14. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/parquet/__init__.py +0 -0
  15. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/parquet/_filter_handler.py +0 -0
  16. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/parquet/_parquet_options.py +0 -0
  17. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/sqlalchemy/__init__.py +0 -0
  18. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/sqlalchemy/_db_connection.py +0 -0
  19. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/sqlalchemy/_io_dask.py +0 -0
  20. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/sqlalchemy/_load_from_db.py +0 -0
  21. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/backends/sqlalchemy/_sql_model_builder.py +0 -0
  22. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/core/__init__.py +0 -0
  23. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/core/_defaults.py +0 -0
  24. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/core/_filter_handler.py +0 -0
  25. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/core/_params_config.py +0 -0
  26. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/core/_query_config.py +0 -0
  27. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/df_helper/data_cleaner.py +0 -0
  28. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/geopy_helper/__init__.py +0 -0
  29. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/geopy_helper/geo_location_service.py +0 -0
  30. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/geopy_helper/utils.py +0 -0
  31. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/osmnx_helper/__init__.py +0 -0
  32. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/osmnx_helper/base_osm_map.py +0 -0
  33. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/osmnx_helper/basemaps/__init__.py +0 -0
  34. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/osmnx_helper/basemaps/calendar_html.py +0 -0
  35. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/osmnx_helper/basemaps/router_plotter.py +0 -0
  36. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/osmnx_helper/utils.py +0 -0
  37. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/tests/__init__.py +0 -0
  38. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/tests/test_data_wrapper_class.py +0 -0
  39. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/__init__.py +0 -0
  40. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/clickhouse_writer.py +0 -0
  41. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/credentials.py +0 -0
  42. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/data_from_http_source.py +0 -0
  43. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/data_utils.py +0 -0
  44. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/data_wrapper.py +0 -0
  45. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/date_utils.py +0 -0
  46. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/df_utils.py +0 -0
  47. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/file_utils.py +0 -0
  48. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/filepath_generator.py +0 -0
  49. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/log_utils.py +0 -0
  50. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/parquet_saver.py +0 -0
  51. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/phone_formatter.py +0 -0
  52. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/storage_config.py +0 -0
  53. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/storage_manager.py +0 -0
  54. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/update_planner.py +0 -0
  55. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/utils/webdav_client.py +0 -0
  56. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/__init__.py +0 -0
  57. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/__init__.py +0 -0
  58. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/_df_helper.py +0 -0
  59. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/__init__.py +0 -0
  60. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlalchemy/__init__.py +0 -0
  61. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlalchemy/_db_connection.py +0 -0
  62. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlalchemy/_io_dask.py +0 -0
  63. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlalchemy/_load_from_db.py +0 -0
  64. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlalchemy/_model_builder.py +0 -0
  65. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlmodel/__init__.py +0 -0
  66. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlmodel/_db_connection.py +0 -0
  67. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlmodel/_io_dask.py +0 -0
  68. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlmodel/_load_from_db.py +0 -0
  69. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/backends/sqlmodel/_model_builder.py +0 -0
  70. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/core/__init__.py +0 -0
  71. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/core/_filter_handler.py +0 -0
  72. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/core/_params_config.py +0 -0
  73. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/df_helper/core/_query_config.py +0 -0
  74. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/utils/__init__.py +0 -0
  75. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v2/utils/log_utils.py +0 -0
  76. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v3/__init__.py +0 -0
  77. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v3/backends/__init__.py +0 -0
  78. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v3/df_helper/__init__.py +0 -0
  79. {sibi_dst-2025.1.2 → sibi_dst-2025.1.4}/sibi_dst/v3/df_helper/_df_helper.py +0 -0
@@ -1,11 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sibi-dst
3
- Version: 2025.1.2
3
+ Version: 2025.1.4
4
4
  Summary: Data Science Toolkit
5
5
  Author: Luis Valverde
6
6
  Author-email: lvalverdeb@gmail.com
7
- Requires-Python: >=3.12,<4.0
7
+ Requires-Python: >=3.11,<4.0
8
8
  Classifier: Programming Language :: Python :: 3
9
+ Classifier: Programming Language :: Python :: 3.11
9
10
  Classifier: Programming Language :: Python :: 3.12
10
11
  Classifier: Programming Language :: Python :: 3.13
11
12
  Requires-Dist: clickhouse-connect (>=0.8.18,<0.9.0)
@@ -14,6 +15,7 @@ Requires-Dist: dask[complete] (>=2025.5.1,<2026.0.0)
14
15
  Requires-Dist: mysqlclient (>=2.2.7,<3.0.0)
15
16
  Requires-Dist: pandas (>=2.3.1,<3.0.0)
16
17
  Requires-Dist: psycopg2 (>=2.9.10,<3.0.0)
18
+ Requires-Dist: pyarrow (>=20.0.0,<21.0.0)
17
19
  Requires-Dist: pydantic (>=2.11.7,<3.0.0)
18
20
  Requires-Dist: pymysql (>=1.1.1,<2.0.0)
19
21
  Requires-Dist: s3fs (>=2025.5.1,<2026.0.0)
@@ -1,13 +1,13 @@
1
1
  [tool.poetry]
2
2
  name = "sibi-dst"
3
- version = "2025.1.2"
3
+ version = "2025.1.4"
4
4
  description = "Data Science Toolkit"
5
5
  authors = ["Luis Valverde <lvalverdeb@gmail.com>"]
6
6
  readme = "README.md"
7
7
  packages = [{ include = "sibi_dst" }]
8
8
 
9
9
  [tool.poetry.dependencies]
10
- python = ">=3.12,<4.0"
10
+ python = ">=3.11,<4.0"
11
11
  pandas = "^2.3.1"
12
12
  dask = {extras = ["complete"], version = "^2025.5.1"}
13
13
  psycopg2 = "^2.9.10"
@@ -20,6 +20,7 @@ s3fs = "^2025.5.1"
20
20
  pydantic = "^2.11.7"
21
21
  sqlalchemy = "^2.0.41"
22
22
  pymysql = "^1.1.1"
23
+ pyarrow = "^20.0.0"
23
24
 
24
25
  [tool.poetry.group.dev]
25
26
  optional = true
@@ -43,6 +44,7 @@ optional = true
43
44
  osmnx = "^2.0.5"
44
45
  geopy = "^2.4.1"
45
46
  folium = "^0.20.0"
47
+ geopandas = "^1.1.1"
46
48
 
47
49
  [build-system]
48
50
  requires = ["poetry-core"]
@@ -84,7 +84,7 @@ class MissingManifestManager:
84
84
  new_df.get("path", pd.Series(dtype=str))
85
85
  .dropna().astype(str)
86
86
  .loc[lambda s: s.str.strip().astype(bool)]
87
- .to_frame()
87
+ .to_frame(name="path")
88
88
  )
89
89
 
90
90
  if should_overwrite:
@@ -96,7 +96,7 @@ class MissingManifestManager:
96
96
  old_df.get("path", pd.Series(dtype=str))
97
97
  .dropna().astype(str)
98
98
  .loc[lambda s: s.str.strip().astype(bool)]
99
- .to_frame()
99
+ .to_frame(name="path")
100
100
  )
101
101
  out_df = pd.concat([old_paths, new_df], ignore_index=True)
102
102
  except Exception as e:
@@ -122,7 +122,7 @@ class MissingManifestManager:
122
122
  self.logger.info(f"Copied manifest to {self.manifest_path} (temp: {temp_path})")
123
123
  except Exception as e:
124
124
  self.logger.error(f"Failed to write or copy manifest: {e}")
125
- raise
125
+ #raise
126
126
 
127
127
  self.logger.debug(f"Temp file left behind: {temp_path}")
128
128
  self._new_records.clear()
File without changes