potiuk commented on PR #45527:
URL: https://github.com/apache/airflow/pull/45527#issuecomment-2585704333
All problems solved. I also applied latest version of sphinx-theme limit and
compared produced .whl files for airflow and the differences are pretty much as
expected:
> diff ./old ./new -r
```diff
diff -r ./old/airflow/api/common/mark_tasks.py
./new/airflow/api/common/mark_tasks.py
413a414,417
>
> # Mark all task instances of the dag run to success - except for
teardown as they need to complete work.
> normal_tasks = [task for task in dag.tasks if not task.is_teardown]
>
415c419
< if commit:
---
> if commit and len(normal_tasks) == len(dag.tasks):
418,419c422
< # Mark all task instances of the dag run to success.
< for task in dag.tasks:
---
> for task in normal_tasks:
422c425
< tasks=dag.tasks,
---
> tasks=normal_tasks,
469,472d471
< # Mark the dag run to failed.
< if commit:
< _set_dag_run_state(dag.dag_id, run_id, DagRunState.FAILED, session)
<
481c480
< tis = session.scalars(
---
> running_tis: list[TaskInstance] = session.scalars(
488c487
< )
---
> ).all()
490c489,490
< task_ids_of_running_tis = [task_instance.task_id for task_instance in
tis]
---
> # Do not kill teardown tasks
> task_ids_of_running_tis = [ti.task_id for ti in running_tis if not
dag.task_dict[ti.task_id].is_teardown]
492c492
< tasks = []
---
> running_tasks = []
496c496
< tasks.append(task)
---
> running_tasks.append(task)
499c499
< tis = session.scalars(
---
> pending_tis: list[TaskInstance] = session.scalars(
512a513,515
> # Do not skip teardown tasks
> pending_normal_tis = [ti for ti in pending_tis if not
dag.task_dict[ti.task_id].is_teardown]
>
514c517
< for ti in tis:
---
> for ti in pending_normal_tis:
517,518c520,525
< return tis + set_state(
< tasks=tasks,
---
> # Mark the dag run to failed if there is no pending teardown (else
this would not be scheduled later).
> if not any(dag.task_dict[ti.task_id].is_teardown for ti in
(running_tis + pending_tis)):
> _set_dag_run_state(dag.dag_id, run_id, DagRunState.FAILED,
session)
>
> return pending_normal_tis + set_state(
> tasks=running_tasks,
diff -r ./old/airflow/api_connexion/openapi/v1.yaml
./new/airflow/api_connexion/openapi/v1.yaml
5735a5736
> format: path
diff -r ./old/airflow/cli/cli_config.py ./new/airflow/cli/cli_config.py
67c67
< """Override error and use print_instead of print_usage."""
---
> """Override error and use print_help instead of print_usage."""
diff -r ./old/airflow/datasets/metadata.py ./new/airflow/datasets/metadata.py
19a20
> import warnings
40a42,50
> if isinstance(target, str):
> warnings.warn(
> (
> "Accessing outlet_events using string is deprecated
and will be removed in Airflow 3. "
> "Please use the Dataset or DatasetAlias object
(renamed as Asset and AssetAlias in Airflow 3) directly"
> ),
> DeprecationWarning,
> stacklevel=2,
> )
45a56,63
> warnings.warn(
> (
> "Emitting dataset events using string is deprecated
and will be removed in Airflow 3. "
> "Please use the Dataset object (renamed as Asset in
Airflow 3) directly"
> ),
> DeprecationWarning,
> stacklevel=2,
> )
diff -r ./old/airflow/executors/executor_loader.py
./new/airflow/executors/executor_loader.py
340c340
< if engine.dialect.name == "sqlite":
---
> if engine and engine.dialect.name == "sqlite":
diff -r ./old/airflow/git_version ./new/airflow/git_version
1c1
< .release:c083e456fa02c6cb32cdbe0c9ed3c3b2380beccd
\ No newline at end of file
---
> .release:a9fe36219cd537af06708c9ed2efba86e3449f81
\ No newline at end of file
diff -r ./old/airflow/models/baseoperator.py
./new/airflow/models/baseoperator.py
968d967
< validate_key(task_id)
973a973,975
>
> validate_key(self.task_id)
>
diff -r ./old/airflow/models/mappedoperator.py
./new/airflow/models/mappedoperator.py
832a833,834
> op.downstream_task_ids = self.downstream_task_ids
> op.upstream_task_ids = self.upstream_task_ids
diff -r ./old/airflow/models/skipmixin.py ./new/airflow/models/skipmixin.py
164,165d163
< SkipMixin._set_state_to_skipped(dag_run, task_ids_list, session)
< session.commit()
166a165,169
> # The following could be applied only for non-mapped tasks
> if map_index == -1:
> SkipMixin._set_state_to_skipped(dag_run, task_ids_list,
session)
> session.commit()
>
179a183
> @staticmethod
181d184
< self,
diff -r ./old/airflow/models/taskinstance.py
./new/airflow/models/taskinstance.py
28a29
> import traceback
249c250
< TaskInstance.save_to_db(ti=ti, session=session)
---
> TaskInstance.save_to_db(ti=ti, session=session, refresh_dag=False)
1243c1244
< TaskInstance.save_to_db(failure_context["ti"], session)
---
> TaskInstance.save_to_db(task_instance, session)
3093a3095
> self.log.error("Stacktrace: \n%s",
"".join(traceback.format_stack()))
3396c3398,3402
< def save_to_db(ti: TaskInstance | TaskInstancePydantic, session:
Session = NEW_SESSION):
---
> def save_to_db(
> ti: TaskInstance | TaskInstancePydantic, session: Session =
NEW_SESSION, refresh_dag: bool = True
> ):
> if refresh_dag and isinstance(ti, TaskInstance):
> ti.get_dagrun().refresh_from_db()
diff -r ./old/airflow/providers_manager.py ./new/airflow/providers_manager.py
534d533
< @provider_info_cache("hook_lineage_writers")
diff -r ./old/airflow/reproducible_build.yaml
./new/airflow/reproducible_build.yaml
1,2c1,2
< release-notes-hash: 0867869dba7304e7ead28dd0800c5c4b
< source-date-epoch: 1733822937
---
> release-notes-hash: 7be47e2ddbbe1bfbd0d3f572d2b7800a
> source-date-epoch: 1736532824
diff -r ./old/airflow/sensors/base.py ./new/airflow/sensors/base.py
109c109,112
< TaskReschedule.try_number == try_number,
---
> # If the first try's record was not saved due to the Exception
occurred and the following
> # transaction rollback, the next available attempt should be
taken
> # to prevent falling in the endless rescheduling
> TaskReschedule.try_number >= try_number,
256c259
< # first execution of the task, or the first execution after
the task was cleared.)
---
> # first execution of the task, or the first execution after
the task was cleared).
diff -r ./old/airflow/ti_deps/deps/not_previously_skipped_dep.py
./new/airflow/ti_deps/deps/not_previously_skipped_dep.py
21a22
> from airflow.utils.db import LazySelectSequence
41d41
< SkipMixin,
52,55c52,54
< if isinstance(parent, SkipMixin):
< if parent.task_id not in finished_task_ids:
< # This can happen if the parent task has not yet run.
< continue
---
> if parent.task_id not in finished_task_ids:
> # This can happen if the parent task has not yet run.
> continue
57c56,58
< prev_result = ti.xcom_pull(task_ids=parent.task_id,
key=XCOM_SKIPMIXIN_KEY, session=session)
---
> prev_result = ti.xcom_pull(
> task_ids=parent.task_id, key=XCOM_SKIPMIXIN_KEY,
session=session, map_indexes=ti.map_index
> )
59,61c60,61
< if prev_result is None:
< # This can happen if the parent task has not yet run.
< continue
---
> if isinstance(prev_result, LazySelectSequence):
> prev_result = next(iter(prev_result))
63,75c63,65
< should_skip = False
< if (
< XCOM_SKIPMIXIN_FOLLOWED in prev_result
< and ti.task_id not in
prev_result[XCOM_SKIPMIXIN_FOLLOWED]
< ):
< # Skip any tasks that are not in "followed"
< should_skip = True
< elif (
< XCOM_SKIPMIXIN_SKIPPED in prev_result
< and ti.task_id in prev_result[XCOM_SKIPMIXIN_SKIPPED]
< ):
< # Skip any tasks that are in "skipped"
< should_skip = True
---
> if prev_result is None:
> # This can happen if the parent task has not yet run.
> continue
77,92c67,84
< if should_skip:
< # If the parent SkipMixin has run, and the XCom result
stored indicates this
< # ti should be skipped, set ti.state to SKIPPED and
fail the rule so that the
< # ti does not execute.
< if dep_context.wait_for_past_depends_before_skipping:
< past_depends_met = ti.xcom_pull(
< task_ids=ti.task_id, key=PAST_DEPENDS_MET,
session=session, default=False
< )
< if not past_depends_met:
< yield self._failing_status(
< reason=("Task should be skipped but the
past depends are not met")
< )
< return
< ti.set_state(TaskInstanceState.SKIPPED, session)
< yield self._failing_status(
< reason=f"Skipping because of previous XCom result
from parent task {parent.task_id}"
---
> should_skip = False
> if (
> XCOM_SKIPMIXIN_FOLLOWED in prev_result
> and ti.task_id not in prev_result[XCOM_SKIPMIXIN_FOLLOWED]
> ):
> # Skip any tasks that are not in "followed"
> should_skip = True
> elif XCOM_SKIPMIXIN_SKIPPED in prev_result and ti.task_id in
prev_result[XCOM_SKIPMIXIN_SKIPPED]:
> # Skip any tasks that are in "skipped"
> should_skip = True
>
> if should_skip:
> # If the parent SkipMixin has run, and the XCom result
stored indicates this
> # ti should be skipped, set ti.state to SKIPPED and fail
the rule so that the
> # ti does not execute.
> if dep_context.wait_for_past_depends_before_skipping:
> past_depends_met = ti.xcom_pull(
> task_ids=ti.task_id, key=PAST_DEPENDS_MET,
session=session, default=False
94c86,95
< return
---
> if not past_depends_met:
> yield self._failing_status(
> reason="Task should be skipped but the past
depends are not met"
> )
> return
> ti.set_state(TaskInstanceState.SKIPPED, session)
> yield self._failing_status(
> reason=f"Skipping because of previous XCom result from
parent task {parent.task_id}"
> )
> return
diff -r ./old/airflow/ti_deps/deps/trigger_rule_dep.py
./new/airflow/ti_deps/deps/trigger_rule_dep.py
29a30
> from airflow.utils.task_group import MappedTaskGroup
66,67c67
< :param ti: the ti that we want to calculate deps for
< :param finished_tis: all the finished tasks of the dag_run
---
> :param finished_upstreams: all the finished upstreams of the
dag_run
145a146,158
> def _iter_expansion_dependencies(task_group: MappedTaskGroup) ->
Iterator[str]:
> from airflow.models.mappedoperator import MappedOperator
>
> if isinstance(ti.task, MappedOperator):
> for op in ti.task.iter_mapped_dependencies():
> yield op.task_id
> if task_group and task_group.iter_mapped_task_groups():
> yield from (
> op.task_id
> for tg in task_group.iter_mapped_task_groups()
> for op in tg.iter_mapped_dependencies()
> )
>
158a172,178
> if isinstance(ti.task.task_group, MappedTaskGroup):
> is_fast_triggered = ti.task.trigger_rule in
(TR.ONE_SUCCESS, TR.ONE_FAILED, TR.ONE_DONE)
> if is_fast_triggered and upstream_id not in set(
>
_iter_expansion_dependencies(task_group=ti.task.task_group)
> ):
> return None
>
220c240
< yield (TaskInstance.task_id == upstream_id)
---
> yield TaskInstance.task_id == upstream_id
240c260
< Evaluate whether ``ti``'s trigger rule was met.
---
> Evaluate whether ``ti``'s trigger rule was met as part of the
setup constraint.
242,244c262
< :param ti: Task instance to evaluate the trigger rule of.
< :param dep_context: The current dependency context.
< :param session: Database session.
---
> :param relevant_setups: Relevant setups for the current task
instance.
330,336c348
< """
< Evaluate whether ``ti``'s trigger rule was met.
<
< :param ti: Task instance to evaluate the trigger rule of.
< :param dep_context: The current dependency context.
< :param session: Database session.
< """
---
> """Evaluate whether ``ti``'s trigger rule in direct relatives
was met."""
436c448
< reason=("Task should be skipped but the past
depends are not met")
---
> reason="Task should be skipped but the past
depends are not met"
diff -r ./old/airflow/utils/context.py ./new/airflow/utils/context.py
361a362
> "conf": [],
diff -r ./old/airflow/utils/sqlalchemy.py ./new/airflow/utils/sqlalchemy.py
112a113,114
> should_evaluate_none = True
>
Only in ./old/airflow/www/static/dist:
clusterActivity.2ecf4759427048c07368.js
Only in ./old/airflow/www/static/dist:
clusterActivity.2ecf4759427048c07368.js.LICENSE.txt
Only in ./new/airflow/www/static/dist:
clusterActivity.fff5d3527b4c5eedb340.js
Only in ./new/airflow/www/static/dist:
clusterActivity.fff5d3527b4c5eedb340.js.LICENSE.txt
Only in ./old/airflow/www/static/dist: dags.2b495ee52ff9e3b5160e.css
Only in ./old/airflow/www/static/dist: dags.2b495ee52ff9e3b5160e.js
Only in ./old/airflow/www/static/dist:
dags.2b495ee52ff9e3b5160e.js.LICENSE.txt
Only in ./new/airflow/www/static/dist: dags.4cb7043334f0e3173c4c.css
Only in ./new/airflow/www/static/dist: dags.4cb7043334f0e3173c4c.js
Only in ./new/airflow/www/static/dist:
dags.4cb7043334f0e3173c4c.js.LICENSE.txt
Only in ./new/airflow/www/static/dist: datasets.0bc892295c97e7bfe58d.js
Only in ./new/airflow/www/static/dist:
datasets.0bc892295c97e7bfe58d.js.LICENSE.txt
Only in ./old/airflow/www/static/dist: datasets.9af23983e71a1ebcbd80.js
Only in ./old/airflow/www/static/dist:
datasets.9af23983e71a1ebcbd80.js.LICENSE.txt
Only in ./old/airflow/www/static/dist: grid.70939cd423edfd7d6e08.js
Only in ./old/airflow/www/static/dist:
grid.70939cd423edfd7d6e08.js.LICENSE.txt
Only in ./new/airflow/www/static/dist: grid.9dfc288c631a1f964c7a.js
Only in ./new/airflow/www/static/dist:
grid.9dfc288c631a1f964c7a.js.LICENSE.txt
Only in ./old/airflow/www/static/dist: main.8461584ab30f513901c2.css
Only in ./old/airflow/www/static/dist: main.8461584ab30f513901c2.js
Only in ./old/airflow/www/static/dist:
main.8461584ab30f513901c2.js.LICENSE.txt
Only in ./new/airflow/www/static/dist: main.fb487bd34c7cd20f02bc.css
Only in ./new/airflow/www/static/dist: main.fb487bd34c7cd20f02bc.js
Only in ./new/airflow/www/static/dist:
main.fb487bd34c7cd20f02bc.js.LICENSE.txt
diff -r ./old/airflow/www/static/dist/manifest.json
./new/airflow/www/static/dist/manifest.json
9,10c9,10
< "dags.css": "dags.2b495ee52ff9e3b5160e.css",
< "dags.js": "dags.2b495ee52ff9e3b5160e.js",
---
> "dags.css": "dags.4cb7043334f0e3173c4c.css",
> "dags.js": "dags.4cb7043334f0e3173c4c.js",
17,18c17,18
< "main.css": "main.8461584ab30f513901c2.css",
< "main.js": "main.8461584ab30f513901c2.js",
---
> "main.css": "main.fb487bd34c7cd20f02bc.css",
> "main.js": "main.fb487bd34c7cd20f02bc.js",
25c25
< "taskInstances.js": "taskInstances.a65435400ad9c5e928c1.js",
---
> "taskInstances.js": "taskInstances.7a19b383b09d370fe8a0.js",
28,31c28,31
< "grid.js": "grid.70939cd423edfd7d6e08.js",
< "clusterActivity.js": "clusterActivity.2ecf4759427048c07368.js",
< "datasets.js": "datasets.9af23983e71a1ebcbd80.js",
< "trigger.js": "trigger.d972e04a6a32368ffc7e.js",
---
> "grid.js": "grid.9dfc288c631a1f964c7a.js",
> "clusterActivity.js": "clusterActivity.fff5d3527b4c5eedb340.js",
> "datasets.js": "datasets.0bc892295c97e7bfe58d.js",
> "trigger.js": "trigger.cef24b4966646f363d5a.js",
Only in ./new/airflow/www/static/dist: taskInstances.7a19b383b09d370fe8a0.js
Only in ./new/airflow/www/static/dist:
taskInstances.7a19b383b09d370fe8a0.js.LICENSE.txt
Only in ./old/airflow/www/static/dist: taskInstances.a65435400ad9c5e928c1.js
Only in ./old/airflow/www/static/dist:
taskInstances.a65435400ad9c5e928c1.js.LICENSE.txt
Only in ./new/airflow/www/static/dist: trigger.cef24b4966646f363d5a.js
Only in ./new/airflow/www/static/dist:
trigger.cef24b4966646f363d5a.js.LICENSE.txt
Only in ./old/airflow/www/static/dist: trigger.d972e04a6a32368ffc7e.js
Only in ./old/airflow/www/static/dist:
trigger.d972e04a6a32368ffc7e.js.LICENSE.txt
diff -r ./old/airflow/www/static/js/api/useTaskXcom.ts
./new/airflow/www/static/js/api/useTaskXcom.ts
60,67c60,69
< () =>
< axios.get<AxiosResponse, API.XCom>(
< getMetaValue("task_xcom_entry_api")
< .replace("_DAG_RUN_ID_", dagRunId)
< .replace("_TASK_ID_", taskId)
< .replace("_XCOM_KEY_", xcomKey),
< { params: { map_index: mapIndex, stringify: false } }
< ),
---
> () => {
> const taskXcomEntryApiUrl = getMetaValue("task_xcom_entry_api")
> .replace("_DAG_RUN_ID_", dagRunId)
> .replace("_TASK_ID_", taskId)
> .replace("_XCOM_KEY_", encodeURIComponent(xcomKey));
>
> return axios.get<AxiosResponse, API.XCom>(taskXcomEntryApiUrl, {
> params: { map_index: mapIndex, stringify: false },
> });
> },
diff -r ./old/airflow/www/static/js/dag/details/taskInstance/ExtraLinks.tsx
./new/airflow/www/static/js/dag/details/taskInstance/ExtraLinks.tsx
60,61c60,67
< const urlRegex = /^(https?:)/i;
< return urlRegex.test(url);
---
> const path = new URL(url, "http://localhost");
> // Allow Absolute/Relative URL and prevent javascript:() from
executing when passed as path.
> // Example - `javascript:alert("Hi");`. Protocol for absolute and
relative urls will either be `http:`/`https:`.
> // Where as for javascript it will be `javascript:`.
> if (path.protocol === "http:" || path.protocol === "https:") {
> return true; // Absolute/Relative URLs are allowed
> }
> return false;
diff -r ./old/airflow/www/static/js/main.js
./new/airflow/www/static/js/main.js
288a289,292
>
> // Turn off autocomplete for login form
> $("#username:input")[0].autocomplete = "off";
> $("#password:input")[0].autocomplete = "off";
diff -r ./old/airflow/www/static/js/trigger.js
./new/airflow/www/static/js/trigger.js
62,63d61
< } else if (elements[i].value.length === 0) {
< params[keyName] = null;
83a82,83
> } else if (elements[i].value.length === 0) {
> params[keyName] = null;
diff -r ./old/airflow/www/templates/airflow/trigger.html
./new/airflow/www/templates/airflow/trigger.html
123c123,125
< {{- form_details.value | tojson() -}}
---
> {%- if form_details.value %}
> {{- form_details.value | tojson() -}}
> {% endif -%}
diff -r ./old/airflow/www/views.py ./new/airflow/www/views.py
5358a5359
> "rendered_map_index",
diff -r ./old/airflow/www/yarn.lock ./new/airflow/www/yarn.lock
9021,9023c9021,9023
< version "3.3.7"
< resolved
"https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8"
< integrity
sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
---
> version "3.3.8"
> resolved
"https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.8.tgz#b1be3030bee36aaff18bacb375e5cce521684baf"
> integrity
sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==
diff -r ./old/apache_airflow-2.10.4.dist-info/METADATA
./new/apache_airflow-2.10.4.dist-info/METADATA
1c1
< Metadata-Version: 2.3
---
> Metadata-Version: 2.4
14c14,17
< Project-URL: Twitter, https://twitter.com/ApacheAirflow
---
> Project-URL: X, https://x.com/ApacheAirflow
> Project-URL: LinkedIn, https://www.linkedin.com/company/apache-airflow/
> Project-URL: Mastodon, https://fosstodon.org/@airflow
> Project-URL: Bluesky, https://bsky.app/profile/apache-airflow.bsky.social
17a21,39
> License-File: 3rd-party-licenses/LICENSE-bootstrap.txt
> License-File: 3rd-party-licenses/LICENSE-bootstrap3-typeahead.txt
> License-File: 3rd-party-licenses/LICENSE-d3-shape.txt
> License-File: 3rd-party-licenses/LICENSE-d3-tip.txt
> License-File: 3rd-party-licenses/LICENSE-d3js.txt
> License-File: 3rd-party-licenses/LICENSE-dagre-d3.txt
> License-File: 3rd-party-licenses/LICENSE-datatables.txt
> License-File: 3rd-party-licenses/LICENSE-elasticmock.txt
> License-File:
3rd-party-licenses/LICENSE-eonasdan-bootstrap-datetimepicker.txt
> License-File: 3rd-party-licenses/LICENSE-flask-kerberos.txt
> License-File: 3rd-party-licenses/LICENSE-hue.txt
> License-File: 3rd-party-licenses/LICENSE-jqclock.txt
> License-File: 3rd-party-licenses/LICENSE-jquery.txt
> License-File: 3rd-party-licenses/LICENSE-moment.txt
> License-File: 3rd-party-licenses/LICENSE-normalize.txt
> License-File: 3rd-party-licenses/LICENSE-pytest-capture-warnings.txt
> License-File: 3rd-party-licenses/LICENSE-reproducible.txt
> License-File: 3rd-party-licenses/LICENSES-ui.txt
> License-File: LICENSE
610c632
< Requires-Dist: sphinx-airflow-theme>=0.0.12; extra == 'devel-ci'
---
> Requires-Dist: sphinx-airflow-theme>=0.0.12,<0.1.0; extra == 'devel-ci'
diff -r ./old/apache_airflow-2.10.4.dist-info/RECORD
./new/apache_airflow-2.10.4.dist-info/RECORD
8c8
< airflow/git_version,sha256=6E3ZBkweW8VFYORN0DNUo8SZM3cAFT0_U0GDmbh1IqE,49
---
> airflow/git_version,sha256=rEn9yIg5n9gUvutSQdG_ngYFd65U0CLp7im84nC_Myo,49
14c14
<
airflow/providers_manager.py,sha256=YOfMooQ4scNetaIF0QjutJF8E-hUnRIazU4EGalU9G4,60758
---
>
airflow/providers_manager.py,sha256=MvLoakmAbgmrx1uhd-6FFwgW3HCVzDHRrPeakyp4aCU,60709
16c16
<
airflow/reproducible_build.yaml,sha256=ZRd7HP66q8TdyVowicdDmugQlzopFTwZcRCYc6m_RdY,83
---
>
airflow/reproducible_build.yaml,sha256=x1Y9ilxTlN-x0qa3BFSKRVoTPjL9N7U5rOgykhIDjY4,83
41c41
<
airflow/api/common/mark_tasks.py,sha256=SWbzRsKPbt7GUjz1Gcy3bbSTgSfSBjEzRMNyfdDhjlQ,21676
---
>
airflow/api/common/mark_tasks.py,sha256=fnk9ufUA6Z8Dh-o_-CuipyD3q18wKKAg8l8Pb0UpLgA,22322
85c85
<
airflow/api_connexion/openapi/v1.yaml,sha256=9VycODYcWWFeIxs7ORfgoUwbRHZfT63nPruAalePP0I,185018
---
>
airflow/api_connexion/openapi/v1.yaml,sha256=jNu8ahNGZQ3Qcpy2gykobmLC2oqUb-Ks0dKt5abMv1Q,185039
145c145
<
airflow/cli/cli_config.py,sha256=GZr5cRH2QriI6igFDDqcPFCtSVyc5MbMukSO2D1arzU,74368
---
>
airflow/cli/cli_config.py,sha256=dgktdDrK6ZKOSYxp-7P-KveRlstElP1ffJmeIKJIRF0,74373
198c198
<
airflow/datasets/metadata.py,sha256=yUj3_yKabKrthkRA35oQHlmQk0Of0HdELY3jpFkBWrE,1503
---
>
airflow/datasets/metadata.py,sha256=rWgsJn1m6AGE9K1fgEUWt1CBe5gPsSa90cHyYK3S0Gk,2276
282c282
<
airflow/executors/executor_loader.py,sha256=YrbbpCMPOdzc6cNCxWS_3CD1YlZzsmCEPI7KFBZJBKw,15858
---
>
airflow/executors/executor_loader.py,sha256=ZjuG9Gt5kXGSu1C7wuDEChjx5baPG_j6rvt2ew6pQNA,15869
497c497
<
airflow/models/baseoperator.py,sha256=MRHmOJYNOFFQrvRxMwSPclXEiOLhgKco6bLBSHLvXRA,84364
---
>
airflow/models/baseoperator.py,sha256=oJTH5qcr1BsqxzbXjGyQQhT8eJeobh5iZrTlCM98k4c,84371
513c513
<
airflow/models/mappedoperator.py,sha256=qUjnblFhnJkDDUJ6TCGVGAIRy_TvTb-b7peeylEE6TU,36299
---
>
airflow/models/mappedoperator.py,sha256=XWQM-eLsm-NLC1yC9vcaJY0NwY-8CY72ounznSRXPbA,36419
519c519
<
airflow/models/skipmixin.py,sha256=rg0ME6-44vZabNCroMY5NfxKVyIVOIbhbWgYgIMlIu4,11195
---
>
airflow/models/skipmixin.py,sha256=e9mSCLo5tCJRwKr9Qhi0tdek-0hFsr3PoeIougauHnU,11303
522c522
<
airflow/models/taskinstance.py,sha256=wS61gKGC15ybUAUaBHkgBeag3Nfoq9X14CXNAcqTfVM,164929
---
>
airflow/models/taskinstance.py,sha256=ZanEQ7x-bTR2bs60LzYEJWgmNhdbL69wZnEv3jfUkp8,165182
561c561
<
airflow/sensors/base.py,sha256=YjzOnEWNiPIkFpecL33Hq_B8B3SBpwxuGtpztb6vVpM,19422
---
>
airflow/sensors/base.py,sha256=6OKk8O9P3G2eevTESzErCHqGOP8KGfGF5POM6UgudVc,19664
618c618
<
airflow/ti_deps/deps/not_previously_skipped_dep.py,sha256=naCUyduB7LovCt8KaM2xv2cOeztzvzSOnGXZKI6nj60,3905
---
>
airflow/ti_deps/deps/not_previously_skipped_dep.py,sha256=rczgk5AvMDX9Hmq2nKu5tLa4Zjj43xVMX-8wKz0z2wE,3853
625c625
<
airflow/ti_deps/deps/trigger_rule_dep.py,sha256=wN_QwBATJFoJbGWxEKhWprU-VdLhmwUIE6erIFmEuRA,27306
---
>
airflow/ti_deps/deps/trigger_rule_dep.py,sha256=4fNNN3lW86tLqvGD22B0CxPNHw33xmjAkgZInZQUcsU,28001
652c652
<
airflow/utils/context.py,sha256=YWHQchFhHxJe5Qi8tXzdlM5c94q04c9AGAErmE2gSmo,16795
---
>
airflow/utils/context.py,sha256=v59xFD7N1QQiV52SoPmTLkMmR1_sJhj-5fb2rZEG8Y4,16815
693c693
<
airflow/utils/sqlalchemy.py,sha256=VSjv1HclQSsC5oajvBMVJ95hqkWVIzXvOkKoPu-H-XQ,18499
---
>
airflow/utils/sqlalchemy.py,sha256=BvF8UWAYTe3ZdUmBouXrMZ8IRBNeaD5sDFdtEFDvDOg,18532
749c749
<
airflow/www/views.py,sha256=psdMP4jCt7VAipAP6DdAvhkdbybUCR89ZlGc0Q-FcvM,226234
---
>
airflow/www/views.py,sha256=3Vuikb3pvD8R_xURIqcmxNGhpZHcD_F70ILGt_dVCFk,226264
752c752
<
airflow/www/yarn.lock,sha256=xqaLeeDPyrio6vkva3mejgYeIEYUE8fLAm5j1QrfZDY,558144
---
>
airflow/www/yarn.lock,sha256=tre3GeiFoWlf-eBw91q3cjwG465l5TXnzcVezBlIrB4,558144
801,802c801,802
<
airflow/www/static/dist/clusterActivity.2ecf4759427048c07368.js,sha256=Y1qL_8VihWr3X0H97W8Mye1oNa-_JmE5lCjdlpZKVMY,2998266
<
airflow/www/static/dist/clusterActivity.2ecf4759427048c07368.js.LICENSE.txt,sha256=8IF0e7cOf2GdyUFCB0faQVO0wWE3K69GmL9yWX_ouLw,3335
---
>
airflow/www/static/dist/clusterActivity.fff5d3527b4c5eedb340.js,sha256=j1FzBv7oRMbZ4rYil1m1vLjo2tT6D-jYwk2r7Zi7Tn4,2998266
>
airflow/www/static/dist/clusterActivity.fff5d3527b4c5eedb340.js.LICENSE.txt,sha256=8IF0e7cOf2GdyUFCB0faQVO0wWE3K69GmL9yWX_ouLw,3335
822,826c822,826
<
airflow/www/static/dist/dags.2b495ee52ff9e3b5160e.css,sha256=K0nVsWcO_k4EvzAkoH6KBbouNA6_wymJXYhMdwQSSU0,2728
<
airflow/www/static/dist/dags.2b495ee52ff9e3b5160e.js,sha256=INoxfCJ-XrElFrn9EuKJ9wDKWNa_F21xzCoU0JaC8oA,94990
<
airflow/www/static/dist/dags.2b495ee52ff9e3b5160e.js.LICENSE.txt,sha256=AXbnnahJ1YVvF7cQaDFWtahoDOz70YRel1q39jKviR8,1384
<
airflow/www/static/dist/datasets.9af23983e71a1ebcbd80.js,sha256=mOWNxUu98wL-ZbOzbgIWDiFDMlkaxC6HEPW-6hsPkBg,2508113
<
airflow/www/static/dist/datasets.9af23983e71a1ebcbd80.js.LICENSE.txt,sha256=SmF_cYmqkr47iujpTjFXSkaqdVDp9pTuQDbPN-GKUZc,4280
---
>
airflow/www/static/dist/dags.4cb7043334f0e3173c4c.css,sha256=K0nVsWcO_k4EvzAkoH6KBbouNA6_wymJXYhMdwQSSU0,2728
>
airflow/www/static/dist/dags.4cb7043334f0e3173c4c.js,sha256=ocPyMPpTONv5Jm0WCW_CXt3ZwQhnSOR9131N33XLEtg,95076
>
airflow/www/static/dist/dags.4cb7043334f0e3173c4c.js.LICENSE.txt,sha256=AXbnnahJ1YVvF7cQaDFWtahoDOz70YRel1q39jKviR8,1384
>
airflow/www/static/dist/datasets.0bc892295c97e7bfe58d.js,sha256=g-qNenzwqj9S0s49SkrH9r4-4wl3HXYUxvYgiiefN-A,2508113
>
airflow/www/static/dist/datasets.0bc892295c97e7bfe58d.js.LICENSE.txt,sha256=SmF_cYmqkr47iujpTjFXSkaqdVDp9pTuQDbPN-GKUZc,4280
831,832c831,832
<
airflow/www/static/dist/grid.70939cd423edfd7d6e08.js,sha256=S_M57tluGp6L_9QDNwR78XCXNss_-eD1gJ2tPGYDEb8,3967483
<
airflow/www/static/dist/grid.70939cd423edfd7d6e08.js.LICENSE.txt,sha256=sQtXf7GfCo89PP-yECRigR0zh4q51Ul0rglmaW4nDqs,5245
---
>
airflow/www/static/dist/grid.9dfc288c631a1f964c7a.js,sha256=hT5Qwi8bzeMUKcuOKpdLHYVA9MUloqLficGjzpeGiwg,3967582
>
airflow/www/static/dist/grid.9dfc288c631a1f964c7a.js.LICENSE.txt,sha256=sQtXf7GfCo89PP-yECRigR0zh4q51Ul0rglmaW4nDqs,5245
843,846c843,846
<
airflow/www/static/dist/main.8461584ab30f513901c2.css,sha256=oXiTMwdpRp556KBwH0NCOO_L5H4OIt5EapaujfpXqws,7304
<
airflow/www/static/dist/main.8461584ab30f513901c2.js,sha256=Jtgg3qTAAwOpG-EbaDVeqJL2bZIjA-uDF0ZAg4yhq_M,5366
<
airflow/www/static/dist/main.8461584ab30f513901c2.js.LICENSE.txt,sha256=FX9Q5lmXWsdQeuAN5eIQlag1BKUFTx3rpUftXrj5Et4,809
<
airflow/www/static/dist/manifest.json,sha256=PF2FtfzT9gRPoEwpqdOW_BXmTgUDGjb5vlwtVg3bljI,4419
---
>
airflow/www/static/dist/main.fb487bd34c7cd20f02bc.css,sha256=oXiTMwdpRp556KBwH0NCOO_L5H4OIt5EapaujfpXqws,7304
>
airflow/www/static/dist/main.fb487bd34c7cd20f02bc.js,sha256=ZjQdt94DGbnkMxJ-EssgDrlNe3KC0SORzgagX85uoVs,5452
>
airflow/www/static/dist/main.fb487bd34c7cd20f02bc.js.LICENSE.txt,sha256=FX9Q5lmXWsdQeuAN5eIQlag1BKUFTx3rpUftXrj5Et4,809
>
airflow/www/static/dist/manifest.json,sha256=NLyXgQkYDEKMEH8xezZTiFF6w6hMmoFD0s6RBmgMarw,4419
859,860c859,860
<
airflow/www/static/dist/taskInstances.a65435400ad9c5e928c1.js,sha256=iM6DYjtsw9vuqc28swtZSJgwn_6zigt1kSLz1j0SSm8,86420
<
airflow/www/static/dist/taskInstances.a65435400ad9c5e928c1.js.LICENSE.txt,sha256=AXbnnahJ1YVvF7cQaDFWtahoDOz70YRel1q39jKviR8,1384
---
>
airflow/www/static/dist/taskInstances.7a19b383b09d370fe8a0.js,sha256=OdY9NgfXl7nVrAwvcjMlqHnXF2xMotXhiJTOP8aybUU,86506
>
airflow/www/static/dist/taskInstances.7a19b383b09d370fe8a0.js.LICENSE.txt,sha256=AXbnnahJ1YVvF7cQaDFWtahoDOz70YRel1q39jKviR8,1384
865,866c865,866
<
airflow/www/static/dist/trigger.d972e04a6a32368ffc7e.js,sha256=wvnRSPCc-YLqqcq4lN6xfyC9D8LguDzxd6MDy4RGjAs,4215
<
airflow/www/static/dist/trigger.d972e04a6a32368ffc7e.js.LICENSE.txt,sha256=FX9Q5lmXWsdQeuAN5eIQlag1BKUFTx3rpUftXrj5Et4,809
---
>
airflow/www/static/dist/trigger.cef24b4966646f363d5a.js,sha256=am6cJ3g7X95X5ePUM4tEkdie7fnUdHR1XCKh9Vo2HDo,4207
>
airflow/www/static/dist/trigger.cef24b4966646f363d5a.js.LICENSE.txt,sha256=FX9Q5lmXWsdQeuAN5eIQlag1BKUFTx3rpUftXrj5Et4,809
908c908
<
airflow/www/static/js/main.js,sha256=Q2sJr4Hm8p0kmJXRx2yeprSb92Q0tt5TSQvTnJyWpEI,7953
---
>
airflow/www/static/js/main.js,sha256=QhBmPQb391AItfUnuPVVv0NTZ_09AGTRH-kBsKsPInQ,8092
914c914
<
airflow/www/static/js/trigger.js,sha256=mtoIGCTm5t5DOkrS1wYMfRhf4Sk_jlbFGlz_b2jECjQ,9730
---
>
airflow/www/static/js/trigger.js,sha256=GPz9Me2-MpFdriQ7-BOaHhky7c4K_dBiSdcc6rumhHI,9730
955c955
<
airflow/www/static/js/api/useTaskXcom.ts,sha256=TEhpgznfJpjsGX2mhYXwq1zbc7hNatu552-R3ijcVBE,2270
---
>
airflow/www/static/js/api/useTaskXcom.ts,sha256=UHwS1RUmrdO4YvZFlciZhovbbn76ABfkXRYag4Gbq20,2347
1055c1055
<
airflow/www/static/js/dag/details/taskInstance/ExtraLinks.tsx,sha256=GMha9M50_25hpOsOrIChwd2Hmy1HLhKmuvn2up3bWME,2256
---
>
airflow/www/static/js/dag/details/taskInstance/ExtraLinks.tsx,sha256=jtmJ_8CWZjMdbHnoZ2ThHOkY_JGmPyDjuGP_kzvqMYM,2659
1142c1142
<
airflow/www/templates/airflow/trigger.html,sha256=zM9o5RMnv-L5f6B7-Kqca_nKFVC08wo1pMb_T3fPB0Q,17073
---
>
airflow/www/templates/airflow/trigger.html,sha256=bOntLWS6Itsx27H9NNKT4IUwxQPNih2W6aRcYYemgQE,17133
1161,1162c1161,1162
<
apache_airflow-2.10.4.dist-info/METADATA,sha256=eu4fno5zrcRyup713uEJ0ykjC9UHcRiY1QDuFAX1ANM,43527
<
apache_airflow-2.10.4.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
---
>
apache_airflow-2.10.4.dist-info/METADATA,sha256=vMGaVysA0MXf5ftvq2Qt72rDbBqm73bpDBPVGWgbc90,44764
>
apache_airflow-2.10.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
diff -r ./old/apache_airflow-2.10.4.dist-info/WHEEL
./new/apache_airflow-2.10.4.dist-info/WHEEL
2c2
< Generator: hatchling 1.26.3
---
> Generator: hatchling 1.27.0
```
--
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]