|
25 | 25 | import multiprocessing |
26 | 26 | import os |
27 | 27 | import pathlib |
| 28 | +import re |
28 | 29 | import shlex |
29 | 30 | import stat |
30 | 31 | import subprocess |
|
41 | 42 | from typing import IO, TYPE_CHECKING, Any, Union |
42 | 43 | from urllib.parse import urlsplit |
43 | 44 |
|
44 | | -import re2 |
45 | 45 | from packaging.version import parse as parse_version |
46 | 46 | from typing_extensions import overload |
47 | 47 |
|
|
63 | 63 | warnings.filterwarnings(action="default", category=DeprecationWarning, module="airflow") |
64 | 64 | warnings.filterwarnings(action="default", category=PendingDeprecationWarning, module="airflow") |
65 | 65 |
|
66 | | -_SQLITE3_VERSION_PATTERN = re2.compile(r"(?P<version>^\d+(?:\.\d+)*)\D?.*$") |
| 66 | +_SQLITE3_VERSION_PATTERN = re.compile(r"(?P<version>^\d+(?:\.\d+)*)\D?.*$") |
67 | 67 |
|
68 | 68 | ConfigType = Union[str, int, float, bool] |
69 | 69 | ConfigOptionsDictType = dict[str, ConfigType] |
@@ -354,37 +354,37 @@ def inversed_deprecated_sections(self): |
354 | 354 | # about. Mapping of section -> setting -> { old, replace, by_version } |
355 | 355 | deprecated_values: dict[str, dict[str, tuple[Pattern, str, str]]] = { |
356 | 356 | "core": { |
357 | | - "hostname_callable": (re2.compile(r":"), r".", "2.1"), |
| 357 | + "hostname_callable": (re.compile(r":"), r".", "2.1"), |
358 | 358 | }, |
359 | 359 | "webserver": { |
360 | | - "navbar_color": (re2.compile(r"(?i)\A#007A87\z"), "#fff", "2.1"), |
361 | | - "dag_default_view": (re2.compile(r"^tree$"), "grid", "3.0"), |
| 360 | + "navbar_color": (re.compile(r"(?i)^#007A87$"), "#fff", "2.1"), |
| 361 | + "dag_default_view": (re.compile(r"^tree$"), "grid", "3.0"), |
362 | 362 | }, |
363 | 363 | "email": { |
364 | 364 | "email_backend": ( |
365 | | - re2.compile(r"^airflow\.contrib\.utils\.sendgrid\.send_email$"), |
| 365 | + re.compile(r"^airflow\.contrib\.utils\.sendgrid\.send_email$"), |
366 | 366 | r"airflow.providers.sendgrid.utils.emailer.send_email", |
367 | 367 | "2.1", |
368 | 368 | ), |
369 | 369 | }, |
370 | 370 | "logging": { |
371 | 371 | "log_filename_template": ( |
372 | | - re2.compile(re2.escape("{{ ti.dag_id }}/{{ ti.task_id }}/{{ ts }}/{{ try_number }}.log")), |
| 372 | + re.compile(re.escape("{{ ti.dag_id }}/{{ ti.task_id }}/{{ ts }}/{{ try_number }}.log")), |
373 | 373 | # The actual replacement value will be updated after defaults are loaded from config.yml |
374 | 374 | "XX-set-after-default-config-loaded-XX", |
375 | 375 | "3.0", |
376 | 376 | ), |
377 | 377 | }, |
378 | 378 | "api": { |
379 | 379 | "auth_backends": ( |
380 | | - re2.compile(r"^airflow\.api\.auth\.backend\.deny_all$|^$"), |
| 380 | + re.compile(r"^airflow\.api\.auth\.backend\.deny_all$|^$"), |
381 | 381 | "airflow.providers.fab.auth_manager.api.auth.backend.session", |
382 | 382 | "3.0", |
383 | 383 | ), |
384 | 384 | }, |
385 | 385 | "elasticsearch": { |
386 | 386 | "log_id_template": ( |
387 | | - re2.compile("^" + re2.escape("{dag_id}-{task_id}-{logical_date}-{try_number}") + "$"), |
| 387 | + re.compile("^" + re.escape("{dag_id}-{task_id}-{logical_date}-{try_number}") + "$"), |
388 | 388 | "{dag_id}-{task_id}-{run_id}-{map_index}-{try_number}", |
389 | 389 | "3.0", |
390 | 390 | ) |
@@ -725,7 +725,7 @@ def _upgrade_postgres_metastore_conn(self): |
725 | 725 | stacklevel=1, |
726 | 726 | ) |
727 | 727 | self.upgraded_values[(section, key)] = old_value |
728 | | - new_value = re2.sub("^" + re2.escape(f"{parsed.scheme}://"), f"{good_scheme}://", old_value) |
| 728 | + new_value = re.sub("^" + re.escape(f"{parsed.scheme}://"), f"{good_scheme}://", old_value) |
729 | 729 | self._update_env_var(section=section, name=key, new_value=new_value) |
730 | 730 |
|
731 | 731 | # if the old value is set via env var, we need to wipe it |
|
0 commit comments