FlowerPower 0.11.6.14__tar.gz → 0.11.6.15__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 (107) hide show
  1. {flowerpower-0.11.6.14/src/FlowerPower.egg-info → flowerpower-0.11.6.15}/PKG-INFO +1 -1
  2. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/pyproject.toml +1 -1
  3. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15/src/FlowerPower.egg-info}/PKG-INFO +1 -1
  4. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/helpers/polars.py +18 -6
  5. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/LICENSE +0 -0
  6. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/README.md +0 -0
  7. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/setup.cfg +0 -0
  8. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/FlowerPower.egg-info/SOURCES.txt +0 -0
  9. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/FlowerPower.egg-info/dependency_links.txt +0 -0
  10. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/FlowerPower.egg-info/entry_points.txt +0 -0
  11. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/FlowerPower.egg-info/requires.txt +0 -0
  12. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/FlowerPower.egg-info/top_level.txt +0 -0
  13. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/__init__.py +0 -0
  14. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/__init__.py +0 -0
  15. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/base.py +0 -0
  16. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/pipeline/__init__.py +0 -0
  17. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/pipeline/adapter.py +0 -0
  18. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/pipeline/run.py +0 -0
  19. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/pipeline/schedule.py +0 -0
  20. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/project/__init__.py +0 -0
  21. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/project/adapter.py +0 -0
  22. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cfg/project/job_queue.py +0 -0
  23. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cli/__init__.py +0 -0
  24. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cli/cfg.py +0 -0
  25. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cli/job_queue.py +0 -0
  26. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cli/mqtt.py +0 -0
  27. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cli/pipeline.py +0 -0
  28. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/cli/utils.py +0 -0
  29. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/flowerpower.py +0 -0
  30. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/fs/__init__.py +0 -0
  31. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/fs/base.py +0 -0
  32. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/fs/ext.py +0 -0
  33. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/fs/storage_options.py +0 -0
  34. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/__init__.py +0 -0
  35. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/__init__.py +0 -0
  36. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/_setup/datastore.py +0 -0
  37. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/_setup/eventbroker.py +0 -0
  38. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/manager.py +0 -0
  39. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/setup.py +0 -0
  40. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/trigger.py +0 -0
  41. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/apscheduler/utils.py +0 -0
  42. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/base.py +0 -0
  43. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/__init__.py +0 -0
  44. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/_trigger.py +0 -0
  45. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/concurrent_workers/gevent_worker.py +0 -0
  46. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/concurrent_workers/thread_worker.py +0 -0
  47. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/manager.py +0 -0
  48. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/setup.py +0 -0
  49. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/job_queue/rq/utils.py +0 -0
  50. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/mqtt.py +0 -0
  51. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/__init__.py +0 -0
  52. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/base.py +0 -0
  53. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/io.py +0 -0
  54. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/job_queue.py +0 -0
  55. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/manager.py +0 -0
  56. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/registry.py +0 -0
  57. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/runner.py +0 -0
  58. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/pipeline/visualizer.py +0 -0
  59. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/base.py +0 -0
  60. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/helpers/datetime.py +0 -0
  61. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/helpers/pyarrow.py +0 -0
  62. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/helpers/sql.py +0 -0
  63. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/__init__.py +0 -0
  64. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/csv.py +0 -0
  65. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/deltatable.py +0 -0
  66. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/duckdb.py +0 -0
  67. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/json.py +0 -0
  68. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/mqtt.py +0 -0
  69. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/mssql.py +0 -0
  70. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/mysql.py +0 -0
  71. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/oracle.py +0 -0
  72. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/parquet.py +0 -0
  73. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/postgres.py +0 -0
  74. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/pydala.py +0 -0
  75. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/loader/sqlite.py +0 -0
  76. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/metadata.py +0 -0
  77. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/__init__.py +0 -0
  78. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/csv.py +0 -0
  79. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/deltatable.py +0 -0
  80. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/duckdb.py +0 -0
  81. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/json.py +0 -0
  82. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/mqtt.py +0 -0
  83. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/mssql.py +0 -0
  84. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/mysql.py +0 -0
  85. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/oracle.py +0 -0
  86. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/parquet.py +0 -0
  87. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/postgres.py +0 -0
  88. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/pydala.py +0 -0
  89. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/io/saver/sqlite.py +0 -0
  90. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/mqtt/__init__.py +0 -0
  91. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/mqtt/cfg.py +0 -0
  92. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/plugins/mqtt/manager.py +0 -0
  93. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/__init__.py +0 -0
  94. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/backend.py +0 -0
  95. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/executor.py +0 -0
  96. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/general.py +0 -0
  97. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/hamilton.py +0 -0
  98. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/job_queue.py +0 -0
  99. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/logging.py +0 -0
  100. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/settings/retry.py +0 -0
  101. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/callback.py +0 -0
  102. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/logging.py +0 -0
  103. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/misc.py +0 -0
  104. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/monkey.py +0 -0
  105. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/open_telemetry.py +0 -0
  106. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/scheduler.py +0 -0
  107. {flowerpower-0.11.6.14 → flowerpower-0.11.6.15}/src/flowerpower/utils/templates.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: FlowerPower
3
- Version: 0.11.6.14
3
+ Version: 0.11.6.15
4
4
  Summary: A simple workflow framework. Hamilton + APScheduler = FlowerPower
5
5
  Author-email: "Volker L." <ligno.blades@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/legout/flowerpower
@@ -4,7 +4,7 @@ description = "A simple workflow framework. Hamilton + APScheduler = FlowerPower
4
4
  authors = [{ name = "Volker L.", email = "ligno.blades@gmail.com" }]
5
5
  readme = "README.md"
6
6
  requires-python = ">= 3.11"
7
- version = "0.11.6.14"
7
+ version = "0.11.6.15"
8
8
  keywords = [
9
9
  "hamilton",
10
10
  "workflow",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: FlowerPower
3
- Version: 0.11.6.14
3
+ Version: 0.11.6.15
4
4
  Summary: A simple workflow framework. Hamilton + APScheduler = FlowerPower
5
5
  Author-email: "Volker L." <ligno.blades@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/legout/flowerpower
@@ -46,15 +46,27 @@ def _can_downcast_to_float32(series: pl.Series) -> bool:
46
46
  return F32_MIN <= min_val <= max_val <= F32_MAX
47
47
 
48
48
 
49
- def _optimize_numeric_column(series: pl.Series, col_name: str, shrink: bool) -> pl.Expr:
50
- """Optimize numeric column types."""
49
+ def _optimize_numeric_column(
50
+ series: pl.Series, col_name: str, shrink: bool, allow_unsigned: bool = False
51
+ ) -> pl.Expr:
52
+ """Optimize numeric column types, optionally converting to unsigned if all values >= 0."""
53
+ expr = pl.col(col_name)
54
+ dtype = series.dtype
55
+
56
+ if allow_unsigned and dtype.is_integer() and (series.min() is not None) and series.min() >= 0:
57
+ # Convert to unsigned integer type, shrink if requested
58
+ if shrink:
59
+ return expr.cast(pl.UInt64).shrink_dtype()
60
+ else:
61
+ return expr.cast(pl.UInt64)
62
+
51
63
  if not shrink:
52
- return pl.col(col_name)
64
+ return expr
53
65
 
54
- if series.dtype == pl.Float64 and not _can_downcast_to_float32(series):
55
- return pl.col(col_name)
66
+ if dtype == pl.Float64 and not _can_downcast_to_float32(series):
67
+ return expr
56
68
 
57
- return pl.col(col_name).shrink_dtype()
69
+ return expr.shrink_dtype()
58
70
 
59
71
 
60
72
  def _optimize_string_column(
File without changes