Skip to content

EXX_DEV is based on LibRI features that are not yet in master branch #7687

Description

@Growl1234

The current EXX_DEV implementation depends on LibRI APIs such as RI::Exx::cal_dHs and dHs_HF. However, these APIs are not available in the LibRI master branch or in the LibRI revision currently used by the ABACUS toolchain. They are still under development in abacusmodeling/LibRI#10. As a result, configuring ABACUS with ENABLE_EXX_DEV=ON produces a build failure as long as libRI is obtained from master branch via toolchain or CMake FetchContent.

I do not think code depending on unpublished APIs from another repository should remain in the ABACUS main (develop) branch, even though 99% of users wouldn't trigger the corresponding option actually. Keeping it behind a CMake option does not make the configuration valid: the option is exposed to users, but the required dependency cannot currently be obtained from the corresponding upstream branch.

My proposal would be to:

  1. Remove the entire EXX_DEV implementation from the ABACUS master branch for now.
  2. Continue the development of these features in a seperate feature or integration branch.
  3. Merge the implementation back only after the required LibRI APIs have been merged upstream, and then enable ENABLE_EXX_DEV=ON in CI testing workflow.

This would keep the main (develop) branch internally consistent and prevent unfinished cross-repository integration code from silently becoming unbuildable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugsBugs that only solvable with sufficient knowledge of DFTEXX and lr-TDDFTRelated to EXX or lr-TDDFT

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions