I have reverted the commit causing the issue in team repo[1]. I have also implemented another approach to avoid sub-directories in `load-path', and tested with some success. You can find the diff in [2] or attached. Please let me know what you think. Will push after getting some approvals.
Meanwhile, if reviewing the patch takes longer, please consider making another release with just [1] to fix the current issue. [1] https://salsa.debian.org/emacsen-team/dh-elpa/-/commit/852d8613798708178f2b0dff53798826e45c9ac9 [2] https://salsa.debian.org/manphiz/dh-elpa/-/compare/master...no-recursive-handling?from_project_id=18920 -- Xiyue Deng
>From cc38abc38dea77814c691913fab51593ed7da584 Mon Sep 17 00:00:00 2001 From: Xiyue Deng <manp...@gmail.com> Date: Wed, 24 Jul 2024 14:22:05 -0700 Subject: [PATCH] Properly disable recursive load-path handling in sub-directories * Create the `.nosearch' files only in package sub-directories in helper/install, and remove them in helper/remove. --- helper/install | 3 +++ helper/remove | 7 +++++++ 2 files changed, 10 insertions(+) diff --git a/helper/install b/helper/install index 8d748c8..0139b84 100755 --- a/helper/install +++ b/helper/install @@ -42,6 +42,9 @@ elc_dir=/usr/share/${FLAVOR}/site-lisp/elpa/${ELPA_DIR}/ export EMACSLOADPATH EMACSLOADPATH=${ELPA_LOAD_PATH} +# Disable adding sub-directories to `load-path' +for DIR in ${el_dir}/*; do [ -d ${DIR} ] && touch ${DIR}/.nosearch; done + echo "install/${ELPA_DIR}: byte-compiling for ${FLAVOR}" [ -d "${elc_dir}" ] || mkdir -p "${elc_dir}" diff --git a/helper/remove b/helper/remove index 3182eeb..6ab9d17 100755 --- a/helper/remove +++ b/helper/remove @@ -24,6 +24,8 @@ ELPA_DIR=${ELPA_PACKAGE}-${ELPA_VERSION} elpa_root="/usr/share/${FLAVOR}/site-lisp/elpa" elc_dir="${elpa_root}/${ELPA_DIR}" +elpa_src_root="/usr/share/${FLAVOR}/site-lisp/elpa-src" +el_dir="${elpa_src_root}/${ELPA_DIR}" FLAVOR=$1 case $FLAVOR in @@ -43,6 +45,11 @@ echo dh-elpa: purging flavor specific files for ${FLAVOR} rm -f ${elc_dir}/*.elc [ -d ${elc_dir} ] && find ${elc_dir} -type l -delete rm -f ${elc_dir}/Install.log* + +# Remove entries that disable recursive `load-path' handling in sub-directories +find ${elc_dir} -name ".nosearch" -exec rm {} \; +find ${el_dir} -name ".nosearch" -exec rm {} \; + if test -e "${elc_dir}" then rmdir --ignore-fail-on-non-empty "${elc_dir}" -- 2.39.2