GNU logs - #57102, boring messages


Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 10 Aug 2022 08:26:02 +0000
Resent-Message-ID: <handler.57102.B.166011991328737 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: 57102 <at> debbugs.gnu.org
X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.166011991328737
          (code B ref -1); Wed, 10 Aug 2022 08:26:02 +0000
Received: (at submit) by debbugs.gnu.org; 10 Aug 2022 08:25:13 +0000
Received: from localhost ([127.0.0.1]:45987 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oLh1c-0007TQ-7Z
	for submit <at> debbugs.gnu.org; Wed, 10 Aug 2022 04:25:12 -0400
Received: from lists.gnu.org ([209.51.188.17]:33466)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1oLh1Z-0007TF-2o
 for submit <at> debbugs.gnu.org; Wed, 10 Aug 2022 04:25:10 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:44450)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <philipk@HIDDEN>)
 id 1oLh1X-0004fm-I8
 for bug-gnu-emacs@HIDDEN; Wed, 10 Aug 2022 04:25:08 -0400
Received: from mout02.posteo.de ([185.67.36.66]:55679)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <philipk@HIDDEN>)
 id 1oLh1Q-0001dH-Ac
 for bug-gnu-emacs@HIDDEN; Wed, 10 Aug 2022 04:25:04 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 115DB240101
 for <bug-gnu-emacs@HIDDEN>; Wed, 10 Aug 2022 10:24:57 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1660119898; bh=NRvX1IOYxOz05stMznt7Y3gKONwgsDx+g6z3OKnXIzs=;
 h=From:To:Subject:Autocrypt:Date:From;
 b=TyaEqo7TKFSm//Q8DZ0tmdIJo4SYW94AD+MMKa5HqlXTF7SlyZ+3jpKA+F17lXjvz
 5PeDWytOIs97DD31THtkr0798FJwMAK40LoMimQ6CkMN7VMV++XFDyjZc4pDrAFSLm
 VAclDHWA1R8Xasdk26cBx1x6Q82JoseqNchk+8ylCSpCRDNj+YWpeq6MzcrUKSA4tM
 ThgbVTqTGD/i40pSgzF09O6hDeuGv/35Fmrt0iNQesQpg5AinVmgFLq/mBWEWR0Ndx
 m4E7I/YleTmg+VFpqdN8yD49RXQSMXIefOtPmKfuRmZ6Okk6r7rxtWvaMfxyzC+fXT
 6oz6iQbp74wPQ==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4M2jfd2mnQz9rxd
 for <bug-gnu-emacs@HIDDEN>; Wed, 10 Aug 2022 10:24:57 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; prefer-encrypt=nopreference; keydata=
 mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ
 CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh
 io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF
 AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo
 Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS
 g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB
Date: Wed, 10 Aug 2022 08:24:52 +0000
Message-ID: <87a68cwlnv.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
Received-SPF: pass client-ip=185.67.36.66; envelope-from=philipk@HIDDEN;
 helo=mout02.posteo.de
X-Spam_score_int: -43
X-Spam_score: -4.4
X-Spam_bar: ----
X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


I am not sure if this is intentional, but the new `file-name-split'
is a bit unintuitive in this edge-case:

   (file-name-split "/")        =E2=86=92 ("" "" "")

while

   (file-name-split "/a")       =E2=86=92 ("" "a")
   (file-name-split "a/")       =E2=86=92 ("a" "")
   (file-name-split "a/b")      =E2=86=92 ("a" "b")

another few peculiar cases might be

   (file-name-split "//")       =E2=86=92 ("/" "" "")
   (file-name-split "///")      =E2=86=92 ("" "" "")
   (file-name-split "////")     =E2=86=92 ("" "" "")

as I'd expect '/' (in the first case) to never be part of a file name
(at least on a *nix system).

This all appears to happen only if there is no actual file name to be
found:

   (file-name-split "a/")       =E2=86=92 ("a" "")
   (file-name-split "a//")      =E2=86=92 ("a" "")
   (file-name-split "a///")     =E2=86=92 ("a" "")

One simple solution might just be to remove all empty strings from the
return value of `file-name-split', as to my knowledge empty file names
are now allowed (?):


--=-=-=
Content-Type: text/plain
Content-Disposition: inline

diff --git a/lisp/files.el b/lisp/files.el
index 65f9039b33..c5817be8da 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -5170,7 +5170,7 @@ file-name-split
                   (substring dir 0 -1))
                 components)
           (setq filename nil))))
-    components))
+    (delq "" components)))
 
 (defun file-parent-directory (filename)
   "Return the directory name of the parent directory of FILENAME.

--=-=-=
Content-Type: text/plain


That should take care of all the inconsistencies I see here, and it
would also preserve the usual intuition that "path///to//file"
designates the same path as "path/to/file".

In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.17.6)
 of 2022-08-01 built on rhea
Repository revision: 47f1cae83c269ea43d6b208e055ce536c017856f
Repository branch: feature/package+vc
System Description: Fedora Linux 36 (Workstation Edition)

Configured using:
 'configure --with-pgtk --with-native-compilation --with-imagemagick'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ IMAGEMAGICK
JPEG JSON LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY
INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS XIM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: ELisp/l

Minor modes in effect:
  bug-reference-prog-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  auto-revert-mode: t
  shell-dirtrack-mode: t
  outline-minor-mode: t
  flymake-mode: t
  flyspell-mode: t
  repeat-mode: t
  diff-hl-flydiff-mode: t
  diff-hl-mode: t
  winner-mode: t
  windmove-mode: t
  corfu-history-mode: t
  corfu-mode: t
  vertico-multiform-mode: t
  vertico-mode: t
  electric-pair-mode: t
  recentf-mode: t
  save-place-mode: t
  savehist-mode: t
  xterm-mouse-mode: t
  pixel-scroll-precision-mode: t
  pixel-scroll-mode: t
  display-time-mode: t
  display-battery-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  context-menu-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  auto-save-visited-mode: t

Load-path shadows:
/home/philip/.config/emacs/elpa/transient-0.3.7/transient hides /home/philip/Source/emacs/lisp/transient
~/.config/emacs/site-lisp/autoload hides /home/philip/Source/emacs/lisp/emacs-lisp/autoload
/home/philip/Source/emacs/lisp/ps-def hides /home/philip/Source/emacs/lisp/obsolete/ps-def

Features:
(shadow emacsbug flymake-cc cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs ert loadhist mode-local
help-at-pt emacs-news-mode magit-extras dictionary dictionary-connection
qp timezone flow-fill mailalias smtpmail autocrypt-message ecomplete
ietf-drums-date sort smiley gnus-cite mail-extr textsec uni-scripts
idna-mapping ucs-normalize uni-confusable textsec-check gnus-bcklg
nnfolder modus-vivendi-theme ibuffer ibuffer-loaddefs compat-27
compat-26 compat-25 compat-24 cus-start hyperspec vertico-buffer
make-mode locate doctor files-x shell-command+ cl-print edebug debug
backtrace consult-vertico consult-icomplete consult compat-28
magit-bookmark bookmark macrostep compat-macs avy gnus-async gnus-ml
disp-table autocrypt-gnus autocrypt utf-7 nndraft nnmh epa-file
gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp
gnus-cache whitespace shortdoc pulse color bug-reference grep xref
copyright time-stamp face-remap magit-submodule magit-obsolete
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 which-func imenu magit-diff smerge-mode
git-commit log-edit add-log magit-core magit-autorevert autorevert
magit-margin magit-transient magit-process with-editor shell server
magit-mode transient edmacro kmacro magit-git magit-section magit-utils
crm dash dired-aux gnus-dired vc-hg vc-git vc-bzr vc-src vc-sccs vc-svn
vc-cvs vc-rcs sh-script smie executable vc-backup log-view pcvs-util
buffer-env compat org-element avl-tree generator ol-eww eww xdg
url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect
gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum shr
pixel-fill kinsoku url-file url-dired svg dom gnus-group gnus-undo
gnus-start gnus-dbus gnus-cloud nnimap nnmail mail-source utf7 netrc
nnoo parse-time gnus-spec gnus-int gnus-range gnus-win ol-docview
doc-view filenotify jka-compr image-mode exif ol-bibtex ol-bbdb ol-w3m
ol-doi org-link-doi org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-footnote org-src ob-comint org-pcomplete pcomplete
org-list org-faces org-entities org-version ob-emacs-lisp ob-core
ob-eval org-table oc-basic bibtex iso8601 ol org-keys oc org-compat
advice org-macs org-loaddefs find-func cal-menu calendar cal-loaddefs
char-fold misearch multi-isearch mm-archive message yank-media rfc822
mml mml-sec epa mailabbrev gmm-utils mailheader mm-decode mm-bodies
mm-encode mule-util gnutls network-stream url-cache url-http url-auth
mail-parse rfc2231 url-gw nsm puny display-line-numbers finder-inf
vertico-directory orderless vertico-flat noutline outline checkdoc
flymake-proc flymake thingatpt flyspell ispell comp comp-cstr warnings
auth-source-pass repeat project dired-x sendmail rfc2047 rfc2045
ietf-drums gnus nnheader gnus-util time-date mail-utils range mm-util
mail-prsvr diff-hl-flydiff diff diff-hl vc-dir ewoc vc dired
dired-loaddefs vc-dispatcher diff-mode hippie-exp winner windmove
corfu-history corfu vertico-multiform vertico elec-pair recentf
tree-widget saveplace savehist xt-mouse modus-operandi-theme
modus-themes cus-edit pp icons wid-edit format-spec pixel-scroll
cua-base icomplete time battery dbus xml cus-load setup site-lisp
compile text-property-search comint ansi-color easy-mmode autoload
loaddefs-gen lisp-mnt coterm-autoloads embark-autoloads magit-autoloads
vertico-autoloads buffer-env-autoloads geiser-chibi-autoloads
consult-autoloads compat-autoloads crdt-autoloads corfu-autoloads
slime-autoloads geiser-impl help-fns radix-tree geiser-custom
geiser-base ring transient-autoloads info tex-site package let-alist
derived rx pcase cl-extra help-mode 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 password-cache json map byte-opt gv bytecomp
byte-compile cconv url-vars epg rfc6068 epg-config subr-x cl-loaddefs
cl-lib rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook
vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win
term/common-win pgtk-dnd 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 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 dynamic-setting system-font-setting font-render-setting cairo
gtk pgtk multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 1305290 153382)
 (symbols 48 47185 40)
 (strings 32 229531 23057)
 (string-bytes 1 7942713)
 (vectors 16 115746)
 (vector-slots 8 2759557 273441)
 (floats 8 843 1462)
 (intervals 56 52420 4538)
 (buffers 992 64))

