diff --git a/README.md b/README.md index 83c9303..ac08053 100644 --- a/README.md +++ b/README.md @@ -18,12 +18,12 @@ $ pip install chronify To use Apache Spark via Apache Thrift Server as the backend: ``` -$ pip install chronify --group=pyhive +$ pip install "chronify[spark]" ``` ## Developer installation ``` -$ pip install -e ".[dev]" --group=pyhive +$ pip install -e ".[dev,spark]" ``` Please install `pre-commit` so that your code is checked before making commits. diff --git a/docs/how_tos/getting_started/installation.md b/docs/how_tos/getting_started/installation.md index ab922a7..398dce1 100644 --- a/docs/how_tos/getting_started/installation.md +++ b/docs/how_tos/getting_started/installation.md @@ -38,9 +38,10 @@ To use DuckDB or SQLite as the backend: ``` To use Apache Spark via Apache Thrift Server as the backend, you must install pyhive. +This command will install the necessary dependencies. ```{eval-rst} .. code-block:: console - $ pip install chronify --group=pyhive + $ pip install "chronify[spark]" ``` diff --git a/docs/how_tos/spark_backend.md b/docs/how_tos/spark_backend.md index 1df45c6..5e893bf 100644 --- a/docs/how_tos/spark_backend.md +++ b/docs/how_tos/spark_backend.md @@ -4,7 +4,7 @@ scripts for UNIX operating systems (not Windows). ## Install chronify with Spark support ``` -$ pip install chronify --group=pyhive +$ pip install "chronify[spark]" ``` ## Installation on a development computer diff --git a/src/chronify/datetime_range_generator.py b/src/chronify/datetime_range_generator.py index b030e68..87574f4 100644 --- a/src/chronify/datetime_range_generator.py +++ b/src/chronify/datetime_range_generator.py @@ -120,10 +120,9 @@ def __init__( def _list_timestamps(self, time_zone: Optional[tzinfo]) -> list[datetime]: """always return tz-naive timestamps relative to input time_zone""" if self._model.start_time_is_tz_naive(): - if time_zone: - start = self._model.start.replace(tzinfo=time_zone) - else: - start = None + # For clock-time-aligned data, iterate naively without timezone conversion. + # All timezones get the same clock times (e.g., midnight everywhere). + start = None else: if time_zone: start = self._model.start.astimezone(time_zone)