TUM-DAML / seml

SEML: Slurm Experiment Management Library
Other
165 stars 29 forks source link

Unknown option directconnection #107

Closed Hrovatin closed 1 year ago

Hrovatin commented 1 year ago

I tried to run seml and got the below error. Interestingly, when I ran it from base env (same seml instal with git clone on today's date) I got no such errors.

Steps to Reproduce the Problem & Error message:

(csp) -bash-4.2$ seml seml_karin add seml.yaml 
WARNING: Parameter overwrite caused 18 identical configs. Duplicates were removed.
Traceback (most recent call last):
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/bin/seml", line 33, in <module>
    sys.exit(load_entry_point('seml', 'console_scripts', 'seml')())
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/seml/seml/main.py", line 298, in main
    f(**vars(command))
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/seml/seml/add.py", line 113, in add_config_files
    add_config_file(db_collection_name, config_file, force_duplicates,
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/seml/seml/add.py", line 156, in add_config_file
    collection = get_collection(db_collection_name)
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/seml/seml/database.py", line 15, in get_collection
    db = get_database(**mongodb_config)
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/seml/seml/database.py", line 29, in get_database
    db = get_mongo_client(db_name, host, port, username, password, **kwargs)[db_name]
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/seml/seml/database.py", line 23, in get_mongo_client
    client = pymongo.MongoClient(host, int(port), username=username, password=password,
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/site-packages/pymongo/mongo_client.py", line 647, in __init__
    dict(common.validate(k, v) for k, v in keyword_opts.items()))
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/site-packages/pymongo/mongo_client.py", line 647, in <genexpr>
    dict(common.validate(k, v) for k, v in keyword_opts.items()))
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/site-packages/pymongo/common.py", line 725, in validate
    value = validator(option, value)
  File "/home/icb/karin.hrovatin/miniconda3/envs/csp/lib/python3.8/site-packages/pymongo/common.py", line 143, in raise_config_error
    raise ConfigurationError("Unknown option %s" % (key,))
pymongo.errors.ConfigurationError: Unknown option directconnection

Config:

(csp) -bash-4.2$ cat /home/icb/karin.hrovatin/.config/seml/mongodb.config 
username: xxxxxxxxx
password: xxxxxxxxx
port: xxxxxxxxx
database: seml_karin

Specifications

Details - Version: -e git+https://github.com/TUM-DAML/seml.git@50a8f18d5a319a5260cade905e2540cb8e1eec51#egg=seml - Python version: 3.8 - Platform: Linux - These are different for the base env where it works - Anaconda environment (`conda list`): ``` # Name Version Build Channel _libgcc_mutex 0.1 main _openmp_mutex 4.5 1_gnu absl-py 1.0.0 pypi_0 pypi aiohttp 3.8.1 pypi_0 pypi aiosignal 1.2.0 pypi_0 pypi anndata 0.8.0 pypi_0 pypi argon2-cffi 21.3.0 pypi_0 pypi argon2-cffi-bindings 21.2.0 pypi_0 pypi async-timeout 4.0.1 pypi_0 pypi attrs 21.2.0 pypi_0 pypi backcall 0.2.0 py_0 anaconda blas 1.0 mkl bleach 4.1.0 pypi_0 pypi brotlipy 0.7.0 py38h27cfd23_1003 bzip2 1.0.8 h7b6447c_0 ca-certificates 2022.12.7 ha878542_0 conda-forge cachetools 4.2.4 pypi_0 pypi certifi 2022.12.7 pyhd8ed1ab_0 conda-forge cffi 1.15.0 py38hd667e15_1 charset-normalizer 2.0.9 pypi_0 pypi chex 0.1.4 pypi_0 pypi colorama 0.4.4 pypi_0 pypi commonmark 0.9.1 pypi_0 pypi cross-species-prediction 0.0.0 dev_0 cryptography 37.0.1 py38h9ce1e76_0 cudatoolkit 11.3.1 h2bc3f7f_2 debugpy 1.5.1 py38h295c915_0 decorator 4.4.2 py_0 anaconda defusedxml 0.7.1 pypi_0 pypi dm-tree 0.1.7 pypi_0 pypi docopt 0.6.2 py_1 conda-forge docrep 0.3.2 pypi_0 pypi entrypoints 0.3 pypi_0 pypi et-xmlfile 1.1.0 pypi_0 pypi etils 0.7.1 pypi_0 pypi ffmpeg 4.3 hf484d3e_0 pytorch flax 0.6.0 pypi_0 pypi freetype 2.11.0 h70c0345_0 frozenlist 1.2.0 pypi_0 pypi fsspec 2021.11.1 pypi_0 pypi giflib 5.2.1 h7b6447c_0 gitdb 4.0.10 pyhd8ed1ab_0 conda-forge gitpython 3.1.30 pyhd8ed1ab_0 conda-forge gmp 6.2.1 h295c915_3 gnutls 3.6.15 he1e5248_0 google-auth 2.3.3 pypi_0 pypi google-auth-oauthlib 0.4.6 pypi_0 pypi gputil 1.4.0 pypi_0 pypi grpcio 1.42.0 pypi_0 pypi h5py 3.6.0 pypi_0 pypi idna 3.3 pyhd3eb1b0_0 igraph 0.10.2 pypi_0 pypi importlib-metadata 4.8.2 pypi_0 pypi importlib-resources 5.4.0 pypi_0 pypi importlib_metadata 5.2.0 hd8ed1ab_0 conda-forge intel-openmp 2021.4.0 h06a4308_3561 ipykernel 6.6.0 pypi_0 pypi ipython 7.30.1 pypi_0 pypi ipython-genutils 0.2.0 pypi_0 pypi ipython_genutils 0.2.0 py38_0 anaconda ipywidgets 7.6.5 pypi_0 pypi jax 0.3.17 pypi_0 pypi jaxlib 0.3.15 pypi_0 pypi jedi 0.18.1 pypi_0 pypi jinja2 3.0.3 pypi_0 pypi joblib 1.1.0 pypi_0 pypi jpeg 9e h7f8727e_0 jsonpickle 1.5.1 pyhd8ed1ab_0 conda-forge jsonschema 4.3.0 pypi_0 pypi jupyter-client 7.1.0 pypi_0 pypi jupyter-core 4.9.1 pypi_0 pypi jupyter_client 6.1.7 py_0 anaconda jupyter_core 4.6.3 py38_0 anaconda jupyterlab-pygments 0.1.2 pypi_0 pypi jupyterlab-widgets 1.0.2 pypi_0 pypi lame 3.100 h7b6447c_0 lcms2 2.12 h3be6417_0 ld_impl_linux-64 2.35.1 h7274673_9 libffi 3.3 he6710b0_2 libgcc-ng 9.3.0 h5101ec6_17 libgomp 9.3.0 h5101ec6_17 libiconv 1.16 h7f8727e_2 libidn2 2.3.2 h7f8727e_0 libpng 1.6.37 hbc83047_0 libsodium 1.0.18 h7b6447c_0 anaconda libstdcxx-ng 9.3.0 hd4cf53a_17 libtasn1 4.16.0 h27cfd23_0 libtiff 4.2.0 h85742a9_0 libunistring 0.9.10 h27cfd23_0 libuv 1.40.0 h7b6447c_0 libwebp 1.2.2 h55f646e_0 libwebp-base 1.2.2 h7f8727e_0 llvmlite 0.36.0 pypi_0 pypi lz4-c 1.9.3 h295c915_1 markdown 3.3.6 pypi_0 pypi markupsafe 2.0.1 pypi_0 pypi matplotlib-inline 0.1.3 pypi_0 pypi mistune 0.8.4 pypi_0 pypi mkl 2021.4.0 h06a4308_640 mkl-service 2.4.0 py38h7f8727e_0 mkl_fft 1.3.1 py38hd3c417c_0 mkl_random 1.2.2 py38h51133e4_0 msgpack 1.0.4 pypi_0 pypi mudata 0.2.0 pypi_0 pypi multidict 5.2.0 pypi_0 pypi multipledispatch 0.6.0 pypi_0 pypi munch 2.5.0 py_0 conda-forge natsort 8.0.2 pypi_0 pypi nbclient 0.5.9 pypi_0 pypi nbconvert 6.3.0 pypi_0 pypi nbformat 5.1.3 pypi_0 pypi ncurses 6.3 h7f8727e_2 nest-asyncio 1.5.4 pypi_0 pypi nettle 3.7.3 hbbd107a_1 networkx 2.6.3 pypi_0 pypi notebook 6.4.6 pypi_0 pypi numba 0.53.0 pypi_0 pypi numexpr 2.8.1 pypi_0 pypi numpy 1.20.3 pypi_0 pypi numpy-base 1.22.3 py38hf524024_0 numpyro 0.10.1 pypi_0 pypi oauthlib 3.1.1 pypi_0 pypi obonet 0.3.1 pypi_0 pypi openh264 2.1.1 h4ff587b_0 openpyxl 3.0.9 pypi_0 pypi openssl 1.1.1s h7f8727e_0 opt-einsum 3.3.0 pypi_0 pypi optax 0.1.3 pypi_0 pypi packaging 21.3 pypi_0 pypi pandas 1.3.4 pypi_0 pypi pandocfilters 1.5.0 pypi_0 pypi parso 0.8.3 pypi_0 pypi patsy 0.5.2 pypi_0 pypi pexpect 4.8.0 py38_0 anaconda pickleshare 0.7.5 py38_1000 anaconda pillow 9.0.1 py38h22f2fdc_0 pip 21.2.4 py38h06a4308_0 plottable 0.1.5 pypi_0 pypi prometheus-client 0.12.0 pypi_0 pypi prompt-toolkit 3.0.24 pypi_0 pypi protobuf 3.19.1 pypi_0 pypi ptyprocess 0.7.0 pypi_0 pypi py-cpuinfo 9.0.0 pyhd8ed1ab_0 conda-forge pyasn1 0.4.8 pypi_0 pypi pyasn1-modules 0.2.8 pypi_0 pypi pycparser 2.21 pyhd3eb1b0_0 pydeprecate 0.3.2 pypi_0 pypi pygments 2.10.0 pypi_0 pypi pymongo 3.10.1 py38h950e882_2 conda-forge pynndescent 0.5.5 pypi_0 pypi pyopenssl 22.0.0 pyhd3eb1b0_0 pyro-api 0.1.2 pypi_0 pypi pyro-ppl 1.8.0 pypi_0 pypi pyrsistent 0.18.0 pypi_0 pypi pysocks 1.7.1 py38h06a4308_0 python 3.8.12 h12debd9_0 python-dateutil 2.8.2 pypi_0 pypi python_abi 3.8 2_cp38 conda-forge pytorch 1.11.0 py3.8_cuda11.3_cudnn8.2.0_0 pytorch pytorch-lightning 1.6.5 pypi_0 pypi pytorch-mutex 1.0 cuda pytorch pytz 2021.3 pypi_0 pypi pyyaml 5.4.1 pypi_0 pypi pyzmq 22.3.0 pypi_0 pypi readline 8.1 h27cfd23_0 requests 2.28.1 pypi_0 pypi requests-oauthlib 1.3.0 pypi_0 pypi rich 11.2.0 pypi_0 pypi rsa 4.8 pypi_0 pypi sacred 0.8.2 pyhd8ed1ab_0 conda-forge scanpy 1.8.2 pypi_0 pypi scib-metrics 0.1.0 pypi_0 pypi scipy 1.7.3 pypi_0 pypi scvi-tools 0.17.3 pypi_0 pypi seaborn 0.11.2 pypi_0 pypi seml 0.3.7 dev_0 send2trash 1.8.0 pypi_0 pypi setuptools 58.0.4 py38h06a4308_0 sinfo 0.3.4 pypi_0 pypi six 1.16.0 pypi_0 pypi smmap 3.0.5 pyh44b312d_0 conda-forge sqlite 3.36.0 hc218d9a_0 statsmodels 0.13.1 pypi_0 pypi stdlib-list 0.8.0 pypi_0 pypi tables 3.6.1 pypi_0 pypi tensorboard 2.7.0 pypi_0 pypi tensorboard-data-server 0.6.1 pypi_0 pypi tensorboard-plugin-wit 1.8.0 pypi_0 pypi terminado 0.12.1 pypi_0 pypi testpath 0.5.0 pypi_0 pypi texttable 1.6.7 pypi_0 pypi tk 8.6.11 h1ccaba5_0 toolz 0.12.0 pypi_0 pypi torch 1.10.0 pypi_0 pypi torchaudio 0.11.0 py38_cu113 pytorch torchmetrics 0.6.2 pypi_0 pypi torchvision 0.12.0 py38_cu113 pytorch tornado 6.1 pypi_0 pypi tqdm 4.62.3 pypi_0 pypi traitlets 5.1.1 pypi_0 pypi typing-extensions 4.0.1 pypi_0 pypi typing_extensions 4.1.1 pyh06a4308_0 umap-learn 0.5.2 pypi_0 pypi urllib3 1.26.7 pypi_0 pypi wcwidth 0.2.5 py_0 anaconda webencodings 0.5.1 pypi_0 pypi werkzeug 2.0.2 pypi_0 pypi wheel 0.37.0 pyhd3eb1b0_1 widgetsnbextension 3.5.2 pypi_0 pypi wrapt 1.12.1 py38h497a2fe_3 conda-forge xlrd 1.2.0 pypi_0 pypi xz 5.2.5 h7b6447c_0 yaml 0.2.5 h516909a_0 conda-forge yarl 1.7.2 pypi_0 pypi zeromq 4.3.3 he6710b0_3 anaconda zipp 3.6.0 pypi_0 pypi zlib 1.2.11 h7b6447c_3 zstd 1.4.9 haebb681_0 ```
n-gao commented 1 year ago

Thank you for pointing this out! The issue seems to be your PyMongo version. The directconnection option has been introduced in PyMongo 3.11.0, I've updated our seml requirements.