• Mattias Engdegård's avatar
    Fix edge case errors in filename-matching regexps · 4acdd7fe
    Mattias Engdegård authored
    These changes fix actual or latent bugs in regexps that match
    file names, such as PATTERN arguments to 'directory-files'.  See
    https://lists.gnu.org/archive/html/emacs-devel/2020-04/msg00265.html
    
    * admin/authors.el (authors-obsolete-files-regexps)
    (authors-renamed-files-regexps):
    * lisp/auth-source-pass.el (auth-source-pass-entries):
    * lisp/calendar/todo-mode.el (todo-show, todo-find-filtered-items-file)
    (todo-filter-items, todo-reset-nondiary-marker, todo-reset-done-string)
    (todo-reset-comment-string, todo-reset-highlight-item):
    * lisp/cedet/semantic/db-ebrowse.el (semanticdb-load-ebrowse-caches):
    * lisp/cedet/semantic/texi.el (semantic-texi-associated-files):
    * lisp/cedet/srecode/map.el (srecode-map-update-map):
    * lisp/dired.el (dired-re-no-dot):
    * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
    * lisp/emacs-lisp/shadow.el (load-path-shadows-find):
    * lisp/files.el (auto-mode-alist, directory-files-no-dot-files-regexp):
    * lisp/finder.el (finder-compile-keywords):
    * lisp/generic-x.el (inetd-conf-generic-mode, named-boot-generic-mode)
    (resolve-conf-generic-mode, etc-modules-conf-generic-mode):
    * lisp/gnus/gnus-agent.el (gnus-agent-read-agentview)
    (gnus-agent-regenerate-group, gnus-agent-update-files-total-fetched-for):
    * lisp/gnus/gnus-cache.el (gnus-cache-articles-in-group):
    * lisp/gnus/gnus-score.el (gnus-score-search-global-directories):
    * lisp/gnus/gnus-util.el (gnus-delete-directory):
    * lisp/gnus/gnus-uu.el (gnus-uu-dir-files):
    * lisp/gnus/nndraft.el (nndraft-request-group):
    * lisp/gnus/nnmh.el (nnmh-request-group, nnmh-request-create-group):
    (nnmh-request-delete-group, nnmh-active-number, nnmh-update-gnus-unreads):
    * lisp/gnus/nnspool.el (nnspool-request-group):
    * lisp/gnus/spam-stat.el (spam-stat-process-directory)
    (spam-stat-test-directory):
    * lisp/help-fns.el (help-fns--first-release):
    * lisp/help.el (view-emacs-news):
    * lisp/international/quail.el (quail-update-leim-list-file):
    * lisp/international/titdic-cnv.el (batch-titdic-convert):
    * lisp/mail/mspools.el (mspools-set-vm-spool-files)
    (mspools-get-spool-files):
    * lisp/mail/rmail.el (rmail-secondary-file-regexp)
    (rmail-speedbar-match-folder-regexp):
    * lisp/net/ange-ftp.el (ange-ftp-delete-directory):
    * lisp/net/tramp.el (tramp-use-absolute-autoload-file-names):
    * lisp/obsolete/gulp.el (gulp-send-requests):
    * lisp/obsolete/vc-arch.el (vc-arch-trim-revlib):
    * lisp/org/ob-core.el (org-babel-remove-temporary-directory):
    * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp, ebnf-style-database):
    * lisp/progmodes/executable.el (executable-command-find-posix-p):
    * lisp/startup.el (command-line):
    * lisp/textmodes/refer.el (refer-get-bib-files):
    * lisp/url/url-about.el (url-probe-protocols):
    * lisp/vc/vc-rcs.el (vc-rcs-register, vc-rcs-unregister):
    * test/lisp/net/tramp-archive-tests.el
    (tramp-archive-test19-directory-files-and-attributes):
    * test/lisp/net/tramp-tests.el (tramp-test19-directory-files-and-attributes):
    Replace ^ and $ with \` and \', respectively.
    Use (rx (or (not ".") "...")), translated into "[^.]\\|\\.\\.\\.",
    to match anything but "." and "..", instead of several incorrect
    regexps.
    4acdd7fe