diff --git a/scripts/branching-urls/.gitignore b/scripts/branching-urls/.gitignore new file mode 100644 index 0000000000000..07df930ad7250 --- /dev/null +++ b/scripts/branching-urls/.gitignore @@ -0,0 +1 @@ +uv.lock diff --git a/scripts/branching-urls/a1-root-allowed/a/__init__.py b/scripts/branching-urls/a1-root-allowed/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a1-root-allowed/pyproject.toml b/scripts/branching-urls/a1-root-allowed/pyproject.toml new file mode 100644 index 0000000000000..cd3e3d2f55824 --- /dev/null +++ b/scripts/branching-urls/a1-root-allowed/pyproject.toml @@ -0,0 +1,14 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Valid, disjoint split + "iniconfig @ https://files.pythonhosted.org/packages/9b/dd/b3c12c6d707058fa947864b67f0c4e0c39ef8610988d7baea9578f3c48f3/iniconfig-1.1.1-py2.py3-none-any.whl ; python_version < '3.12'", + "iniconfig @ https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl ; python_version >= '3.12'", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a2-root-conflict/a/__init__.py b/scripts/branching-urls/a2-root-conflict/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a2-root-conflict/pyproject.toml b/scripts/branching-urls/a2-root-conflict/pyproject.toml new file mode 100644 index 0000000000000..357a9044927da --- /dev/null +++ b/scripts/branching-urls/a2-root-conflict/pyproject.toml @@ -0,0 +1,14 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Conflicting split + "iniconfig @ https://files.pythonhosted.org/packages/9b/dd/b3c12c6d707058fa947864b67f0c4e0c39ef8610988d7baea9578f3c48f3/iniconfig-1.1.1-py2.py3-none-any.whl ; python_version < '3.12'", + "iniconfig @ https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl ; python_version >= '3.11'", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a3-transitive-conflict/a/__init__.py b/scripts/branching-urls/a3-transitive-conflict/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a3-transitive-conflict/b/b/__init__.py b/scripts/branching-urls/a3-transitive-conflict/b/b/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a3-transitive-conflict/b/pyproject.toml b/scripts/branching-urls/a3-transitive-conflict/b/pyproject.toml new file mode 100644 index 0000000000000..2a4c7a0156126 --- /dev/null +++ b/scripts/branching-urls/a3-transitive-conflict/b/pyproject.toml @@ -0,0 +1,17 @@ +[project] +name = "b" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "b1", + "b2", +] +requires-python = ">=3.11,<3.13" + +[tool.uv.sources] +b1 = { path = "../b1" } +b2 = { path = "../b2" } + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a3-transitive-conflict/b1/b1/__init__.py b/scripts/branching-urls/a3-transitive-conflict/b1/b1/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a3-transitive-conflict/b1/pyproject.toml b/scripts/branching-urls/a3-transitive-conflict/b1/pyproject.toml new file mode 100644 index 0000000000000..b71f85a258246 --- /dev/null +++ b/scripts/branching-urls/a3-transitive-conflict/b1/pyproject.toml @@ -0,0 +1,12 @@ +[project] +name = "b1" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig @ https://files.pythonhosted.org/packages/9b/dd/b3c12c6d707058fa947864b67f0c4e0c39ef8610988d7baea9578f3c48f3/iniconfig-1.1.1-py2.py3-none-any.whl", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a3-transitive-conflict/b2/b2/__init__.py b/scripts/branching-urls/a3-transitive-conflict/b2/b2/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a3-transitive-conflict/b2/pyproject.toml b/scripts/branching-urls/a3-transitive-conflict/b2/pyproject.toml new file mode 100644 index 0000000000000..81b35c19b3b0c --- /dev/null +++ b/scripts/branching-urls/a3-transitive-conflict/b2/pyproject.toml @@ -0,0 +1,12 @@ +[project] +name = "b2" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig @ https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a3-transitive-conflict/pyproject.toml b/scripts/branching-urls/a3-transitive-conflict/pyproject.toml new file mode 100644 index 0000000000000..86f268f524dce --- /dev/null +++ b/scripts/branching-urls/a3-transitive-conflict/pyproject.toml @@ -0,0 +1,18 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Force a split + "anyio==4.3.0 ; python_version >= '3.12'", + "anyio==4.2.0 ; python_version < '3.12'", + "b" +] +requires-python = ">=3.11,<3.13" + +[tool.uv.sources] +b = { path = "b" } + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a4-transitive-allowed/a/__init__.py b/scripts/branching-urls/a4-transitive-allowed/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a4-transitive-allowed/b/b/__init__.py b/scripts/branching-urls/a4-transitive-allowed/b/b/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a4-transitive-allowed/b/pyproject.toml b/scripts/branching-urls/a4-transitive-allowed/b/pyproject.toml new file mode 100644 index 0000000000000..e71ecfc1f11d5 --- /dev/null +++ b/scripts/branching-urls/a4-transitive-allowed/b/pyproject.toml @@ -0,0 +1,18 @@ +[project] +name = "b" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Only one is used in each split. + "b1 ; python_version < '3.12'", + "b2 ; python_version >= '3.12'", +] +requires-python = ">=3.11,<3.13" + +[tool.uv.sources] +b1 = { path = "../b1" } +b2 = { path = "../b2" } + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a4-transitive-allowed/b1/b1/__init__.py b/scripts/branching-urls/a4-transitive-allowed/b1/b1/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a4-transitive-allowed/b1/pyproject.toml b/scripts/branching-urls/a4-transitive-allowed/b1/pyproject.toml new file mode 100644 index 0000000000000..b71f85a258246 --- /dev/null +++ b/scripts/branching-urls/a4-transitive-allowed/b1/pyproject.toml @@ -0,0 +1,12 @@ +[project] +name = "b1" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig @ https://files.pythonhosted.org/packages/9b/dd/b3c12c6d707058fa947864b67f0c4e0c39ef8610988d7baea9578f3c48f3/iniconfig-1.1.1-py2.py3-none-any.whl", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a4-transitive-allowed/b2/b2/__init__.py b/scripts/branching-urls/a4-transitive-allowed/b2/b2/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a4-transitive-allowed/b2/pyproject.toml b/scripts/branching-urls/a4-transitive-allowed/b2/pyproject.toml new file mode 100644 index 0000000000000..81b35c19b3b0c --- /dev/null +++ b/scripts/branching-urls/a4-transitive-allowed/b2/pyproject.toml @@ -0,0 +1,12 @@ +[project] +name = "b2" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig @ https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a4-transitive-allowed/pyproject.toml b/scripts/branching-urls/a4-transitive-allowed/pyproject.toml new file mode 100644 index 0000000000000..292c45916cecf --- /dev/null +++ b/scripts/branching-urls/a4-transitive-allowed/pyproject.toml @@ -0,0 +1,19 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Force a split + "anyio==4.3.0 ; python_version >= '3.12'", + "anyio==4.2.0 ; python_version < '3.12'", + # Include URLs transitively + "b" +] +requires-python = ">=3.11,<3.13" + +[tool.uv.sources] +b = { path = "b" } + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a5-fork-in-root/a/__init__.py b/scripts/branching-urls/a5-fork-in-root/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a5-fork-in-root/b1/b1/__init__.py b/scripts/branching-urls/a5-fork-in-root/b1/b1/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a5-fork-in-root/b1/pyproject.toml b/scripts/branching-urls/a5-fork-in-root/b1/pyproject.toml new file mode 100644 index 0000000000000..3c77e0c686751 --- /dev/null +++ b/scripts/branching-urls/a5-fork-in-root/b1/pyproject.toml @@ -0,0 +1,12 @@ +[project] +name = "b1" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig==1.1.1", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a5-fork-in-root/b2/b2/__init__.py b/scripts/branching-urls/a5-fork-in-root/b2/b2/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a5-fork-in-root/b2/pyproject.toml b/scripts/branching-urls/a5-fork-in-root/b2/pyproject.toml new file mode 100644 index 0000000000000..a9e183fe9b729 --- /dev/null +++ b/scripts/branching-urls/a5-fork-in-root/b2/pyproject.toml @@ -0,0 +1,12 @@ +[project] +name = "b2" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig==2.0.0", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a5-fork-in-root/pyproject.toml b/scripts/branching-urls/a5-fork-in-root/pyproject.toml new file mode 100644 index 0000000000000..bcbd2e9fee97e --- /dev/null +++ b/scripts/branching-urls/a5-fork-in-root/pyproject.toml @@ -0,0 +1,21 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Force a split + "anyio==4.3.0 ; python_version >= '3.12'", + "anyio==4.2.0 ; python_version < '3.12'", + # These two are currently included in both parts of the split. + "b1 ; python_version < '3.12'", + "b2 ; python_version >= '3.12'", +] +requires-python = ">=3.11,<3.13" + +[tool.uv.sources] +b1 = { path = "b1" } +b2 = { path = "b2" } + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a6-registry-and-direct-url-mixed/a/__init__.py b/scripts/branching-urls/a6-registry-and-direct-url-mixed/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a6-registry-and-direct-url-mixed/pyproject.toml b/scripts/branching-urls/a6-registry-and-direct-url-mixed/pyproject.toml new file mode 100644 index 0000000000000..94bb5b938b38e --- /dev/null +++ b/scripts/branching-urls/a6-registry-and-direct-url-mixed/pyproject.toml @@ -0,0 +1,13 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + "iniconfig == 1.1.1 ; python_version < '3.12'", + "iniconfig @ https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl ; python_version >= '3.12'", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a7-different-source-types-allowed/a/__init__.py b/scripts/branching-urls/a7-different-source-types-allowed/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a7-different-source-types-allowed/pyproject.toml b/scripts/branching-urls/a7-different-source-types-allowed/pyproject.toml new file mode 100644 index 0000000000000..145d80109728f --- /dev/null +++ b/scripts/branching-urls/a7-different-source-types-allowed/pyproject.toml @@ -0,0 +1,14 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Valid, disjoint split + "iniconfig @ https://files.pythonhosted.org/packages/9b/dd/b3c12c6d707058fa947864b67f0c4e0c39ef8610988d7baea9578f3c48f3/iniconfig-1.1.1-py2.py3-none-any.whl ; python_version < '3.12'", + "iniconfig @ git+https://github.com/pytest-dev/iniconfig@93f5930e668c0d1ddf4597e38dd0dea4e2665e7a ; python_version >= '3.12'", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi" diff --git a/scripts/branching-urls/a8-different-source-types-conflict/a/__init__.py b/scripts/branching-urls/a8-different-source-types-conflict/a/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/scripts/branching-urls/a8-different-source-types-conflict/pyproject.toml b/scripts/branching-urls/a8-different-source-types-conflict/pyproject.toml new file mode 100644 index 0000000000000..65974d45cfe56 --- /dev/null +++ b/scripts/branching-urls/a8-different-source-types-conflict/pyproject.toml @@ -0,0 +1,14 @@ +[project] +name = "a" +version = "0.1.0" +description = "Test package for direct URLs in branches" +dependencies = [ + # Conflicting split + "iniconfig @ https://files.pythonhosted.org/packages/9b/dd/b3c12c6d707058fa947864b67f0c4e0c39ef8610988d7baea9578f3c48f3/iniconfig-1.1.1-py2.py3-none-any.whl ; python_version < '3.12'", + "iniconfig @ git+https://github.com/pytest-dev/iniconfig@93f5930e668c0d1ddf4597e38dd0dea4e2665e7a ; python_version >= '3.11'", +] +requires-python = ">=3.11,<3.13" + +[build-system] +requires = ["flit_core>=3.8,<4"] +build-backend = "flit_core.buildapi"