-
Notifications
You must be signed in to change notification settings - Fork 36
Closed
Labels
Description
python=3.14 was released on Oct 7, and our Server API tests for conda don't always specify the python version to be installed in an environment created by the mk_env function, beyond the constraint for ["python!=3.10"].
While astroid 4.0.0 was released a few days ago with support for python=3.14, this is not available in defaults channel, and while we do set the channel to conda-forge in the CI workflow, this channel priority does not apply to the conda_api.post call.
FAILED mamba_gator/tests/test_api.py::TestPackagesEnvironmentHandler::test_pkg_install_and_remove - requests.exceptions.HTTPError: 500 Server Error: Encountered problems while solving:
- package astroid-1.5.3-py27h8f8f47c_0 requires python >=2.7,<2.8.0a0, but none of the providers can be installed
Could not solve for environment specs
The following packages are incompatible
├─ astroid =* * is installable with the potential options
│ ├─ astroid [1.5.3|1.6.0|...|1.6.5] would require
│ │ └─ python >=2.7,<2.8.0a0 *, which can be installed;
│ ├─ astroid [1.5.3|1.6.0|...|2.0.4] would require
│ │ └─ python >=3.5,<3.6.0a0 *, which can be installed;
│ ├─ astroid [1.5.3|1.6.0|...|2.7.1] would require
│ │ └─ python >=3.6,<3.7.0a0 *, which can be installed;
│ ├─ astroid [1.6.5|2.0.2|...|2.9.0] would require
│ │ └─ python >=3.7,<3.8.0a0 *, which can be installed;
│ ├─ astroid [2.11.7|2.12.2|...|3.3.8] would require
│ │ └─ python >=3.10,<3.11.0a0 *, which can be installed;
│ ├─ astroid [2.11.7|2.12.2|...|3.2.4] would require
│ │ └─ python >=3.8,<3.9.0a0 *, which can be installed;
│ ├─ astroid [2.11.7|2.12.2|...|3.3.8] would require
│ │ └─ python >=3.9,<3.10.0a0 *, which can be installed;
│ ├─ astroid [2.13.3|2.14.2|...|3.3.8] would require
│ │ └─ python >=3.11,<3.12.0a0 *, which can be installed;
│ ├─ astroid [2.14.2|3.2.2|3.2.4|3.3.11|3.3.8] would require
│ │ └─ python >=3.12,<3.13.0a0 *, which can be installed;
│ └─ astroid [3.3.11|3.3.8] would require
│ └─ python >=3.13,<3.14.0a0 *, which can be installed;
└─ pin on python 3.14.* =* * is not installable because it requires
└─ python =3.14 *, which conflicts with any installable versions previously reported.
Pins seem to be involved in the conflict. Currently pinned specs:
- python=3.14
Full log
Run python -m pytest -ra mamba_gator
============================= test session starts ==============================
platform linux -- Python 3.9.13, pytest-8.4.2, pluggy-1.6.0
rootdir: /home/runner/work/gator/gator
configfile: pyproject.toml
plugins: asyncio-1.2.0, anyio-3.6.2
asyncio: mode=auto, debug=False, asyncio_default_fixture_loop_scope=function, asyncio_default_test_loop_scope=function
collected 59 items
mamba_gator/tests/test_actionsstack.py .... [ 6%]
mamba_gator/tests/test_api.py ..........................F.......... [ 69%]
mamba_gator/tests/test_manager.py .s............ [ 93%]
mamba_gator/tests/test_utils.py .... [100%]
=================================== FAILURES ===================================
__________ TestPackagesEnvironmentHandler.test_pkg_install_and_remove __________
self = <mamba_gator.tests.test_api.TestPackagesEnvironmentHandler testMethod=test_pkg_install_and_remove>
def test_pkg_install_and_remove(self):
n = generate_name()
self.wait_for_task(self.mk_env, n)
> r = self.wait_for_task(
self.conda_api.post,
["environments", n, "packages"],
body={"packages": [self.pkg_name]},
)
mamba_gator/tests/test_api.py:563:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mamba_gator/tests/test_api.py:45: in wait_for_task
return self.wait_task(location)
mamba_gator/tests/utils.py:211: in wait_task
response = self.conda_api.get([endpoint])
mamba_gator/tests/utils.py:81: in get
return self._req("GET", path, body, params)
mamba_gator/tests/utils.py:67: in _req
response.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <Response [500]>
def raise_for_status(self):
"""Raises :class:`HTTPError`, if one occurred."""
http_error_msg = ""
if isinstance(self.reason, bytes):
# We attempt to decode utf-8 first because some servers
# choose to localize their reason strings. If the string
# isn't utf-8, we fall back to iso-8859-1 for all other
# encodings. (See PR #3538)
try:
reason = self.reason.decode("utf-8")
except UnicodeDecodeError:
reason = self.reason.decode("iso-8859-1")
else:
reason = self.reason
if 400 <= self.status_code < 500:
http_error_msg = (
f"{self.status_code} Client Error: {reason} for url: {self.url}"
)
elif 500 <= self.status_code < 600:
http_error_msg = (
f"{self.status_code} Server Error: {reason} for url: {self.url}"
)
if http_error_msg:
> raise HTTPError(http_error_msg, response=self)
E requests.exceptions.HTTPError: 500 Server Error: Encountered problems while solving:
E - package astroid-1.5.3-py27h8f8f47c_0 requires python >=2.7,<2.8.0a0, but none of the providers can be installed
E
E Could not solve for environment specs
E The following packages are incompatible
E ├─ astroid =* * is installable with the potential options
E │ ├─ astroid [1.5.3|1.6.0|...|1.6.5] would require
E │ │ └─ python >=2.7,<2.8.0a0 *, which can be installed;
E │ ├─ astroid [1.5.3|1.6.0|...|2.0.4] would require
E │ │ └─ python >=3.5,<3.6.0a0 *, which can be installed;
E │ ├─ astroid [1.5.3|1.6.0|...|2.7.1] would require
E │ │ └─ python >=3.6,<3.7.0a0 *, which can be installed;
E │ ├─ astroid [1.6.5|2.0.2|...|2.9.0] would require
E │ │ └─ python >=3.7,<3.8.0a0 *, which can be installed;
E │ ├─ astroid [2.11.7|2.12.2|...|3.3.8] would require
E │ │ └─ python >=3.10,<3.11.0a0 *, which can be installed;
E │ ├─ astroid [2.11.7|2.12.2|...|3.2.4] would require
E │ │ └─ python >=3.8,<3.9.0a0 *, which can be installed;
E │ ├─ astroid [2.11.7|2.12.2|...|3.3.8] would require
E │ │ └─ python >=3.9,<3.10.0a0 *, which can be installed;
E │ ├─ astroid [2.13.3|2.14.2|...|3.3.8] would require
E │ │ └─ python >=3.11,<3.12.0a0 *, which can be installed;
E │ ├─ astroid [2.14.2|3.2.2|3.2.4|3.3.11|3.3.8] would require
E │ │ └─ python >=3.12,<3.13.0a0 *, which can be installed;
E │ └─ astroid [3.3.11|3.3.8] would require
E │ └─ python >=3.13,<3.14.0a0 *, which can be installed;
E └─ pin on python 3.14.* =* * is not installable because it requires
E └─ python =3.14 *, which conflicts with any installable versions previously reported.
E
E Pins seem to be involved in the conflict. Currently pinned specs:
E - python=3.14
E for url: http://localhost:12341/a%40b/conda/tasks/58
/usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/requests/models.py:1026: HTTPError
----------------------------- Captured stderr call -----------------------------
[Application.mamba_gator] ERROR | {
"Host": "localhost:12341",
"Accept": "*/*",
"User-Agent": "python-requests/2.32.5"
}
[Application.mamba_gator] ERROR | 500 GET /a%40b/conda/tasks/58 (8b135d1031c343e4a175d56c8394f09c@::1) 0.86ms referer=None
------------------------------ Captured log call -------------------------------
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
DEBUG ServerApp:identity.py:447 Accepting token-authenticated request from ::1
=============================== warnings summary ===============================
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/jupyter_client/connect.py:27
/usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/jupyter_client/connect.py:27: DeprecationWarning: Jupyter is migrating its paths to use standard platformdirs
given by the platformdirs library. To remove this warning and
see the appropriate new directories, set the environment variable
`JUPYTER_PLATFORM_DIRS=1` and then run `jupyter --paths`.
The use of platformdirs will be the default in `jupyter_core` v6
from jupyter_core.paths import jupyter_data_dir
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/pythonjsonlogger/jsonlogger.py:11
/usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/pythonjsonlogger/jsonlogger.py:11: DeprecationWarning: pythonjsonlogger.jsonlogger has been moved to pythonjsonlogger.json
warnings.warn(
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/jupyter_events/validators.py:4
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/jupyter_events/validators.py:4
/usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/jupyter_events/validators.py:4: DeprecationWarning: jsonschema.RefResolver is deprecated as of v4.18.0, in favor of the https://github.com/python-jsonschema/referencing library, which provides more compliant referencing behavior as well as more flexible APIs for customization. A future release will remove RefResolver. Please file a feature request (on referencing) if you are missing an API for the kind of customization you need.
from jsonschema import Draft7Validator, RefResolver, ValidationError
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/nbformat/json_compat.py:14
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/nbformat/json_compat.py:14
/usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/nbformat/json_compat.py:14: DeprecationWarning: Importing ErrorTree directly from the jsonschema package is deprecated and will become an ImportError. Import it from jsonschema.exceptions instead.
from jsonschema import ErrorTree, ValidationError
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/notebook/utils.py:280
../../../../../usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/notebook/utils.py:280
/usr/share/miniconda/envs/test_gator/lib/python3.9/site-packages/notebook/utils.py:280: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
return LooseVersion(v) >= LooseVersion(check)
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
SKIPPED [1] mamba_gator/tests/test_manager.py:17: Mamba NOT found
FAILED mamba_gator/tests/test_api.py::TestPackagesEnvironmentHandler::test_pkg_install_and_remove - requests.exceptions.HTTPError: 500 Server Error: Encountered problems while solving:
- package astroid-1.5.3-py27h8f8f47c_0 requires python >=2.7,<2.8.0a0, but none of the providers can be installed
Could not solve for environment specs
The following packages are incompatible
├─ astroid =* * is installable with the potential options
│ ├─ astroid [1.5.3|1.6.0|...|1.6.5] would require
│ │ └─ python >=2.7,<2.8.0a0 *, which can be installed;
│ ├─ astroid [1.5.3|1.6.0|...|2.0.4] would require
│ │ └─ python >=3.5,<3.6.0a0 *, which can be installed;
│ ├─ astroid [1.5.3|1.6.0|...|2.7.1] would require
│ │ └─ python >=3.6,<3.7.0a0 *, which can be installed;
│ ├─ astroid [1.6.5|2.0.2|...|2.9.0] would require
│ │ └─ python >=3.7,<3.8.0a0 *, which can be installed;
│ ├─ astroid [2.11.7|2.12.2|...|3.3.8] would require
│ │ └─ python >=3.10,<3.11.0a0 *, which can be installed;
│ ├─ astroid [2.11.7|2.12.2|...|3.2.4] would require
│ │ └─ python >=3.8,<3.9.0a0 *, which can be installed;
│ ├─ astroid [2.11.7|2.12.2|...|3.3.8] would require
│ │ └─ python >=3.9,<3.10.0a0 *, which can be installed;
│ ├─ astroid [2.13.3|2.14.2|...|3.3.8] would require
│ │ └─ python >=3.11,<3.12.0a0 *, which can be installed;
│ ├─ astroid [2.14.2|3.2.2|3.2.4|3.3.11|3.3.8] would require
│ │ └─ python >=3.12,<3.13.0a0 *, which can be installed;
│ └─ astroid [3.3.11|3.3.8] would require
│ └─ python >=3.13,<3.14.0a0 *, which can be installed;
└─ pin on python 3.14.* =* * is not installable because it requires
└─ python =3.14 *, which conflicts with any installable versions previously reported.
Pins seem to be involved in the conflict. Currently pinned specs:
- python=3.14
for url: http://localhost:12341/a%40b/conda/tasks/58
======= 1 failed, 57 passed, 1 skipped, 8 warnings in 890.18s (0:14:50) ========
Error: Process completed with exit code 1.