> As far as I understand it, it was done for purpose: some packages > include "uninteresting" (for tests, maintenance, etc.) *.el files in > subdirs, that's why they are excluded by default. So probably a better > solution would be to fix 'ert-runner' package (as it is done in commit > b1d32ec0e23bfec1dab4c56909228a494b2b0d60, for example). WDYT?
I agree. The solution is to fix the ert-runner package, not the emacs-build-system. > This change also doesn't prevent excluding subfolders if they are truly > unnecessary (such as tests subfolder), but this should happen due to > explicit regexp in the exclude option, not because *all* subfolders are > excluded. We adopted the policy of excluding *all* subfolders from MELPA. From their "Recipe Format" section at https://github.com/melpa/melpa "Note that elisp in subdirectories is never included by default, so you might find it convenient to separate auxiliiary files such as tests into subdirectories to keep packaging simple." I think this is a good policy. If we include subfolders by default, we'll have to modify many packages with #:exclude arguments to get rid of unnecessary subfolders. However, if we exclude subfolders by default, we'll only have to modify fewer packages with #:include arguments. > I also think these arguments are redundant! I suggested to remove this > duplication at: > > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26559#41 And, I did respond at https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26559#53 > ... but I think the include/exclude arguments need to be duplicated in > two places. For example, look at arguments #:strip-flags and > #:strip-directories in the `strip' phase of the gnu-build-system. Even > there, the default values of the arguments are repeated in two places. Do you know of some way in which we can avoid duplication of the arguments? Even the gnu-build-system duplicates default values of arguments.