Custodian via Conda

Hi all,

I know this is the pymatgen group, but I’d thought I’d post here about a Custodian issue – since Shyue manages both packages.

I think the issue can be fixed by updating the respective anaconda list dependencies. For reference, I am using the matsci channel.

Long-story short, the function custodian.vasp.handlers.VaspErrorHandler() (here’s the link to documentation) is not accepting all input parameters. Both natoms_large_cell and errors_subset_to_catch, output an error of “TypeError: init() got an unexpected keyword argument ‘natoms_large_cell’”.

I do have a conda environment that works correctly with this custodian function, but trying to rebuild this conda environment for some of my collaborators gives the error shown above. I see that the key difference simply the custodian version – the function works correctly with custodian=2018.8.10 (from the matsci channel) while conda now loads custodian=1.0.3 (from the pypi channel) by default. It’s with the 1.0.3 version that I am getting the error. Forcing the custodian version to be 2018.8.10 is outputing a conda error as well.

I’m making the environment with the following commands:

  • conda create -n my_env python=3.7
  • conda install -n my_env -c matsci pymatgen pymatgen-diffusion custodian tqdm

Trying with the following installs the buggy custodian version as well:

  • conda create -n my_env python=3.7
  • conda install -n my_env -c matsci custodian

I hope this is a quick fix! I’ve tried replicating my enviornment via a conda environment.yml file for my collaborators, but that setup is failing as well.


Sorry for the late reply. There is some deprecation with regards to recent changes in pymatgen. I just released a new version of custodian compatible with the latest pymatgen.

Going forward, please use the conda-forge channel to install pymatgen, custodian, etc. We are in the process of deprecating the whole matsci channel since the conda-forge is much bigger and used repository.

The version in conda-forge will take a day or so to update to v2019.9.23 of custodian. In the meantime, you can use pip install custodian in your conda env to install the latest custodian which should hopefully not have the error.

Will do! I will switch to conda-forge and wait a few days to try this out. Thank you for updating the channel.

The new custodian is out on condo-forge already. Pls go ahead and try it out. Thanks.