Subject: bug#78800: closed (Re: bug#78800: 30.1; dired-re-perms is valid only with modes in ls-lisp-verbosity)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 19 Jul 2025 07:11:02 +0000

Your bug report

#78800: 30.1; dired-re-perms is valid only with modes in ls-lisp-verbosity

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
78800: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=78800
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#78800: 30.1; dired-re-perms is valid only with modes in ls-lisp-verbosity
From: Eli Zaretskii <[email-masked]>
To: Sam Steingold <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Sat, 19 Jul 2025 10:10:13 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: Sam Steingold <[email-masked]>
> Date: Sun, 6 Jul 2025 01:58:31 -0400
> Cc: [email-masked], [email-masked]
> 
> Given the abundance of systems where ":" is not a valid file name char
> (e.g., windows, common lisp logical pathnames),
> I think this is indeed a case of "don't do that".
> IOW, a colon in a file name is an interoperability problem beyond Emacs.

Thanks, closing.

Subject: 30.1; dired-re-perms is valid only with modes in ls-lisp-verbosity
From: Johan Claesson <[email-masked]>
To: [email-masked]
Date: Sun, 15 Jun 2025 15:34:28 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

I am writing about a very small corner case problem in dired in Emacs.
Since 83e0442 when modes is not a member of ls-lisp-verbosity then
ls-lisp will print the permissions in short form like "drwx".  This will
not match the dired-re-perms regexp which expect like "drwxrwxrwx". This
will cause a problem in dired for filenames that ends with a colon (:).
To reproduce from emacs -Q:

(require 'ls-lisp)
(setq ls-lisp-use-insert-directory-program nil
      ls-lisp-verbosity '(links uid))

And then visit a directory containing a file ending with a colon.  
Maybe the dired-re-perms could just be shortened/simplified to cover
this case as well?

Regards,

/Johan

In GNU Emacs 30.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33,
 cairo version 1.16.0) of 2025-05-31 built on goblin
Repository revision: 8ac894e2246f25d2a2a97d866b10e6e0b0fede5a
Repository branch: HEAD
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Ubuntu 22.04.5 LTS

Configured using:
 'configure --with-x-toolkit=gtk3 --without-compress-install
 --with-modules PKG_CONFIG_PATH=/home/jcl/usr/lib/pkgconfig'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP
NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
  value of $LC_MONETARY: en_GB.UTF-8
  value of $LC_NUMERIC: en_GB.UTF-8
  value of $LC_TIME: en_GB.UTF-8
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix

Major mode: Term

Minor modes in effect:
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  hexl-follow-ascii: t
  display-time-mode: t
  minibuffer-depth-indicate-mode: t
  save-place-mode: t
  minibuffer-electric-default-mode: t
  icomplete-mode: t
  windmove-mode: t
  emms-mode-line-mode: t
  emms-playing-time-display-mode: t
  emms-playing-time-mode: t
  winner-mode: t
  ido-everywhere: t
  which-function-mode: t
  server-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-layout-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  global-prettify-symbols-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  temp-buffer-resize-mode: t

Load-path shadows:
/home/jcl/elpa/magit-4.3.5/magit-autorevert hides /home/jcl/elpa/magit-section-4.3.5/magit-autorevert
/home/jcl/elpa/magit-4.3.5/magit-dired hides /home/jcl/elpa/magit-section-4.3.5/magit-dired
/home/jcl/elpa/transient-0.8.8/transient hides /home/jcl/build/emacs-stable/lisp/transient

Features:
(shadow emacsbug help-fns radix-tree bug-reference flow-fill shr-color
gnus-cite mm-archive mail-extr textsec uni-scripts idna-mapping
ucs-normalize uni-confusable textsec-check gnus-async char-fold misearch
multi-isearch pulse time-stamp check-declare smiley jcl-replace
jcl-games-init mule-util cal-iso org-indent oc-basic ol-eww ol-rmail
ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview doc-view jka-compr
ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi jcl-renegade-goblin
jcl-home-boot network-stream erlang-test jcl-load jcl-magit-init
magit-submodule magit-blame magit-stash magit-reflog magit-bisect
magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-tag magit-merge
magit-branch magit-reset magit-files magit-refs magit-status magit
magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode diff
git-commit log-edit pcvs-util magit-core magit-autorevert magit-margin
magit-transient magit-process with-editor magit-mode benchmark magit-git
magit-base magit-section crm llama transient edmacro jcl-billboard-init
jcl-dir-local-init jcl-rfc-init rfcview goto-addr jcl-file-cache-test
jcl-file-cache-init jcl-package-lint-init package-lint let-alist finder
jcl-elisp-init profiler jcl-grep-init jcl-abbrev-init jcl-ediff-init
jcl-term-init jcl-erlang-init erldoc jcl-midnite-init jcl-midnite
jcl-mailme midnight jcl-picpocket-init picpocket-test jcl-ido-init
jcl-dired-init image-file image-converter image-dired image-dired-tags
image-dired-external image-dired-util image-mode find-dired ls-lisp
wdired jcl-register-init jcl-command-subset-init jcl-generic-init
generic-x jcl-eww-init eww url-queue jcl-org-init ob-latex ox-beamer
ox-odt rng-loc rng-uri rng-parse rng-match rng-pttrn nxml-parse nxml-ns
nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html ox-ascii
ox-publish ox org-attach org-feed org-capture jcl-shell-init jcl-c-init
cwarn jcl-modes-init hexl checkdoc lisp-mnt vc-dir vc vc-git
vc-dispatcher calc calc-loaddefs rect calc-macs proced nroff-mode table
picture markdown-mode color autoconf autoconf-mode make-mode python
jcl-ruby inf-ruby ruby-mode grep jcl-elpa-init ffap view jcl-global-init
wc-mode time printing ps-print ps-print-loaddefs lpr mb-depth saveplace
face-remap minibuf-eldef icomplete jcl-keys-init kmacro diff-mode
track-changes jcl-file-cache filecache jcl-imenu jcl-wesnoth
wesnoth-mode wesnoth-wml-data wesnoth-update jcl-erlang jcl-picpocket
jcl-goblin fuzzy-match jcl-ediff ediff ediff-merg ediff-mult ediff-wind
ediff-diff ediff-help ediff-init ediff-util jcl-elisp jcl-grep edebug
jcl-stumpwm jcl-org jcl-keys tramp trampver tramp-integration files-x
tramp-message tramp-compat tramp-loaddefs windmove jcl-debbugs-init
debbugs-org debbugs-gnu add-log debbugs soap-client url-http url-auth
url-gw nsm rng-xsd rng-dt rng-util xsd-regexp debbugs-compat
jcl-duff-init jcl-isearch duff jcl-bugfix loadhist
jcl-bugfix-complete-at-eob jcl-bugfix-xref jcl-template jcl-copyright
jcl-template-lib cperl-mode facemenu cc-mode cc-fonts cc-guess cc-menus
cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs erlang tempo align
jcl-register jcl-term ange-ftp jcl-advice jcl-command-subset jcl-motion
jcl-safe-init jcl-site-start jpt-mode erlang-start gnus-ml cursor-sensor
qp nndraft nnmh nnfolder nnml jcl-master jcl-status jcl-buffer-init
org-agenda org-element org-persist xdg org-id org-element-ast inline
avl-tree org-refile org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-src ob-comint org-pcomplete org-list org-footnote
org-faces org-entities ob-emacs-lisp ob-core ob-eval org-cycle org-table
org-keys oc org-loaddefs ol org-fold org-fold-core org-compat
org-version org-macs autorevert filenotify jcl-calendar-init appt
jcl-calendar holidays holiday-loaddefs diary-lib diary-loaddefs cal-menu
calendar cal-loaddefs jcl-emms-init emms-idapi-browser emms-idapi
emms-idapi-musicbrainz emms-mpris emms-playlist-limit emms-i18n
emms-history emms-score emms-stream-info emms-metaplaylist-mode
emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort
emms-volume emms-volume-mpv emms-volume-sndioctl emms-volume-mixerctl
emms-volume-pulse emms-volume-amixer emms-playlist-sort emms-last-played
emms-player-xine emms-player-mpd tq emms-streams emms-show-all
emms-tag-editor format-spec emms-tag-tracktag emms-mark emms-cache
emms-info-native emms-info-native-spc emms-info-native-mp3
emms-info-native-ogg emms-info-native-opus emms-info-native-flac
emms-info-native-vorbis bindat emms-info-exiftool emms-info-tinytag
emms-info-metaflac emms-info-opusinfo emms-info-ogginfo
emms-info-mp3info emms-player-vlc emms-player-mpv emms-player-mplayer
jcl-emms emms-mode-line emms-librefm-stream emms-librefm-scrobbler
emms-playing-time emms-info emms-later-do emms-playlist-mode
emms-source-playlist emms-setup emms-lyrics emms-url emms-source-file
locate emms-player-simple emms emms-compat jcl-gnus-init
jcl-swedish-postfix quail jcl-gnus jcl-dired dired-aux dired-x mm-url
gnus-topic gnus-agent gnus-srvr gnus-score score-mode nnvirtual nntp
gnus-cache gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime
gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group
gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail
mail-source utf7 nnoo parse-time iso8601 gnus-spec gnus-int gnus-range
gnus-win message yank-media puny rfc822 mml mml-sec epa derived epg
rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader gnus nnheader gnus-util range wid-edit
jcl-boot jcl-slime-init slime-fancy slime-indentation slime-cl-indent
cl-indent slime-trace-dialog slime-fontifying-fu slime-package-fu
slime-references slime-compiler-notes-tree slime-scratch
slime-presentations slime-macrostep macrostep compat slime-mdot-fu
slime-enclosing-context slime-fuzzy slime-fancy-trace
slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc
slime-repl slime-parse jcl-misc hippie-exp jcl-ert picpocket exif
jcl-windows jcl-buffer jcl-compile ldap whitespace time-date winner ido
num3-mode ispell find-lisp ert ewoc debug backtrace find-func slime
easy-mmode apropos compile text-property-search etags fileloop generator
xref project arc-mode archive-mode noutline outline pp hyperspec
thingatpt jcl-face hi-lock dired dired-loaddefs which-func imenu hl-line
jcl-times-init comp comp-cstr cl-extra help-mode warnings comp-run
comp-common advice smtpmail sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils fortune jcl-compat-init jcl-util jcl-times server
term disp-table shell pcomplete ehelp comint ansi-osc ansi-color ring
sh-script rx smie treesit executable jcl-early-boot-init jcl-load-path
finder-inf auctex-autoloads tex-site debbugs-autoloads emms-autoloads
haskell-mode-autoloads inf-ruby-autoloads magit-autoloads pcase
magit-section-autoloads llama-autoloads markdown-mode-autoloads
num3-mode-autoloads package-lint-autoloads slime-autoloads
macrostep-autoloads transient-autoloads info with-editor-autoloads
package browse-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie generate-lisp-file url-domsuf url-util mailcap
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs icons
password-cache json subr-x map byte-opt gv bytecomp byte-compile
url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren
electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel
term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset
image regexp-opt fringe tabulated-list replace newcomment text-mode
lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch
easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify lcms2
dynamic-setting system-font-setting font-render-setting cairo gtk
x-toolkit xinput2 x multi-tty move-toolbar make-network-process
native-compile emacs)

Memory information:
((conses 16 1444353 241767) (symbols 48 94949 1)
 (strings 32 398474 19995) (string-bytes 1 12139873)
 (vectors 16 137373) (vector-slots 8 2607284 181265)
 (floats 8 1291 7041) (intervals 56 33448 420) (buffers 992 68))