Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove mentions to 'experimental' features #53

Merged
merged 12 commits into from
Oct 19, 2022
Merged

Conversation

jaimergp
Copy link
Contributor

@jaimergp jaimergp commented Oct 7, 2022

The other half for conda/conda#11889

Temporarily depending on that PR source for our tests, but needs revert before merge!

Copy link
Member

@jezdez jezdez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This LGTM!

tests/test_experimental.py Outdated Show resolved Hide resolved
conda_libmamba_solver/solver.py Outdated Show resolved Hide resolved
@jaimergp
Copy link
Contributor Author

Can't reproduce the error locally for tests/test_create.py::IntegrationTests::test_clone_offline_multichannel_with_untracked. Intriguing because this tests conda create --clone, which does NOT use a solver at all?

I guess it's one more of those issues where several tests affect each other? :(

Full traceback and logs
_______ IntegrationTests.test_clone_offline_multichannel_with_untracked ________
Traceback (most recent call last):
  File "/opt/conda-src/tests/test_create.py", line 1122, in test_clone_offline_multichannel_with_untracked
    with make_temp_env("--clone", prefix, "--offline") as clone_prefix:
  File "/opt/conda/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/conda-src/conda/testing/integration.py", line 326, in make_temp_env
    run_command(Commands.CREATE, prefix, *packages, **kwargs)
  File "/opt/conda-src/conda/testing/integration.py", line 287, in run_command
    result = do_call(args, p)
  File "/opt/conda-src/conda/cli/conda_argparse.py", line 94, in do_call
    return getattr(module, func_name)(args, parser)
  File "/opt/conda-src/conda/notices/core.py", line 109, in wrapper
    return func(*args, **kwargs)
  File "/opt/conda-src/conda/cli/main_create.py", line 41, in execute
    install(args, parser, 'create')
  File "/opt/conda-src/conda/cli/install.py", line 219, in install
    clone(args.clone, prefix, json=context.json, quiet=context.quiet, index_args=index_args)
  File "/opt/conda-src/conda/cli/install.py", line 73, in clone
    index_args=index_args)
  File "/opt/conda-src/conda/misc.py", line 334, in clone_env
    urls, prefix2, verbose=not quiet, index=index, force_extract=False, index_args=index_args
  File "/opt/conda-src/conda/misc.py", line 92, in explicit
    pfe.execute()
  File "/opt/conda-src/conda/core/package_cache_data.py", line 763, in execute
    prec_or_spec = completed_future.result()
  File "/opt/conda/lib/python3.7/concurrent/futures/_base.py", line 428, in result
    return self.__get_result()
  File "/opt/conda/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
  File "/opt/conda-src/conda/core/package_cache_data.py", line 885, in done_callback
    future.result()
  File "/opt/conda/lib/python3.7/concurrent/futures/_base.py", line 428, in result
    return self.__get_result()
  File "/opt/conda/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
  File "/opt/conda/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/conda-src/conda/core/package_cache_data.py", line 846, in do_cache_action
    cache_action.execute(progress_update_cache_action)
  File "/opt/conda-src/conda/core/path_actions.py", line 1276, in execute
    self._execute_channel(target_package_cache, progress_update_callback)
  File "/opt/conda-src/conda/core/path_actions.py", line 1337, in _execute_channel
    **kwargs
  File "/opt/conda-src/conda/common/io.py", line 84, in decorated
    return f(*args, **kwds)
  File "/opt/conda-src/conda/gateways/connection/download.py", line 48, in download
    resp = session.get(url, stream=True, proxies=session.proxies, timeout=timeout)
  File "/opt/conda/lib/python3.7/site-packages/requests/sessions.py", line 600, in get
    return self.request("GET", url, **kwargs)
  File "/opt/conda/lib/python3.7/site-packages/requests/sessions.py", line 587, in request
    resp = self.send(prep, **send_kwargs)
  File "/opt/conda/lib/python3.7/site-packages/requests/sessions.py", line 701, in send
    r = adapter.send(request, **kwargs)
  File "/opt/conda-src/conda/gateways/connection/session.py", line 39, in send
    raise RuntimeError(message)
RuntimeError: EnforceUnusedAdapter called with url https://repo.anaconda.com/pkgs/free/linux-64/setuptools-36.4.0-py36_1.tar.bz2
This command is using a remote connection in offline mode.

----------------------------- Captured stdout call -----------------------------

WARNING :: You are testing `conda` with `tmpdir`:-
           /tmp
           not on the same FS as `sys.prefix`:
           /opt/conda
           this will be slow and unlike the majority of end-user installs.
           Please pass `--basetemp=<somewhere-else>` instead.
Collect all metadata (repodata.json): ...working... done
Solving environment: ...working... done

## Package Plan ##

  environment location: /tmp/f632 baefcd

  added / updated specs:
    - python=3.7


