unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Michael Albinus <michael.albinus@gmx.de>
To: emacs-devel@gnu.org
Cc: Paul Eggert <eggert@cs.ucla.edu>
Subject: Re: master 9dc306b1: Improve reporting of I/O, access errors
Date: Wed, 18 Sep 2019 09:41:09 +0200	[thread overview]
Message-ID: <875zlqgiga.fsf@gmx.de> (raw)
In-Reply-To: <20190918022444.103AC207F5@vcs0.savannah.gnu.org> (Paul Eggert's message of "Tue, 17 Sep 2019 22:24:43 -0400 (EDT)")

eggert@cs.ucla.edu (Paul Eggert) writes:

Hi,

> diff --git a/etc/NEWS b/etc/NEWS
> index 9aec8da..dce4903 100644
> --- a/etc/NEWS
> +++ b/etc/NEWS
> @@ -2005,6 +2005,16 @@ file name if there is no user named "foo".
>  ** The FILENAME argument to 'file-name-base' is now mandatory and no
>  longer defaults to 'buffer-file-name'.
>
> ++++
> +** File metadata primitives now signal an error if I/O, access, or
> +other serious errors prevent them from determining the result.
> +Formerly, these functions often (though not always) returned nil.
> +For example, if the directory /etc/firewalld is not searchable,
> +(file-symlink-p "/etc/firewalld/firewalld.conf") now signals an error
> +instead of returning nil, because file-symlink-p cannot determine
> +whether a symbolic link exists there.  These functions still behave as
> +before if the only problem is that the file does not exist.

That is a serious API change, and I fear it will break existing
code. For example, Tramp trusts on file-attributes returning nil, when a
file does not exist or is not accessible for whatever reason. This is
true also for local files.

Furthermore, Tramp does not report anything but nil if a remote file is
not accessible due to I/O errors. So the promise of this change cannot
be kept for all situations.

I didn't follow the discussion for this, but is it really worth to break
existing code?

(And at least, this paragraph belongs to "Incompatible Lisp Changes in
Emacs 27.1" in NEWS)

Best regards, Michael.



       reply	other threads:[~2019-09-18  7:41 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20190918022442.11082.40975@vcs0.savannah.gnu.org>
     [not found] ` <20190918022444.103AC207F5@vcs0.savannah.gnu.org>
2019-09-18  7:41   ` Michael Albinus [this message]
2019-09-18  7:44     ` master 9dc306b1: Improve reporting of I/O, access errors Michael Albinus
2019-09-20  0:21     ` Paul Eggert
2019-09-20  5:48       ` Eli Zaretskii
2019-09-20 12:43       ` Michael Albinus
2019-09-20 19:05         ` Paul Eggert
2019-09-20 19:22           ` Michael Albinus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=875zlqgiga.fsf@gmx.de \
    --to=michael.albinus@gmx.de \
    --cc=eggert@cs.ucla.edu \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).