Skip to content

Releases: materialsproject/pymatgen

v2024.9.10

10 Sep 17:52
1ff1ba5
Compare
Choose a tag to compare

💥 Breaking: NumPy/Cython integer type changed from np.long/np.int_ to int64 on Windows to align with NumPy 2.x, changing the default integer type to int64 on Windows 64-bit systems in favor of the platform-dependent np.int_ type.
Recommendation: Please explicitly declare dtype=np.int64 when initializing a NumPy array if it's passed to a Cythonized pymatgen function like find_points_in_spheres. You may also want to test downstream packages with NumPy 1.x on Windows in CI pipelines.

🛠 Enhancements

  • Formatting customization for PWInput by @jsukpark in #4001
  • DOS Fingerprints enhancements by @naik-aakash in #3946
  • Add HSE-specific vdW parameters for dftd3 and dftd3-bj to MPHSERelaxSet. by @hongyi-zhao in #3955
  • Add VASP setting for the dftd4 vdW functional and extend PBE_64 support. by @hongyi-zhao in #3967
  • Add SOC & multiple PROCAR parsing functionalities by @kavanase in #3890
  • Add modification to aims input to match atomate2 magnetic order script by @tpurcell90 in #3878

🐛 Bug Fixes

  • Ion: fix CO2- and I3- parsing errors; enhance tests by @rkingsbury in #3991
  • Fix ruff PD901 and prefer sum over len+if by @janosh in #4012
  • Explicitly use int64 in Numpy/cython code to avoid OS inconsistency by @DanielYang59 in #3992
  • Update FermiDos.get_doping() to be more robust by @kavanase in #3879
  • Fix missing /src in doc links to source code by @DanielYang59 in #4032
  • Fix LNONCOLLINEAR match in Outcar parser by @DanielYang59 in #4034
  • Fix in-place VaspInput.incar updates having no effect if incar is dict (not Incar instance) by @janosh in #4052
  • Fix typo in Cp2kOutput.parse_hirshfeld add_site_property("hirshf[i->'']eld") by @janosh in #4055
  • Fix apply_operation(fractional=True) by @kavanase in #4057

💥 Breaking Changes

📖 Documentation

  • Docstring tweaks for io.vasp.inputs and format tweaks for some other parts by @DanielYang59 in #3996
  • Replace HTTP URLs with HTTPS, avoid from pytest import raises/mark by @DanielYang59 in #4021
  • Fix incorrect attribute name in Lobster.outputs.Cohpcar docstring by @DanielYang59 in #4039

🧹 House-Keeping

🚀 Performance

  • add LRU cache to structure matcher by @kbuma in #4036

🚧 CI

💡 Refactoring

🧪 Tests

🧹 Linting

🏥 Package Health

🏷️ Type Hints

  • Set kpoints in from_str method as integer in auto Gamma and Monkhorst modes by @DanielYang59 in #3994
  • Improve type annotations for io.lobster.{lobsterenv/outputs} by @DanielYang59 in #3887

🤷‍♂️ Other Changes

  • VaspInputSet.write_input: Improve error message by @yantar92 in #3999

New Contributors

Full Changelog: v2024.8.9...v2024.9.10

v2024.8.9

09 Aug 17:03
1ac6c68
Compare
Choose a tag to compare
  • Revert bad split of sets.py, which broke downstream code.

🎉 New Features

🐛 Bug Fixes

🛠 Enhancements

  • Element/Species: order full_electron_structure by energy by @rkingsbury in #3944
  • Extend CubicSupercell transformation to also be able to look for orthorhombic cells by @JaGeo in #3938
  • Allow custom .pmgrc.yaml location via new PMG_CONFIG_FILE env var by @janosh in #3949
  • Fix MPRester tests and access phonon properties from the new API without having mp-api installed. by @AntObi in #3950
  • Adding Abinit magmoms from netCDF files to Structure.site_properties by @gbrunin in #3936
  • Parallel Joblib Process Entries by @CompRhys in #3933
  • Add OPTIMADE adapter by @ml-evs in #3876
  • Check Inputs to Trajectory. by @CompRhys in #3978

📖 Documentation

🧹 House-Keeping

🚧 CI

💡 Refactoring

🏥 Package Health

🏷️ Type Hints

🤷‍♂️ Other Changes

New Contributors

Full Changelog: v2024.7.18...v2024.8.8

v2024.7.18

18 Jul 16:21
27d90b7
Compare
Choose a tag to compare

layout: default
title: Change Log

v2024.6.10

11 Jun 03:05
d136109
Compare
Choose a tag to compare

layout: default
title: Change Log

v2024.6.4

04 Jun 17:35
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • Run CI with two different uv resolution strategies: highest and lowest-direct by @janosh in #3852
  • Fix filter condition for warn msg of unphysical site occupancy in io.cif by @DanielYang59 in #3853

🛠 Enhancements

  • Add new .pmgrc.yaml setting PMG_VASP_PSP_SUB_DIRS: dict[str, str] by @janosh in #3858

📖 Documentation

🚧 CI

  • Add CI run without 'optional' deps installed by @janosh in #3857

Full Changelog: v2024.5.31...v2024.6.4

v2024.5.31

31 May 19:14
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • Make Beautifulsoup optional by @ab5424 in #3774
  • Fix overlayed subplots in BSPlotterProjected.get_projected_plots_dots() by @janosh in #3798
  • Fix _get_dipole_info for DDEC6 ChargemolAnalysis and add test case by @JonathanSchmidt1 in #3801
  • Cp2kOutput.parse_initial_structure() use regex for line matching to allow arbitrary white space between Atom/Kind/Element/... by @janosh in #3810
  • Fix the minor document error in POTCAR Setup. by @hongyi-zhao in #3834
  • Use isclose over == for overlap position check in SlabGenerator.get_slabs by @DanielYang59 in #3825
  • [Deprecation] Replace Element property is_rare_earth_metal with is_rare_earth to include Y and Sc by @DanielYang59 in #3817

🛠 Enhancements

📖 Documentation

  • Imperative get_... method and @property doc strings by @janosh in #3802
  • Doc string standardization by @janosh in #3805

🧹 House-Keeping

🧪 Tests

🏷️ Type Hints

🤷‍♂️ Other Changes

  • mixing scheme: change default for verbose by @tschaume in #3806
  • ruff 0.4.3 auto-fixes by @janosh in #3808
  • Re-enable some useful ruff rules by @DanielYang59 in #3813
  • pandas.read_csv: replace deprecated delim_whitespace=True with sep="\s+" by @ab5424 in #3846
  • Improve unphysical (greater than 1) occupancy handling in CifParser and add missing site label if not check_occu by @DanielYang59 in #3819

Full Changelog: v2024.5.1...v2024.5.31

v2024.5.1

01 May 18:49
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

📖 Documentation

🧹 House-Keeping

  • pyright fixes for ext/io/phonon/symmetry/transformations/util/vis/dev_scripts and improve io.lobster by @DanielYang59 in #3757
  • Separate test files by modules and collect test files csv/cif into folders by @DanielYang59 in #3746

🚧 CI

  • Officially support Python 3.12 and test in CI by @janosh in #3685

🏥 Package Health

🏷️ Type Hints

🤷‍♂️ Other Changes

New Contributors

Full Changelog: v2024.4.13...2024.5.1

v2024.4.13

13 Apr 05:51
Compare
Choose a tag to compare

Hot fix release for v2024.4.12 to be yanked on PyPI due to #3751.

🐛 Bug Fixes

  • Revert mistaken Cohp.has_antibnd_states_below_efermi rename by @JaGeo in #3750
  • Fix typing_extension ImportError in downstream packages by @janosh in #3752
  • Update some of the OPTIMADE aliases by @ml-evs in #3754

🧹 House-Keeping

Full Changelog: v2024.4.12...v2024.4.13

v2024.4.12

12 Apr 05:57
Compare
Choose a tag to compare

What's Changed

🎉 New Features

🐛 Bug Fixes

🛠 Enhancements

  • Ensure MSONAtoms is indeed MSONable when Atoms.info is loaded with goodies by @Andrew-S-Rosen in #3670
  • Generalize fatband plots from Lobster by @JaGeo in #3688
  • Plotting of Multicenter COBIs by @JaGeo in #2926
  • Support appending vectors to positions in XSF format by @mturiansky in #3704
  • Define needs_u_correction(comp: CompositionLike) -> set[str] utility function by @janosh in #3703
  • Add more flexibility to PhononDOSPlotter and PhononBSPlotter by @ab5424 in #3700
  • Define ElementType enum in core/periodic_table.py by @janosh in #3726

📖 Documentation

🧹 House-Keeping

🚀 Performance

🚧 CI

  • Prevent GitHub Actions from running docs-related CI on forks by @lan496 in #3697

🧪 Tests

🔒 Security Fixes

🏷️ Type Hints

  • Self return type on from_dict methods by @janosh in #3702
  • Return self from Structure methods replace, substitute, remove_species, remove_sites by @janosh in #3706
  • Self return type on Lattice methods by @janosh in #3707

🤷‍♂️ Other Changes

New Contributors

Full Changelog: v2024.3.1...v2024.4.12

v2024.3.1

01 Mar 14:22
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • Fix BSPlotterProjected.get_projected_plots_dots_patom_pmorb fix set & list intersect by @janosh in #3651
  • Remove rounding during FEFF writing by @matthewcarbone in #3345
  • Fix get_niggli_reduced_lattice if entering A1 case by @packer-jp in #3657
  • Remove BadPoscarWarning when POSCAR elements set by POTCAR by @esoteric-ephemera in #3662
  • Fix RuntimeError triggered in CI of downstream packages by @janosh in #3664

🛠 Enhancements

📖 Documentation

🧹 House-Keeping

  • Use np.eye(3) instead of [[1, 0, 0], [0, 1, 0], [0, 0, 1]] for identies by @janosh in #3659

🧪 Tests

  • Deprecate _parse_atomic_densities in BaderAnalysis and fix Bader test setup by @DanielYang59 in #3656

🏷️ Type Hints

🤷‍♂️ Other Changes

New Contributors

Full Changelog: v2024.2.23...v2024.3.1