This is an automated email from the ASF dual-hosted git repository.

vatsrahul1001 pushed a commit to branch v3-4-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 63f59d8b33362dbdfa0d646e8a7948b15d4f3b9f
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Oct 29 21:48:28 2026 +0530

    [v3-4-test] Remove unused milestone selection helpers (#75848) (#75925)
    
    (cherry picked from commit 0a07c9ac1f1a7123a0226f5d8bf050f76cb42efb)
    
    Co-authored-by: Hussein Awala <[email protected]>
---
 .../src/airflow_breeze/commands/ci_commands.py     | 39 ------------------
 dev/breeze/tests/test_set_milestone.py             | 48 ----------------------
 2 files changed, 87 deletions(-)

diff --git a/dev/breeze/src/airflow_breeze/commands/ci_commands.py 
b/dev/breeze/src/airflow_breeze/commands/ci_commands.py
index 583f999bc96..ff126c013a0 100644
--- a/dev/breeze/src/airflow_breeze/commands/ci_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/ci_commands.py
@@ -1306,45 +1306,6 @@ def _find_matching_milestone(repo: Repository, 
milestone_prefix: str) -> Milesto
         return None
 
 
-def _parse_milestone_version(title: str) -> tuple[int, int, int] | None:
-    """Parse version from milestone title like 'Airflow 3.1.8' or 'Airflow 
3.2'."""
-    if not title.startswith("Airflow "):
-        return None
-    version_part = title.replace("Airflow ", "")
-    parts = version_part.split(".")
-    if len(parts) < 2:
-        return None
-    try:
-        major = int(parts[0])
-        minor = int(parts[1])
-        patch = int(parts[2]) if len(parts) > 2 else 0
-        return major, minor, patch
-    except ValueError:
-        return None
-
-
-def _find_latest_milestone(repo: Repository) -> Milestone | None:
-    """Find the latest (highest version) open milestone."""
-    try:
-        milestones = list(repo.get_milestones(state="open"))
-        # Filter for Airflow milestones and parse versions
-        airflow_milestones: list[tuple[Milestone, tuple[int, int, int]]] = []
-        for m in milestones:
-            version = _parse_milestone_version(m.title)
-            if version:
-                airflow_milestones.append((m, version))
-
-        if not airflow_milestones:
-            return None
-
-        # Sort by version (major, minor, patch) descending to get the latest
-        airflow_milestones.sort(key=lambda x: x[1], reverse=True)
-        return airflow_milestones[0][0]
-    except Exception as e:
-        console_print(f"[error]Failed to get milestones: {e}[/]")
-        return None
-
-
 def _get_mention(merged_by_login: str) -> str:
     """Get the mention string for a user."""
     return f"@{merged_by_login}" if merged_by_login and merged_by_login != 
"unknown" else "maintainer"
diff --git a/dev/breeze/tests/test_set_milestone.py 
b/dev/breeze/tests/test_set_milestone.py
index 0c79fa5c934..e9c19bd66ca 100644
--- a/dev/breeze/tests/test_set_milestone.py
+++ b/dev/breeze/tests/test_set_milestone.py
@@ -25,7 +25,6 @@ import pytest
 
 from airflow_breeze.commands.ci_commands import (
     _determine_milestone_version,
-    _find_latest_milestone,
     _find_matching_milestone,
     _get_backport_version_from_labels,
     _get_mention,
@@ -34,7 +33,6 @@ from airflow_breeze.commands.ci_commands import (
     _get_milestone_prefix,
     _get_removed_backport_labels_from_events,
     _has_bug_fix_indicators,
-    _parse_milestone_version,
     _parse_version_from_backport_label,
     _parse_version_from_branch,
     _should_skip_milestone_tagging,
@@ -140,28 +138,6 @@ class TestGetMilestonePrefix:
         assert _get_milestone_prefix(major, minor) == expected
 
 
-class TestParseMilestoneVersion:
-    """Test cases for _parse_milestone_version."""
-
-    @pytest.mark.parametrize(
-        ("title", "expected"),
-        [
-            ("Airflow 3.1.8", (3, 1, 8)),
-            ("Airflow 3.2", (3, 2, 0)),
-            ("Airflow 2.10.5", (2, 10, 5)),
-        ],
-    )
-    def test_valid_milestone_version(self, title, expected):
-        assert _parse_milestone_version(title) == expected
-
-    @pytest.mark.parametrize(
-        "title",
-        ["Something else", "Airflow", "Airflow 3"],
-    )
-    def test_invalid_milestone_version(self, title):
-        assert _parse_milestone_version(title) is None
-
-
 class TestHasBugFixIndicators:
     """Test cases for _has_bug_fix_indicators."""
 
@@ -364,30 +340,6 @@ class TestFindMatchingMilestone:
         assert result is None
 
 
-class TestFindLatestMilestone:
-    """Test cases for _find_latest_milestone."""
-
-    def test_find_latest_milestone(self):
-        mock_repo = MagicMock()
-        mock_milestone1 = MagicMock()
-        mock_milestone1.title = "Airflow 3.1.8"
-        mock_milestone2 = MagicMock()
-        mock_milestone2.title = "Airflow 3.2"
-        mock_milestone3 = MagicMock()
-        mock_milestone3.title = "Airflow 2.10.5"
-        mock_repo.get_milestones.return_value = [mock_milestone1, 
mock_milestone2, mock_milestone3]
-
-        result = _find_latest_milestone(mock_repo)
-        assert result.title == "Airflow 3.2"  # Should get the highest version
-
-    def test_no_milestone_found(self):
-        mock_repo = MagicMock()
-        mock_repo.get_milestones.return_value = []
-
-        result = _find_latest_milestone(mock_repo)
-        assert result is None
-
-
 class TestSetMilestoneCommand:
     """Test cases for set_milestone command."""
 

Reply via email to