--=-=-=--




Message sent:


Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Mailer: MIME-tools 5.505 (Entity 5.505)
Content-Type: text/plain; charset=utf-8
X-Loop: help-debbugs@HIDDEN
From: help-debbugs@HIDDEN (GNU bug Tracking System)
To: Philip Kaludercic <philipk@HIDDEN>
Subject: bug#57102: Acknowledgement (29.0.50; Peculiar file-name-split
 edge case)
Message-ID: <handler.57102.B.166011991328737.ack <at> debbugs.gnu.org>
References: <87a68cwlnv.fsf@HIDDEN>
X-Gnu-PR-Message: ack 57102
X-Gnu-PR-Package: emacs
Reply-To: 57102 <at> debbugs.gnu.org
Date: Wed, 10 Aug 2022 08:26:02 +0000

Thank you for filing a new bug report with debbugs.gnu.org.

This is an automatically generated reply to let you know your message
has been received.

Your message is being forwarded to the package maintainers and other
interested parties for their attention; they will reply in due course.

Your message has been sent to the package maintainer(s):
 bug-gnu-emacs@HIDDEN

If you wish to submit further information on this problem, please
send it to 57102 <at> debbugs.gnu.org.

Please do not send mail to help-debbugs@HIDDEN unless you wish
to report a problem with the Bug-tracking system.

--=20
57102: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D57102
GNU Bug Tracking System
Contact help-debbugs@HIDDEN with problems


Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 12 Aug 2022 15:36:02 +0000
Resent-Message-ID: <handler.57102.B57102.16603185449031 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.16603185449031
          (code B ref 57102); Fri, 12 Aug 2022 15:36:02 +0000
