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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions