Subject: 31.0.50; Tramp: file-writable-p broken
From: Gerd Möllmann <[email-masked]>
To: [email-masked]
Date: Mon, 31 Mar 2025 10:21:25 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

In current master, Magit over Tramp/ssh stopped working. The first thing
I noticed in the log with tramp-verbose == 6 is

  08:33:37.401799 tramp-get-remote-tmpdir (1) # File error: Directory /ssh:mini:/tmp not accessible

This is caused by file-writable-p returning nil for the remote /tmp dir;
/tmp is a symlink to private/tmp on macOS.

I could bisect this to

  b8104dadbf285d12c356d4cddd28ac3eaf05f263 is the first bad commit
  commit b8104dadbf285d12c356d4cddd28ac3eaf05f263 (HEAD)
  Author: Michael Albinus <[email-masked]>
  Date:   Sun Mar 16 14:17:38 2025 +0100
      Tramp: Handle symlinks to non-existing targets better

Before this change

  (tramp-autoload-file-name-handler 'file-writable-p "/ssh:mini:/tmp")
  => t

After the change, it returns nil.