Received: (at 57102) by debbugs.gnu.org; 12 Aug 2022 15:35:44 +0000
Received: from localhost ([127.0.0.1]:58660 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMWhL-0002Lb-Mr
	for submit <at> debbugs.gnu.org; Fri, 12 Aug 2022 11:35:43 -0400
Received: from quimby.gnus.org ([95.216.78.240]:56030)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oMWhJ-0002LI-TF
 for 57102 <at> debbugs.gnu.org; Fri, 12 Aug 2022 11:35:42 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID
 :Date:References:In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-ID:
 Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc
 :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe:
 List-Post:List-Owner:List-Archive;
 bh=qsSJ6uq1t+JswlAXELBSTgdSC9whb2Reopjz5+5aA2g=; b=snlumcdOuyXb9RL9srwQjMtlsg
 4mDri5F0OkYCCMHQT7nhgN6wKzjg3IVf6iV1WxRxoOV2XkKtsrVB4tL283sSdNFrgSLK5GkDp84tG
 oPTbaGPH/vfN/Idxhs1FHdj5yhVmBZptBbbBw1Yc4yEDSS+HxDXCucmy786TKusgm85k=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oMWhB-0006bO-Co; Fri, 12 Aug 2022 17:35:35 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <87a68cwlnv.fsf@HIDDEN> (Philip Kaludercic's message of "Wed, 
 10 Aug 2022 08:24:52 +0000")
References: <87a68cwlnv.fsf@HIDDEN>
X-Now-Playing: Joni Mitchell's _Clouds_: "Roses Blue"
Date: Fri, 12 Aug 2022 17:35:30 +0200
Message-ID: <87y1vtmq4d.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 
 Content preview:  Philip Kaludercic <philipk@HIDDEN> writes: > I am not
   sure if this is intentional, but the new `file-name-split' > is a bit unintuitive
    in this edge-case: > > (file-name-split "/") =?UTF-8?Q?=E2=86=92?= ("" "" "") > > while > >
    (file-name-split "/a") =?UTF-8?Q?=E2=86=92?= ("" "a [...] 
 
 Content analysis details:   (-2.9 points, 5.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
                             [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Philip Kaludercic <philipk@HIDDEN> writes:

> I am not sure if this is intentional, but the new `file-name-split'
> is a bit unintuitive in this edge-case:
>
>    (file-name-split "/")        =E2=86=92 ("" "" "")
>
> while
>
>    (file-name-split "/a")       =E2=86=92 ("" "a")
>    (file-name-split "a/")       =E2=86=92 ("a" "")
>    (file-name-split "a/b")      =E2=86=92 ("a" "b")

The logic is that

(equal (string-join (file-name-split foo) "/") foo)

is supposed to be always true.  I see that's not the case in the "/"
case, so that needs fixing.





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 12 Aug 2022 15:57:02 +0000
Resent-Message-ID: <handler.57102.B57102.166031977711425 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166031977711425
          (code B ref 57102); Fri, 12 Aug 2022 15:57:02 +0000
Received: (at 57102) by debbugs.gnu.org; 12 Aug 2022 15:56:17 +0000
Received: from localhost ([127.0.0.1]:58734 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMX1F-0002yD-Fx
	for submit <at> debbugs.gnu.org; Fri, 12 Aug 2022 11:56:17 -0400
Received: from mout01.posteo.de ([185.67.36.65]:57091)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1oMX1E-0002y0-3S
 for 57102 <at> debbugs.gnu.org; Fri, 12 Aug 2022 11:56:16 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout01.posteo.de (Postfix) with ESMTPS id 3600D240026
 for <57102 <at> debbugs.gnu.org>; Fri, 12 Aug 2022 17:56:09 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1660319770; bh=mXpNWQLEgIf5Y7ZjK9xXzMBPNA+opbq/YTik+YkSqyM=;
 h=From:To:Cc:Subject:Autocrypt:Date:From;
 b=Zslp3xEYjEltRcJtPe6zfEksWtSppkm1ferGHA3xsYoTiP+dAp0Tcd58/Kjo9Z+/H
 0GLxV9fnqwrsaazektHX6zX7AdztPFhKQeOxkUaJUddmq++VtHfZ6cwf0jJEJd+vtb
 fR6bcu6MDyYzmiu99N9e4t4BOb79d8SOjvbwz4P7cfef6yVWA2CQhnLaCXIoY8R01z
 TED2gdN06t0vlpR5shdXmMaKFZlBG/6RlGnmD2VGjxEZUf6KDfQTDxYmgFkv94jtVN
 dwVYYKhEEXm6H+H94V4s2DPr8QyZHAl7zWiKnjhxAgHjpUwKgKDywpINlF7ur7J0ki
 9TK1WOtHNsZ0A==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4M47ZJ6qgSz6tmS;
 Fri, 12 Aug 2022 17:56:08 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <87y1vtmq4d.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Fri,
 12 Aug 2022 17:35:30 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; prefer-encrypt=nopreference; keydata=
 mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ
 CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh
 io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF
 AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo
 Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS
 g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB
Date: Fri, 12 Aug 2022 15:56:02 +0000
Message-ID: <87bkspa225.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> Philip Kaludercic <philipk@HIDDEN> writes:
>
>> I am not sure if this is intentional, but the new `file-name-split'
>> is a bit unintuitive in this edge-case:
>>
>>    (file-name-split "/")        =E2=86=92 ("" "" "")
>>
>> while
>>
>>    (file-name-split "/a")       =E2=86=92 ("" "a")
>>    (file-name-split "a/")       =E2=86=92 ("a" "")
>>    (file-name-split "a/b")      =E2=86=92 ("a" "b")
>
> The logic is that
>
> (equal (string-join (file-name-split foo) "/") foo)

How sensible is this in the first place?  Shouldn't it rather be
something like

(file-equal-p (apply #'file-name-concat (file-name-split filename)) filenam=
e)

[ which is currently likewise not given ]

Or to put it differently, who does the preceding empty string benefit if
we ignore the condition mentioned in the docstring?  Are there any
real-world use-cases?

> is supposed to be always true.  I see that's not the case in the "/"
> case, so that needs fixing.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 12 Aug 2022 16:00:02 +0000
Resent-Message-ID: <handler.57102.B57102.166031999911949 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166031999911949
          (code B ref 57102); Fri, 12 Aug 2022 16:00:02 +0000
Received: (at 57102) by debbugs.gnu.org; 12 Aug 2022 15:59:59 +0000
Received: from localhost ([127.0.0.1]:58781 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMX4p-00036f-I0
	for submit <at> debbugs.gnu.org; Fri, 12 Aug 2022 11:59:59 -0400
Received: from quimby.gnus.org ([95.216.78.240]:56478)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oMX4o-00036R-1Q
 for 57102 <at> debbugs.gnu.org; Fri, 12 Aug 2022 11:59:58 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=6mHhuQImphA56oHdj1CxXEbUmbuGzpJFz7u4oI1GAYU=; b=bH+ZGI6x/TDnU22RFwI63Y1o6E
 JmMcbH+gC5beN8Bc7SQtaAPJXQndS3SBmsNAHAv+/hrW1eibITmTuTGMJeKcIqnHSGuS5ecuOK4Gd
 BcDl1duHjk/n0DjduoRLEA9kelpFmSECeImZUwMj3OE/4B5OZELYnPonDC9EBhcQHRdc=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oMX4f-0006rK-UD; Fri, 12 Aug 2022 17:59:52 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <87bkspa225.fsf@HIDDEN> (Philip Kaludercic's message of "Fri, 
 12 Aug 2022 15:56:02 +0000")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAALVBMVEX9/fnq5dPQ0M2u
 raC0w8VplIzr1qbhvWX3pxCSaC9aVSQyLBRXTzSclmf////+39xWAAAAAWJLR0QOb70wTwAAAAd0
 SU1FB+YIDA86IGP0H8oAAAGmSURBVDjLnZPBS8JQHMf3XpKBCZuiRRC4KXXoYq4ODYUs9R+I7kKg
 Hg0PBtXVnrcoSCSEoNPe5slTvjp1cipo0MFh/0vPLHDb85BfdtjeZ+/32/f7e+O4BQUWIPw/t8Ao
 cMnHJ7LMYtJErFrAJ0kwIiWtEHLQn9yTxDCUUpbXIQ93JV9EEgEvgFz2b1mgXwtpk1hYpI8X52vZ
 GQ90XaQXx7lRcaXCslBA2XXEM0C9XiygIgNgrWXUWQBV7x/JgAVQFlVZOwqojKbNBStw3yyjytSe
 bRZlgH4MulKnISsJTo0HUumSrdpUrtT21cMRC6T7l7XPqBMEjLdxQ313Ag8hr1gffTjAartLXvSD
 L8dB8BiEtPVEQp4MbFYbdB3rpjGwh7OjUYAbnaG9VBxrpK/q8iRpSzhmzSRY1bpRO+jkr3vjttai
 t3AWgGZ5q9cl2q19MkvNfKnXNdRDe2+vmisrGD85jEMcC8bbWsgBOGU/o4xajNi9scyZyUidA0Mh
 2OBYEoTfIdslCsyR00zu5gDFfAbM39m/2aSHTuB5J+InsfJgTkWrvgHykXNhcXUPfQAAACV0RVh0
 ZGF0ZTpjcmVhdGUAMjAyMi0wOC0xMlQxNTo1ODozMiswMDowMNDb9M4AAAAldEVYdGRhdGU6bW9k
 aWZ5ADIwMjItMDgtMTJUMTU6NTg6MzIrMDA6MDChhkxyAAAAAElFTkSuQmCC
X-Now-Playing: Joni Mitchell's _Ladies of the Canyon_: "For Free"
Date: Fri, 12 Aug 2022 17:59:49 +0200
Message-ID: <87lertlafe.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview: Philip Kaludercic <philipk@HIDDEN> writes: > How sensible
 is this in the first place? Shouldn't it rather be > something like > >
 (file-equal-p
 (apply #'file-name-concat (file-name-split filename)) filename) > > [ which
 is currently likewise n [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Philip Kaludercic <philipk@HIDDEN> writes:

> How sensible is this in the first place?  Shouldn't it rather be
> something like
>
> (file-equal-p (apply #'file-name-concat (file-name-split filename)) filename)
>
> [ which is currently likewise not given ]
>
> Or to put it differently, who does the preceding empty string benefit if
> we ignore the condition mentioned in the docstring?  Are there any
> real-world use-cases?

You need to be able to tell (file-name-split "a/b") => ("a" "b") and
(file-name-split "/a/b") => ("" "a" "b") apart.





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 12 Aug 2022 16:30:02 +0000
Resent-Message-ID: <handler.57102.B57102.166032176922943 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166032176922943
          (code B ref 57102); Fri, 12 Aug 2022 16:30:02 +0000
Received: (at 57102) by debbugs.gnu.org; 12 Aug 2022 16:29:29 +0000
Received: from localhost ([127.0.0.1]:58793 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMXXN-0005xy-DA
	for submit <at> debbugs.gnu.org; Fri, 12 Aug 2022 12:29:29 -0400
Received: from mout02.posteo.de ([185.67.36.66]:44901)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1oMXXH-0005xh-Pi
 for 57102 <at> debbugs.gnu.org; Fri, 12 Aug 2022 12:29:27 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 9D4F4240105
 for <57102 <at> debbugs.gnu.org>; Fri, 12 Aug 2022 18:29:17 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1660321757; bh=+J59Mw8ng1gTMZq45J8H/1zWybV7PYwB+Izf+aVQFOA=;
 h=From:To:Cc:Subject:Autocrypt:Date:From;
 b=RcquvhBYciC7ihVHDjW1DIoHGKz9yh57lABIGaDGzUVdiA0fQeT7/O6tyF+6OpnbI
 JInvj8OKExifR2RtG42cwEFHe5wggkYa+T/1pv2aY/LjsReD0tzAaIUpAbQ4K4NXWP
 qlTsGcP51b94K2alDDaIDJjyzpXZCW1OhFrpujOaweNdqorE67iJ/zFa65QS6wCWTM
 tykAvTDieQKTRg1NdPgUy2guuTOjRfr/konJa3BrfkwSl5fbvUtAW+3W6sO64JWw6q
 ssGSCSU+RK3OIRd0l8O/YvSrFUDQ42t4yAey4oOywJnERaI0WYEqdy1Qn0QIFeLIJ/
 jwzhRkIcz0mYQ==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4M48JX4yTPz6tpn;
 Fri, 12 Aug 2022 18:29:16 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <87lertlafe.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Fri,
 12 Aug 2022 17:59:49 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; prefer-encrypt=nopreference; keydata=
 mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ
 CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh
 io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF
 AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo
 Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS
 g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB
Date: Fri, 12 Aug 2022 16:29:15 +0000
Message-ID: <87zgg98lyc.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> Philip Kaludercic <philipk@HIDDEN> writes:
>
>> How sensible is this in the first place?  Shouldn't it rather be
>> something like
>>
>> (file-equal-p (apply #'file-name-concat (file-name-split filename)) filename)
>>
>> [ which is currently likewise not given ]
>>
>> Or to put it differently, who does the preceding empty string benefit if
>> we ignore the condition mentioned in the docstring?  Are there any
>> real-world use-cases?
>
> You need to be able to tell (file-name-split "a/b") => ("a" "b") and
> (file-name-split "/a/b") => ("" "a" "b") apart.

Could one instead prefix the list with a symbol (either `absolute' or
`relative') to distinguish the two cases.  Or do you think that would
just make it more complicated.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 13 Aug 2022 11:45:01 +0000
Resent-Message-ID: <handler.57102.B57102.166039108130869 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166039108130869
          (code B ref 57102); Sat, 13 Aug 2022 11:45:01 +0000
Received: (at 57102) by debbugs.gnu.org; 13 Aug 2022 11:44:41 +0000
Received: from localhost ([127.0.0.1]:59840 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMpZJ-00081p-6U
	for submit <at> debbugs.gnu.org; Sat, 13 Aug 2022 07:44:41 -0400
Received: from quimby.gnus.org ([95.216.78.240]:35898)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oMpZH-00081c-Iu
 for 57102 <at> debbugs.gnu.org; Sat, 13 Aug 2022 07:44:40 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=ZFN3QGjhJ+l1mPCFEKW67yKavjlLkYj5cI/gOXMYre0=; b=p6WZghsjLRFdUWW3yXA5eBehxv
 w99EU31oy6qgFu3QwJrQMRk3+jCOA63eXuoUJip14MM9aUZKQ2mIzzqcNsUh2iJMmapUmIQ6vSB7t
 sX0ZlKUGvQ2sjSrxHJabyCFvs1704w45bbqFwf6swl2LzhHlLADot8E2uhBUeCFTPb0Y=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oMpZ8-0007D9-Sx; Sat, 13 Aug 2022 13:44:33 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <87zgg98lyc.fsf@HIDDEN> (Philip Kaludercic's message of "Fri, 
 12 Aug 2022 16:29:15 +0000")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEWtpqODfoFLQ0b/
 //+EeeQSAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YIDQslLBitksYAAAEzSURBVCjPhdGxboMwEAbg
 3yhk6JQhGZqpj2KGZIYII4U5lQpPkUdIqtKhUysVhP+n7PkMKFtvMPq482EfAHau71yIVwDmcLor
 HLDJ0iyfkLo8tVJabksXHucAzbgAu5vLXAmTLnB2ZWZUR7uNm2BcfbcvRa84OP6iYhO71Rxx5FdE
 y9GQjCB9Qg0n5RyTUdoDa9Tkm/HsyoDW82KaV/nqVUC/Me0NKDKFNYPAKnhNeLsUaaYNYHjLcyOo
 3seAZ6mTzPUbCfMVVoKzzfHkc8TMDx7ggf0CbrH2lxkN0jHcWkGbNvJ+OnXftOE2pUKir8IKXWUm
 UkWZhWakt5kz/FCsI2hD2TQZ2bUnimpOLd0kBgEf4j/4uGuCtvmcyrpw7mqCpk5hovpv5LDF3K2r
 OSyQuiH7Ay0C6D/xevVtAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIyLTA4LTEzVDExOjM3OjQ0KzAw
 OjAwzqGiJAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wOC0xM1QxMTozNzo0NCswMDowML/8GpgA
 AAAASUVORK5CYII=
X-Now-Playing: Joni Mitchell's _Wild Things Run Fast_: "Love"
Date: Sat, 13 Aug 2022 13:44:30 +0200
Message-ID: <87y1vsjrkx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Philip Kaludercic <philipk@HIDDEN> writes: > Could one
 instead prefix the list with a symbol (either `absolute' or > `relative')
 to distinguish the two cases. Or do you think that would > just make it more
 complicated. 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Philip Kaludercic <philipk@HIDDEN> writes:

> Could one instead prefix the list with a symbol (either `absolute' or
> `relative') to distinguish the two cases.  Or do you think that would
> just make it more complicated.

I think that just makes it way more complicated to use.





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 13 Aug 2022 13:25:02 +0000
Resent-Message-ID: <handler.57102.B57102.166039708825182 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166039708825182
          (code B ref 57102); Sat, 13 Aug 2022 13:25:02 +0000
Received: (at 57102) by debbugs.gnu.org; 13 Aug 2022 13:24:48 +0000
Received: from localhost ([127.0.0.1]:60074 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMr8B-0006Y5-Ti
	for submit <at> debbugs.gnu.org; Sat, 13 Aug 2022 09:24:48 -0400
Received: from mout01.posteo.de ([185.67.36.65]:51195)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1oMr88-0006Xq-It
 for 57102 <at> debbugs.gnu.org; Sat, 13 Aug 2022 09:24:47 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout01.posteo.de (Postfix) with ESMTPS id 9DF69240026
 for <57102 <at> debbugs.gnu.org>; Sat, 13 Aug 2022 15:24:37 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1660397078; bh=xjURSkljRRMiE/ho90cDst8cipX5ArRM2Npm+v6NvT8=;
 h=From:To:Cc:Subject:Autocrypt:Date:From;
 b=J/w/pl4AoclIP7+ublCDlEDSpYJQoVSixHyPIx8iLeKSgjCMhONPzWcAw6aCyVmc1
 B+ghHcdtOBfYSjGDWPDKnV+w4vBdW+E17ROQAU3yc4pJ1ijjViEL/ycoANN4KJ1mAI
 T44/DnrldU91I2r+uTmCZtIVn2iFfvffCRWUbHKvF9/CdjnUydmNfPtgH1wDOifaNr
 DBHdCmO5M53b5i4aB9GyR6qq8ttxWJKN5BTlG2AX5qluaoY8SJDNAt61XaSo3cW2Rg
 5FdXuiEKwPsBE5bnjGBAyvOxt2vh05ebhqaPk3RCshFNVcvqkcQ2wUp63XGaIqQLZu
 ulEGufJumCZDg==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4M4h910X9Wz6tmb;
 Sat, 13 Aug 2022 15:24:35 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <87y1vsjrkx.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Sat,
 13 Aug 2022 13:44:30 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; prefer-encrypt=nopreference; keydata=
 mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ
 CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh
 io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF
 AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo
 Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS
 g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB
Date: Sat, 13 Aug 2022 13:24:30 +0000
Message-ID: <877d3cl1ip.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> Philip Kaludercic <philipk@HIDDEN> writes:
>
>> Could one instead prefix the list with a symbol (either `absolute' or
>> `relative') to distinguish the two cases.  Or do you think that would
>> just make it more complicated.
>
> I think that just makes it way more complicated to use.

Grepping through emacs.git to see where file-name-split is used, it
seems that all it would change in most cases you'd just require an
additional (cdr ...).  At the same time, there is already an instance in
gnus-search.el that deals with the issue I brought up with the empty
strings.

As another alternative, how about file-name-split takes an optional
argument, and only does what I suggested in that case?  From how I see
file-name-split being used up until now (which doesn't have to mean a
lot), that could be a good compromise.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
References: <87a68cwlnv.fsf@HIDDEN>
In-Reply-To: <87a68cwlnv.fsf@HIDDEN>
Resent-From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 13 Aug 2022 17:09:02 +0000
Resent-Message-ID: <handler.57102.B57102.166041049425591 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: Lars Ingebrigtsen <larsi@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166041049425591
          (code B ref 57102); Sat, 13 Aug 2022 17:09:02 +0000
Received: (at 57102) by debbugs.gnu.org; 13 Aug 2022 17:08:14 +0000
Received: from localhost ([127.0.0.1]:34999 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMucQ-0006eg-1x
	for submit <at> debbugs.gnu.org; Sat, 13 Aug 2022 13:08:14 -0400
Received: from mail1472c50.megamailservers.eu ([91.136.14.72]:58268
 helo=mail102c50.megamailservers.eu)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattiase@HIDDEN>) id 1oMucO-0006eR-1V
 for 57102 <at> debbugs.gnu.org; Sat, 13 Aug 2022 13:08:13 -0400
X-Authenticated-User: mattiase@HIDDEN
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu;
 s=maildub; t=1660410484;
 bh=dGkMfrDSLd9WQCe2mCnRGSDAQJfOR0pgX7ACy2fAN+8=;
 h=From:Subject:Date:Cc:To:From;
 b=hJH2n+FA0YM13gC5XEmnnhVI1KdufJswKC0KUDC/UjECjGE2771tVEkfPAvqojCy6
 lioBOYWzA5RI7RjTv44Kb+sUlRHOj663W1y5Vftbxw2Y5W4UsoqCNdk/Nu82UIMl1L
 jKK4AwG4iv9BuFvkKmPdJpdQnVTe4pTmUl630kac=
Feedback-ID: mattiase@HIDDEN
Received: from smtpclient.apple (c188-150.188-179.bredband.tele2.se
 [188.150.188.179] (may be forged)) (authenticated bits=0)
 by mail102c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id 27DH806s066844; 
 Sat, 13 Aug 2022 17:08:02 +0000
From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Content-Type: text/plain;
	charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
Message-Id: <4ECBBAD8-732D-4235-BB7C-003E226543C0@HIDDEN>
Date: Sat, 13 Aug 2022 19:08:00 +0200
X-Mailer: Apple Mail (2.3654.120.0.1.13)
X-CTCH-RefID: str=0001.0A782F23.62F7DA74.0048, ss=1, re=0.000, recu=0.000,
 reip=0.000, cl=1, cld=1, fgs=0
X-CTCH-VOD: Unknown
X-CTCH-Spam: Unknown
X-CTCH-Score: 0.000
X-CTCH-Rules: 
X-CTCH-Flags: 0
X-CTCH-ScoreCust: 0.000
X-Origin-Country: SE
X-Spam-Score: 2.0 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: The current behaviour of file-name-split is based on a purely
 textual splitting on "/" which isn't as useful as basing it on actual file
 name components. For instance, the root component of a Posix fi [...] 
 Content analysis details:   (2.0 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at https://www.dnswl.org/,
 no trust [91.136.14.72 listed in list.dnswl.org]
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 1.0 MAY_BE_FORGED          Relay IP's reverse DNS does not resolve to IP
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

The current behaviour of file-name-split is based on a purely textual =
splitting on "/" which isn't as useful as basing it on actual file name =
components. For instance, the root component of a Posix file name is =
"/", not "". Looking at other languages and libraries is very much =
encouraged; they vary a lot in the amount of thought that has gone into =
their design.

Ideally we'd have a split function (the name is a placeholder for now) =
where:

(split "/a/b/c") -> ("/" "a" "b" "c")
(split "a/b/c/") -> ("a" "b" "c" "")
(split "/") -> ("/" "")

and, because repeated slashes mean the same thing as a single one in =
Posix except at the beginning,
(split "//a//b//") -> ("//" "a" "b" "")

An accompanying join operation would be the inverse, sort of:
(join "/" "a" "b" "c") -> "/a/b/c"
(join "a" "b" "") -> "a/b/"

where empty strings are ignored except at the end:
(join "" "a" "" "" "b") -> "a/b"
(join "a" "b" "" "") -> "a/b/"

Pre-joined chunks can be joined too:
(join "/a/b" "c/d/" "e") -> "/a/b/c/d/e"

Maybe components with a leading slash start over from the root:
(join "/" "a" "/b" "c") -> "/a/b/c" ?
(join "/" "a" "/b" "c") -> "/b/c" ?

Python's os.path.join does the latter; it's probably a good idea.

Now `file-name-concat` almost works like `join` above but not quite. =
Adding a new function is likely better than making compromises.

On Windows I'd expect that

(split "c:\\a\\b") -> ("c:\\" "a" "b")
(split "c:\\") -> ("c:\\" "")

but it's a bit complicated and then we have all the UNC path variants to =
deal with; a platform expert should be consulted.





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Augusto Stoffel <arstoffel@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sat, 13 Aug 2022 18:07:02 +0000
Resent-Message-ID: <handler.57102.B57102.166041400331153 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: Philip Kaludercic <philipk@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166041400331153
          (code B ref 57102); Sat, 13 Aug 2022 18:07:02 +0000
Received: (at 57102) by debbugs.gnu.org; 13 Aug 2022 18:06:43 +0000
Received: from localhost ([127.0.0.1]:35064 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oMvX0-00086O-LR
	for submit <at> debbugs.gnu.org; Sat, 13 Aug 2022 14:06:42 -0400
Received: from mail-ed1-f52.google.com ([209.85.208.52]:38567)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <arstoffel@HIDDEN>) id 1oMvWv-000868-Rp
 for 57102 <at> debbugs.gnu.org; Sat, 13 Aug 2022 14:06:41 -0400
Received: by mail-ed1-f52.google.com with SMTP id a89so4840639edf.5
 for <57102 <at> debbugs.gnu.org>; Sat, 13 Aug 2022 11:06:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc;
 bh=FRBtQDdbpZ3CFchKIrO+4pCidPaTfowrfwsiY4B1VaE=;
 b=nPQfWkXP1gI2KXNwu+YfaJCZHdf8A8tMzyz0LRzjdtxyK1pntqHyizNMPOa0n6Igbm
 Ki+3vs2DvejzorNosg4Qvcik5NHFpwfM3owlITSu7/fgvt2ujWyy7MLxzbj6p1PfcK5X
 5FjWcdPVoxgCBP8ydQOyoMP9egOaT5t90RU0Zsk3qNFf5sI2ZcXfKJwNydGyNeWvS8gI
 AnpxQZZUV0q/UuPdAjDXi8WhFgbxzLQyxoJpdOE6FA29+MfBRCU5BKgEqPGG2ACn53CY
 Vc7LpOsrLzgrPttDu4d7oebCC2hLkVdLnsuUKp3rtTCfs+TZtQduAU4xdFciaC5Uq54o
 MAvA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc;
 bh=FRBtQDdbpZ3CFchKIrO+4pCidPaTfowrfwsiY4B1VaE=;
 b=BYc9rt9PzQx+/BH0MzE1SlCVXJAH63yQfP/cZngdwADf9RVgbcX31ohJf5tF6UJ9Nc
 zdZRO90KuwiJRX4dBrbCho0Q1mQGQ60mTUR5IrekjluhRC2U7dsAK7sDfaXJoIRpSDah
 eVF08od18OQZKXQMeeY7EWsqa9rf4iZYVtGLZsps8eyIMfsVAQWnlp9kh8m0MzBhZpeE
 01JPBriph3Y0Nw3fTK1YZwQzXoYs4Ranx3Tbwq9UjmYxd+SC2AMUpcHk791PCoz12qT9
 JtxDvx4uAKAjOOU9ttyBo2GUAwNIWPYIv9FFQ8TICZ+FC+395rS43kr7dpmSVzm88YND
 JCbw==
X-Gm-Message-State: ACgBeo2AzDkGmdgeoIotKzbT63h3TVLDm4m6766ejuIM+kBGlBpd8KeK
 2PL7EB+J0lK31xW6himu+qEtGtPpqZg=
X-Google-Smtp-Source: AA6agR6O0s/aA4Pvfr4D/V/Wjyf2OBCXFxfolVHFzSSUPGrTpi0WO3B0ShvBBeAk43VCdBoSgJZRcA==
X-Received: by 2002:a05:6402:400e:b0:440:253e:961a with SMTP id
 d14-20020a056402400e00b00440253e961amr8231940eda.285.1660413991602; 
 Sat, 13 Aug 2022 11:06:31 -0700 (PDT)
Received: from ars3 ([2a02:8109:8ac0:56d0::2fb8])
 by smtp.gmail.com with ESMTPSA id
 e8-20020a170906080800b007309d640484sm2116952ejd.91.2022.08.13.11.06.30
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 13 Aug 2022 11:06:30 -0700 (PDT)
From: Augusto Stoffel <arstoffel@HIDDEN>
In-Reply-To: <87y1vsjrkx.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Sat,
 13 Aug 2022 13:44:30 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
Date: Sat, 13 Aug 2022 20:06:30 +0200
Message-ID: <877d3cxbkp.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On Sat, 13 Aug 2022 at 13:44, Lars Ingebrigtsen <larsi@HIDDEN> wrote:

> Philip Kaludercic <philipk@HIDDEN> writes:
>
>> Could one instead prefix the list with a symbol (either `absolute' or
>> `relative') to distinguish the two cases.  Or do you think that would
>> just make it more complicated.
>
> I think that just makes it way more complicated to use.

If instead of a symbol `absolute' or `relative' the first element was
one of the strings "/" or ".", then it would probably be pretty handy to
use.  But then of course the logic would be that

  (file-equal-p (apply #'file-name-concat (file-name-split filename)) filename)




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 14 Aug 2022 06:25:02 +0000
Resent-Message-ID: <handler.57102.B57102.166045826030203 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Augusto Stoffel <arstoffel@HIDDEN>
Cc: Lars Ingebrigtsen <larsi@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166045826030203
          (code B ref 57102); Sun, 14 Aug 2022 06:25:02 +0000
Received: (at 57102) by debbugs.gnu.org; 14 Aug 2022 06:24:20 +0000
Received: from localhost ([127.0.0.1]:35671 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oN72p-0007r5-M2
	for submit <at> debbugs.gnu.org; Sun, 14 Aug 2022 02:24:20 -0400
Received: from mout01.posteo.de ([185.67.36.65]:41323)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1oN72l-0007qn-0z
 for 57102 <at> debbugs.gnu.org; Sun, 14 Aug 2022 02:24:18 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout01.posteo.de (Postfix) with ESMTPS id 80105240026
 for <57102 <at> debbugs.gnu.org>; Sun, 14 Aug 2022 08:24:05 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1660458248; bh=ieSDpzc11b4pgZGjR/c3JmPXn12v+pI0/gJ+3a9MYiI=;
 h=From:To:Cc:Subject:Autocrypt:Date:From;
 b=sBExWNwpFllfrIUwHUrQ+8fddCystdxrY1qz4YErgqs2TrSpTHPs+XBeQvC97jOc+
 pn+9kCn46PiU9crt8dGX4hLP2FEQmL2fqVCJ0TkkWcBcbwCjkqEX8Kglyd6PeH11gp
 QQ4mQDlYOv0qmkvHJX1yQ/RZBz1kjoBXQ34l0fF+FSUClSvatkAyLu+3BroGb3jdEA
 xOmpFsZqUjqglgVLWC+jHVUEH5uaZayaRSFQ7n9XtxrMzpWOfk1EbCc202NVy3Hr2W
 jAI63GAf0rPA+5NLCgRbEdSijGJjesOy05GP7C4LtOPO1xbfKVmT2hXP+ogAIslsw/
 yH/uhECym4fGg==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4M56nK0h6cz6tpQ;
 Sun, 14 Aug 2022 08:24:04 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <877d3cxbkp.fsf@HIDDEN> (Augusto Stoffel's message of "Sat, 13
 Aug 2022 20:06:30 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
 <877d3cxbkp.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; prefer-encrypt=nopreference; keydata=
 mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ
 CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh
 io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF
 AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo
 Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS
 g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB
Date: Sun, 14 Aug 2022 06:24:04 +0000
Message-ID: <87r11js5q3.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Augusto Stoffel <arstoffel@HIDDEN> writes:

> On Sat, 13 Aug 2022 at 13:44, Lars Ingebrigtsen <larsi@HIDDEN> wrote:
>
>> Philip Kaludercic <philipk@HIDDEN> writes:
>>
>>> Could one instead prefix the list with a symbol (either `absolute' or
>>> `relative') to distinguish the two cases.  Or do you think that would
>>> just make it more complicated.
>>
>> I think that just makes it way more complicated to use.
>
> If instead of a symbol `absolute' or `relative' the first element was
> one of the strings "/" or ".", then it would probably be pretty handy to
> use.  But then of course the logic would be that
>
>   (file-equal-p (apply #'file-name-concat (file-name-split filename)) filename)

"/" or "." sounds a lot better than using symbols (at least on POSIX
systems).




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 15 Aug 2022 05:55:02 +0000
Resent-Message-ID: <handler.57102.B57102.166054288720686 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166054288720686
          (code B ref 57102); Mon, 15 Aug 2022 05:55:02 +0000
Received: (at 57102) by debbugs.gnu.org; 15 Aug 2022 05:54:47 +0000
Received: from localhost ([127.0.0.1]:40359 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oNT3n-0005NY-3s
	for submit <at> debbugs.gnu.org; Mon, 15 Aug 2022 01:54:47 -0400
Received: from quimby.gnus.org ([95.216.78.240]:55150)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oNT3l-0005NK-8O
 for 57102 <at> debbugs.gnu.org; Mon, 15 Aug 2022 01:54:45 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=nGXHiw84we9wRbsA0WRBjYE/jeYxLhfIaH0t1c7ZJyY=; b=bqgXWImLe2XmuCC5z6AsPge8QT
 c1vC/8t0r0SVbU6g8frarpxUYlqLveNejJEykDel37j2t+aNCrPZy2SPeerCXZ3LYNetxfGJYptTK
 AnbK3HDMlDWfTVsR68p48O5JJCnpbOd31TyPzpiZGHCDWhCUua0+ffCwBxxGVZaZcx8o=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oNT3c-00047u-SJ; Mon, 15 Aug 2022 07:54:38 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <877d3cl1ip.fsf@HIDDEN> (Philip Kaludercic's message of "Sat, 
 13 Aug 2022 13:24:30 +0000")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
 <877d3cl1ip.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEUwKSWjhHDOxK//
 //+xlIPoAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+YICRQAHTmYMQEAAAFzSURBVCjPTZJBbqRADEU/
 LRJpsmIkkCbcIH2KYpFNVoyEUYf1INF1ijoCidK9TqSuUZdPOd9FJoqFAPNs17cNkO1G+pvUwytt
 bdVrXICyGuBaVdELfOq9rnvi04KfjciJJBk5isSJOapvAwjGBDpxumCW2aqlKdY1CvEMbtOY/MXO
 SZmkvmZ0Gn67ffKJOZNGvymYDxh5mhjRv28kSTXcD9R2YIEk4lqSk5HJyJHOgY7IlkPSdiIafBxN
 m0+U2rER92NgywwjBYqFxBwf4YqKhE10kx25WJBV4wyk2gblbjX23YKRalLYj3G1jMzuMLvdFfLM
 9sID5lA4FuhJftWZNJLJ8eRQojERaP3qiivnL5OG/aTYlDmS8/u2G6KgHwH/bacvm3P/+Njv9Clk
 ZY08rbevZ5fJ6ioU3dll7w+XgGJ6/yrAXVy/O1yOQ7NllnCfP4TJK1CXyG/2Cag/Y4DKHrm5Kl+1
 3TIvS5LZJlvn0BLf7R+d/qJPkWdeiAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wOC0wOVQyMDow
 MDoyOSswMDowMMDFOioAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDgtMDlUMjA6MDA6MjkrMDA6
 MDCxmIKWAAAAAElFTkSuQmCC
X-Now-Playing: Siouxsie and the Banshees's _Kaleidoscope_: "Trophy"
Date: Mon, 15 Aug 2022 07:54:34 +0200
Message-ID: <87r11idpb9.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Philip Kaludercic <philipk@HIDDEN> writes: > Grepping
 through emacs.git to see where file-name-split is used, it > seems that all
 it would change in most cases you'd just require an > additional (cdr ...).
 At the same time, there is already an [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Philip Kaludercic <philipk@HIDDEN> writes:

> Grepping through emacs.git to see where file-name-split is used, it
> seems that all it would change in most cases you'd just require an
> additional (cdr ...).  At the same time, there is already an instance in
> gnus-search.el that deals with the issue I brought up with the empty
> strings.

Stepping back a bit, the use case for file-name-split is basically "give
me the components of this file name", but it's trying to return
something that can unambiguously be put back together again to get to
the original string.  Perhaps that's misguided, and the interpretation
of the result be left up to the caller.

That is, perhaps what we want is

(file-name-split "a/b")
=> '("a" "b")

(file-name-split "a/b/")
=> '("a" "b")

(file-name-split "/a/b")
=> '("a" "b")

(file-name-split "//a////b////")
=> '("a" "b")

I'm not sure what

(file-name-split "c:/a/b")

on Windows should return in that case, though.





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 15 Aug 2022 11:29:02 +0000
Resent-Message-ID: <handler.57102.B57102.166056289216342 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Philip Kaludercic <philipk@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166056289216342
          (code B ref 57102); Mon, 15 Aug 2022 11:29:02 +0000
Received: (at 57102) by debbugs.gnu.org; 15 Aug 2022 11:28:12 +0000
Received: from localhost ([127.0.0.1]:41015 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oNYGS-0004FV-6r
	for submit <at> debbugs.gnu.org; Mon, 15 Aug 2022 07:28:12 -0400
Received: from quimby.gnus.org ([95.216.78.240]:58254)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oNYGQ-0004FI-Dc
 for 57102 <at> debbugs.gnu.org; Mon, 15 Aug 2022 07:28:10 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=dmKqQAPNN6k5hcjn34gogbrwS0nkJmkfhQMQ40ZYSDo=; b=Pa7zo6hXBChneo+WDG45QDuMrW
 XdLqxmcvKtHOnQgmbPnvSFOBBVm8EQ2Q03mySSwOhZ1Q410NDM+P9H7ubLl7HP9OGLQrgOV6bZHXt
 4LNkj0gdg3jNtcBcQizXePw1cMrBjVuLLjItayrmmQWkC46cbA5VIpFYWXm5qZxI6+s4=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oNYGG-0006rU-SD; Mon, 15 Aug 2022 13:28:03 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <87r11idpb9.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Mon,
 15 Aug 2022 07:54:34 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
 <877d3cl1ip.fsf@HIDDEN> <87r11idpb9.fsf@HIDDEN>
X-Now-Playing: Dry Cleaning's _Boundary Road Snacks and Drinks EP_: "Sombre
 One"
Date: Mon, 15 Aug 2022 13:28:00 +0200
Message-ID: <87zgg59267.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Lars Ingebrigtsen <larsi@HIDDEN> writes: > That is, perhaps
 what we want is > > (file-name-split "a/b") > => '("a" "b") > >
 (file-name-split "a/b/") > => '("a" "b") But in that case,
 this is just a synonym for (split-string foo "/" t). 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> That is, perhaps what we want is
>
> (file-name-split "a/b")
> => '("a" "b")
>
> (file-name-split "a/b/")
> => '("a" "b")

But in that case, this is just a synonym for (split-string foo "/" t).





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Eli Zaretskii <eliz@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 15 Aug 2022 11:36:01 +0000
Resent-Message-ID: <handler.57102.B57102.166056335725348 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: philipk@HIDDEN, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166056335725348
          (code B ref 57102); Mon, 15 Aug 2022 11:36:01 +0000
Received: (at 57102) by debbugs.gnu.org; 15 Aug 2022 11:35:57 +0000
Received: from localhost ([127.0.0.1]:41032 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oNYNx-0006al-2x
	for submit <at> debbugs.gnu.org; Mon, 15 Aug 2022 07:35:57 -0400
Received: from eggs.gnu.org ([209.51.188.92]:45170)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1oNYNu-0006aX-C7
 for 57102 <at> debbugs.gnu.org; Mon, 15 Aug 2022 07:35:56 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:36768)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1oNYNl-0008Nc-Gb; Mon, 15 Aug 2022 07:35:48 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=RlrA7+MXl6y/8adSh5RQ2MtzlBV7KtUz1upkQtTVbNo=; b=jKmgw2G9zZuc
 CQAVKF5XOD8Q03F7pw+kLceQ78sN4LO6Ial3JgMzmGWuG5OQqoKuPT0uJqre2RbgB8Jqwn8reDhlW
 +HxSw2mwDr6X8A+qdDpqhPN/QlDoRx/+gTEM7eITJKcf2359OMdPKnZ77zaK6A8t5NyZT1Jd0fXjs
 8RahgVQqIqAKAS500B520mDR+1HcUWEJuesVWtjLD71QIcG1bgnyTCTZF1mE4BUOjdHOAs3qzDdW9
 fY4VwekhNuC8YnNcectvyi/rwviWKlORmuVrqW2BPGGbbRjB0Gz7gdSB1eH+6o0kprqNW18opw/zl
 0Zy6367s9xxrAjoZh/5ETQ==;
Received: from [87.69.77.57] (port=3317 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1oNYNh-0000z2-QJ; Mon, 15 Aug 2022 07:35:45 -0400
Date: Mon, 15 Aug 2022 14:35:28 +0300
Message-Id: <83ilmtivsv.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
In-Reply-To: <87r11idpb9.fsf@HIDDEN> (message from Lars Ingebrigtsen on Mon, 
 15 Aug 2022 07:54:34 +0200)
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
 <877d3cl1ip.fsf@HIDDEN> <87r11idpb9.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 57102 <at> debbugs.gnu.org
> From: Lars Ingebrigtsen <larsi@HIDDEN>
> Date: Mon, 15 Aug 2022 07:54:34 +0200
> 
> That is, perhaps what we want is
> 
> (file-name-split "a/b")
> => '("a" "b")
> 
> (file-name-split "a/b/")
> => '("a" "b")
> 
> (file-name-split "/a/b")
> => '("a" "b")

This should return '("/" "a" "b"), or '("/a" "b")  I think.

> (file-name-split "//a////b////")
> => '("a" "b")

And this should return '("/" "a" "b" "/"), or '("/a" "b/").

> I'm not sure what
> 
> (file-name-split "c:/a/b")
> 
> on Windows should return in that case, though.

If you agree with the above, then '("c:/" "a" "b").

If you don't care about the root directory, then '("a" "b")
(a.k.a. "leave the interpretation to the caller").




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Philip Kaludercic <philipk@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 15 Aug 2022 15:59:01 +0000
Resent-Message-ID: <handler.57102.B57102.166057909329966 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166057909329966
          (code B ref 57102); Mon, 15 Aug 2022 15:59:01 +0000
Received: (at 57102) by debbugs.gnu.org; 15 Aug 2022 15:58:13 +0000
Received: from localhost ([127.0.0.1]:43915 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oNcTl-0007nF-7W
	for submit <at> debbugs.gnu.org; Mon, 15 Aug 2022 11:58:13 -0400
Received: from mout02.posteo.de ([185.67.36.66]:41681)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <philipk@HIDDEN>) id 1oNcTg-0007mz-PG
 for 57102 <at> debbugs.gnu.org; Mon, 15 Aug 2022 11:58:11 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 97C0A240104
 for <57102 <at> debbugs.gnu.org>; Mon, 15 Aug 2022 17:58:02 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1660579082; bh=m/EfGtcQxoJ0xACxX4sSB3BURfQxzW4gE3WjGRwaLhQ=;
 h=From:To:Cc:Subject:Autocrypt:Date:From;
 b=aV5OJ02iF1RM8hsYjRiwvs+wmHc2GtYOtkFS0zHEx5Y1M/j5dMJfgvMfOdc7uaGCC
 GXQ7mlKHl/l9PD0w/2ic6V1n/Pc8v+53fLwPrcxmzjdtDgr+FPFokCeI3yZiUA8Yot
 HOFRgG6ft1yaSaSlaV/E+PM9/0RgLhx+l5amjdiqE76Md3mf1brI94a4hxFegpbGWO
 tFp07VqQSsIf1fLghFztLP7d1LPhZZjI0/7HfeOkzeCyY/kmtNCZoN0dDRa9UXp91F
 4yvROYnFhhSCMoFigK3RDZ6FNiUUgLbIjJQR/rvcNP7SD9/tOfXhPRB04YHSxSEqDk
 dq2REOzk+QPaw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4M5zT52QM7z6tmv;
 Mon, 15 Aug 2022 17:57:58 +0200 (CEST)
From: Philip Kaludercic <philipk@HIDDEN>
In-Reply-To: <87zgg59267.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Mon,
 15 Aug 2022 13:28:00 +0200")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
 <877d3cl1ip.fsf@HIDDEN> <87r11idpb9.fsf@HIDDEN>
 <87zgg59267.fsf@HIDDEN>
Autocrypt: addr=philipk@HIDDEN; prefer-encrypt=nopreference; keydata=
 mDMEYHHqUhYJKwYBBAHaRw8BAQdAp3GdmYJ6tm5McweY6dEvIYIiry+Oz9rU4MH6NHWK0Ee0QlBo
 aWxpcCBLYWx1ZGVyY2ljIChnZW5lcmF0ZWQgYnkgYXV0b2NyeXB0LmVsKSA8cGhpbGlwa0Bwb3N0
 ZW8ubmV0PoiQBBMWCAA4FiEEDM2H44ZoPt9Ms0eHtVrAHPRh1FwFAmBx6lICGwMFCwkIBwIGFQoJ
 CAsCBBYCAwECHgECF4AACgkQtVrAHPRh1FyTkgEAjlbGPxFchvMbxzAES3r8QLuZgCxeAXunM9gh
 io0ePtUBALVhh9G6wIoZhl0gUCbQpoN/UJHI08Gm1qDob5zDxnIHuDgEYHHqUhIKKwYBBAGXVQEF
 AQEHQNcRB+MUimTMqoxxMMUERpOR+Q4b1KgncDZkhrO2ql1tAwEIB4h4BBgWCAAgFiEEDM2H44Zo
 Pt9Ms0eHtVrAHPRh1FwFAmBx6lICGwwACgkQtVrAHPRh1Fw1JwD/Qo7kvtib8jy7puyWrSv0MeTS
 g8qIxgoRWJE/KKdkCLEA/jb9b9/g8nnX+UcwHf/4VfKsjExlnND3FrBviXUW6NcB
Date: Mon, 15 Aug 2022 15:57:57 +0000
Message-ID: <8735dx7b3u.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> Lars Ingebrigtsen <larsi@HIDDEN> writes:
>
>> That is, perhaps what we want is
>>
>> (file-name-split "a/b")
>> => '("a" "b")
>>
>> (file-name-split "a/b/")
>> => '("a" "b")
>
> But in that case, this is just a synonym for (split-string foo "/" t).

Plus the ability to do the right thing on the DOS/Windows.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 17 Aug 2022 10:56:02 +0000
Resent-Message-ID: <handler.57102.B57102.166073372231466 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Eli Zaretskii <eliz@HIDDEN>
Cc: philipk@HIDDEN, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166073372231466
          (code B ref 57102); Wed, 17 Aug 2022 10:56:02 +0000
Received: (at 57102) by debbugs.gnu.org; 17 Aug 2022 10:55:22 +0000
Received: from localhost ([127.0.0.1]:49527 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oOGhm-0008BR-EJ
	for submit <at> debbugs.gnu.org; Wed, 17 Aug 2022 06:55:22 -0400
Received: from quimby.gnus.org ([95.216.78.240]:44252)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oOGhk-0008BD-Ud
 for 57102 <at> debbugs.gnu.org; Wed, 17 Aug 2022 06:55:21 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=quHpM/bkGylmuHG4jVh4L0ycdIGdfPQFTdTqKi0eMlQ=; b=FYlmtrqhGsfDZTI1kjnH9kfr23
 WMEzK37qyQh3xLaEwdMf027g+cq+IU7tklaR1CrH5Sfkbh/Xzj91uHNB31UQjQmJOSwAkVCkfXmqB
 1wFe+1FsBb85gt+YqQABz4uCnI/3CIKFH2fu5BJTBZOlZgAzW9eCJmT5TWFPVupUz8wM=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oOGhb-0008Bm-JJ; Wed, 17 Aug 2022 12:55:13 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <83ilmtivsv.fsf@HIDDEN> (Eli Zaretskii's message of "Mon, 15 Aug
 2022 14:35:28 +0300")
References: <87a68cwlnv.fsf@HIDDEN> <87y1vtmq4d.fsf@HIDDEN>
 <87bkspa225.fsf@HIDDEN> <87lertlafe.fsf@HIDDEN>
 <87zgg98lyc.fsf@HIDDEN> <87y1vsjrkx.fsf@HIDDEN>
 <877d3cl1ip.fsf@HIDDEN> <87r11idpb9.fsf@HIDDEN>
 <83ilmtivsv.fsf@HIDDEN>
X-Now-Playing: King Crimson's _Three of a Perfect Pair_: "No Warning"
Date: Wed, 17 Aug 2022 12:55:11 +0200
Message-ID: <87o7wjjg1c.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview: Eli Zaretskii <eliz@HIDDEN> writes: >> (file-name-split
 "/a/b")
 >> => '("a" "b") > > This should return '("/" "a" "b"), or '("/a" "b") I
 think. > >> (file-name-split "//a////b////") >> => '("a" "b") > > And this
 should return '("/" "a" [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Eli Zaretskii <eliz@HIDDEN> writes:

>> (file-name-split "/a/b")
>> => '("a" "b")
>
> This should return '("/" "a" "b"), or '("/a" "b")  I think.
>
>> (file-name-split "//a////b////")
>> => '("a" "b")
>
> And this should return '("/" "a" "b" "/"), or '("/a" "b/").
>
>> I'm not sure what
>> 
>> (file-name-split "c:/a/b")
>> 
>> on Windows should return in that case, though.
>
> If you agree with the above, then '("c:/" "a" "b").
>
> If you don't care about the root directory, then '("a" "b")
> (a.k.a. "leave the interpretation to the caller").

I'm not at all sure, and perhaps we should have two different functions
here for the two different use cases that I think this function has.

The use cases, as I see it, are

1) "I just want to know which bits are in the path".  This is used by
dabbrev, which wants to add "a" and "b" here to the abbrevs.  In that
case, "c:/" is not what it wants.

2) "I need to perform some operation on each segment and then put the
file name back together again".  This is what browse-url does -- it
wants to %-encode each segment, but not the "/"s, so it wants to
preserve the absolute/relative distinction.  (But it needs to know that
the "c:/" part is not something to be encoded anyway.)  In that case, I
think we want '("/" "a" "b") and '("c:/" "a" "b").

So perhaps file-name-split should keep the current semantics (but the
bugs identified should be fixed) for 2), but we could add a new function
(or optional parameter) for 1) which would leave "/"/"c:/" off.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Stefan Kangas <stefankangas@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 25 Sep 2022 12:07:02 +0000
Resent-Message-ID: <handler.57102.B57102.166410758319693 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>,  Philip Kaludercic <philipk@HIDDEN>
Cc: Lars Ingebrigtsen <larsi@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166410758319693
          (code B ref 57102); Sun, 25 Sep 2022 12:07:02 +0000
Received: (at 57102) by debbugs.gnu.org; 25 Sep 2022 12:06:23 +0000
Received: from localhost ([127.0.0.1]:46058 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ocQOk-00057S-WE
	for submit <at> debbugs.gnu.org; Sun, 25 Sep 2022 08:06:22 -0400
Received: from mail-oi1-f182.google.com ([209.85.167.182]:40829)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <stefankangas@HIDDEN>) id 1ocQOf-00057B-A1
 for 57102 <at> debbugs.gnu.org; Sun, 25 Sep 2022 08:06:14 -0400
Received: by mail-oi1-f182.google.com with SMTP id n124so5299317oih.7
 for <57102 <at> debbugs.gnu.org>; Sun, 25 Sep 2022 05:06:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=content-transfer-encoding:cc:to:subject:message-id:date
 :mime-version:references:in-reply-to:from:from:to:cc:subject:date;
 bh=ky+xCxdC3vH13HWA90YFX7lgp9/Pel7I4BqF81WtJ6g=;
 b=Co+ABCcT8HJOccg9RzBfeuIlShENqaR63p4pbvH/rT2V9XvENGrpbr+NpGVeZNhc8R
 TXV6QnePMaC1PX5PaJrUAz9QLg/wvNO6EqHjNmVOaVfwAxRuWx2ca9ieLEHbDIId1MsC
 Pq+RildpSWpkcv8/sBCzl/MVvkVD7YzZJr87ePGOlmlbVgo3O6Qoz+QX/iUG0oX30iqY
 3R8Mreh7pun4OXqfM8+SHfPBJM8ZJzBfDUjHWJCFtpkDA9S/H0XwpMQJeprEs3dRzp2N
 LIHzBzXlp2YxVUHIoWx5vwM3jb1V1keBOybP7j7LeABRrFvMYsX+7d+7WbctfcWFsHJg
 zpLg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=content-transfer-encoding:cc:to:subject:message-id:date
 :mime-version:references:in-reply-to:from:x-gm-message-state:from:to
 :cc:subject:date;
 bh=ky+xCxdC3vH13HWA90YFX7lgp9/Pel7I4BqF81WtJ6g=;
 b=59old8sQFR3rNzwgq3e49wgJkMNq49Ew+x5lQOuqRVp++85IhJpNnuFWy3OTDU3GWT
 J8CNhMBM24tE5VsKcDVx+ZgswHySGKtQMH0eMaSlLjXrLvKeoxzx4zTOVJ+mMLG2DWsi
 YwDNh0L+9zbOWaUfqqy41ped5AQzSlPnjWVwLbC6ZZg7FnzLz4WZ9FT70paRrhJvzrzp
 uzJUFnLQQGTn5fNG0B+wYXDV+Ev1uCmEOG2wxrmzJEOQTAAnZRat2IgTuh2jRwPEB3FG
 dg5/zKjLgzbkg085M5qZG2/rUPV7EuxL0k7aja/tg0AQeLSBWQiL05ECpyq2QNbRtgAl
 BkUQ==
X-Gm-Message-State: ACrzQf19sviHulU0BWK+fw3zwDnfL0+pnqn+pyXol/EF1ZVm7ie6p3tx
 qOuVrO+M7t23l9h78k2L/uo49AWq+NB/6WMxUBM=
X-Google-Smtp-Source: AMsMyM6KNpZpAfZfhoV2Gst7GmA5VVXsk43w+kEdtjarePNznINfpu2ZYgErplqaeQ70SZNpI7sWcWKgaFsXrjfMQn8=
X-Received: by 2002:a05:6808:1a09:b0:350:1e6a:e469 with SMTP id
 bk9-20020a0568081a0900b003501e6ae469mr12370696oib.92.1664107563677; Sun, 25
 Sep 2022 05:06:03 -0700 (PDT)
Received: from 753933720722 named unknown by gmailapi.google.com with
 HTTPREST; Sun, 25 Sep 2022 05:06:03 -0700
From: Stefan Kangas <stefankangas@HIDDEN>
In-Reply-To: <4ECBBAD8-732D-4235-BB7C-003E226543C0@HIDDEN>
References: <87a68cwlnv.fsf@HIDDEN>
 <4ECBBAD8-732D-4235-BB7C-003E226543C0@HIDDEN>
X-Hashcash: 1:20:220925:57102 <at> debbugs.gnu.org::W1oxd6VoCJHxP8O8:A3N+
MIME-Version: 1.0
Date: Sun, 25 Sep 2022 05:06:03 -0700
Message-ID: <CADwFkmmPHNj9WOEEocoybM5JBWftL3xQJjhqTmJhimpdfiViVw@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Mattias Engdeg=C3=A5rd <mattiase@HIDDEN> writes:

> The current behaviour of file-name-split is based on a purely textual
> splitting on "/" which isn't as useful as basing it on actual file
> name components. For instance, the root component of a Posix file name
> is "/", not "". Looking at other languages and libraries is very much
> encouraged; they vary a lot in the amount of thought that has gone
> into their design.

I also note that we have `string-split' and `string-join', but
`file-name-split' and `file-name-concat'.  I think `file-name-join'
would be a better name.

We should leave behind an alias if we rename it of course, perhaps
forever.




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 26 Sep 2022 10:42:02 +0000
Resent-Message-ID: <handler.57102.B57102.166418890919268 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Stefan Kangas <stefankangas@HIDDEN>
Cc: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>, Philip Kaludercic <philipk@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166418890919268
          (code B ref 57102); Mon, 26 Sep 2022 10:42:02 +0000
Received: (at 57102) by debbugs.gnu.org; 26 Sep 2022 10:41:49 +0000
Received: from localhost ([127.0.0.1]:49360 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oclYU-00050a-9g
	for submit <at> debbugs.gnu.org; Mon, 26 Sep 2022 06:41:48 -0400
Received: from quimby.gnus.org ([95.216.78.240]:39598)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oclYQ-00050H-L1
 for 57102 <at> debbugs.gnu.org; Mon, 26 Sep 2022 06:41:40 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=o5yVYGKTdEfyShdlqBHWrpgXEB4wCdfX7wAa0KwosVQ=; b=WlO2CHaJprCBdpwNQuiDDjJHQE
 PQV9pQMa4b6ezWnhvvINT18l9Ye9q25M4Fooz2zN/p5IZy4FmxYZ9oSMRMvsTTr23T9mLmrMOE3PD
 nAbnZKt/Zh41UWl9AcTRbR8UJa9HMkgZQkLcKb27k50HW+JTsbOsYfKeoYdXlIQoxzTQ=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oclYH-00072h-DL; Mon, 26 Sep 2022 12:41:31 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <CADwFkmmPHNj9WOEEocoybM5JBWftL3xQJjhqTmJhimpdfiViVw@HIDDEN>
 (Stefan Kangas's message of "Sun, 25 Sep 2022 05:06:03 -0700")
References: <87a68cwlnv.fsf@HIDDEN>
 <4ECBBAD8-732D-4235-BB7C-003E226543C0@HIDDEN>
 <CADwFkmmPHNj9WOEEocoybM5JBWftL3xQJjhqTmJhimpdfiViVw@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAElBMVEXsoWK4WkT0wY1j
 RkV9ZYP///9s//JAAAAAAWJLR0QF+G/pxwAAAAd0SU1FB+YJGgopC+B+RAAAAAGQSURBVDjLddMN
 eoMgDAbgJL0A0R0AeXaAOjjAWrj/mfYloFXX0qe28pqEP4lG44TGedXJ/qTQewVf3EUlwY9d4gkO
 LW7dA1r6bs/U2tOAJ6I4oKaaf75r7hBIYrikSgOW9xA/wHQBirIDbxA1o017Kg0+NdyzKtEOtEPw
 sAEa9QU2gRgG8AvY12IDHYAnHUQ3wDMkkpZ/EHzUB6BDqhmgia2HLkDLPbFvgR6L68RLkJvtkfAR
 EL1Iuvnu6TuwTTun2iMIQ5BTRDQQB4tQXXUOOFgGuCY5wh0RjFXhvmIGrOuq+c7Yn1X9yPixxGVG
 QAeQLztFgKpDcCgyVh+wzv7o3fe6+DnokI+tBQpvoXwEL4HSmPkJtLURcIKy4rwE8RA6QluxgzoO
 3gallgbAtDZ5Jao1q690X2z07NYjvBEhxQ4PDeoLYccJNVurnqv8AtAQ6jWaVbZBlWVkwTEXqoBc
 7QOYe2XOZPAYo80jAm1GhBf4atVoA9I4AZpXN4h8hdqTJdoBNUopRsDmr6baGxblDy5JetNfiSZm
 AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIyLTA5LTI2VDEwOjQxOjExKzAwOjAw0+s5bAAAACV0RVh0
 ZGF0ZTptb2RpZnkAMjAyMi0wOS0yNlQxMDo0MToxMSswMDowMKK2gdAAAAAASUVORK5CYII=
X-Now-Playing: The Lounge Lizards's _No Pain for Cakes_: "Where Were You"
Date: Mon, 26 Sep 2022 12:41:28 +0200
Message-ID: <87r0zya04n.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview: Stefan Kangas <stefankangas@HIDDEN> writes: > I also note
 that we have `string-split' and `string-join', but > `file-name-split' and
 `file-name-concat'. I think `file-name-join' > would be a better name. 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Stefan Kangas <stefankangas@HIDDEN> writes:

> I also note that we have `string-split' and `string-join', but
> `file-name-split' and `file-name-concat'.  I think `file-name-join'
> would be a better name.

I think that makes sense...

> We should leave behind an alias if we rename it of course, perhaps
> forever.

An obsolete alias?




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Stefan Kangas <stefankangas@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 26 Sep 2022 11:16:01 +0000
Resent-Message-ID: <handler.57102.B57102.166419090732416 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Lars Ingebrigtsen <larsi@HIDDEN>
Cc: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>, Philip Kaludercic <philipk@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166419090732416
          (code B ref 57102); Mon, 26 Sep 2022 11:16:01 +0000
Received: (at 57102) by debbugs.gnu.org; 26 Sep 2022 11:15:07 +0000
Received: from localhost ([127.0.0.1]:49428 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ocm4p-0008Pz-AG
	for submit <at> debbugs.gnu.org; Mon, 26 Sep 2022 07:15:07 -0400
Received: from mail-oi1-f172.google.com ([209.85.167.172]:44696)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <stefankangas@HIDDEN>) id 1ocm4l-00085V-3u
 for 57102 <at> debbugs.gnu.org; Mon, 26 Sep 2022 07:15:06 -0400
Received: by mail-oi1-f172.google.com with SMTP id n83so7777327oif.11
 for <57102 <at> debbugs.gnu.org>; Mon, 26 Sep 2022 04:15:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=cc:to:subject:message-id:date:mime-version:references:in-reply-to
 :from:from:to:cc:subject:date;
 bh=YYcbdW2qcOLBEMJKmdQA6tczW05F91SGTgQd4V1P90M=;
 b=k6tl4A8PyQ/gJ4HLfLC1NPej5BJdDkBpTL0aMHCapk4esraIew9cgKmI5KkqdTgoR/
 ndPZ3uyYNvXLOePC4Zo8F2CylH8GkMBu3n0HQggdvoyYHz4Be5gzZ7MHSLXW6uLhva4C
 CFDunuUAhbeANKJAousehXXCuUDQKaMps7ZSNKf6k6pNv3YDX9LHyQQcl1MOKDmSduHm
 Ug9aWQ9YAfw+P2GJXk2C5iA/WCbHUEPCLTo9d1g1iB6w38DF0lLmkN7KLYp7uKqPcm5f
 CQ3RqkMVh2dR7s7rSVhGSUEs0EnbjUItMTGfMUYedJEEo9+BtqGMw1kPB6rWePzNDHYg
 AZQw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=cc:to:subject:message-id:date:mime-version:references:in-reply-to
 :from:x-gm-message-state:from:to:cc:subject:date;
 bh=YYcbdW2qcOLBEMJKmdQA6tczW05F91SGTgQd4V1P90M=;
 b=FO6vJ2I4w+vOW4J790RBoctaYfs7FkW3kAurawlZ2bucvRJ2ZCSniy/j1HSP5lybA5
 3lVszRxcOYwgoNbJbgoC0iG35QeiipuA2pu9FxFkOHxhNNGFXA5AjXAAkiU38G+sLAyS
 Jb04teGWTCOUe3TOCeatpRfpOgxu5f+EhjXGDjDNTy3uQJ8qikehZMJS7UzEcOvMKehZ
 U81ikiPW1DvXXQzYDCAYqSQ/8kjGUrYzL8lhW8Dj73iX6anhv6STO+k9atimr8ZDVVhr
 d09uhHoLyfYXMjuZtWASeca2N7rK0FDOX/ltBl7q7y2sYMNBfP5BG11sWuUUL92jEHZw
 sbjA==
X-Gm-Message-State: ACrzQf3u0IGr+rerHVWcmhzsoly+bMKsjz9DmqJL8khlgUMm+zdMixO9
 5VK11GDOxI1/8mfhmFr3KnIvLCoEQYa1GBejFBs=
X-Google-Smtp-Source: AMsMyM5bi611Vg0hfgzEqBws889G19uQ0CvhEIuSfo/zLDU/X9iEclFcW8+mnQOh3tVX7lsQQOLM+9+lmbmJOD3jRmY=
X-Received: by 2002:a05:6808:1688:b0:345:ea9a:2954 with SMTP id
 bb8-20020a056808168800b00345ea9a2954mr14635877oib.199.1664190897351; Mon, 26
 Sep 2022 04:14:57 -0700 (PDT)
Received: from 753933720722 named unknown by gmailapi.google.com with
 HTTPREST; Mon, 26 Sep 2022 07:14:56 -0400
From: Stefan Kangas <stefankangas@HIDDEN>
In-Reply-To: <87r0zya04n.fsf@HIDDEN>
References: <87a68cwlnv.fsf@HIDDEN>
 <4ECBBAD8-732D-4235-BB7C-003E226543C0@HIDDEN>
 <CADwFkmmPHNj9WOEEocoybM5JBWftL3xQJjhqTmJhimpdfiViVw@HIDDEN>
 <87r0zya04n.fsf@HIDDEN>
X-Hashcash: 1:20:220926:larsi@HIDDEN::37NucAgzro3AYatd:And2
MIME-Version: 1.0
Date: Mon, 26 Sep 2022 07:14:56 -0400
Message-ID: <CADwFkmnh7V2OVJxOWYX5r8U5xrZ+8F=-SWNJGzTCmjpEVph=hw@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> Stefan Kangas <stefankangas@HIDDEN> writes:
>
>> I also note that we have `string-split' and `string-join', but
>> `file-name-split' and `file-name-concat'.  I think `file-name-join'
>> would be a better name.
>
> I think that makes sense...
>
>> We should leave behind an alias if we rename it of course, perhaps
>> forever.
>
> An obsolete alias?

Sure.

But, thinking more about this, maybe we would want a new function.
Because this is not fun:

    (apply #'file-name-concat (file-name-split "/foo/bar"))
    => "foo/bar"

I'd like it better if it worked like this:

    (file-name-join (file-name-split "/foo/bar"))
    => "/foo/bar"

And then there are the issues Mattias has pointed out.  One small step
in the right direction would be to make sure that:

    (equal (file-name-split "/foo")
           (file-name-split "//foo"))




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#57102: 29.0.50; Peculiar file-name-split edge case
Resent-From: Lars Ingebrigtsen <larsi@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Mon, 26 Sep 2022 12:00:02 +0000
Resent-Message-ID: <handler.57102.B57102.166419357428526 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 57102
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Stefan Kangas <stefankangas@HIDDEN>
Cc: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>, Philip Kaludercic <philipk@HIDDEN>, 57102 <at> debbugs.gnu.org
Received: via spool by 57102-submit <at> debbugs.gnu.org id=B57102.166419357428526
          (code B ref 57102); Mon, 26 Sep 2022 12:00:02 +0000
Received: (at 57102) by debbugs.gnu.org; 26 Sep 2022 11:59:34 +0000
Received: from localhost ([127.0.0.1]:49517 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ocmlp-0007Q2-Io
	for submit <at> debbugs.gnu.org; Mon, 26 Sep 2022 07:59:33 -0400
Received: from quimby.gnus.org ([95.216.78.240]:40716)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1ocmlo-0007Pp-3m
 for 57102 <at> debbugs.gnu.org; Mon, 26 Sep 2022 07:59:32 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=QAUV/DlMUzgQwB45qpMczecD+8zv2RCjxen/n48uZrk=; b=c4nGqPHGZNltiQwMuta8m5z0o/
 OtDJ4DWDtQqld/2WE/GQse913Grqp1kYBbaFlxXdltwKFIyLb9HXmacEl/xWgasAZ8iB0p7B6Mf7z
 2OTx7amxtUmfLCi6664vDNyNR5o9+Aw5Skwx0tXva+POTT4FAgKgRda/DGpJ5PjLTTfo=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1ocmle-0007fu-Ux; Mon, 26 Sep 2022 13:59:24 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
In-Reply-To: <CADwFkmnh7V2OVJxOWYX5r8U5xrZ+8F=-SWNJGzTCmjpEVph=hw@HIDDEN>
 (Stefan Kangas's message of "Mon, 26 Sep 2022 07:14:56 -0400")
References: <87a68cwlnv.fsf@HIDDEN>
 <4ECBBAD8-732D-4235-BB7C-003E226543C0@HIDDEN>
 <CADwFkmmPHNj9WOEEocoybM5JBWftL3xQJjhqTmJhimpdfiViVw@HIDDEN>
 <87r0zya04n.fsf@HIDDEN>
 <CADwFkmnh7V2OVJxOWYX5r8U5xrZ+8F=-SWNJGzTCmjpEVph=hw@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAD1BMVEVKLCVPLCORZE60
 ln7///8IGfnBAAAAAWJLR0QEj2jZUQAAAAd0SU1FB+YJGgs6EAo2pkkAAAF7SURBVDjLnZPbecMg
 DIUFXQBpAkss0MD+u+UIgQ1t+lISXz5+ju4m8sXMheJtPsfKGiBtYDxaA+CUBbu3EueMzBWcK+5S
 SEoA6larmTWr+GM1NQ1Qe++ttZe11jvAq9sAr3FcrSXDfayhsG9iQVwFLljhazmvl6cB8NWrtQ1g
 pUGG7iMIYfkDMH0AttVsAYEDMfsB2PeUkQCuEkenwsG8gkwgSC5ylgOQ+AaKCHMs1wHuJSgURdO8
 JSYakKetUGQPKVudTnbnEEgNSZiaecC5aDRCd4DzHi5a2ZzeILHXW7zDw1q5o0KdFNNVretSBMiY
 J0qXR9Rsz8PfvegiHu71APhIiCp5cWWWdzo33KIksyEBxEEMo6luCo9FvYO1rX6EjyLjuAfBuyni
 0Tux7atJtI0JIJ+K2IcGfnifRFpjpc/E7abQimfinn1vCK5TwZnHRyMo12nKR45H1Kct7wnT+g5O
 gn2Jz2CBmRDj5xlS+qUow9YqxgbudP+53hVgPjdMzr2BAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIy
 LTA5LTI2VDExOjU4OjE2KzAwOjAw9kEqbQAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wOS0yNlQx
 MTo1ODoxNiswMDowMIccktEAAAAASUVORK5CYII=
X-Now-Playing: Fairport Convention's _Come All Ye (5)_: "Restless"
Date: Mon, 26 Sep 2022 13:59:22 +0200
Message-ID: <87o7v273dx.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Stefan Kangas <stefankangas@HIDDEN> writes: > But,
 thinking
 more about this, maybe we would want a new function. > Because this is not
 fun: > > (apply #'file-name-concat (file-name-split "/foo/bar")) > =>
 "foo/bar"
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Stefan Kangas <stefankangas@HIDDEN> writes:

> But, thinking more about this, maybe we would want a new function.
> Because this is not fun:
>
>     (apply #'file-name-concat (file-name-split "/foo/bar"))
>     => "foo/bar"

Uhm...  is that a bug, though?

> I'd like it better if it worked like this:
>
>     (file-name-join (file-name-split "/foo/bar"))
>     => "/foo/bar"
>
> And then there are the issues Mattias has pointed out.  One small step
> in the right direction would be to make sure that:
>
>     (equal (file-name-split "/foo")
>            (file-name-split "//foo"))

That seems like a bug.  :-/





Last modified: Mon, 26 Sep 2022 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.