mamba-org / mamba

The Fast Cross-Platform Package Manager
https://mamba.readthedocs.io
BSD 3-Clause "New" or "Revised" License
6.72k stars 346 forks source link

Exception with mamba update --all #328

Closed dhirschfeld closed 4 years ago

dhirschfeld commented 4 years ago
# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\Miniconda3\lib\site-packages\conda\exceptions.py", line 1079, in __call__
        return func(*args, **kwargs)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 872, in exception_converter
        raise e
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 866, in exception_converter
        exit_code = _wrapped_main(*args, **kwargs)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 832, in _wrapped_main
        exit_code = do_call(args, p)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 732, in do_call
        exit_code = update(args, parser)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 659, in update
        install(args, parser, 'update')
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 501, in install
        specs.append(pins[key])
    TypeError: tuple indices must be integers or slices, not str

`$ C:\Miniconda3\Scripts\mamba update --all`
platform = win-64
python   = 3.7.7
mamba    = 0.3.2
conda    = 4.8.3
dhirschfeld commented 4 years ago

I instrumented that line:

pin_names = ['kubernetes', 'blas', 'numpy', 'mkl', 'mkl-service', 'mkl_fft', 'mkl_random', 'scipy', 'scikit-learn', 'tensorflow', 'numexpr', 'qt']
type(key) = <class 'str'>
key       = 'blas'
type(pins) = <class 'tuple'>
pins       = (
    MatchSpec("kubernetes=1.17.5", optional=True), 
    MatchSpec("pkgs/main::blas[build=*mkl]", optional=True), 
    MatchSpec("pkgs/main::numpy", optional=True), 
    MatchSpec("pkgs/main::mkl", optional=True), 
    MatchSpec("pkgs/main::mkl-service", optional=True), 
    MatchSpec("pkgs/main::mkl_fft", optional=True), 
    MatchSpec("pkgs/main::mkl_random", optional=True), 
    MatchSpec("pkgs/main::scipy", optional=True), 
    MatchSpec("pkgs/main::scikit-learn", optional=True), 
    MatchSpec("pkgs/main::tensorflow", optional=True), 
    MatchSpec("pkgs/main::numexpr", optional=True), 
    MatchSpec("conda-forge::qt[version='>=5.9.7']", optional=True)
)
dhirschfeld commented 4 years ago

329 gets me a little further but I now run into the below error:

Looking for: ['abseil-cpp', 'aiofiles', 'aiohttp', 'alabaster', 'algopy', 'altair', 'anaconda-client', 'aniso8601', 'anyio', 'anyjson', 'appdirs', 'argh', 'argon2_cffi', 'arrow', 'arrow-cpp', 'arviz', 'asciitree', 'asgiref', 'asks', 'astroid', 'astropy', 'async-timeout', 'asyncpg', 'async_generator', 'atomicwrites', 'attrs', 'autograd', 'autopep8', 'aws-sdk-cpp', 'azure-devops', 'babel', 'backcall', 'backports', 'backports.csv', 'backports.shutil_get_terminal_size', 'bat', 'bcrypt', 'beautifulsoup4', 'binaryornot', 'bitarray', 'black', 'pkgs/main::blas[build=*mkl]', 'bleach', 'blinker', 'blosc', 'bokeh', 'boost-cpp', 'boto', 'bottleneck', 'brotli', 'brotlipy', 'bzip2', 'c-ares', 'ca-certificates', 'cachetools', 'catalogue', 'catboost', 'certifi', 'cffi', 'cftime', 'chainer', 'chardet', 'chart-studio', 'cheroot', 'cherrypy', 'chest', 'click', 'cli_helpers', 'cloudpickle', 'clyent', 'colorama', 'colorcet', 'colorlover', 'colour', 'comtypes', 'conda', 'conda-build', 'conda-package-handling', 'configobj', 'console_shortcut', 'contextlib2', 'cookiecutter', 'coverage', 'cryptography', 'curio', 'curl', 'cx_oracle', 'cycler', 'cymem', 'cython', 'cython-blis', 'cytoolz', 'dask', 'dask-core', 'dask-glm', 'dask-ml', 'datashader', 'datashape', 'deap', 'decorator', 'defusedxml', 'diagrams', 'diff-match-patch', 'dill', 'distributed', 'docopt', 'docutils', 'entrypoints', 'et_xmlfile', 'factory_boy', 'faker', 'fastapi', 'fastavro', 'fastcache', 'fasteners', 'filelock', 'flake8', 'flask', 'flask-cors', 'fletcher', 'freetds', 'freetype', 'fs', 'fsspec', 'furl', 'future', 'get_terminal_size', 'gevent', 'gflags', 'gidgethub', 'gitdb', 'github3.py', 'gitpython', 'glob2', 'glog', 'graphene', 'graphql-core', 'graphql-relay', 'graphviz', 'greenlet', 'grpc-cpp', 'h11', 'h2', 'h5py', 'hdf4', 'hdf5', 'heapdict', 'holoviews', 'hpack', 'hstspreload', 'httpcore', 'httpx', 'humanize', 'hvplot', 'hypercorn', 'hyperframe', 'hypothesis', 'ibis-framework', 'icc_rt', 'icu', 'idna', 'imagecodecs-lite', 'imageio', 'imagesize', 'importlib-metadata', 'importlib_metadata', 'impyla', 'infinity', 'inflect', 'inflection', 'intel-openmp', 'intervals', 'intervaltree', 'invoke', 'ipykernel', 'ipympl', 'ipyparallel', 'ipyscales', 'ipython', 'ipython_genutils', 'ipywidgets', 'isodate', 'isort', 'itsdangerous', 'jaraco.classes', 'jaraco.collections', 'jaraco.functools', 'jaraco.text', 'jdcal', 'jedi', 'jinja2', 'jinja2-time', 'joblib', 'jpeg', 'json5', 'jsonschema', 'jupyter', 'jupyter-server-proxy', 'jupyterlab', 'jupyterlab_server', 'jupyter_client', 'jupyter_console', 'jupyter_core', 'jwcrypto', 'kiwisolver', 'krb5', 'lazy-object-proxy', 'libarchive', 'libblas', 'libcblas', 'libclang', 'libcurl', 'libgpuarray', 'libiconv', 'liblapack', 'liblapacke', 'liblief', 'libmklml', 'libnetcdf', 'libopencv', 'libpng', 'libpq', 'libprotobuf', 'libsodium', 'libssh2', 'libtiff', 'libwebp', 'libxgboost', 'libxml2', 'libxslt', 'lightgbm', 'line_profiler', 'llvmlite', 'locket', 'lxml', 'lz4', 'lz4-c', 'm2-msys2-runtime', 'm2-patch', 'm2w64-gcc-libgfortran', 'm2w64-gcc-libs', 'm2w64-gcc-libs-core', 'm2w64-gmp', 'm2w64-libwinpthread-git', 'mako', 'markdown', 'markupsafe', 'matplotlib', 'matplotlib-base', 'mccabe', 'mechanicalsoup', 'memory_profiler', 'menuinst', 'mistune', 'pkgs/main::mkl', 'mkl-include', 'pkgs/main::mkl-service', 'mklml', 'pkgs/main::mkl_fft', 'pkgs/main::mkl_random', 'mlxtend', 'mock', 'monotonic', 'more-itertools', 'mpmath', 'msgpack-python', 'msrest', 'msys2-conda-epoch', 'multidict', 'multipledispatch', 'murmurhash', 'mypy', 'mypy_extensions', 'nbconvert', 'nbdime', 'nbformat', 'ndg-httpsclient', 'netcdf4', 'networkx', 'ninja', 'nltk', 'nose', 'notebook', 'numba', 'numcodecs', 'numdifftools', 'pkgs/main::numexpr', 'pkgs/main::numpy', 'numpydoc', 'oauthlib', 'olefile', 'opencv', 'openpyxl', 'openssl', 'opt_einsum', 'orderedmultidict', 'outcome', 'packaging', 'pandas', 'pandoc', 'pandocfilters', 'panel', 'param', 'parquet-cpp', 'parso', 'partd', 'passlib', 'path', 'path.py', 'pathlib2', 'pathspec', 'pathtools', 'patsy', 'pcre', 'pep8', 'pexpect', 'pgcli', 'pgspecial', 'phantomjs', 'phonenumbers', 'pickleshare', 'pillow', 'pip', 'pkginfo', 'plac', 'plotly', 'pluggy', 'ply', 'pomegranate', 'portend', 'poyo', 'preshed', 'priority', 'prometheus_client', 'promise', 'prompt-toolkit', 'prompt_toolkit', 'protobuf', 'psutil', 'psycopg2', 'py', 'py-lief', 'py-opencv', 'py-xgboost', 'pyaml', 'pyarrow', 'pyasn1', 'pycodestyle', 'pycosat', 'pycparser', 'pycrypto', 'pyct', 'pyct-core', 'pycurl', 'pydantic', 'pydocstyle', 'pydot', 'pyflakes', 'pygments', 'pygpu', 'pyjwt', 'pylint', 'pymc3', 'pympler', 'pymysql', 'pyodbc', 'pyopenssl', 'pyparsing', 'pyqt', 'pyreadline', 'pyrsistent', 'pysocks', 'pytables', 'pytest', 'pytest-cov', 'python-blosc', 'python-cufflinks', 'python-dateutil', 'python-graphviz', 'python-hdfs', 'python-jsonrpc-server', 'python-libarchive-c', 'python-multipart', 'python-slugify', 'pythonnet', 'python_abi', 'pytorch-cpu', 'pytz', 'pyviz_comms', 'pywavelets', 'pywin32', 'pywinpty', 'pyyaml', 'pyzmq', 'qdarkstyle', "conda-forge::qt[version='>=5.9.7']", 'qtawesome', 'qtconsole', 'qtpy', 'quandl', 'quart', 'quart-trio', 're2', 'regex', 'repoze.lru', 'requests', 'requests-kerberos', 'requests-negotiate-sspi', 'requests-oauthlib', 'retrying', 'rfc3986', 'ripgrep', 'rise', 'rope', 'routes', 'ruamel_yaml', 'rx', 'scikit-image', 'pkgs/main::scikit-learn', 'scikit-optimize', 'pkgs/main::scipy', 'seaborn', 'selenium', 'send2trash', 'setproctitle', 'setuptools', 'simpervisor', 'simplegeneric', 'simplejson', 'singledispatch', 'sip', 'six', 'skorch', 'smmap', 'snakeviz', 'snappy', 'sniffio', 'snowballstemmer', 'sockjs-tornado', 'sortedcontainers', 'soupsieve', 'spacy', 'sphinx', 'sphinxcontrib-applehelp', 'sphinxcontrib-devhelp', 'sphinxcontrib-htmlhelp', 'sphinxcontrib-jsmath', 'sphinxcontrib-qthelp', 'sphinxcontrib-serializinghtml', 'sqlalchemy', 'sqlalchemy-utils', 'sqlite', 'sqlparse', 'srsly', 'starlette', 'statsmodels', 'stopit', 'sympy', 'tabulate', 'tbb', 'tblib', 'tempora', 'termcolor', 'terminado', 'terminaltables', 'testpath', 'text-unidecode', 'theano', 'thinc', 'threadpoolctl', 'thrift-cpp', 'thriftpy', 'thriftpy2', 'tifffile', 'tk', 'toml', 'toolz', 'torchvision-cpu', 'tornado', 'tpot', 'tqdm', 'traitlets', 'trio', 'turbodbc', 'typed-ast', 'typing_extensions', 'tzlocal', 'ujson', 'umap-learn', 'unicodecsv', 'unidecode', 'update_checker', 'uritemplate', 'uritemplate.py', 'urllib3', 'vc', 'vs2015_runtime', 'vs2015_win-64', 'wasabi', 'watchdog', 'wcwidth', 'webencodings', 'werkzeug', 'wheel', 'whichcraft', 'widgetsnbextension', 'wincertstore', 'winkerberos', 'winpty', 'win_inet_pton', 'win_unicode_console', 'wrapt', 'wsaccel', 'wsproto', 'xarray', 'xlrd', 'xlsxwriter', 'xlwings', 'xlwt', 'xz', 'yaml', 'yapf', 'yarl', 'zarr', 'zc.lockfile', 'zeromq', 'zict', 'zipp', 'zlib', 'zope.event', 'zope.interface', 'zstd', '_py-xgboost-mutex']

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\Miniconda3\lib\site-packages\conda\exceptions.py", line 1079, in __call__
        return func(*args, **kwargs)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 872, in exception_converter
        raise e
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 866, in exception_converter
        exit_code = _wrapped_main(*args, **kwargs)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 832, in _wrapped_main
        exit_code = do_call(args, p)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 732, in do_call
        exit_code = update(args, parser)
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 659, in update
        install(args, parser, 'update')
      File "C:\Miniconda3\lib\site-packages\mamba\mamba.py", line 587, in install
        solver.add_jobs(mamba_solve_specs, solver_task)
    RuntimeError: Cannot erase a channel-specific package. (pkgs/main::blas[build=*mkl])

