Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions airflow-core/src/airflow/logging/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
from __future__ import annotations
11 changes: 11 additions & 0 deletions airflow-core/tests/unit/logging/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Disable Flake8 because of all the sphinx imports
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
Expand All @@ -14,3 +16,12 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
"""Configuration of Providers docs building."""

from __future__ import annotations

import os

os.environ["AIRFLOW_PACKAGE_NAME"] = "apache-airflow-providers-ftp"

from docs.provider_conf import * # noqa: F403
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ from __future__ import annotations

import os

<<<<<<<< HEAD:dev/breeze/src/airflow_breeze/templates/conf_TEMPLATE.py.jinja2
os.environ["AIRFLOW_PACKAGE_NAME"] = "{{ PACKAGE_PIP_NAME }}"
========
os.environ["AIRFLOW_PACKAGE_NAME"] = "apache-airflow-providers-fab"
>>>>>>>> 28b9ce5f6a (Simplify tooling by switching completely to uv (#48223)):providers/fab/docs/conf.py

from docs.provider_conf import * # noqa: F403
49 changes: 49 additions & 0 deletions devel-common/src/tests_common/test_utils/markers.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
Expand All @@ -15,6 +16,7 @@
# specific language governing permissions and limitations
# under the License.

<<<<<<<< HEAD:devel-common/src/tests_common/test_utils/markers.py
from __future__ import annotations

import os
Expand All @@ -25,3 +27,50 @@
os.environ.get("FORCE_LOWEST_DEPENDENCIES", "") == "true",
reason="When lowest dependencies are set only some providers are loaded",
)
========
[build-system]
requires = [ "hatchling==1.27.0" ]
build-backend = "hatchling.build"

[project]
name = "apache-airflow-helm-tests"
description = "Helm tests for Apache Airflow"
classifiers = [
"Private :: Do Not Upload",
]
requires-python = "~=3.9,<3.13"
authors = [
{ name = "Apache Software Foundation", email = "dev@airflow.apache.org" },
]
maintainers = [
{ name = "Apache Software Foundation", email="dev@airflow.apache.org" },
]
version = "0.0.1"
dependencies = [
"apache-airflow-devel-common",
"apache-airflow-providers-cncf-kubernetes",
]

[tool.pytest.ini_options]
addopts = "-rasl --verbosity=2 -p no:flaky -p no:nose -p no:legacypath"
norecursedirs = [
".eggs",
]
log_level = "INFO"
filterwarnings = [
"error::pytest.PytestCollectionWarning",
]
python_files = [
"*.py",
]

# Keep temporary directories (created by `tmp_path`) for 2 recent runs only failed tests.
tmp_path_retention_count = "2"
tmp_path_retention_policy = "failed"

[tool.hatch.build.targets.sdist]
exclude = ["*"]

[tool.hatch.build.targets.wheel]
bypass-selection = true
>>>>>>>> 28b9ce5f6a (Simplify tooling by switching completely to uv (#48223)):helm-tests/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 436bccb81c04fab165991b54d9482ecb
tags: 645f666f9bcd5a90fca523b33c5a78b7
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
// @ts-check

// Extra JS capability for selected tabs to be synced
// The selection is stored in local storage so that it persists across page loads.

/**
* @type {Record<string, HTMLElement[]>}
*/
let sd_id_to_elements = {};
const storageKeyPrefix = "sphinx-design-tab-id-";

/**
* Create a key for a tab element.
* @param {HTMLElement} el - The tab element.
* @returns {[string, string, string] | null} - The key.
*
*/
function create_key(el) {
let syncId = el.getAttribute("data-sync-id");
let syncGroup = el.getAttribute("data-sync-group");
if (!syncId || !syncGroup) return null;
return [syncGroup, syncId, syncGroup + "--" + syncId];
}

/**
* Initialize the tab selection.
*
*/
function ready() {
// Find all tabs with sync data

/** @type {string[]} */
let groups = [];

document.querySelectorAll(".sd-tab-label").forEach((label) => {
if (label instanceof HTMLElement) {
let data = create_key(label);
if (data) {
let [group, id, key] = data;

// add click event listener
// @ts-ignore
label.onclick = onSDLabelClick;

// store map of key to elements
if (!sd_id_to_elements[key]) {
sd_id_to_elements[key] = [];
}
sd_id_to_elements[key].push(label);

if (groups.indexOf(group) === -1) {
groups.push(group);
// Check if a specific tab has been selected via URL parameter
const tabParam = new URLSearchParams(window.location.search).get(
group
);
if (tabParam) {
console.log(
"sphinx-design: Selecting tab id for group '" +
group +
"' from URL parameter: " +
tabParam
);
window.sessionStorage.setItem(storageKeyPrefix + group, tabParam);
}
}

// Check is a specific tab has been selected previously
let previousId = window.sessionStorage.getItem(
storageKeyPrefix + group
);
if (previousId === id) {
// console.log(
// "sphinx-design: Selecting tab from session storage: " + id
// );
// @ts-ignore
label.previousElementSibling.checked = true;
}
}
}
});
}

/**
* Activate other tabs with the same sync id.
*
* @this {HTMLElement} - The element that was clicked.
*/
function onSDLabelClick() {
let data = create_key(this);
if (!data) return;
let [group, id, key] = data;
for (const label of sd_id_to_elements[key]) {
if (label === this) continue;
// @ts-ignore
label.previousElementSibling.checked = true;
}
window.sessionStorage.setItem(storageKeyPrefix + group, id);
}

document.addEventListener("DOMContentLoaded", ready, false);

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Loading
Loading