kaxil commented on code in PR #70694:
URL: https://github.com/apache/airflow/pull/70694#discussion_r3677223436
##########
shared/logging/pyproject.toml:
##########
@@ -26,7 +26,7 @@ classifiers = [
dependencies = [
"msgspec>=0.19.0",
"pygtrie>=2.5.0",
- "structlog>=25.4.0",
+ "structlog>=26.1.0",
Review Comment:
With the floor at 26.1.0, the `WRITE_LOCKS` monkeypatch in
`configure_logging` (`shared/logging/src/airflow_shared/logging/structlog.py`,
added in #65121) becomes dead code: 26.1.0 defines `WRITE_LOCKS` as a
`WeakKeyDictionary` at module level, so the `isinstance(..., dict)` guard never
fires. Its own comment says `TODO: drop once structlog ships the upstream fix
(tracked for 26.1.0)`, so this is the PR that gets to remove it. The
`_BYTES_LOGGER_HAS_NAME` fallback in the same module is dead too, but
`_WRITE_LOGGER_HAS_NAME` is not, since 26.1.0's `WriteLogger` still has no
`name` slot.
##########
airflow-core/pyproject.toml:
##########
@@ -85,7 +85,7 @@ dependencies = [
"cadwyn>=6.1.1",
"colorlog>=6.8.2",
"cron-descriptor>=1.2.24",
- "croniter>=2.0.2",
+ "croniter>=6.1.0",
Review Comment:
`6.1.0` picks up the `TIMESTAMP_TO_DT_CACHE` removal, but the `EXPRESSIONS`
global dict cache is still in the 6.1.0 wheel. It only went away in 6.2.0 (the
6.1.0 changelog section claims that fix, but the shipped code disagrees).
6.2.1 then fixed `get_prev` skipping Feb 29 on leap years for day-of-month
expressions, and `CronMixin._get_prev` feeds straight into
`infer_manual_data_interval` and `_align_to_prev`:
```
# croniter 6.1.0
croniter("0 0 29 * *", start_time=datetime(2024, 3, 5)).get_prev(datetime)
-> 2024-01-29
# croniter 6.2.1+
-> 2024-02-29
```
`constraints-3.2.2` and `constraints-3.3.0` already pin `croniter==6.2.2`,
so could the floor be `>=6.2.2` instead?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]