`$ C:\Miniconda3\Scripts\mamba update --all`

I think my kitchen-sink environment is giving this feature a pretty tough test! 😬

dhirschfeld commented 4 years ago

I might have to leave it for now but let me know how I could instrument that last error to get you more useful info...

wolfv commented 4 years ago

@dhirschfeld would you mind sharing your pins file here?

Thanks for testing mamba so thoroughly :)

wolfv commented 4 years ago

btw I think we need to re-engineer slightly how pins work in mamba:

We need to use SOLVER_LOCK for all packages that don't match the pin so that they will not be in the set of packages that might be installed. This is how we need to implement this to work fine: https://github.com/openSUSE/libsolv/issues/388

I understand that your pins are optional (i.e. you don't necessarily have these packages installed in your environment?).

wolfv commented 4 years ago

also right now, pins are only applied with update_all which isn't correct ;)

dhirschfeld commented 4 years ago

I pin blas to MKL because we use Intel processors and I pin numpy to defaults because IIUC they patch in some MKL functionality to get better performance. Although it may not be necessary I also pin some other MKL using packages.

.condarc

pinned_packages:
  - kubernetes=1.17.5
  - https://repo.anaconda.com/pkgs/main::blas[build=*mkl]
  - https://repo.anaconda.com/pkgs/main::numpy
  - https://repo.anaconda.com/pkgs/main::mkl
  - https://repo.anaconda.com/pkgs/main::mkl-service
  - https://repo.anaconda.com/pkgs/main::mkl_fft
  - https://repo.anaconda.com/pkgs/main::mkl_random
  - https://repo.anaconda.com/pkgs/main::scipy
  - https://repo.anaconda.com/pkgs/main::scikit-learn
  - https://repo.anaconda.com/pkgs/main::tensorflow
  - https://repo.anaconda.com/pkgs/main::numexpr
  - https://conda.anaconda.org/conda-forge::qt >=5.9.7
wolfv commented 4 years ago

thanks for the info, this will give me a good test case to make sure pinnings work as expected

dhirschfeld commented 4 years ago

Unless it has been addressed elsewhere https://github.com/QuantStack/mamba/issues/328#issuecomment-641648880 is still a problem.

I'll wait for the next release, test and if it's still there will open a new issue (since I can't seem to re-open this one)

wolfv commented 4 years ago

Nope, it's not 100% fixed. I just merged your PR for now.

dhirschfeld commented 4 years ago

Just posting, as a data-point, the different solutions for a conda/mamba update --all for my kitchen sink analytics environment.

(Haven't had time to look yet myself - just wanted to post the data so it wasn't lost)

conda ``` ## Package Plan ## environment location: C:\Users\dhirschf\envs\dev The following packages will be downloaded: package | build ---------------------------|----------------- asks-2.4.8 | py_0 23 KB https://conda.anaconda.org/conda-forge bitarray-1.4.2 | py37h4ab8f01_0 87 KB https://conda.anaconda.org/conda-forge curl-7.71.1 | h4b64cdc_2 122 KB https://conda.anaconda.org/conda-forge cx_oracle-8.0.0 | py37h230ea1a_0 197 KB https://conda.anaconda.org/conda-forge dask-2.21.0 | py_0 4 KB https://conda.anaconda.org/conda-forge dask-core-2.21.0 | py_0 623 KB https://conda.anaconda.org/conda-forge diagrams-0.16.0 | py37hc8dfbb8_0 14.0 MB https://conda.anaconda.org/conda-forge diff-match-patch-20200713 | pyh9f0ad1d_0 38 KB https://conda.anaconda.org/conda-forge distributed-2.21.0 | py37hc8dfbb8_0 1.1 MB https://conda.anaconda.org/conda-forge hypothesis-5.20.1 | py_0 192 KB https://conda.anaconda.org/conda-forge ipympl-0.5.7 | pyh9f0ad1d_1 225 KB https://conda.anaconda.org/conda-forge jedi-0.17.2 | py37hc8dfbb8_0 935 KB https://conda.anaconda.org/conda-forge jupyter_client-6.1.6 | py_0 75 KB https://conda.anaconda.org/conda-forge jupyterlab-2.2.0 | py_0 5.8 MB https://conda.anaconda.org/conda-forge numba-0.50.1 | py37h3bbf574_1 3.4 MB https://conda.anaconda.org/conda-forge pandoc-2.10 | he774522_0 29.5 MB https://conda.anaconda.org/conda-forge plotly-4.9.0 | pyh9f0ad1d_0 5.7 MB https://conda.anaconda.org/conda-forge pydantic-1.6.1 | py37h4ab8f01_0 153 KB https://conda.anaconda.org/conda-forge quart-0.13.0 | py_0 61 KB https://conda.anaconda.org/conda-forge regex-2020.7.14 | py37h4ab8f01_0 338 KB https://conda.anaconda.org/conda-forge rx-3.1.1 | py_0 93 KB https://conda.anaconda.org/conda-forge simplejson-3.17.2 | py37h4ab8f01_0 102 KB https://conda.anaconda.org/conda-forge snakeviz-2.1.0 | pyh9f0ad1d_0 168 KB https://conda.anaconda.org/conda-forge spacy-2.3.2 | py37h1fb7aa8_0 7.4 MB https://conda.anaconda.org/conda-forge wasabi-0.7.1 | pyh9f0ad1d_0 20 KB https://conda.anaconda.org/conda-forge ------------------------------------------------------------ Total: 70.3 MB The following packages will be UPDATED: asks 2.4.7-py_0 --> 2.4.8-py_0 bitarray 1.4.0-py37h4ab8f01_0 --> 1.4.2-py37h4ab8f01_0 curl 7.71.1-h4b64cdc_1 --> 7.71.1-h4b64cdc_2 cx_oracle 7.3.0-py37h702c6c1_1 --> 8.0.0-py37h230ea1a_0 dask 2.20.0-py_0 --> 2.21.0-py_0 dask-core 2.20.0-py_0 --> 2.21.0-py_0 diagrams 0.15.0-py37hc8dfbb8_0 --> 0.16.0-py37hc8dfbb8_0 diff-match-patch 20181111-py_0 --> 20200713-pyh9f0ad1d_0 distributed 2.20.0-py37hc8dfbb8_0 --> 2.21.0-py37hc8dfbb8_0 hstspreload 2020.6.30-py_0 --> 2020.7.17-py_0 hypothesis 5.19.1-py_0 --> 5.20.1-py_0 ipympl 0.5.6-pyh9f0ad1d_1 --> 0.5.7-pyh9f0ad1d_1 jedi 0.17.1-py37hc8dfbb8_0 --> 0.17.2-py37hc8dfbb8_0 jupyter_client 6.1.5-py_0 --> 6.1.6-py_0 jupyterlab 2.1.5-py_0 --> 2.2.0-py_0 libcurl 7.71.1-h4b64cdc_1 --> 7.71.1-h4b64cdc_2 libpq 12.2-hd9aa61d_1 --> 12.3-hd9aa61d_0 libssh2 1.9.0-hb06d900_3 --> 1.9.0-hb06d900_4 numba 0.50.1-py37h3bbf574_0 --> 0.50.1-py37h3bbf574_1 plotly 4.8.2-pyh9f0ad1d_0 --> 4.9.0-pyh9f0ad1d_0 psutil 5.7.0-py37h8055547_1 --> 5.7.2-py37h4ab8f01_0 pydantic 1.6-py37h4ab8f01_0 --> 1.6.1-py37h4ab8f01_0 quart 0.12.0-py_0 --> 0.13.0-py_0 regex 2020.6.8-py37h4ab8f01_0 --> 2020.7.14-py37h4ab8f01_0 rx 3.1.0-py_0 --> 3.1.1-py_0 simplejson 3.17.0-py37h8055547_1 --> 3.17.2-py37h4ab8f01_0 snakeviz 2.0.1-py_0 --> 2.1.0-pyh9f0ad1d_0 spacy 2.3.1-py37h1fb7aa8_0 --> 2.3.2-py37h1fb7aa8_0 tqdm 4.47.0-pyh9f0ad1d_0 --> 4.48.0-pyh9f0ad1d_0 wasabi 0.7.0-pyh9f0ad1d_0 --> 0.7.1-pyh9f0ad1d_0 The following packages will be DOWNGRADED: pandoc 2.10-0 --> 2.10-he774522_0 DryRunExit: Dry run. Exiting. ```
mamba (0.4.2) ``` Transaction Prefix: C:\Users\dhirschf\envs\dev No specs added or removed. Package Version Build Channel Size ---------------------------------------------------------------------------------- Install: ---------------------------------------------------------------------------------- libllvm10 10.0.0 h21ff451_1 pkgs/main/win-64 64 KB Change: ---------------------------------------------------------------------------------- brotlipy 0.7.0 py37h4ab8f01_1000 installed brotlipy 0.7.0 py37hfa6e2cd_1000 conda-forge/win-64 356 KB charls 2.1.0 h33f27b4_2 installed charls 2.1.0 he025d50_2 conda-forge/win-64 116 KB curl 7.71.1 h4b64cdc_1 installed curl 7.71.1 h4b64cdc_2 conda-forge/win-64 122 KB et_xmlfile 1.0.1 py_1001 installed et_xmlfile 1.0.1 py37_1000 conda-forge/win-64 20 KB libarchive 3.4.2 h5e25573_0 installed libarchive 3.4.2 h5e25573_0 pkgs/main/win-64 Cached libclang 9.0.1 default_hf44288c_0 installed libclang 9.0.1 default_hf44288c_0 pkgs/main/win-64 17 MB libcurl 7.71.1 h4b64cdc_1 installed libcurl 7.71.1 h4b64cdc_2 conda-forge/win-64 Cached libssh2 1.9.0 hb06d900_3 installed libssh2 1.9.0 hb06d900_4 conda-forge/win-64 Cached llvmlite 0.33.0 py37h8b575af_0 installed llvmlite 0.33.0 py37ha925a31_0 pkgs/main/win-64 Cached nbdime 2.0.0 py_1 installed nbdime 2.0.0 py37hc8dfbb8_0 conda-forge/win-64 5 MB ninja 1.10.0 h5b9e2c8_1 installed ninja 1.10.0 h1ad3211_0 conda-forge/win-64 122 KB numba 0.50.1 py37h3bbf574_0 installed numba 0.50.1 py37h3bbf574_1 conda-forge/win-64 3 MB parquet-cpp 1.5.1 2 installed parquet-cpp 1.5.1 1 conda-forge/win-64 3 KB plac 0.9.6 py37_1 installed plac 0.9.6 py_1 conda-forge/noarch 18 KB pyopenssl 19.1.0 py_1 installed pyopenssl 19.1.0 py37_0 conda-forge/win-64 83 KB routes 2.4.1 py_1 installed routes 2.4.1 py37_0 pkgs/main/win-64 Cached wheel 0.34.2 py_1 installed wheel 0.34.2 py37_0 conda-forge/win-64 60 KB wrapt 1.11.2 py37h8055547_0 installed wrapt 1.11.2 py37hfa6e2cd_0 conda-forge/win-64 44 KB Upgrade: ---------------------------------------------------------------------------------- asks 2.4.7 py_0 installed asks 2.4.8 py_0 conda-forge/noarch 23 KB bitarray 1.4.0 py37h4ab8f01_0 installed bitarray 1.4.2 py37h4ab8f01_0 conda-forge/win-64 87 KB cx_oracle 7.3.0 py37h702c6c1_1 installed cx_oracle 8.0.0 py37h230ea1a_0 conda-forge/win-64 197 KB dask 2.20.0 py_0 installed dask 2.21.0 py_0 conda-forge/noarch 4 KB dask-core 2.20.0 py_0 installed dask-core 2.21.0 py_0 conda-forge/noarch 623 KB diagrams 0.15.0 py37hc8dfbb8_0 installed diagrams 0.16.0 py37hc8dfbb8_0 conda-forge/win-64 14 MB diff-match-patch 20181111 py_0 installed diff-match-patch 20200713 pyh9f0ad1d_0 conda-forge/noarch 38 KB distributed 2.20.0 py37hc8dfbb8_0 installed distributed 2.21.0 py37hc8dfbb8_0 conda-forge/win-64 1 MB hstspreload 2020.6.30 py_0 installed hstspreload 2020.7.17 py_0 conda-forge/noarch Cached hypothesis 5.19.1 py_0 installed hypothesis 5.20.1 py_0 conda-forge/noarch 192 KB ipympl 0.5.6 pyh9f0ad1d_1 installed ipympl 0.5.7 pyh9f0ad1d_1 conda-forge/noarch 225 KB jedi 0.17.1 py37hc8dfbb8_0 installed jedi 0.17.2 py37hc8dfbb8_0 conda-forge/win-64 935 KB jupyter_client 6.1.5 py_0 installed jupyter_client 6.1.6 py_0 conda-forge/noarch 75 KB jupyterlab 2.1.5 py_0 installed jupyterlab 2.2.0 py_0 conda-forge/noarch 6 MB libpq 12.2 hd9aa61d_1 installed libpq 12.3 hd9aa61d_0 conda-forge/win-64 Cached llvm-tools 9.0.1 hde8ddfe_1 installed llvm-tools 10.0.0 h21ff451_1 pkgs/main/win-64 53 MB llvmdev 9.0.1 hde8ddfe_1 installed llvmdev 10.0.0 h21ff451_1 pkgs/main/win-64 49 MB plotly 4.8.2 pyh9f0ad1d_0 installed plotly 4.9.0 pyh9f0ad1d_0 conda-forge/noarch 6 MB psutil 5.7.0 py37h8055547_1 installed psutil 5.7.2 py37h4ab8f01_0 conda-forge/win-64 Cached pydantic 1.6 py37h4ab8f01_0 installed pydantic 1.6.1 py37h4ab8f01_0 conda-forge/win-64 153 KB quart 0.12.0 py_0 installed quart 0.13.0 py_0 conda-forge/noarch 61 KB regex 2020.6.8 py37h4ab8f01_0 installed regex 2020.7.14 py37h4ab8f01_0 conda-forge/win-64 338 KB rx 3.1.0 py_0 installed rx 3.1.1 py_0 conda-forge/noarch 93 KB simplejson 3.17.0 py37h8055547_1 installed simplejson 3.17.2 py37h4ab8f01_0 conda-forge/win-64 102 KB snakeviz 2.0.1 py_0 installed snakeviz 2.1.0 pyh9f0ad1d_0 conda-forge/noarch 168 KB spacy 2.3.1 py37h1fb7aa8_0 installed spacy 2.3.2 py37h1fb7aa8_0 conda-forge/win-64 7 MB tqdm 4.47.0 pyh9f0ad1d_0 installed tqdm 4.48.0 pyh9f0ad1d_0 conda-forge/noarch Cached wasabi 0.7.0 pyh9f0ad1d_0 installed wasabi 0.7.1 pyh9f0ad1d_0 conda-forge/noarch 20 KB Summary: Install: 1 packages Change: 18 packages Upgrade: 28 packages Total download: 166 MB ---------------------------------------------------------------------------------- Confirm changes: [Y/n] ```
dhirschfeld commented 4 years ago

I'll note, initially mamba wouldn't let me update until I'd removed inconsistent packages (xref: #412)

Your pinning does not match what's currently installed. Please remove the pin and fix your installation
  Pin: pkgs/main::numpy
  Currently installed: https://conda.anaconda.org/conda-forge/win-64::numpy==1.18.4=py37hae9e721_0

I like being strict but maybe mamba could just enforce consistency after the install rather than requiring the environment to be consistent first - otherwise it makes it harder to get to a consistent state if something is mucked up.

dhirschfeld commented 4 years ago

Sorry for necro-posting - in a rush. Can open new issues if you think it's worthwhile...

dhirschfeld commented 4 years ago

Will also xref my issue #297 as the output above is hard to grok when copy/pasted with no colours.

wolfv commented 4 years ago

Hey @dhirschfeld thanks a lot for your testing! I'll reopen the issue just so that I don't forget to take a look at your new comments.

wolfv commented 4 years ago

I checked your output and I agree that mamba needs some love with regards to updates. The channel stuff is not consistently handled and we need some sort of policy if noarch packages should be preferred or not. But I think the main issue in this thread is fixed (with the pinnings). Do you want to create 1 or 2 new issues? one for the way you wish pinnings would work, and one for update love?

dhirschfeld commented 4 years ago

Yep, I'll circle back and see what (if anything) needs to be done. Prob won't get to that until the weekend though!