diff --git a/requirements-offline.txt b/requirements-offline.txt index 22b64a6e..f96e7629 100644 --- a/requirements-offline.txt +++ b/requirements-offline.txt @@ -4,4 +4,4 @@ amulet-leveldb @ https://github.com/ReallocAll/endkeep/releases/download/amulet- amulet-leveldb @ https://github.com/ReallocAll/endkeep/releases/download/amulet-leveldb-3.0.7a0-compat-cp312-cp313/amulet_leveldb-3.0.7a0%2B0.g736228e.dirty-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl#sha256=718d5ff3887b4d848f811a49ab6a7fe3e0b1f863821029190714c4ea5362d9fc ; python_version == "3.13" and sys_platform == "linux" and platform_machine == "x86_64" amulet-leveldb @ https://github.com/ReallocAll/endkeep/releases/download/amulet-leveldb-3.0.7a0-compat-cp312-cp313/amulet_leveldb-3.0.7a0%2B0.g736228e.dirty-cp313-cp313-win_amd64.whl#sha256=28dc6037e3d16355a5120baba1ec61065d020f65500ca9de20d97deaaac0ab2f ; python_version == "3.13" and sys_platform == "win32" and platform_machine == "AMD64" zstandard>=0.23,<1 -tqdm>=4.70,<5 +tqdm>=4.70.1,<5 diff --git a/tests/test_offline_builder.py b/tests/test_offline_builder.py index a074542f..6ee1f126 100644 --- a/tests/test_offline_builder.py +++ b/tests/test_offline_builder.py @@ -8,6 +8,8 @@ from pathlib import Path import pytest +from packaging.requirements import Requirement +from packaging.version import Version from endstone_endkeep.offline.cli import _default_repository, _new_progress_bar, _progress_write, build_parser @@ -71,7 +73,14 @@ def test_cli_discovers_configured_repository(tmp_path: Path, monkeypatch: pytest def test_offline_requirements_preserve_tqdm() -> None: - assert "tqdm>=4.70,<5" in Path("requirements-offline.txt").read_text(encoding="utf-8") + lines = Path("requirements-offline.txt").read_text(encoding="utf-8").splitlines() + requirements = [Requirement(line) for line in lines if line.strip() and line.lstrip().startswith("tqdm")] + assert len(requirements) == 1 + + specifier = requirements[0].specifier + assert any(item.operator == ">=" and Version("4.70") <= Version(item.version) < Version("5") for item in specifier) + assert any(item.operator == "<" and Version(item.version) == Version("5") for item in specifier) + assert "5" not in specifier def test_offline_progress_uses_original_tqdm_behavior(monkeypatch: pytest.MonkeyPatch) -> None: