Debian Patches

Status for projectile/3.3.0-1

Patch Description Author Forwarded Bugs Origin Last update
0001-patch-README.md-extensions.md-for-Debian.patch patch README.md & extensions.md for Debian Sean Whitton <spwhitton@spwhitton.name> not-needed 2015-12-13
0002-hack-projectile-directory-p-test-for-Debian-build.patch hack projectile--directory-p test for Debian build

Per Debian Policy, we cannot assume that the user's home directory
exists, but we can assume that the root directory does.
Sean Whitton <spwhitton@spwhitton.name> not-needed 2019-01-11
0003-patch-test-init-code-for-Debian.patch patch test init code for Debian

- Stop it from trying to load projectile.el
dh_elpa_test handles doing this.
- Don't choose a sandbox location using `locate-library'.
Creating the sandbox in /usr/share will fail, breaking the autopkgtest.
- Load subr-x before running any tests.
In this release, loading subr-x is wrapped in an eval-when-compile.
Buttercup's macros don't seem to be able to cope with this.

[git-debrebase split: mixed commit: upstream part]
Sean Whitton <spwhitton@spwhitton.name> not-needed 2019-01-11
0004-Patch-CHANGELOG.md-to-direct-users-to-our.patch =?utf-8?q?Patch_CHANGELOG=2Emd_to_direct_users_to_our=E2=80=A6?=

[git-debrebase split: mixed commit: upstream part]
Nicholas D Steeves <nsteeves@gmail.com> not-needed 2020-02-09
0005-Disable-tests-that-try-to-load-native-compiled-modul.patch Disable tests that try to load native compiled modules

Error log:

========================================
projectile-parse-dirconfig-file parses dirconfig and returns directories to ignore and keep

Traceback (most recent call last):
λ (comp-subr-trampoline-install message)
λ (comp--trampoline-search message)
λ (native-elisp-load
"/tmp/emacs-home/.emacs.d/eln-cache/30.2-aade0231/subr--trampoline-6d657373616765_message_0.eln")

========================================
projectile-parse-dirconfig-file skips leading whitespace before dispatching on the prefix

Traceback (most recent call last):
λ (comp-subr-trampoline-install message)
λ (comp--trampoline-search message)
λ (native-elisp-load
"/tmp/emacs-home/.emacs.d/eln-cache/30.2-aade0231/subr--trampoline-6d657373616765_message_0.eln")

Ran 910 out of 914 specs, 2 failed, in 5.72s.
Xiyue Deng <manphiz@gmail.com> not-needed 2026-07-21
0006-Disable-tests-trying-to-get-attributes-of-files-with.patch Disable tests trying to get attributes of files with no permission

Error output:

========================================
projectile-dir-files-alien-async assembles main + submodule files and removes deleted ones (git)

Traceback (most recent call last):
M (let (captured)
(projectile-dir-files-alien-async "/root/"
#'(lambda (files err)
(setq captured
(cons files err)))
'git)
(buttercup-expect
(let ((temp121 '(car captured)))
(let ((expr temp121))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) (car captured)))))
:to-equal
(let ((temp122 ''("keep.el" "sub.el")))
(let ((expr temp122))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) '("keep.el" "sub.el"))))))
(buttercup-expect
(let ((temp123 '(cdr captured)))
(let ((expr temp123))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) (cdr captured)))))
:to-be
(let ((temp124 'nil))
(let ((expr temp124))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) nil))))))
λ (projectile-dir-files-alien-async "/root/"
#[(files err)
((setq captured (cons files err)))
((captured))]
git)
M (let*
((vcs (or vcs (projectile-project-vcs directory)))
(command (projectile--alien-ext-command vcs directory)))
(if (eq vcs 'git)
(let
((fd
(and projectile-git-use-fd
(projectile-fd-executable-for directory))))
(projectile-files-via-ext-command-async directory command
#'(lambda (files err)
(if err
(funcall
callback nil
err)
(let*
((all
(nconc
files
(projectile--maybe-remove-ignored
directory
(projectile--restricted-sub-projects-files
directory
vcs
subdirs))))
(deleted
(if fd nil
(projectile-git-deleted-files
directory))))
(funcall
callback
(if deleted
(let
((deleted-set
(make-hash-table
:test
'equal
:size
(length
deleted)))) (let
((tail
deleted))
(while
tail
(let
((f
(car
tail)))
(puthash
f
t
deleted-set)
(setq
tail
(cdr
tail))))) (seq-remove
#
'(lambda
(f)
(gethash
f
deleted-set))
all))
all)
nil))))
subdirs))
(projectile-files-via-ext-command-async directory command callback
subdirs)))
λ (projectile--alien-ext-command git "/root/")
M (let ((command (projectile-get-ext-command vcs directory)))
(let*
((s (and t command)) (s (and s projectile-alien-honors-ignores))
(s (and s (eq projectile-indexing-method 'alien)))
(s
(and s
(projectile--alien-command-excludes-p vcs command
directory)))
(globs (and s (projectile--project-ignore-globs directory)))
(args
(and globs (projectile--alien-exclude-args vcs command globs))))
(if args (concat command " " args) command)))
M (let*
((s (and t command)) (s (and s projectile-alien-honors-ignores))
(s (and s (eq projectile-indexing-method 'alien)))
(s
(and s
(projectile--alien-command-excludes-p vcs command directory)))
(globs (and s (projectile--project-ignore-globs directory)))
(args
(and globs (projectile--alien-exclude-args vcs command globs))))
(if args (concat command " " args) command))
M (and s (projectile--alien-command-excludes-p vcs command directory))
λ (projectile--alien-command-excludes-p git "the-command" "/root/")
M (and (or (projectile--fd-command-p command) (eq vcs 'git))
(null (projectile--ensure-patterns directory)) t)
M (null (projectile--ensure-patterns directory))
λ (projectile--ensure-patterns "/root/")
M (let ((default-directory (or root default-directory)))
(projectile--dirconfig-ensure))
λ (projectile--dirconfig-ensure)
M (let* ((cfg (and t (projectile-parse-dirconfig-file))))
(if cfg (projectile-dirconfig-ensure cfg)))
M (and t (projectile-parse-dirconfig-file))
λ (projectile-parse-dirconfig-file)
M (let*
((dirconfig (projectile-dirconfig-file))
(project-root (projectile-project-root))
(cached (gethash project-root projectile--dirconfig-cache))
(attrs (file-attributes dirconfig))
(mtime
(if attrs (progn (file-attribute-modification-time attrs))))
(result
(progn
(ignore (consp cached))
(let* ((x25 (car-safe cached)) (x26 (cdr-safe cached)))
(progn
(ignore (consp x26))
(let* ((x27 (car-safe x26)) (x28 (cdr-safe x26)))
(progn
(ignore (consp x28))
(let* ((x29 (car-safe x28)) (x30 (cdr-safe x28)))
(progn
(ignore (null x30))
(let
((cached-dirconfig x25) (cached-mtime x27)
(cached-result x29))
(if
(and cached mtime
(equal cached-dirconfig dirconfig)
(equal cached-mtime mtime))
cached-result
(let
((parsed
(projectile--parse-dirconfig-file-uncached)))
(if mtime
(progn
(puthash project-root
(list dirconfig mtime parsed)
projectile--dirconfig-cache)))
parsed))))))))))))
(projectile--maybe-warn-prefixless-entries project-root result)
(projectile--maybe-warn-glob-keep-entries project-root result)
result)
λ (file-attributes "/root/.projectile")

========================================
projectile-dir-files-alien-async propagates an error from the underlying command (git)

Traceback (most recent call last):
M (let (captured)
(projectile-dir-files-alien-async "/root/"
#'(lambda (files err)
(setq captured
(cons files err)))
'git)
(buttercup-expect
(let ((temp125 '(car captured)))
(let ((expr temp125))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) (car captured)))))
:to-be
(let ((temp126 'nil))
(let ((expr temp126))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) nil)))))
(buttercup-expect
(let ((temp127 '(cdr captured)))
(let ((expr temp127))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) (cdr captured)))))
:to-equal
(let ((temp128 '"kaboom"))
(let ((expr temp128))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) "kaboom")))))
(buttercup-expect
(let ((temp129 ''projectile-git-deleted-files))
(let ((expr temp129))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr)
'projectile-git-deleted-files))))
:not
(let ((temp130 ':to-have-been-called))
(let ((expr temp130))
(oclosure--fix-type (ignore expr)
#'(lambda nil
(:documentation 'buttercup--thunk)
(if t nil expr) :to-have-been-called))))))
λ (projectile-dir-files-alien-async "/root/"
#[(files err)
((setq captured (cons files err)))
((captured))]
git)
M (let*
((vcs (or vcs (projectile-project-vcs directory)))
(command (projectile--alien-ext-command vcs directory)))
(if (eq vcs 'git)
(let
((fd
(and projectile-git-use-fd
(projectile-fd-executable-for directory))))
(projectile-files-via-ext-command-async directory command
#'(lambda (files err)
(if err
(funcall
callback nil
err)
(let*
((all
(nconc
files
(projectile--maybe-remove-ignored
directory
(projectile--restricted-sub-projects-files
directory
vcs
subdirs))))
(deleted
(if fd nil
(projectile-git-deleted-files
directory))))
(funcall
callback
(if deleted
(let
((deleted-set
(make-hash-table
:test
'equal
:size
(length
deleted)))) (let
((tail
deleted))
(while
tail
(let
((f
(car
tail)))
(puthash
f
t
deleted-set)
(setq
tail
(cdr
tail))))) (seq-remove
#
'(lambda
(f)
(gethash
f
deleted-set))
all))
all)
nil))))
subdirs))
(projectile-files-via-ext-command-async directory command callback
subdirs)))
λ (projectile--alien-ext-command git "/root/")
M (let ((command (projectile-get-ext-command vcs directory)))
(let*
((s (and t command)) (s (and s projectile-alien-honors-ignores))
(s (and s (eq projectile-indexing-method 'alien)))
(s
(and s
(projectile--alien-command-excludes-p vcs command
directory)))
(globs (and s (projectile--project-ignore-globs directory)))
(args
(and globs (projectile--alien-exclude-args vcs command globs))))
(if args (concat command " " args) command)))
M (let*
((s (and t command)) (s (and s projectile-alien-honors-ignores))
(s (and s (eq projectile-indexing-method 'alien)))
(s
(and s
(projectile--alien-command-excludes-p vcs command directory)))
(globs (and s (projectile--project-ignore-globs directory)))
(args
(and globs (projectile--alien-exclude-args vcs command globs))))
(if args (concat command " " args) command))
M (and s (projectile--alien-command-excludes-p vcs command directory))
λ (projectile--alien-command-excludes-p git "the-command" "/root/")
M (and (or (projectile--fd-command-p command) (eq vcs 'git))
(null (projectile--ensure-patterns directory)) t)
M (null (projectile--ensure-patterns directory))
λ (projectile--ensure-patterns "/root/")
M (let ((default-directory (or root default-directory)))
(projectile--dirconfig-ensure))
λ (projectile--dirconfig-ensure)
M (let* ((cfg (and t (projectile-parse-dirconfig-file))))
(if cfg (projectile-dirconfig-ensure cfg)))
M (and t (projectile-parse-dirconfig-file))
λ (projectile-parse-dirconfig-file)
M (let*
((dirconfig (projectile-dirconfig-file))
(project-root (projectile-project-root))
(cached (gethash project-root projectile--dirconfig-cache))
(attrs (file-attributes dirconfig))
(mtime
(if attrs (progn (file-attribute-modification-time attrs))))
(result
(progn
(ignore (consp cached))
(let* ((x25 (car-safe cached)) (x26 (cdr-safe cached)))
(progn
(ignore (consp x26))
(let* ((x27 (car-safe x26)) (x28 (cdr-safe x26)))
(progn
(ignore (consp x28))
(let* ((x29 (car-safe x28)) (x30 (cdr-safe x28)))
(progn
(ignore (null x30))
(let
((cached-dirconfig x25) (cached-mtime x27)
(cached-result x29))
(if
(and cached mtime
(equal cached-dirconfig dirconfig)
(equal cached-mtime mtime))
cached-result
(let
((parsed
(projectile--parse-dirconfig-file-uncached)))
(if mtime
(progn
(puthash project-root
(list dirconfig mtime parsed)
projectile--dirconfig-cache)))
parsed))))))))))))
(projectile--maybe-warn-prefixless-entries project-root result)
(projectile--maybe-warn-glob-keep-entries project-root result)
result)
λ (file-attributes "/root/.projectile")

Ran 1147 out of 1151 specs, 2 failed, in 6.86s.
buttercup-run failed: ""
Xiyue Deng <manphiz@gmail.com> not-needed 2026-07-30

All known versions for source package 'projectile'

Links