Clearer output from micromamba search#2782
Conversation
|
Suggestions for output improvement pretty-> Notes:
tableThe columns seem misaligned, is that a copy paste problem? |
|
I added your suggestions to the PR and yes, the columns are misaligned due to copy-paste. Here's the output: |
|
@AntoinePrv @JohanMabille @Klaim @Hind-M @wolfv @pavelzw looking forward to your feedback to the new search output design :) |
Klaim
left a comment
There was a problem hiding this comment.
Very nice! 👍🏽
My only pet peeve is usage of std::map instead of std::unordered_map (a hash-map) when we are not refering to objects in the map through pointers. It's more a performance concern and can be changed later so dont bother too much if just changing the type name dont work as expected.
|
Thanks for the review @Klaim, I switched to an |
|
Oh, I wanted to enable auto merge, not merge directly... sorry. |
|
No worries, happy to have it in the next release ;) |
|
The new output style is awful for AI developers. The info of The old style: $ ./micromamba-1.5.0-1 search pytorch=1.9.1
Getting repodata from channels...
conda-forge/linux-64 Using cache
conda-forge/noarch Using cache
Name Version Build Channel
───────────────────────────────────────────────────
pytorch 1.9.1 cuda110py38hf84197b_3 conda-forge
pytorch 1.9.1 cuda112py39h4e14dd4_3 conda-forge
pytorch 1.9.1 cuda112py38h4f2a933_3 conda-forge
pytorch 1.9.1 cuda112py37h3bec1eb_3 conda-forge
pytorch 1.9.1 cuda112py36h36e649e_3 conda-forge
pytorch 1.9.1 cuda111py39hb4a4491_3 conda-forge
pytorch 1.9.1 cuda111py38h2f85826_3 conda-forge
pytorch 1.9.1 cuda111py37he371307_3 conda-forge
pytorch 1.9.1 cuda111py36h8a2106e_3 conda-forge
pytorch 1.9.1 cuda110py39h5cf7045_3 conda-forge
pytorch 1.9.1 cpu_py36ha8b20dc_3 conda-forge
pytorch 1.9.1 cuda110py37h4a33b93_3 conda-forge
pytorch 1.9.1 cuda110py36he570edd_3 conda-forge
pytorch 1.9.1 cuda102py39h2fcd037_3 conda-forge
pytorch 1.9.1 cuda102py38ha031fbe_3 conda-forge
pytorch 1.9.1 cuda102py37h98b7ee3_3 conda-forge
pytorch 1.9.1 cuda102py36h3d4679f_3 conda-forge
pytorch 1.9.1 cpu_py39hc5866cc_3 conda-forge
pytorch 1.9.1 cpu_py38h1ee18c8_3 conda-forge
pytorch 1.9.1 cpu_py37hf3cc979_3 conda-forgeThe new style: $ ./micromamba-1.5.3-0 search pytorch=1.9.1
Getting repodata from channels...
conda-forge/linux-64 Using cache
conda-forge/noarch Using cache
pytorch 1.9.1 cuda110py38hf84197b_3 (+ 19 builds)
_________________________________________________
Name pytorch
Version 1.9.1
Build cuda110py38hf84197b_3
Size 566269 kB
License BSD-3-Clause
Subdir linux-64
File Name pytorch-1.9.1-cuda110py38hf84197b_3.tar.bz2
URL https://conda.anaconda.org/conda-forge/linux-64/pytorch-1.9.1-cuda110py38hf84197b_3.tar.bz2
MD5 40fd35936dceddb5e71accea1660da2c
SHA256 dea51518cff6d110b7321db25195a0770ef034bdc361023989124199bb6792f6
Run Constraints:
- pytorch-cpu 99999999*
- pytorch-gpu 1.9.1*
Dependencies:
- __glibc >=2.17
- __glibc >=2.17,<3.0.a0
- _openmp_mutex >=4.5
- cffi
- cudatoolkit 11.0|11.0.*
- cudnn >=8.2.1.32,<9.0a0
- future
- libblas * *_mkl
- libblas >=3.9.0,<4.0a0
- libgcc-ng >=7.5.0
- libprotobuf >=3.18.1,<3.19.0a0
- libstdcxx-ng >=7.5.0
- magma >=2.5.4,<2.5.5.0a0
- mkl 2021.*
- mkl >=2021.3.0,<2022.0a0
- nccl >=2.11.4.1,<3.0a0
- ninja
- numpy >=1.18.5,<2.0a0
- python >=3.8,<3.9.0a0
- python_abi 3.8.* *_cp38
- sleef >=3.5.1,<4.0a0
- typing_extensionsMy currently workaround is using $ ./micromamba-1.5.3-0 search --json tensorflow-gpu=2.11 | jq '.result.pkgs.[] | {build, version}'
{
"build": "cuda112py310h0bbbad9_0",
"version": "2.11.1"
}
{
"build": "cuda112py38h0bbbad9_0",
"version": "2.11.1"
}
{
"build": "cuda112py39h0bbbad9_0",
"version": "2.11.1"
}
{
"build": "cuda112py310h0bbbad9_0",
"version": "2.11.0"
}
{
"build": "cuda112py310h0bbbad9_1",
"version": "2.11.0"
}
{
"build": "cuda112py38h0bbbad9_0",
"version": "2.11.0"
}
{
"build": "cuda112py38h0bbbad9_1",
"version": "2.11.0"
}
{
"build": "cuda112py39h0bbbad9_0",
"version": "2.11.0"
}
{
"build": "cuda112py39h0bbbad9_1",
"version": "2.11.0"
} |
This PR addresses #1965 and adds clearer output to the
micromamba repoquery(orsearch) endpoints.The changes comprise:
searchorrepoquerythat only contains each version once (+ information about additional builds)Subdir(as a proxy for platform/arch) in list viewsearch <package-name>without a wildcard matcher (*) -> more aligned with what other package managers doOld output
$ micromamba search '*boost' Name Version Build Channel ─────────────────────────────────────────────────────────────── autoboost 20.8.1 pyhd8ed1ab_0 conda-forge boost 1.82.0 py310h629746b_0 conda-forge boost 1.82.0 py39hd08ceb0_0 conda-forge boost 1.82.0 py38h3926e13_0 conda-forge boost 1.82.0 py311h5c64717_0 conda-forge boost 1.80.0 py39h99de9ae_4 conda-forge boost 1.80.0 py39h99de9ae_3 conda-forge boost 1.80.0 py39h99de9ae_2 conda-forge boost 1.80.0 py39h70e7ac2_1 conda-forge boost 1.80.0 py39h4aae847_0 conda-forge boost 1.80.0 py38he0a633c_3 conda-forge ... xgboost 1.5.0 py38hd68009d_1 conda-forge xgboost 1.5.0 py38hd68009d_0 conda-forge xgboost 1.5.0 py310hab06bbd_1 conda-forge xgboost 1.5.0 py39ha480839_0 conda-forge xgboost 1.5.0 py39ha480839_1 conda-forgeNew output
$ micromamba search '*boost' Name Version Build Channel Subdir ─────────────────────────────────────────────────────────────────────────────────────── autoboost 20.8.1 pyhd8ed1ab_0 conda-forge noarch boost 1.82.0 py310h629746b_0 (+ 3 builds) conda-forge osx-arm64 boost 1.80.0 py39h99de9ae_4 (+ 17 builds) conda-forge osx-arm64 boost 1.78.0 py310h629746b_1 (+ 17 builds) conda-forge osx-arm64 boost 1.77.0 py39h776e71f_0 (+ 2 builds) conda-forge osx-arm64 boost 1.76.0 py39h776e71f_1 (+ 4 builds) conda-forge osx-arm64 boost 1.75.0 py39h776e71f_0 (+ 3 builds) conda-forge osx-arm64 boost 1.74.0 py39h776e71f_5 (+ 9 builds) conda-forge osx-arm64 ... xgboost 1.7.6 cpu_py39hc10f3ae_0 (+ 11 builds) conda-forge osx-arm64 xgboost 1.7.4 cpu_py38hfea8814_0 (+ 19 builds) conda-forge osx-arm64 xgboost 1.7.1 cpu_py310h6b766a5_0 (+ 3 builds) conda-forge osx-arm64 xgboost 1.7.0 cpu_py310h6b766a5_0 (+ 3 builds) conda-forge osx-arm64 xgboost 1.6.2 cpu_py39h2fb42d7_2 (+ 9 builds) conda-forge osx-arm64 xgboost 1.6.1 cpu_py310he362541_0 (+ 5 builds) conda-forge osx-arm64 xgboost 1.5.1 cpu_py39h5674d11_1 (+ 8 builds) conda-forge osx-arm64 xgboost 1.5.0 py39ha480839_1 (+ 4 builds) conda-forge osx-arm64