[Debichem-devel] Bug#1091556: pymatgen: FTBFS on i386: make[1]: *** [debian/rules:108: override_dh_auto_test] Error 1
Lucas Nussbaum
lucas at debian.org
Sat Dec 28 16:32:57 GMT 2024
Source: pymatgen
Version: 2024.10.29+dfsg1-4
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20241228 ftbfs-trixie
Hi,
During a rebuild of all packages in sid, this package failed to build
on i386.
This package currently has binary packages on i386, so this is a regression.
Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> SKIP_TESTS=""; \
> list_initialised=0; \
> for t in test_matproj TestGenKpt TestHighSymmetryPoint test_from_multi_jobs_file test_from_string test_read_molecule test_read_nbo test_read_negative test_read_plots test_read_write_nbo7 test_all test_custom_smd_write test_sets test_CifWriter test_read_write test_init test_get_site_symmetries BSDOSPlotterTest test_cdft_dc_parsing test_get_structure_by_id test_babel_PC_with_RO_depth_0_vs_depth_10 test_fit test_get_parchg test_numerical_eoswrapper "(TestAnharmonicQuasiharmociDebyeApprox and test_gruneisen_parameter)" plot test_structure_environments test_pca test_get_info_cohps_to_neighbors test_get_parchg test_as_dict_from_dict test_ir_spectra; do \
> if [ ${list_initialised} = 0 ]; then \
> SKIP_TESTS=$t; \
> list_initialised=1; \
> else \
> SKIP_TESTS="${SKIP_TESTS} or $t"; \
> fi; \
> done; \
> if [ "x${SKIP_TESTS}" != "x" ]; then \
> SKIP_TESTS="not ( ${SKIP_TESTS} )"; \
> fi; \
> echo "skipping tests: ${SKIP_TESTS}"; \
> for py in `py3versions -sv`; do \
> pybuilddir=`pybuild --pyver $py --print build_dir | awk '{print $3}'`; \
> testdir=/<<PKGBUILDDIR>>/.pybuild/test_python$py; \
> cp -a $pybuilddir $testdir; \
> cp -a tests $testdir; \
> PMG_TEST_FILES_DIR=/usr/share/doc/pymatgen-test-files/examples/files \
> PYTHONPATH=$testdir PATH=$pybuilddir/../scripts:$PATH \
> python$py -m pytest -v --import-mode=prepend --color=no -k "${SKIP_TESTS}" $testdir; \
> done
> skipping tests: not ( test_matproj or TestGenKpt or TestHighSymmetryPoint or test_from_multi_jobs_file or test_from_string or test_read_molecule or test_read_nbo or test_read_negative or test_read_plots or test_read_write_nbo7 or test_all or test_custom_smd_write or test_sets or test_CifWriter or test_read_write or test_init or test_get_site_symmetries or BSDOSPlotterTest or test_cdft_dc_parsing or test_get_structure_by_id or test_babel_PC_with_RO_depth_0_vs_depth_10 or test_fit or test_get_parchg or test_numerical_eoswrapper or (TestAnharmonicQuasiharmociDebyeApprox and test_gruneisen_parameter) or plot or test_structure_environments or test_pca or test_get_info_cohps_to_neighbors or test_get_parchg or test_as_dict_from_dict or test_ir_spectra )
> ============================= test session starts ==============================
> platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
> rootdir: /<<PKGBUILDDIR>>
> configfile: pyproject.toml
> plugins: typeguard-4.4.1
> collected 2935 items / 384 deselected / 8 skipped / 2551 selected
>
> .pybuild/test_python3.13/tests/alchemy/test_filters.py ....... [ 0%]
> .pybuild/test_python3.13/tests/alchemy/test_materials.py ......... [ 0%]
> .pybuild/test_python3.13/tests/alchemy/test_transmuters.py . [ 0%]
> .pybuild/test_python3.13/tests/analysis/chemenv/connectivity/test_connected_components.py . [ 0%]
> .... [ 0%]
> .pybuild/test_python3.13/tests/analysis/chemenv/connectivity/test_environment_nodes.py . [ 0%]
> .. [ 0%]
> .pybuild/test_python3.13/tests/analysis/chemenv/connectivity/test_structure_connectivity.py . [ 1%]
> [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_chemenv_strategies.py . [ 1%]
> . [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_coordination_geometries.py . [ 1%]
> .. [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py . [ 1%]
> ..ss [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_voronoi.py . [ 1%]
> . [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_weights.py . [ 1%]
> ...... [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/utils/test_chemenv_config.py . [ 1%]
> [ 1%]
> .pybuild/test_python3.13/tests/analysis/chemenv/utils/test_coordination_geometry_utils.py . [ 1%]
> ........... [ 2%]
> .pybuild/test_python3.13/tests/analysis/chemenv/utils/test_func_utils.py . [ 2%]
> .. [ 2%]
> .pybuild/test_python3.13/tests/analysis/chemenv/utils/test_graph_utils.py . [ 2%]
> ... [ 2%]
> .pybuild/test_python3.13/tests/analysis/chemenv/utils/test_math_utils.py . [ 2%]
> ........ [ 2%]
> .pybuild/test_python3.13/tests/analysis/diffraction/test_neutron.py . [ 2%]
> .pybuild/test_python3.13/tests/analysis/diffraction/test_tem.py ........ [ 3%]
> ......... [ 3%]
> .pybuild/test_python3.13/tests/analysis/diffraction/test_xrd.py .. [ 3%]
> .pybuild/test_python3.13/tests/analysis/elasticity/test_elastic.py ..... [ 3%]
> .................... [ 4%]
> .pybuild/test_python3.13/tests/analysis/elasticity/test_strain.py ...... [ 4%]
> .. [ 4%]
> .pybuild/test_python3.13/tests/analysis/elasticity/test_stress.py . [ 5%]
> .pybuild/test_python3.13/tests/analysis/ferroelectricity/test_polarization.py . [ 5%]
> ........... [ 5%]
> .pybuild/test_python3.13/tests/analysis/interfaces/test_coherent_interface.py . [ 5%]
> .. [ 5%]
> .pybuild/test_python3.13/tests/analysis/interfaces/test_substrate_analyzer.py . [ 5%]
> . [ 5%]
> .pybuild/test_python3.13/tests/analysis/interfaces/test_zsl.py .. [ 5%]
> .pybuild/test_python3.13/tests/analysis/magnetism/test_analyzer.py ..... [ 5%]
> ....s. [ 6%]
> .pybuild/test_python3.13/tests/analysis/magnetism/test_heisenberg.py ... [ 6%]
> .... [ 6%]
> .pybuild/test_python3.13/tests/analysis/magnetism/test_jahnteller.py ... [ 6%]
> [ 6%]
> .pybuild/test_python3.13/tests/analysis/solar/test_slme.py . [ 6%]
> .pybuild/test_python3.13/tests/analysis/structure_prediction/test_dopant_predictor.py . [ 6%]
> . [ 6%]
> .pybuild/test_python3.13/tests/analysis/structure_prediction/test_substitution_probability.py . [ 6%]
> .. [ 6%]
> .pybuild/test_python3.13/tests/analysis/structure_prediction/test_substitutor.py . [ 6%]
> . [ 6%]
> .pybuild/test_python3.13/tests/analysis/structure_prediction/test_volume_predictor.py . [ 6%]
> .. [ 7%]
> .pybuild/test_python3.13/tests/analysis/test_adsorption.py ...... [ 7%]
> .pybuild/test_python3.13/tests/analysis/test_bond_dissociation.py sss [ 7%]
> .pybuild/test_python3.13/tests/analysis/test_bond_valence.py .... [ 7%]
> .pybuild/test_python3.13/tests/analysis/test_chempot_diagram.py ........ [ 7%]
> [ 7%]
> .pybuild/test_python3.13/tests/analysis/test_cost.py .... [ 7%]
> .pybuild/test_python3.13/tests/analysis/test_dimensionality.py ......... [ 8%]
> . [ 8%]
> .pybuild/test_python3.13/tests/analysis/test_disorder.py . [ 8%]
> .pybuild/test_python3.13/tests/analysis/test_energy_models.py ...... [ 8%]
> .pybuild/test_python3.13/tests/analysis/test_eos.py ..... [ 8%]
> .pybuild/test_python3.13/tests/analysis/test_ewald.py ... [ 8%]
> .pybuild/test_python3.13/tests/analysis/test_fragmenter.py ssss.....s [ 9%]
> .pybuild/test_python3.13/tests/analysis/test_graphs.py ..s.............. [ 10%]
> ....s............ [ 10%]
> .pybuild/test_python3.13/tests/analysis/test_hhi.py . [ 10%]
> .pybuild/test_python3.13/tests/analysis/test_interface_reactions.py .... [ 10%]
> ............. [ 11%]
> .pybuild/test_python3.13/tests/analysis/test_local_env.py .............s [ 11%]
> s.....................s..... [ 13%]
> .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py sssssss [ 13%]
> ................................................... [ 15%]
> .pybuild/test_python3.13/tests/analysis/test_molecule_structure_comparator.py . [ 15%]
> ..s. [ 15%]
> .pybuild/test_python3.13/tests/analysis/test_nmr.py ...... [ 15%]
> .pybuild/test_python3.13/tests/analysis/test_phase_diagram.py .......... [ 16%]
> ........................................................................ [ 18%]
> [ 18%]
> .pybuild/test_python3.13/tests/analysis/test_piezo.py ... [ 19%]
> .pybuild/test_python3.13/tests/analysis/test_piezo_sensitivity.py ...... [ 19%]
> ........ [ 19%]
> .pybuild/test_python3.13/tests/analysis/test_pourbaix_diagram.py ....... [ 19%]
> ......... [ 20%]
> .pybuild/test_python3.13/tests/analysis/test_prototypes.py . [ 20%]
> .pybuild/test_python3.13/tests/analysis/test_quasi_harmonic_debye_approx.py . [ 20%]
> ............ [ 20%]
> .pybuild/test_python3.13/tests/analysis/test_quasirrho.py ...... [ 21%]
> .pybuild/test_python3.13/tests/analysis/test_reaction_calculator.py .... [ 21%]
> ..........s...... [ 21%]
> .pybuild/test_python3.13/tests/analysis/test_structure_analyzer.py ..... [ 22%]
> .... [ 22%]
> .pybuild/test_python3.13/tests/analysis/test_structure_matcher.py ...... [ 22%]
> ....................... [ 23%]
> .pybuild/test_python3.13/tests/analysis/test_surface_analysis.py ....... [ 23%]
> . [ 23%]
> .pybuild/test_python3.13/tests/analysis/test_transition_state.py . [ 23%]
> .pybuild/test_python3.13/tests/analysis/test_wulff.py ... [ 23%]
> .pybuild/test_python3.13/tests/analysis/test_xps.py . [ 23%]
> .pybuild/test_python3.13/tests/analysis/topological/test_spillage.py . [ 23%]
> .pybuild/test_python3.13/tests/analysis/xas/test_spectrum.py ........... [ 24%]
> [ 24%]
> .pybuild/test_python3.13/tests/apps/battery/test_analyzer.py .... [ 24%]
> .pybuild/test_python3.13/tests/apps/battery/test_conversion_battery.py . [ 24%]
> .. [ 24%]
> .pybuild/test_python3.13/tests/apps/battery/test_insertion_battery.py .. [ 24%]
> ....... [ 24%]
> .pybuild/test_python3.13/tests/apps/borg/test_hive.py ........ [ 25%]
> .pybuild/test_python3.13/tests/apps/borg/test_queen.py .. [ 25%]
> .pybuild/test_python3.13/tests/cli/test_pmg_analyze.py . [ 25%]
> .pybuild/test_python3.13/tests/cli/test_pmg_diff.py . [ 25%]
> .pybuild/test_python3.13/tests/cli/test_pmg_structure.py . [ 25%]
> .pybuild/test_python3.13/tests/command_line/test_bader_caller.py ssss [ 25%]
> .pybuild/test_python3.13/tests/command_line/test_chargemol_caller.py .. [ 25%]
> .pybuild/test_python3.13/tests/command_line/test_critic2_caller.py ss.. [ 25%]
> .pybuild/test_python3.13/tests/command_line/test_enumlib_caller.py sss [ 25%]
> .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py ssssssss [ 26%]
> sssssssssssssssssss [ 27%]
> .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py sssssss [ 27%]
> [ 27%]
> .pybuild/test_python3.13/tests/command_line/test_vampire_caller.py s [ 27%]
> .pybuild/test_python3.13/tests/core/test_bonds.py ....... [ 27%]
> .pybuild/test_python3.13/tests/core/test_composition.py ................ [ 28%]
> ..................................... [ 29%]
> .pybuild/test_python3.13/tests/core/test_interface.py .................. [ 30%]
> .... [ 30%]
> .pybuild/test_python3.13/tests/core/test_ion.py ............... [ 31%]
> .pybuild/test_python3.13/tests/core/test_lattice.py .................... [ 31%]
> ............ [ 32%]
> .pybuild/test_python3.13/tests/core/test_libxcfunc.py .. [ 32%]
> .pybuild/test_python3.13/tests/core/test_molecular_orbitals.py .... [ 32%]
> .pybuild/test_python3.13/tests/core/test_operations.py ................ [ 33%]
> .pybuild/test_python3.13/tests/core/test_periodic_table.py ............. [ 33%]
> ............................................. [ 35%]
> .pybuild/test_python3.13/tests/core/test_settings.py .. [ 35%]
> .pybuild/test_python3.13/tests/core/test_sites.py .................... [ 36%]
> .pybuild/test_python3.13/tests/core/test_spectrum.py ..... [ 36%]
> .pybuild/test_python3.13/tests/core/test_structure.py .................s [ 37%]
> .......s...................................ss....s.................ssss. [ 40%]
> .............................................s.......s....... [ 42%]
> .pybuild/test_python3.13/tests/core/test_surface.py .................... [ 43%]
> ...s.... [ 43%]
> .pybuild/test_python3.13/tests/core/test_tensors.py .................... [ 44%]
> ........ [ 44%]
> .pybuild/test_python3.13/tests/core/test_trajectory.py ................. [ 45%]
> [ 45%]
> .pybuild/test_python3.13/tests/core/test_units.py ................. [ 46%]
> .pybuild/test_python3.13/tests/core/test_xcfunc.py ....s. [ 46%]
> .pybuild/test_python3.13/tests/electronic_structure/test_bandstructure.py . [ 46%]
> .............................. [ 47%]
> .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py ss [ 47%]
> ssssssssssssss [ 48%]
> .pybuild/test_python3.13/tests/electronic_structure/test_cohp.py ....... [ 48%]
> ....................... [ 49%]
> .pybuild/test_python3.13/tests/electronic_structure/test_core.py ....... [ 49%]
> ... [ 49%]
> .pybuild/test_python3.13/tests/electronic_structure/test_dos.py ........ [ 50%]
> ................. [ 50%]
> .pybuild/test_python3.13/tests/entries/test_compatibility.py ........... [ 51%]
> ........................................................................ [ 53%]
> .... [ 54%]
> .pybuild/test_python3.13/tests/entries/test_computed_entries.py ........ [ 54%]
> ............................. [ 55%]
> .pybuild/test_python3.13/tests/entries/test_correction_calculator.py ... [ 55%]
> . [ 55%]
> .pybuild/test_python3.13/tests/entries/test_entry_tools.py ....... [ 55%]
> .pybuild/test_python3.13/tests/entries/test_exp_entries.py ... [ 56%]
> .pybuild/test_python3.13/tests/entries/test_mixing_scheme.py ........... [ 56%]
> .................... [ 57%]
> .pybuild/test_python3.13/tests/ext/test_cod.py .. [ 57%]
> .pybuild/test_python3.13/tests/ext/test_optimade.py ..... [ 57%]
> .pybuild/test_python3.13/tests/io/abinit/test_abiobjects.py ......... [ 57%]
> .pybuild/test_python3.13/tests/io/abinit/test_inputs.py FFFF.FFF [ 58%]
> .pybuild/test_python3.13/tests/io/abinit/test_netcdf.py ... [ 58%]
> .pybuild/test_python3.13/tests/io/abinit/test_pseudos.py FFFFFF [ 58%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_bs_generator.py ... [ 58%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_gw_generator.py . [ 58%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_input_set.py . [ 58%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_md_generator.py . [ 58%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_relax_generator.py ... [ 58%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_static_generator.py ... [ 59%]
> . [ 59%]
> .pybuild/test_python3.13/tests/io/aims/sets/test_static_restart_from_relax_generator.py . [ 59%]
> .... [ 59%]
> .pybuild/test_python3.13/tests/io/aims/test_inputs.py ...... [ 59%]
> .pybuild/test_python3.13/tests/io/aims/test_outputs.py ...... [ 59%]
> .pybuild/test_python3.13/tests/io/aims/test_parsers.py ................. [ 60%]
> ........................................................................ [ 63%]
> ....... [ 63%]
> .pybuild/test_python3.13/tests/io/cp2k/test_inputs.py .............. [ 64%]
> .pybuild/test_python3.13/tests/io/cp2k/test_outputs.py ....... [ 64%]
> .pybuild/test_python3.13/tests/io/exciting/test_inputs.py .... [ 64%]
> .pybuild/test_python3.13/tests/io/feff/test_inputs.py .................. [ 65%]
> [ 65%]
> .pybuild/test_python3.13/tests/io/feff/test_outputs.py ...... [ 65%]
> .pybuild/test_python3.13/tests/io/lammps/test_data.py .................. [ 66%]
> ........... [ 66%]
> .pybuild/test_python3.13/tests/io/lammps/test_generators.py . [ 66%]
> .pybuild/test_python3.13/tests/io/lammps/test_inputs.py ................ [ 67%]
> ..... [ 67%]
> .pybuild/test_python3.13/tests/io/lammps/test_outputs.py .... [ 67%]
> .pybuild/test_python3.13/tests/io/lammps/test_utils.py ... [ 67%]
> .pybuild/test_python3.13/tests/io/lobster/test_inputs.py ............... [ 68%]
> . [ 68%]
> .pybuild/test_python3.13/tests/io/lobster/test_lobsterenv.py ........... [ 68%]
> .... [ 68%]
> .pybuild/test_python3.13/tests/io/lobster/test_outputs.py .............. [ 69%]
> .................................. [ 70%]
> .pybuild/test_python3.13/tests/io/pwmat/test_inputs.py .......... [ 71%]
> .pybuild/test_python3.13/tests/io/qchem/test_inputs.py ................. [ 71%]
> .................. [ 72%]
> .pybuild/test_python3.13/tests/io/qchem/test_outputs.py ................ [ 73%]
> .s... [ 73%]
> .pybuild/test_python3.13/tests/io/qchem/test_utils.py .. [ 73%]
> .pybuild/test_python3.13/tests/io/test_adf.py .............. [ 74%]
> .pybuild/test_python3.13/tests/io/test_ase.py ....................... [ 74%]
> .pybuild/test_python3.13/tests/io/test_atat.py .... [ 75%]
> .pybuild/test_python3.13/tests/io/test_cif.py ........s................. [ 76%]
> ................... [ 76%]
> .pybuild/test_python3.13/tests/io/test_common.py .. [ 76%]
> .pybuild/test_python3.13/tests/io/test_core.py ......... [ 77%]
> .pybuild/test_python3.13/tests/io/test_cssr.py .. [ 77%]
> .pybuild/test_python3.13/tests/io/test_fiesta.py .. [ 77%]
> .pybuild/test_python3.13/tests/io/test_gaussian.py ................. [ 78%]
> .pybuild/test_python3.13/tests/io/test_jarvis.py ss [ 78%]
> .pybuild/test_python3.13/tests/io/test_lmto.py ..... [ 78%]
> .pybuild/test_python3.13/tests/io/test_multiwfn.py ..... [ 78%]
> .pybuild/test_python3.13/tests/io/test_nwchem.py ............ [ 79%]
> .pybuild/test_python3.13/tests/io/test_optimade.py . [ 79%]
> .pybuild/test_python3.13/tests/io/test_packmol.py .......s. [ 79%]
> .pybuild/test_python3.13/tests/io/test_phonopy.py ........... [ 79%]
> .pybuild/test_python3.13/tests/io/test_prismatic.py . [ 79%]
> .pybuild/test_python3.13/tests/io/test_pwscf.py ............. [ 80%]
> .pybuild/test_python3.13/tests/io/test_res.py ............... [ 81%]
> .pybuild/test_python3.13/tests/io/test_template_input.py . [ 81%]
> .pybuild/test_python3.13/tests/io/test_wannier90.py .... [ 81%]
> .pybuild/test_python3.13/tests/io/test_xcrysden.py .... [ 81%]
> .pybuild/test_python3.13/tests/io/test_xr.py .. [ 81%]
> .pybuild/test_python3.13/tests/io/test_xyz.py ........ [ 81%]
> .pybuild/test_python3.13/tests/io/vasp/test_help.py ... [ 81%]
> .pybuild/test_python3.13/tests/io/vasp/test_inputs.py .................. [ 82%]
> .................................................s............. [ 85%]
> .pybuild/test_python3.13/tests/io/vasp/test_optics.py ... [ 85%]
> .pybuild/test_python3.13/tests/io/vasp/test_outputs.py ................. [ 85%]
> ........................................................................ [ 88%]
> ................. [ 89%]
> .pybuild/test_python3.13/tests/io/xtb/test_inputs.py .. [ 89%]
> .pybuild/test_python3.13/tests/optimization/test_linear_assignment.py .. [ 89%]
> .. [ 89%]
> .pybuild/test_python3.13/tests/optimization/test_neighbors.py . [ 89%]
> .pybuild/test_python3.13/tests/phonon/test_bandstructure.py ........... [ 90%]
> .pybuild/test_python3.13/tests/phonon/test_dos.py ................... [ 90%]
> .pybuild/test_python3.13/tests/phonon/test_gruneisen.py .......... [ 91%]
> .pybuild/test_python3.13/tests/phonon/test_thermal_displacements.py .... [ 91%]
> .......... [ 91%]
> .pybuild/test_python3.13/tests/symmetry/test_analyzer.py ............... [ 92%]
> .................. [ 93%]
> .pybuild/test_python3.13/tests/symmetry/test_groups.py ................. [ 93%]
> ....... [ 93%]
> .pybuild/test_python3.13/tests/symmetry/test_kpath_lm.py ... [ 94%]
> .pybuild/test_python3.13/tests/symmetry/test_kpath_sc.py .. [ 94%]
> .pybuild/test_python3.13/tests/symmetry/test_kpaths.py .s [ 94%]
> .pybuild/test_python3.13/tests/symmetry/test_maggroups.py ...... [ 94%]
> .pybuild/test_python3.13/tests/symmetry/test_settings.py .... [ 94%]
> .pybuild/test_python3.13/tests/symmetry/test_site_symmetries.py . [ 94%]
> .pybuild/test_python3.13/tests/test_pkg.py . [ 94%]
> .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py . [ 94%]
> s..sssss..ssssssss...ssssss....s [ 96%]
> .pybuild/test_python3.13/tests/transformations/test_site_transformations.py . [ 96%]
> ..........s...... [ 96%]
> .pybuild/test_python3.13/tests/transformations/test_standard_transformations.py . [ 96%]
> ...........ssss............ [ 97%]
> .pybuild/test_python3.13/tests/util/test_coord.py ...................... [ 98%]
> [ 98%]
> .pybuild/test_python3.13/tests/util/test_graph_hashing.py .. [ 98%]
> .pybuild/test_python3.13/tests/util/test_io.py . [ 98%]
> .pybuild/test_python3.13/tests/util/test_misc.py ...... [ 99%]
> .pybuild/test_python3.13/tests/util/test_num.py . [ 99%]
> .pybuild/test_python3.13/tests/util/test_provenance.py ........ [ 99%]
> .pybuild/test_python3.13/tests/util/test_string.py ........... [ 99%]
> .pybuild/test_python3.13/tests/util/test_typing.py ..... [100%]
>
> =================================== FAILURES ===================================
> ___________________________ TestAbinitInput.test_api ___________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe37ca0e8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestAbinitInput testMethod=test_api>
>
> def test_api(self):
> """Testing BasicAbinitInput API."""
> # Build simple input with structure and pseudos
> unit_cell = {
> "acell": 3 * [10.217],
> "rprim": [[0.0, 0.5, 0.5], [0.5, 0.0, 0.5], [0.5, 0.5, 0.0]],
> "ntypat": 1,
> "znucl": [14],
> "natom": 2,
> "typat": [1, 1],
> "xred": [[0.0, 0.0, 0.0], [0.25, 0.25, 0.25]],
> }
>
> > inp = BasicAbinitInput(structure=unit_cell, pseudos=abiref_file("14si.pspnc"))
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:52:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:759: in __init__
> self._pseudos = PseudoTable.as_table(pseudos).get_pseudos_for_structure(self.structure)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1523: in as_table
> return items if isinstance(items, cls) else cls(items)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe37ca0e8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ____________________ TestAbinitInput.test_helper_functions _____________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe9c7f0e0>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestAbinitInput testMethod=test_helper_functions>
>
> def test_helper_functions(self):
> """Testing BasicAbinitInput helper functions."""
> > inp = BasicAbinitInput(structure=abiref_file("si.cif"), pseudos="14si.pspnc", pseudo_dir=TEST_DIR)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:154:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:759: in __init__
> self._pseudos = PseudoTable.as_table(pseudos).get_pseudos_for_structure(self.structure)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1523: in as_table
> return items if isinstance(items, cls) else cls(items)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe9c7f0e0>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> ______________________ TestAbinitInput.test_input_errors _______________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe334d378>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestAbinitInput testMethod=test_input_errors>
>
> def test_input_errors(self):
> """Testing typical BasicAbinitInput Error."""
> si_structure = Structure.from_file(abiref_file("si.cif"))
>
> # Ambiguous list of pseudos.
> with pytest.raises(BasicAbinitInput.Error):
> > BasicAbinitInput(si_structure, pseudos=abiref_files("14si.pspnc", "14si.4.hgh"))
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:132:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:759: in __init__
> self._pseudos = PseudoTable.as_table(pseudos).get_pseudos_for_structure(self.structure)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1523: in as_table
> return items if isinstance(items, cls) else cls(items)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe334d378>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> __________________________ TestMultiDataset.test_api ___________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe48d0228>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestMultiDataset testMethod=test_api>
>
> def test_api(self):
> """Testing BasicMultiDataset API."""
> structure = Structure.from_file(abiref_file("si.cif"))
> pseudo = abiref_file("14si.pspnc")
> pseudo_dir = os.path.dirname(pseudo)
> > multi = BasicMultiDataset(structure=structure, pseudos=pseudo)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:179:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe48d0228>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> ________________________ TestFactory.test_ebands_input _________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe920d350>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestFactory testMethod=test_ebands_input>
>
> def test_ebands_input(self):
> """Testing ebands_input factory."""
> > multi = ebands_input(self.si_structure, self.si_pseudo, kppa=10, ecut=2)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:279:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:351: in ebands_input
> multi = BasicMultiDataset(structure, pseudos, ndtset=2 if dos_kppa is None else 2 + len(dos_kppa))
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe920d350>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> __________________________ TestFactory.test_gs_input ___________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe8fecc10>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestFactory testMethod=test_gs_input>
>
> def test_gs_input(self):
> """Testing gs_input factory."""
> > inp = gs_input(self.si_structure, self.si_pseudo, kppa=10, ecut=10, spin_mode="polarized")
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:271:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:290: in gs_input
> multi = ebands_input(
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:351: in ebands_input
> multi = BasicMultiDataset(structure, pseudos, ndtset=2 if dos_kppa is None else 2 + len(dos_kppa))
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe8fecc10>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> ___________________ TestFactory.test_ion_ioncell_relax_input ___________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe372cc10>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestFactory testMethod=test_ion_ioncell_relax_input>
>
> def test_ion_ioncell_relax_input(self):
> """Testing ion_ioncell_relax_input factory."""
> > multi = ion_ioncell_relax_input(self.si_structure, self.si_pseudo, kppa=10, ecut=2)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_inputs.py:320:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:442: in ion_ioncell_relax_input
> multi = BasicMultiDataset(structure, pseudos, ndtset=2)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe372cc10>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> __________________________ TestPseudo.test_nc_pseudos __________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2d65300>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_nc_pseudos>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2d65300>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ______________________ TestPseudo.test_oncvpsp_pseudo_fr _______________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2d65f60>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_oncvpsp_pseudo_fr>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2d65f60>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ______________________ TestPseudo.test_oncvpsp_pseudo_sr _______________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2cd34f8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_oncvpsp_pseudo_sr>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2cd34f8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> _________________________ TestPseudo.test_paw_pseudos __________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2b50c30>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_paw_pseudos>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe2b50c30>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ________________________ TestPseudo.test_pawxml_pseudos ________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe21cd830>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_pawxml_pseudos>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe21cd830>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> _________________________ TestPseudoTable.test_methods _________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe478d828>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.13/collections/__init__.py:1139: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudoTable testMethod=test_methods>
>
> def test_methods(self):
> """Test PseudoTable methods."""
> > table = PseudoTable([f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")])
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/tests/io/abinit/test_pseudos.py:200:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xe478d828>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.13/collections/__init__.py", line 1139, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.13/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ============================= slowest 30 durations =============================
> 69.18s call .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py::TestCubicSupercellTransformation::test_apply_transformation_orthorhombic_supercell
> 41.28s call .pybuild/test_python3.13/tests/symmetry/test_kpath_lm.py::TestKPathLatimerMunro::test_kpath_generation
> 26.86s call .pybuild/test_python3.13/tests/io/vasp/test_optics.py::TestVasprun::test_optics
> 24.93s call .pybuild/test_python3.13/tests/core/test_surface.py::TestSlab::test_symmetrization
> 23.17s call .pybuild/test_python3.13/tests/analysis/elasticity/test_elastic.py::TestElasticTensorExpansion::test_get_yield_stress
> 21.31s call .pybuild/test_python3.13/tests/core/test_surface.py::TestSlabGenerator::test_non_stoichiometric_symmetrized_slab
> 18.90s call .pybuild/test_python3.13/tests/analysis/test_structure_analyzer.py::TestMiscFunction::test_average_coordination_number
> 18.67s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_thermal_conductivity_slack
> 18.50s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_tdos
> 18.30s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_gruneisen
> 18.25s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_as_from_dict
> 18.25s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_average_gruneisen
> 18.15s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_debye_temp_phonopy
> 18.02s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_acoustic_debye_temp
> 17.99s call .pybuild/test_python3.13/tests/io/test_phonopy.py::TestGruneisen::test_gruneisen_parameter
> 17.89s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_phdos
> 17.88s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_multi
> 17.86s call .pybuild/test_python3.13/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_frequencies
> 17.47s call .pybuild/test_python3.13/tests/symmetry/test_kpath_sc.py::TestBandStructureSC::test_kpath_generation
> 16.78s call .pybuild/test_python3.13/tests/symmetry/test_groups.py::TestSpaceGroup::test_order_symm_ops
> 16.50s call .pybuild/test_python3.13/tests/ext/test_optimade.py::TestOptimade::test_update_aliases
> 14.24s call .pybuild/test_python3.13/tests/core/test_surface.py::TestSlab::test_get_symmetric_sites
> 12.50s call .pybuild/test_python3.13/tests/core/test_trajectory.py::TestTrajectory::test_xdatcar_write
> 12.44s call .pybuild/test_python3.13/tests/analysis/test_prototypes.py::TestAflowPrototypeMatcher::test_prototype_matching
> 12.40s call .pybuild/test_python3.13/tests/core/test_surface.py::TestMillerIndexFinder::test_generate_all_slabs
> 12.18s call .pybuild/test_python3.13/tests/core/test_trajectory.py::TestTrajectory::test_conversion
> 12.16s call .pybuild/test_python3.13/tests/symmetry/test_groups.py::TestSpaceGroup::test_point_group_is_set
> 12.09s call .pybuild/test_python3.13/tests/core/test_trajectory.py::TestTrajectory::test_extend
> 12.08s call .pybuild/test_python3.13/tests/entries/test_entry_tools.py::TestEntrySet::test_ground_states
> 11.98s call .pybuild/test_python3.13/tests/symmetry/test_groups.py::TestSpaceGroup::test_valid_symbol
> =========================== short test summary info ============================
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_functional_groups.py:16: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap2.py:27: No boltztrap2
> SKIPPED [1] .pybuild/test_python3.13/tests/ext/test_matproj.py:44: MP API is down
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_babel.py:17: could not import 'openbabel.pybel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_openff.py:25: could not import 'openff.toolkit': No module named 'openff'
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_shengbte.py:9: could not import 'f90nml': No module named 'f90nml'
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_zeopp.py:20: zeo not installed
> SKIPPED [1] .pybuild/test_python3.13/tests/symmetry/test_kpath_hin.py:11: seekpath not installed
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py:174: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py:169: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/magnetism/test_analyzer.py:263: enumlib not present
> SKIPPED [3] .pybuild/test_python3.13/tests/analysis/test_bond_dissociation.py:17: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_fragmenter.py:83: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_fragmenter.py:68: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_fragmenter.py:74: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_fragmenter.py:111: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_fragmenter.py:161: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_graphs.py:347: graphviz executables not present
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_graphs.py:588: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [2] .pybuild/test_python3.13/tests/analysis/test_local_env.py:294: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_local_env.py:1355: critic2 executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:157: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:164: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:176: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:243: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:250: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:257: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_matcher.py:264: OBAlign is missing, Skipping
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_molecule_structure_comparator.py:144: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.13/tests/analysis/test_reaction_calculator.py:334: hash test requires 64 bits
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_bader_caller.py:119: bader executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_bader_caller.py:84: bader executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_bader_caller.py:66: bader executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_bader_caller.py:134: bader executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_critic2_caller.py:26: critic2 executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_critic2_caller.py:62: critic2 executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_enumlib_caller.py:92: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_enumlib_caller.py:80: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_enumlib_caller.py:122: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:41: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:74: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:181: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:148: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:236: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:272: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:114: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:139: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:144: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:135: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:120: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:130: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:126: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:283: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:212: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:320: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:332: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:315: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:356: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:345: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:352: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:363: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:359: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:383: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:373: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:379: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_gulp_caller.py:386: gulp not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:67: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:101: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:28: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:51: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:59: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:77: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_mcsqs_caller.py:89: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/command_line/test_vampire_caller.py:34: vampire executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:712: Only run this in CI tests
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:105: enumlib or mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:1832: chgnet is failing with Numpy 1, see #3992
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:1904: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:985: PMG_MAPI_KEY environment variable not set or MP API is down. This is also the case in a PR.
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:1807: chgnet is failing with Numpy 1, see #3992
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:1916: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:1927: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:1936: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:2567: could not import 'tblite': No module named 'tblite'
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_structure.py:2575: Pytorch and TBLite clash. https://github.com/materialsproject/pymatgen/pull/3060
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_surface.py:700: This test relies on neighbor orders and is hard coded. Disable temporarily
> SKIPPED [1] .pybuild/test_python3.13/tests/core/test_xcfunc.py:56: TODO:
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:252: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:219: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:239: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:167: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:197: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:230: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:99: No FDINT
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:121: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:201: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:130: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:114: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:84: No FDINT
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:205: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:139: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:155: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/electronic_structure/test_boltztrap.py:41: No x_trans.
> SKIPPED [1] .pybuild/test_python3.13/tests/io/qchem/test_outputs.py:350: OpenBabel not installed.
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_cif.py:292: non-free PF*.cif test files are not available
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_jarvis.py:12: JARVIS-tools not loaded.
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_jarvis.py:20: JARVIS-tools not loaded.
> SKIPPED [1] .pybuild/test_python3.13/tests/io/test_packmol.py:199: could not import 'openbabel': No module named '_openbabel'
> SKIPPED [1] .pybuild/test_python3.13/tests/io/vasp/test_inputs.py:1469: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.13/tests/symmetry/test_kpaths.py:21: No seek path present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:97: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:158: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:188: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:203: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:229: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:241: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:356: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:296: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:334: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:326: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:344: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:484: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:532: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:541: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:599: mcsqs not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:609: mcsqs not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:630: mcsqs not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:662: icet not installed.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:648: icet not installed.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:673: icet not installed.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_advanced_transformations.py:866: hiphive not present
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_site_transformations.py:213: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_standard_transformations.py:227: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_standard_transformations.py:244: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_standard_transformations.py:262: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.13/tests/transformations/test_standard_transformations.py:268: enum_lib not present.
> == 13 failed, 2407 passed, 139 skipped, 384 deselected in 1392.08s (0:23:12) ===
> ============================= test session starts ==============================
> platform linux -- Python 3.12.8, pytest-8.3.4, pluggy-1.5.0
> rootdir: /<<PKGBUILDDIR>>
> configfile: pyproject.toml
> plugins: typeguard-4.4.1
> collected 2953 items / 386 deselected / 6 skipped / 2567 selected
>
> .pybuild/test_python3.12/tests/alchemy/test_filters.py ....... [ 0%]
> .pybuild/test_python3.12/tests/alchemy/test_materials.py ......... [ 0%]
> .pybuild/test_python3.12/tests/alchemy/test_transmuters.py . [ 0%]
> .pybuild/test_python3.12/tests/analysis/chemenv/connectivity/test_connected_components.py . [ 0%]
> .... [ 0%]
> .pybuild/test_python3.12/tests/analysis/chemenv/connectivity/test_environment_nodes.py . [ 0%]
> .. [ 0%]
> .pybuild/test_python3.12/tests/analysis/chemenv/connectivity/test_structure_connectivity.py . [ 1%]
> [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_chemenv_strategies.py . [ 1%]
> . [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_coordination_geometries.py . [ 1%]
> .. [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py . [ 1%]
> ..ss [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_voronoi.py . [ 1%]
> . [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_weights.py . [ 1%]
> ...... [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/utils/test_chemenv_config.py . [ 1%]
> [ 1%]
> .pybuild/test_python3.12/tests/analysis/chemenv/utils/test_coordination_geometry_utils.py . [ 1%]
> ........... [ 2%]
> .pybuild/test_python3.12/tests/analysis/chemenv/utils/test_func_utils.py . [ 2%]
> .. [ 2%]
> .pybuild/test_python3.12/tests/analysis/chemenv/utils/test_graph_utils.py . [ 2%]
> ... [ 2%]
> .pybuild/test_python3.12/tests/analysis/chemenv/utils/test_math_utils.py . [ 2%]
> ........ [ 2%]
> .pybuild/test_python3.12/tests/analysis/diffraction/test_neutron.py . [ 2%]
> .pybuild/test_python3.12/tests/analysis/diffraction/test_tem.py ........ [ 3%]
> ......... [ 3%]
> .pybuild/test_python3.12/tests/analysis/diffraction/test_xrd.py .. [ 3%]
> .pybuild/test_python3.12/tests/analysis/elasticity/test_elastic.py ..... [ 3%]
> .................... [ 4%]
> .pybuild/test_python3.12/tests/analysis/elasticity/test_strain.py ...... [ 4%]
> .. [ 4%]
> .pybuild/test_python3.12/tests/analysis/elasticity/test_stress.py . [ 4%]
> .pybuild/test_python3.12/tests/analysis/ferroelectricity/test_polarization.py . [ 5%]
> ........... [ 5%]
> .pybuild/test_python3.12/tests/analysis/interfaces/test_coherent_interface.py . [ 5%]
> .. [ 5%]
> .pybuild/test_python3.12/tests/analysis/interfaces/test_substrate_analyzer.py . [ 5%]
> . [ 5%]
> .pybuild/test_python3.12/tests/analysis/interfaces/test_zsl.py .. [ 5%]
> .pybuild/test_python3.12/tests/analysis/magnetism/test_analyzer.py ..... [ 5%]
> ....s. [ 6%]
> .pybuild/test_python3.12/tests/analysis/magnetism/test_heisenberg.py ... [ 6%]
> .... [ 6%]
> .pybuild/test_python3.12/tests/analysis/magnetism/test_jahnteller.py ... [ 6%]
> [ 6%]
> .pybuild/test_python3.12/tests/analysis/solar/test_slme.py . [ 6%]
> .pybuild/test_python3.12/tests/analysis/structure_prediction/test_dopant_predictor.py . [ 6%]
> . [ 6%]
> .pybuild/test_python3.12/tests/analysis/structure_prediction/test_substitution_probability.py . [ 6%]
> .. [ 6%]
> .pybuild/test_python3.12/tests/analysis/structure_prediction/test_substitutor.py . [ 6%]
> . [ 6%]
> .pybuild/test_python3.12/tests/analysis/structure_prediction/test_volume_predictor.py . [ 6%]
> .. [ 6%]
> .pybuild/test_python3.12/tests/analysis/test_adsorption.py ...... [ 7%]
> .pybuild/test_python3.12/tests/analysis/test_bond_dissociation.py ... [ 7%]
> .pybuild/test_python3.12/tests/analysis/test_bond_valence.py .... [ 7%]
> .pybuild/test_python3.12/tests/analysis/test_chempot_diagram.py ........ [ 7%]
> [ 7%]
> .pybuild/test_python3.12/tests/analysis/test_cost.py .... [ 7%]
> .pybuild/test_python3.12/tests/analysis/test_dimensionality.py ......... [ 8%]
> . [ 8%]
> .pybuild/test_python3.12/tests/analysis/test_disorder.py . [ 8%]
> .pybuild/test_python3.12/tests/analysis/test_energy_models.py ...... [ 8%]
> .pybuild/test_python3.12/tests/analysis/test_eos.py ..... [ 8%]
> .pybuild/test_python3.12/tests/analysis/test_ewald.py ... [ 8%]
> .pybuild/test_python3.12/tests/analysis/test_fragmenter.py .......... [ 9%]
> .pybuild/test_python3.12/tests/analysis/test_functional_groups.py ...... [ 9%]
> [ 9%]
> .pybuild/test_python3.12/tests/analysis/test_graphs.py ..s.............. [ 10%]
> ................. [ 10%]
> .pybuild/test_python3.12/tests/analysis/test_hhi.py . [ 10%]
> .pybuild/test_python3.12/tests/analysis/test_interface_reactions.py .... [ 11%]
> ............. [ 11%]
> .pybuild/test_python3.12/tests/analysis/test_local_env.py .............. [ 12%]
> ......................s..... [ 13%]
> .pybuild/test_python3.12/tests/analysis/test_molecule_matcher.py ....... [ 13%]
> ................................................... [ 15%]
> .pybuild/test_python3.12/tests/analysis/test_molecule_structure_comparator.py . [ 15%]
> ..s. [ 15%]
> .pybuild/test_python3.12/tests/analysis/test_nmr.py ...... [ 15%]
> .pybuild/test_python3.12/tests/analysis/test_phase_diagram.py .......... [ 16%]
> ........................................................................ [ 19%]
> [ 19%]
> .pybuild/test_python3.12/tests/analysis/test_piezo.py ... [ 19%]
> .pybuild/test_python3.12/tests/analysis/test_piezo_sensitivity.py ...... [ 19%]
> ........ [ 19%]
> .pybuild/test_python3.12/tests/analysis/test_pourbaix_diagram.py ....... [ 20%]
> ......... [ 20%]
> .pybuild/test_python3.12/tests/analysis/test_prototypes.py . [ 20%]
> .pybuild/test_python3.12/tests/analysis/test_quasi_harmonic_debye_approx.py . [ 20%]
> ............ [ 20%]
> .pybuild/test_python3.12/tests/analysis/test_quasirrho.py ...... [ 21%]
> .pybuild/test_python3.12/tests/analysis/test_reaction_calculator.py .... [ 21%]
> ..........s...... [ 21%]
> .pybuild/test_python3.12/tests/analysis/test_structure_analyzer.py ..... [ 22%]
> .... [ 22%]
> .pybuild/test_python3.12/tests/analysis/test_structure_matcher.py ...... [ 22%]
> ....................... [ 23%]
> .pybuild/test_python3.12/tests/analysis/test_surface_analysis.py ....... [ 23%]
> . [ 23%]
> .pybuild/test_python3.12/tests/analysis/test_transition_state.py . [ 23%]
> .pybuild/test_python3.12/tests/analysis/test_wulff.py ... [ 23%]
> .pybuild/test_python3.12/tests/analysis/test_xps.py . [ 23%]
> .pybuild/test_python3.12/tests/analysis/topological/test_spillage.py . [ 23%]
> .pybuild/test_python3.12/tests/analysis/xas/test_spectrum.py ........... [ 24%]
> [ 24%]
> .pybuild/test_python3.12/tests/apps/battery/test_analyzer.py .... [ 24%]
> .pybuild/test_python3.12/tests/apps/battery/test_conversion_battery.py . [ 24%]
> .. [ 24%]
> .pybuild/test_python3.12/tests/apps/battery/test_insertion_battery.py .. [ 24%]
> ....... [ 25%]
> .pybuild/test_python3.12/tests/apps/borg/test_hive.py ........ [ 25%]
> .pybuild/test_python3.12/tests/apps/borg/test_queen.py .. [ 25%]
> .pybuild/test_python3.12/tests/cli/test_pmg_analyze.py . [ 25%]
> .pybuild/test_python3.12/tests/cli/test_pmg_diff.py . [ 25%]
> .pybuild/test_python3.12/tests/cli/test_pmg_structure.py . [ 25%]
> .pybuild/test_python3.12/tests/command_line/test_bader_caller.py ssss [ 25%]
> .pybuild/test_python3.12/tests/command_line/test_chargemol_caller.py .. [ 25%]
> .pybuild/test_python3.12/tests/command_line/test_critic2_caller.py ss.. [ 25%]
> .pybuild/test_python3.12/tests/command_line/test_enumlib_caller.py sss [ 26%]
> .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py ssssssss [ 26%]
> sssssssssssssssssss [ 27%]
> .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py sssssss [ 27%]
> [ 27%]
> .pybuild/test_python3.12/tests/command_line/test_vampire_caller.py s [ 27%]
> .pybuild/test_python3.12/tests/core/test_bonds.py ....... [ 27%]
> .pybuild/test_python3.12/tests/core/test_composition.py ................ [ 28%]
> ..................................... [ 29%]
> .pybuild/test_python3.12/tests/core/test_interface.py .................. [ 30%]
> .... [ 30%]
> .pybuild/test_python3.12/tests/core/test_ion.py ............... [ 31%]
> .pybuild/test_python3.12/tests/core/test_lattice.py .................... [ 31%]
> ............ [ 32%]
> .pybuild/test_python3.12/tests/core/test_libxcfunc.py .. [ 32%]
> .pybuild/test_python3.12/tests/core/test_molecular_orbitals.py .... [ 32%]
> .pybuild/test_python3.12/tests/core/test_operations.py ................ [ 33%]
> .pybuild/test_python3.12/tests/core/test_periodic_table.py ............. [ 33%]
> ............................................. [ 35%]
> .pybuild/test_python3.12/tests/core/test_settings.py .. [ 35%]
> .pybuild/test_python3.12/tests/core/test_sites.py .................... [ 36%]
> .pybuild/test_python3.12/tests/core/test_spectrum.py ..... [ 36%]
> .pybuild/test_python3.12/tests/core/test_structure.py .................s [ 37%]
> .......s...................................ss....s.................ssss. [ 40%]
> .............................................s.......s....... [ 42%]
> .pybuild/test_python3.12/tests/core/test_surface.py .................... [ 43%]
> ...s.... [ 43%]
> .pybuild/test_python3.12/tests/core/test_tensors.py .................... [ 44%]
> ........ [ 44%]
> .pybuild/test_python3.12/tests/core/test_trajectory.py ................. [ 45%]
> [ 45%]
> .pybuild/test_python3.12/tests/core/test_units.py ................. [ 46%]
> .pybuild/test_python3.12/tests/core/test_xcfunc.py ....s. [ 46%]
> .pybuild/test_python3.12/tests/electronic_structure/test_bandstructure.py . [ 46%]
> .............................. [ 47%]
> .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py ss [ 47%]
> ssssssssssssss [ 48%]
> .pybuild/test_python3.12/tests/electronic_structure/test_cohp.py ....... [ 48%]
> ....................... [ 49%]
> .pybuild/test_python3.12/tests/electronic_structure/test_core.py ....... [ 49%]
> ... [ 49%]
> .pybuild/test_python3.12/tests/electronic_structure/test_dos.py ........ [ 49%]
> ................. [ 50%]
> .pybuild/test_python3.12/tests/entries/test_compatibility.py ........... [ 51%]
> ........................................................................ [ 53%]
> .... [ 53%]
> .pybuild/test_python3.12/tests/entries/test_computed_entries.py ........ [ 54%]
> ............................. [ 55%]
> .pybuild/test_python3.12/tests/entries/test_correction_calculator.py ... [ 55%]
> . [ 55%]
> .pybuild/test_python3.12/tests/entries/test_entry_tools.py ....... [ 55%]
> .pybuild/test_python3.12/tests/entries/test_exp_entries.py ... [ 55%]
> .pybuild/test_python3.12/tests/entries/test_mixing_scheme.py ........... [ 56%]
> .................... [ 57%]
> .pybuild/test_python3.12/tests/ext/test_cod.py .. [ 57%]
> .pybuild/test_python3.12/tests/ext/test_optimade.py ..... [ 57%]
> .pybuild/test_python3.12/tests/io/abinit/test_abiobjects.py ......... [ 57%]
> .pybuild/test_python3.12/tests/io/abinit/test_inputs.py FFFF.FFF [ 58%]
> .pybuild/test_python3.12/tests/io/abinit/test_netcdf.py ... [ 58%]
> .pybuild/test_python3.12/tests/io/abinit/test_pseudos.py FFFFFF [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_bs_generator.py ... [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_gw_generator.py . [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_input_set.py . [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_md_generator.py . [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_relax_generator.py ... [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_static_generator.py ... [ 58%]
> . [ 58%]
> .pybuild/test_python3.12/tests/io/aims/sets/test_static_restart_from_relax_generator.py . [ 59%]
> .... [ 59%]
> .pybuild/test_python3.12/tests/io/aims/test_inputs.py ...... [ 59%]
> .pybuild/test_python3.12/tests/io/aims/test_outputs.py ...... [ 59%]
> .pybuild/test_python3.12/tests/io/aims/test_parsers.py ................. [ 60%]
> ........................................................................ [ 63%]
> ....... [ 63%]
> .pybuild/test_python3.12/tests/io/cp2k/test_inputs.py .............. [ 63%]
> .pybuild/test_python3.12/tests/io/cp2k/test_outputs.py ....... [ 64%]
> .pybuild/test_python3.12/tests/io/exciting/test_inputs.py .... [ 64%]
> .pybuild/test_python3.12/tests/io/feff/test_inputs.py .................. [ 65%]
> [ 65%]
> .pybuild/test_python3.12/tests/io/feff/test_outputs.py ...... [ 65%]
> .pybuild/test_python3.12/tests/io/lammps/test_data.py .................. [ 65%]
> ........... [ 66%]
> .pybuild/test_python3.12/tests/io/lammps/test_generators.py . [ 66%]
> .pybuild/test_python3.12/tests/io/lammps/test_inputs.py ................ [ 67%]
> ..... [ 67%]
> .pybuild/test_python3.12/tests/io/lammps/test_outputs.py .... [ 67%]
> .pybuild/test_python3.12/tests/io/lammps/test_utils.py ... [ 67%]
> .pybuild/test_python3.12/tests/io/lobster/test_inputs.py ............... [ 68%]
> . [ 68%]
> .pybuild/test_python3.12/tests/io/lobster/test_lobsterenv.py ........... [ 68%]
> .... [ 68%]
> .pybuild/test_python3.12/tests/io/lobster/test_outputs.py .............. [ 69%]
> .................................. [ 70%]
> .pybuild/test_python3.12/tests/io/pwmat/test_inputs.py .......... [ 71%]
> .pybuild/test_python3.12/tests/io/qchem/test_inputs.py ................. [ 71%]
> .................. [ 72%]
> .pybuild/test_python3.12/tests/io/qchem/test_outputs.py ................ [ 73%]
> ..... [ 73%]
> .pybuild/test_python3.12/tests/io/qchem/test_utils.py .. [ 73%]
> .pybuild/test_python3.12/tests/io/test_adf.py .............. [ 73%]
> .pybuild/test_python3.12/tests/io/test_ase.py ....................... [ 74%]
> .pybuild/test_python3.12/tests/io/test_atat.py .... [ 74%]
> .pybuild/test_python3.12/tests/io/test_babel.py .......... [ 75%]
> .pybuild/test_python3.12/tests/io/test_cif.py ........s................. [ 76%]
> ................... [ 77%]
> .pybuild/test_python3.12/tests/io/test_common.py .. [ 77%]
> .pybuild/test_python3.12/tests/io/test_core.py ......... [ 77%]
> .pybuild/test_python3.12/tests/io/test_cssr.py .. [ 77%]
> .pybuild/test_python3.12/tests/io/test_fiesta.py .. [ 77%]
> .pybuild/test_python3.12/tests/io/test_gaussian.py ................. [ 78%]
> .pybuild/test_python3.12/tests/io/test_jarvis.py ss [ 78%]
> .pybuild/test_python3.12/tests/io/test_lmto.py ..... [ 78%]
> .pybuild/test_python3.12/tests/io/test_multiwfn.py ..... [ 78%]
> .pybuild/test_python3.12/tests/io/test_nwchem.py ............ [ 79%]
> .pybuild/test_python3.12/tests/io/test_optimade.py . [ 79%]
> .pybuild/test_python3.12/tests/io/test_packmol.py ......... [ 79%]
> .pybuild/test_python3.12/tests/io/test_phonopy.py ........... [ 80%]
> .pybuild/test_python3.12/tests/io/test_prismatic.py . [ 80%]
> .pybuild/test_python3.12/tests/io/test_pwscf.py ............. [ 80%]
> .pybuild/test_python3.12/tests/io/test_res.py ............... [ 81%]
> .pybuild/test_python3.12/tests/io/test_template_input.py . [ 81%]
> .pybuild/test_python3.12/tests/io/test_wannier90.py .... [ 81%]
> .pybuild/test_python3.12/tests/io/test_xcrysden.py .... [ 81%]
> .pybuild/test_python3.12/tests/io/test_xr.py .. [ 81%]
> .pybuild/test_python3.12/tests/io/test_xyz.py ........ [ 81%]
> .pybuild/test_python3.12/tests/io/vasp/test_help.py ... [ 82%]
> .pybuild/test_python3.12/tests/io/vasp/test_inputs.py .................. [ 82%]
> .................................................s............. [ 85%]
> .pybuild/test_python3.12/tests/io/vasp/test_optics.py ... [ 85%]
> .pybuild/test_python3.12/tests/io/vasp/test_outputs.py ................. [ 85%]
> ........................................................................ [ 88%]
> ................. [ 89%]
> .pybuild/test_python3.12/tests/io/xtb/test_inputs.py .. [ 89%]
> .pybuild/test_python3.12/tests/optimization/test_linear_assignment.py .. [ 89%]
> .. [ 89%]
> .pybuild/test_python3.12/tests/optimization/test_neighbors.py . [ 89%]
> .pybuild/test_python3.12/tests/phonon/test_bandstructure.py ........... [ 90%]
> .pybuild/test_python3.12/tests/phonon/test_dos.py ................... [ 90%]
> .pybuild/test_python3.12/tests/phonon/test_gruneisen.py .......... [ 91%]
> .pybuild/test_python3.12/tests/phonon/test_thermal_displacements.py .... [ 91%]
> .......... [ 91%]
> .pybuild/test_python3.12/tests/symmetry/test_analyzer.py ............... [ 92%]
> .................. [ 93%]
> .pybuild/test_python3.12/tests/symmetry/test_groups.py ................. [ 93%]
> ....... [ 94%]
> .pybuild/test_python3.12/tests/symmetry/test_kpath_lm.py ... [ 94%]
> .pybuild/test_python3.12/tests/symmetry/test_kpath_sc.py .. [ 94%]
> .pybuild/test_python3.12/tests/symmetry/test_kpaths.py .s [ 94%]
> .pybuild/test_python3.12/tests/symmetry/test_maggroups.py ...... [ 94%]
> .pybuild/test_python3.12/tests/symmetry/test_settings.py .... [ 94%]
> .pybuild/test_python3.12/tests/symmetry/test_site_symmetries.py . [ 94%]
> .pybuild/test_python3.12/tests/test_pkg.py . [ 94%]
> .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py . [ 94%]
> s..sssss..ssssssss...ssssss....s [ 96%]
> .pybuild/test_python3.12/tests/transformations/test_site_transformations.py . [ 96%]
> ..........s...... [ 96%]
> .pybuild/test_python3.12/tests/transformations/test_standard_transformations.py . [ 96%]
> ...........ssss............ [ 97%]
> .pybuild/test_python3.12/tests/util/test_coord.py ...................... [ 98%]
> [ 98%]
> .pybuild/test_python3.12/tests/util/test_graph_hashing.py .. [ 98%]
> .pybuild/test_python3.12/tests/util/test_io.py . [ 98%]
> .pybuild/test_python3.12/tests/util/test_misc.py ...... [ 99%]
> .pybuild/test_python3.12/tests/util/test_num.py . [ 99%]
> .pybuild/test_python3.12/tests/util/test_provenance.py ........ [ 99%]
> .pybuild/test_python3.12/tests/util/test_string.py ........... [ 99%]
> .pybuild/test_python3.12/tests/util/test_typing.py ..... [100%]
>
> =================================== FAILURES ===================================
> ___________________________ TestAbinitInput.test_api ___________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd251daf8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestAbinitInput testMethod=test_api>
>
> def test_api(self):
> """Testing BasicAbinitInput API."""
> # Build simple input with structure and pseudos
> unit_cell = {
> "acell": 3 * [10.217],
> "rprim": [[0.0, 0.5, 0.5], [0.5, 0.0, 0.5], [0.5, 0.5, 0.0]],
> "ntypat": 1,
> "znucl": [14],
> "natom": 2,
> "typat": [1, 1],
> "xred": [[0.0, 0.0, 0.0], [0.25, 0.25, 0.25]],
> }
>
> > inp = BasicAbinitInput(structure=unit_cell, pseudos=abiref_file("14si.pspnc"))
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:52:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:759: in __init__
> self._pseudos = PseudoTable.as_table(pseudos).get_pseudos_for_structure(self.structure)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1523: in as_table
> return items if isinstance(items, cls) else cls(items)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd251daf8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ____________________ TestAbinitInput.test_helper_functions _____________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd251deb8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestAbinitInput testMethod=test_helper_functions>
>
> def test_helper_functions(self):
> """Testing BasicAbinitInput helper functions."""
> > inp = BasicAbinitInput(structure=abiref_file("si.cif"), pseudos="14si.pspnc", pseudo_dir=TEST_DIR)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:154:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:759: in __init__
> self._pseudos = PseudoTable.as_table(pseudos).get_pseudos_for_structure(self.structure)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1523: in as_table
> return items if isinstance(items, cls) else cls(items)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd251deb8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> ______________________ TestAbinitInput.test_input_errors _______________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37fda08>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestAbinitInput testMethod=test_input_errors>
>
> def test_input_errors(self):
> """Testing typical BasicAbinitInput Error."""
> si_structure = Structure.from_file(abiref_file("si.cif"))
>
> # Ambiguous list of pseudos.
> with pytest.raises(BasicAbinitInput.Error):
> > BasicAbinitInput(si_structure, pseudos=abiref_files("14si.pspnc", "14si.4.hgh"))
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:132:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:759: in __init__
> self._pseudos = PseudoTable.as_table(pseudos).get_pseudos_for_structure(self.structure)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1523: in as_table
> return items if isinstance(items, cls) else cls(items)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37fda08>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> __________________________ TestMultiDataset.test_api ___________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37fd1c8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestMultiDataset testMethod=test_api>
>
> def test_api(self):
> """Testing BasicMultiDataset API."""
> structure = Structure.from_file(abiref_file("si.cif"))
> pseudo = abiref_file("14si.pspnc")
> pseudo_dir = os.path.dirname(pseudo)
> > multi = BasicMultiDataset(structure=structure, pseudos=pseudo)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:179:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37fd1c8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> ________________________ TestFactory.test_ebands_input _________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37c2ca8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestFactory testMethod=test_ebands_input>
>
> def test_ebands_input(self):
> """Testing ebands_input factory."""
> > multi = ebands_input(self.si_structure, self.si_pseudo, kppa=10, ecut=2)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:279:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:351: in ebands_input
> multi = BasicMultiDataset(structure, pseudos, ndtset=2 if dos_kppa is None else 2 + len(dos_kppa))
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37c2ca8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> __________________________ TestFactory.test_gs_input ___________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd251d558>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestFactory testMethod=test_gs_input>
>
> def test_gs_input(self):
> """Testing gs_input factory."""
> > inp = gs_input(self.si_structure, self.si_pseudo, kppa=10, ecut=10, spin_mode="polarized")
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:271:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:290: in gs_input
> multi = ebands_input(
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:351: in ebands_input
> multi = BasicMultiDataset(structure, pseudos, ndtset=2 if dos_kppa is None else 2 + len(dos_kppa))
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd251d558>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> ___________________ TestFactory.test_ion_ioncell_relax_input ___________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37c2300>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_inputs.TestFactory testMethod=test_ion_ioncell_relax_input>
>
> def test_ion_ioncell_relax_input(self):
> """Testing ion_ioncell_relax_input factory."""
> > multi = ion_ioncell_relax_input(self.si_structure, self.si_pseudo, kppa=10, ecut=2)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_inputs.py:320:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:442: in ion_ioncell_relax_input
> multi = BasicMultiDataset(structure, pseudos, ndtset=2)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/inputs.py:1071: in __init__
> pseudos = PseudoTable(pseudo_paths)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37c2300>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ----------------------------- Captured stderr call -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/core/structure.py:3176: EncodingWarning: We strongly encourage explicit `encoding`, and we would use UTF-8 by default as per PEP 686
> with zopen(filename, mode="rt", errors="replace") as file:
> __________________________ TestPseudo.test_nc_pseudos __________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd26a2270>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_nc_pseudos>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd26a2270>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ______________________ TestPseudo.test_oncvpsp_pseudo_fr _______________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37c2708>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_oncvpsp_pseudo_fr>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd37c2708>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ______________________ TestPseudo.test_oncvpsp_pseudo_sr _______________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dfda98>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_oncvpsp_pseudo_sr>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dfda98>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> _________________________ TestPseudo.test_paw_pseudos __________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dfd5e8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_paw_pseudos>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dfd5e8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ________________________ TestPseudo.test_pawxml_pseudos ________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dcd390>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudo testMethod=test_pawxml_pseudos>
>
> def setUp(self):
> nc_pseudo_fnames = defaultdict(list)
> nc_pseudo_fnames["Si"] = [f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")]
>
> self.nc_pseudos = defaultdict(list)
> self.paw_pseudos = defaultdict(list)
>
> for symbol, file_names in nc_pseudo_fnames.items():
> for file_name in file_names:
> _root, ext = os.path.splitext(file_name)
> > pseudo = Pseudo.from_file(file_name)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_pseudos.py:28:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dcd390>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> _________________________ TestPseudoTable.test_methods _________________________
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dcd9d8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> > header = parsers[ppdesc.name](path, ppdesc)
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1141:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:840: in tm_header
> projectors[int(d["l"])] = d
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = {}, key = 'l'
>
> def __getitem__(self, key):
> if key in self.data:
> return self.data[key]
> if hasattr(self.__class__, "__missing__"):
> return self.__class__.__missing__(self, key)
> > raise KeyError(key)
> E KeyError: 'l'
>
> /usr/lib/python3.12/collections/__init__.py:1135: KeyError
>
> During handling of the above exception, another exception occurred:
>
> self = <abinit.test_pseudos.TestPseudoTable testMethod=test_methods>
>
> def test_methods(self):
> """Test PseudoTable methods."""
> > table = PseudoTable([f"{TEST_DIR}/{file}" for file in ("14si.pspnc", "14si.4.hgh", "14-Si.LDA.fhi")])
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/tests/io/abinit/test_pseudos.py:200:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1585: in __init__
> pseudo = Pseudo.from_file(pseudo)
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:110: in from_file
> return PseudoParser().parse(filename)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <pymatgen.io.abinit.pseudos.PseudoParser object at 0xd2dcd9d8>
> filename = '/usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc'
>
> def parse(self, filename):
> """
> Read and parse a pseudopotential file. Main entry point for client code.
>
> Returns:
> pseudopotential object or None if filename is not a valid pseudopotential file.
> """
> path = os.path.abspath(filename)
>
> # Only PAW supports XML at present.
> if filename.endswith(".xml"):
> return PawXmlSetup(path)
>
> ppdesc = self.read_ppdesc(path)
>
> if ppdesc is None:
> logger.critical(f"Cannot find ppdesc in {path}")
> return None
>
> psp_type = ppdesc.psp_type
>
> parsers = {
> "FHI": NcAbinitHeader.fhi_header,
> "GTH": NcAbinitHeader.gth_header,
> "TM": NcAbinitHeader.tm_header,
> "Teter": NcAbinitHeader.tm_header,
> "HGH": NcAbinitHeader.hgh_header,
> "HGHK": NcAbinitHeader.hgh_header,
> "ONCVPSP": NcAbinitHeader.oncvpsp_header,
> "PAW_abinit_text": PawAbinitHeader.paw_header,
> }
>
> try:
> header = parsers[ppdesc.name](path, ppdesc)
> except Exception:
> str_traceback = "\n".join((traceback.format_exc(), str(sys.exc_info()[0])))
>
> > raise self.Error(f"{path}:\n{str_traceback}")
> E pymatgen.io.abinit.pseudos.PseudoParseError: /usr/share/doc/pymatgen-test-files/examples/files/io/abinit/14si.pspnc:
> E Traceback (most recent call last):
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 1141, in parse
> E header = parsers[ppdesc.name](path, ppdesc)
> E ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> E File "/<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py", line 840, in tm_header
> E projectors[int(d["l"])] = d
> E ~^^^^^
> E File "/usr/lib/python3.12/collections/__init__.py", line 1135, in __getitem__
> E raise KeyError(key)
> E KeyError: 'l'
> E
> E <class 'KeyError'>
>
> /<<PKGBUILDDIR>>/.pybuild/test_python3.12/pymatgen/io/abinit/pseudos.py:1145: PseudoParseError
> ============================= slowest 30 durations =============================
> 67.42s call .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py::TestCubicSupercellTransformation::test_apply_transformation_orthorhombic_supercell
> 43.37s call .pybuild/test_python3.12/tests/analysis/test_fragmenter.py::TestFragmentMolecule::test_pc_then_ec_depth_10
> 40.31s call .pybuild/test_python3.12/tests/symmetry/test_kpath_lm.py::TestKPathLatimerMunro::test_kpath_generation
> 26.57s call .pybuild/test_python3.12/tests/io/vasp/test_optics.py::TestVasprun::test_optics
> 25.66s call .pybuild/test_python3.12/tests/core/test_surface.py::TestSlab::test_symmetrization
> 23.67s call .pybuild/test_python3.12/tests/analysis/elasticity/test_elastic.py::TestElasticTensorExpansion::test_get_yield_stress
> 23.01s call .pybuild/test_python3.12/tests/core/test_surface.py::TestSlabGenerator::test_non_stoichiometric_symmetrized_slab
> 21.99s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_acoustic_debye_temp
> 20.50s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_as_from_dict
> 19.83s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_frequencies
> 19.67s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_average_gruneisen
> 19.62s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_thermal_conductivity_slack
> 19.58s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_gruneisen
> 19.51s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_phdos
> 19.48s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_tdos
> 19.35s call .pybuild/test_python3.12/tests/io/test_phonopy.py::TestGruneisen::test_gruneisen_parameter
> 19.30s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_debye_temp_phonopy
> 19.17s call .pybuild/test_python3.12/tests/phonon/test_gruneisen.py::TestGruneisenParameter::test_multi
> 18.84s call .pybuild/test_python3.12/tests/symmetry/test_kpath_sc.py::TestBandStructureSC::test_kpath_generation
> 18.70s call .pybuild/test_python3.12/tests/analysis/test_structure_analyzer.py::TestMiscFunction::test_average_coordination_number
> 16.05s call .pybuild/test_python3.12/tests/symmetry/test_groups.py::TestSpaceGroup::test_order_symm_ops
> 15.24s call .pybuild/test_python3.12/tests/io/vasp/test_outputs.py::TestVasprun::test_runtype
> 14.87s call .pybuild/test_python3.12/tests/core/test_surface.py::TestSlab::test_get_symmetric_sites
> 14.49s call .pybuild/test_python3.12/tests/core/test_surface.py::TestMillerIndexFinder::test_generate_all_slabs
> 14.29s call .pybuild/test_python3.12/tests/entries/test_entry_tools.py::TestEntrySet::test_ground_states
> 13.24s call .pybuild/test_python3.12/tests/core/test_trajectory.py::TestTrajectory::test_extend
> 12.68s call .pybuild/test_python3.12/tests/core/test_trajectory.py::TestTrajectory::test_xdatcar_write
> 12.48s call .pybuild/test_python3.12/tests/analysis/test_prototypes.py::TestAflowPrototypeMatcher::test_prototype_matching
> 11.93s setup .pybuild/test_python3.12/tests/io/lammps/test_data.py::TestCombinedData::test_as_lammpsdata
> 11.64s call .pybuild/test_python3.12/tests/symmetry/test_groups.py::TestSpaceGroup::test_point_group_is_set
> =========================== short test summary info ============================
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap2.py:27: No boltztrap2
> SKIPPED [1] .pybuild/test_python3.12/tests/ext/test_matproj.py:44: MP API is down
> SKIPPED [1] .pybuild/test_python3.12/tests/io/test_openff.py:25: could not import 'openff.toolkit': No module named 'openff'
> SKIPPED [1] .pybuild/test_python3.12/tests/io/test_shengbte.py:9: could not import 'f90nml': No module named 'f90nml'
> SKIPPED [1] .pybuild/test_python3.12/tests/io/test_zeopp.py:20: zeo not installed
> SKIPPED [1] .pybuild/test_python3.12/tests/symmetry/test_kpath_hin.py:11: seekpath not installed
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py:174: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py:169: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/magnetism/test_analyzer.py:263: enumlib not present
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/test_graphs.py:347: graphviz executables not present
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/test_local_env.py:1355: critic2 executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/test_molecule_structure_comparator.py:144: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.12/tests/analysis/test_reaction_calculator.py:334: hash test requires 64 bits
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_bader_caller.py:119: bader executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_bader_caller.py:84: bader executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_bader_caller.py:66: bader executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_bader_caller.py:134: bader executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_critic2_caller.py:26: critic2 executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_critic2_caller.py:62: critic2 executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_enumlib_caller.py:92: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_enumlib_caller.py:80: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_enumlib_caller.py:122: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:41: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:74: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:181: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:148: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:236: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:272: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:114: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:139: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:144: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:135: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:120: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:130: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:126: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:283: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:212: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:320: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:332: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:315: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:356: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:345: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:352: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:363: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:359: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:383: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:373: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:379: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_gulp_caller.py:386: gulp not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:67: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:101: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:28: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:51: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:59: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:77: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_mcsqs_caller.py:89: mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/command_line/test_vampire_caller.py:34: vampire executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:712: Only run this in CI tests
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:105: enumlib or mcsqs executable not present
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:1832: chgnet is failing with Numpy 1, see #3992
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:1904: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:985: PMG_MAPI_KEY environment variable not set or MP API is down. This is also the case in a PR.
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:1807: chgnet is failing with Numpy 1, see #3992
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:1916: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:1927: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:1936: TODO: #3958 wait for matgl resolve of torch dependency
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:2567: could not import 'tblite': No module named 'tblite'
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_structure.py:2575: Pytorch and TBLite clash. https://github.com/materialsproject/pymatgen/pull/3060
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_surface.py:700: This test relies on neighbor orders and is hard coded. Disable temporarily
> SKIPPED [1] .pybuild/test_python3.12/tests/core/test_xcfunc.py:56: TODO:
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:252: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:219: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:239: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:167: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:197: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:230: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:99: No FDINT
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:121: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:201: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:130: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:114: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:84: No FDINT
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:205: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:139: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:155: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/electronic_structure/test_boltztrap.py:41: No x_trans.
> SKIPPED [1] .pybuild/test_python3.12/tests/io/test_cif.py:292: non-free PF*.cif test files are not available
> SKIPPED [1] .pybuild/test_python3.12/tests/io/test_jarvis.py:12: JARVIS-tools not loaded.
> SKIPPED [1] .pybuild/test_python3.12/tests/io/test_jarvis.py:20: JARVIS-tools not loaded.
> SKIPPED [1] .pybuild/test_python3.12/tests/io/vasp/test_inputs.py:1469: TODO: need someone to fix this
> SKIPPED [1] .pybuild/test_python3.12/tests/symmetry/test_kpaths.py:21: No seek path present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:97: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:158: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:188: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:203: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:229: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:241: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:356: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:296: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:334: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:326: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:344: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:484: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:532: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:541: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:599: mcsqs not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:609: mcsqs not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:630: mcsqs not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:662: icet not installed.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:648: icet not installed.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:673: icet not installed.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_advanced_transformations.py:866: hiphive not present
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_site_transformations.py:213: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_standard_transformations.py:227: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_standard_transformations.py:244: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_standard_transformations.py:262: enum_lib not present.
> SKIPPED [1] .pybuild/test_python3.12/tests/transformations/test_standard_transformations.py:268: enum_lib not present.
> == 13 failed, 2443 passed, 117 skipped, 386 deselected in 1519.78s (0:25:19) ===
> ..tot conformations = 3
> ..tot confs tested = 3
> ..below energy threshold = 3
> make[1]: *** [debian/rules:108: override_dh_auto_test] Error 1
The full build log is available from:
http://qa-logs.debian.net/2024/12/28/pymatgen_2024.10.29+dfsg1-4_unstable-i386.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20241228;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20241228&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
More information about the Debichem-devel
mailing list