The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main 
  _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-5.1-1_gnu 
  ca-certificates    pkgs/main/linux-64::ca-certificates-2022.07.19-h06a[430](https://github.com/conda-incubator/conda-libmamba-solver/actions/runs/3228412794/jobs/5284474856#step:5:431)8_0 
  certifi            pkgs/main/linux-64::certifi-2022.9.24-py37h06a4308_0 
  ld_impl_linux-64   pkgs/main/linux-64::ld_impl_linux-64-2.38-h1181459_1 
  libffi             pkgs/main/linux-64::libffi-3.3-he6710b0_2 
  libgcc-ng          pkgs/main/linux-64::libgcc-ng-11.2.0-h1234567_1 
  libgomp            pkgs/main/linux-64::libgomp-11.2.0-h1234567_1 
  libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-11.2.0-h1234567_1 
  ncurses            pkgs/main/linux-64::ncurses-6.3-h5eee18b_3 
  openssl            pkgs/main/linux-64::openssl-1.1.1q-h7f8727e_0 
  pip                pkgs/main/linux-64::pip-22.2.2-py37h06a4308_0 
  python             pkgs/main/linux-64::python-3.7.13-h12debd9_0 
  readline           pkgs/main/linux-64::readline-8.1.2-h7f8727e_1 
  setuptools         pkgs/main/linux-64::setuptools-63.4.1-py37h06a4308_0 
  sqlite             pkgs/main/linux-64::sqlite-3.39.3-h5082296_0 
  tk                 pkgs/main/linux-64::tk-8.6.12-h1ccaba5_0 
  wheel              pkgs/main/noarch::wheel-0.37.1-pyhd3eb1b0_0 
  xz                 pkgs/main/linux-64::xz-5.2.6-h5eee18b_0 
  zlib               pkgs/main/linux-64::zlib-1.2.12-h5eee18b_3 


Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done



Collect all metadata (repodata.json): ...working... done
Solving environment: ...working... done

## Package Plan ##

  environment location: /tmp/f632 baefcd

  added / updated specs:
    - flask
    - python=3.6


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    certifi-2016.2.28          |           py36_0         216 KB  https://repo.anaconda.com/pkgs/free
    click-6.7                  |           py36_0         105 KB  https://repo.anaconda.com/pkgs/free
    flask-0.11.1               |             py_0          57 KB  conda-test
    itsdangerous-0.24          |             py_0          14 KB  conda-test
    jinja2-2.9.6               |           py36_0         387 KB  https://repo.anaconda.com/pkgs/free
    markupsafe-1.0             |           py36_0          31 KB  https://repo.anaconda.com/pkgs/free
    pip-9.0.1                  |           py36_1         1.7 MB  https://repo.anaconda.com/pkgs/free
    python-3.6.13              |       h12debd9_1        32.5 MB
    setuptools-36.4.0          |           py36_1         563 KB  https://repo.anaconda.com/pkgs/free
    werkzeug-0.12.2            |           py36_0         [437](https://github.com/conda-incubator/conda-libmamba-solver/actions/runs/3228412794/jobs/5284474856#step:5:438) KB  https://repo.anaconda.com/pkgs/free
    ------------------------------------------------------------
                                           Total:        35.9 MB

The following NEW packages will be INSTALLED:

  click              pkgs/free/::click-6.7-py36_0 
  flask              conda-test/noarch::flask-0.11.1-py_0 
  itsdangerous       conda-test/noarch::itsdangerous-0.24-py_0 
  jinja2             pkgs/free/::jinja2-2.9.6-py36_0 
  markupsafe         pkgs/free/::markupsafe-1.0-py36_0 
  werkzeug           pkgs/free/::werkzeug-0.12.2-py36_0 

The following packages will be SUPERSEDED by a higher-priority channel:

  certifi            pkgs/main/linux-64::certifi-2022.9.24~ --> pkgs/free/::certifi-2016.2.28-py36_0 
  pip                pkgs/main/linux-64::pip-22.2.2-py37h0~ --> pkgs/free/::pip-9.0.1-py36_1 
  setuptools         pkgs/main/linux-64::setuptools-63.4.1~ --> pkgs/free/::setuptools-36.4.0-py36_1 

The following packages will be DOWNGRADED:

  python                                  3.7.13-h12debd9_0 --> 3.6.13-h12debd9_1 


Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done


WARNING :: You are testing `conda` with `tmpdir`:-
           /tmp
           not on the same FS as `sys.prefix`:
           /opt/conda
           this will be slow and unlike the majority of end-user installs.
           Please pass `--basetemp=<somewhere-else>` instead.

@jaimergp
Copy link
Contributor Author

Ok, unrelated to this PR, but to changes in conda/conda in the last 13 days.

@jaimergp
Copy link
Contributor Author

Ok, there two issues with upstream (parallel downloads) that this PR also fixes:

  • The new async download now raises a more specific error (the right one), so our user agent tests need to catch that one (CondaHTTPError instead of the generic CondaMultiError)
  • It uncovered a caching issue with libmamba and the free channel. This channel is old and its repodata doesn't populate the subdir key, which is needed for the cache key. For that reason, the cache entry was never found (but it was there!) and it failed the offline tests. The fix is to populate the subdir entry if missing or empty, using the platform field from the channel info.

@jaimergp jaimergp marked this pull request as ready for review October 12, 2022 13:55
@jaimergp
Copy link
Contributor Author

@jezdez this is ready for (re)-review! Now in all glorious green :D

@jaimergp jaimergp merged commit 5de9d52 into main Oct 19, 2022
@jaimergp jaimergp deleted the remove-experimental branch October 19, 2022 08:57
@github-actions github-actions bot added the locked [bot] locked due to inactivity label Oct 20, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants