Skip to content

[Bug]: crystal toolkit won't install due to boltztrap / netCDF --> updated PyPI release needed? #525

@computron

Description

@computron

Code snippet

What happened?

I think boltztrap is supposed to be under a [fermi] addon but seems to install by default (and fails). Is an updated PyPI release needed?

(atomate2) computron:atomate2 ajain$ pip install crystal-toolkit

Version

latest

Which OS?

  • MacOS
  • Windows
  • Linux

Log output

Collecting crystal-toolkit
  Using cached crystal_toolkit-2026.1.22.post0-py3-none-any.whl (15.8 MB)
Collecting dash-mp-components>=0.5.0rc0 (from crystal-toolkit)
  Using cached dash_mp_components-0.5.1rc5.tar.gz (6.5 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting dash>=2.11.0 (from crystal-toolkit)
  Using cached dash-4.1.0-py3-none-any.whl (7.2 MB)
Collecting flask-caching (from crystal-toolkit)
  Using cached Flask_Caching-2.3.1-py3-none-any.whl (28 kB)
Collecting frozendict (from crystal-toolkit)
  Using cached frozendict-2.4.7-py3-none-any.whl (16 kB)
Collecting mp-api (from crystal-toolkit)
  Using cached mp_api-0.46.0-py3-none-any.whl (119 kB)
Requirement already satisfied: pydantic-settings in ./lib/python3.11/site-packages (from crystal-toolkit) (2.13.1)
Requirement already satisfied: pymatgen>=2024.10.22 in ./lib/python3.11/site-packages (from crystal-toolkit) (2025.10.7)
Collecting scikit-image (from crystal-toolkit)
  Using cached scikit_image-0.26.0-cp311-cp311-macosx_10_9_x86_64.whl (12.4 MB)
Requirement already satisfied: scikit-learn in ./lib/python3.11/site-packages (from crystal-toolkit) (1.8.0)
Collecting shapely (from crystal-toolkit)
  Using cached shapely-2.1.2-cp311-cp311-macosx_10_9_x86_64.whl (1.8 MB)
Requirement already satisfied: webcolors in ./lib/python3.11/site-packages (from crystal-toolkit) (25.10.0)
Requirement already satisfied: ipython in ./lib/python3.11/site-packages (from crystal-toolkit) (8.24.0)
Collecting boltztrap2<25.11.1 (from crystal-toolkit)
  Using cached boltztrap2-25.3.1.tar.gz (4.5 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: spglib in ./lib/python3.11/site-packages (from boltztrap2<25.11.1->crystal-toolkit) (2.7.0)
Requirement already satisfied: numpy in ./lib/python3.11/site-packages (from boltztrap2<25.11.1->crystal-toolkit) (1.26.4)
Requirement already satisfied: scipy in ./lib/python3.11/site-packages (from boltztrap2<25.11.1->crystal-toolkit) (1.17.1)
Requirement already satisfied: matplotlib in ./lib/python3.11/site-packages (from boltztrap2<25.11.1->crystal-toolkit) (3.10.8)
Requirement already satisfied: ase in ./lib/python3.11/site-packages (from boltztrap2<25.11.1->crystal-toolkit) (3.27.0)
Collecting netCDF4 (from boltztrap2<25.11.1->crystal-toolkit)
  Using cached netcdf4-1.7.4.tar.gz (838 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error
  
  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [35 lines of output]
      reading from setup.cfg...
          HDF5_DIR environment variable not set, checking some standard locations ..
      checking /Users/ajain/include...
      hdf5 headers not found in /Users/ajain/include
      checking /usr/local/include...
      hdf5 headers not found in /usr/local/include
      checking /sw/include...
      hdf5 headers not found in /sw/include
      checking /opt/include...
      hdf5 headers not found in /opt/include
      checking /opt/local/include...
      hdf5 headers not found in /opt/local/include
      checking /opt/homebrew/include...
      hdf5 headers not found in /opt/homebrew/include
      checking /usr/include...
      hdf5 headers not found in /usr/include
      Traceback (most recent call last):
        File "/Users/ajain/Documents/code_venvs/atomate2/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/ajain/Documents/code_venvs/atomate2/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/Users/ajain/Documents/code_venvs/atomate2/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/90/ntqv188927lgzsjpt6f_p4_80000gn/T/pip-build-env-uzmfy9tt/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/90/ntqv188927lgzsjpt6f_p4_80000gn/T/pip-build-env-uzmfy9tt/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
          self.run_setup()
        File "/private/var/folders/90/ntqv188927lgzsjpt6f_p4_80000gn/T/pip-build-env-uzmfy9tt/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 317, in run_setup
          exec(code, locals())
        File "<string>", line 297, in <module>
        File "<string>", line 244, in _populate_hdf5_info
      ValueError: did not find HDF5 headers
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions