unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#74202: 31.0.50; package-el fails to delete outdated elpa packages
@ 2024-11-04  8:00 Johann Höchtl
  2024-11-04  8:06 ` bug#74202: Addendum: full error message Johann Höchtl
  2024-11-04 13:01 ` Eli Zaretskii
  0 siblings, 2 replies; 6+ messages in thread
From: Johann Höchtl @ 2024-11-04  8:00 UTC (permalink / raw)
  To: 74202

[-- Attachment #1: Type: text/plain, Size: 7127 bytes --]

Using Windows ucrt mps emacs build from

https://github.com/kiennq/emacs-build/releases/tag/v31.319.20241101.0cb75cf



Since like two months or so, most notably package-el, but also other file
deleting operations like expiring eww cache, fails to delete files in
.emacs directory on Windows. The error message is "permission denied". I do
run emacs as the interactively logged in user. FWIW I start emacs from a
bash command line as runemacs.exe



Manually deleting files from within dired in the .emacs-directory works so
I do not think it is a permission issue.





In GNU Emacs 31.0.50 (build 1, x86_64-w64-mingw32) of 2024-11-01 built

 on fv-az742-134

Repository revision: 0cb75cf1479375db092a3d14b5ec7ce996d3e598

Repository branch: HEAD

Windowing system distributor 'Microsoft Corp.', version 10.0.19045

System Description: Microsoft Windows 10 Enterprise (v10.0.2009.19045.5011)



Configured using:

 'configure

 --prefix=/d/a/emacs-build/emacs-build/pkg/0cb75cf-ucrt-x86_64

 'CFLAGS=-O2 -fno-semantic-interposition -floop-parallelize-all

 -ftree-parallelize-loops=4 -g3 ' --disable-build-details --without-dbus

 --enable-link-time-optimization --enable-build-details

 --with-compress-install --with-small-ja-dic --with-gif --with-gnutls

 --with-harfbuzz --with-jpeg --with-json --with-lcms2 --with-mps

 --with-native-compilation --with-png --with-rsvg --with-tree-sitter

 --with-xml2 --with-xpm --with-zlib --without-cairo --without-tiff'



Configured features:

ACL GIF GMP GNUTLS HARFBUZZ JPEG LCMS2 LIBXML2 MODULES MPS NATIVE_COMP

NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND SQLITE3 THREADS

TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XPM ZLIB



Important settings:

  value of $LC_ALL: en_US.UTF-8

  value of $LANG: C.UTF-8

  locale-coding-system: cp1252



Major mode: elisp-compile



Minor modes in effect:

  global-git-commit-mode: t

  magit-auto-revert-mode: t

  corfu-terminal-mode: t

  winner-mode: t

  windmove-mode: t

  savehist-mode: t

  save-place-mode: t

  recentf-mode: t

  pixel-scroll-precision-mode: t

  marginalia-mode: t

  global-auto-revert-mode: t

  icomplete-mode: t

  fido-mode: t

  desktop-save-mode: t

  delete-selection-mode: t

  override-global-mode: t

  tooltip-mode: t

  global-eldoc-mode: t

  show-paren-mode: t

  electric-indent-mode: t

  mouse-wheel-mode: t

  tool-bar-mode: t

  tab-bar-mode: t

  menu-bar-mode: t

  file-name-shadow-mode: t

  global-font-lock-mode: t

  font-lock-mode: t

  blink-cursor-mode: t

  minibuffer-regexp-mode: t

  buffer-read-only: t

  column-number-mode: t

  line-number-mode: t

  transient-mark-mode: t

  auto-composition-mode: t

  auto-encryption-mode: t

  auto-compression-mode: t



Load-path shadows:

c:/Users/HoechtlJ/OneDrive - WKO
Online/Dokumente/.emacs.d/elpa/transient-20241102.1229/transient hides
c:/Users/HoechtlJ/AppData/Local/Emacs/share/emacs/31.0.50/lisp/transient



Features:

(shadow sort mail-extr emacsbug find-dired project ffap grep misearch

multi-isearch ediff ediff-merg ediff-mult ediff-wind ediff-diff

ediff-help ediff-init ediff-util let-alist magit-bookmark bookmark

magit-submodule magit-blame magit-stash magit-reflog magit-bisect

magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit

magit-sequence magit-notes magit-worktree magit-tag magit-merge

magit-branch magit-reset magit-files magit-refs magit-status magit

magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode diff

git-commit magit-core magit-autorevert magit-margin magit-transient

magit-process with-editor shell pcomplete server log-edit pcvs-util

add-log magit-mode transient magit-git magit-base which-func imenu

magit-section crm benchmark cursor-sensor dash comp comp-cstr warnings

format-spec display-fill-column-indicator yasnippet hideshow

loaddefs-gen lisp-mnt radix-tree tar-mode arc-mode archive-mode

mm-archive message sendmail rfc822 mml mml-sec epa derived gnus-util

mailabbrev gmm-utils mailheader mm-decode mm-bodies mm-encode mail-utils

mule-util gnutls network-stream url-cache url-http url-auth mail-parse

rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm puny

epg rfc6068 epg-config display-line-numbers vc-git diff-mode

track-changes files-x vc-dispatcher dired-aux dired dired-loaddefs

impatient-mode htmlize simple-httpd pp time-date corfu-terminal popon

corfu visual-wrap word-wrap-mode compile text-property-search comint

ansi-osc ansi-color comp-run comp-common flyspell ispell yank-media

markdown-mode edit-indirect rx color thingatpt noutline outline

deeper-blue-theme winner windmove savehist saveplace recentf tree-widget

wid-edit pixel-scroll cua-base ring marginalia autorevert filenotify

icomplete desktop frameset delsel cus-load edmacro kmacro

use-package-bind-key bind-key easy-mmode orderless compat cl-extra

help-mode use-package-ensure use-package-core finder-inf cape-autoloads

corfu-terminal-autoloads corfu-autoloads csv-mode-autoloads

d2-mode-autoloads dape-autoloads dired-sidebar-autoloads

dired-subtree-autoloads dired-hacks-utils-autoloads

edit-indirect-autoloads go-mode-autoloads hideshowvis-autoloads

impatient-showdown-autoloads impatient-mode-autoloads htmlize-autoloads

indent-bars-autoloads magit-autoloads pcase magit-section-autoloads

dash-autoloads marginalia-autoloads markdown-mode-autoloads

olivetti-autoloads orderless-autoloads popon-autoloads

simple-httpd-autoloads transient-autoloads vundo-autoloads info

with-editor-autoloads yasnippet-autoloads package browse-url url

url-proxy url-privacy url-expand url-methods url-history url-cookie

generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse

auth-source cl-seq eieio eieio-core cl-macs icons password-cache json

subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib

rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook

vc-hooks lisp-float-type elisp-mode mwheel touch-screen dos-w32 ls-lisp

disp-table term/w32-win w32-win w32-vars term/common-win tool-bar dnd

fontset image regexp-opt fringe tabulated-list replace newcomment

text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow

isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax

font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic

indonesian philippine cham georgian utf-8-lang misc-lang vietnamese

tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek

romanian slovak czech european ethiopic indian cyrillic chinese

composite emoji-zwj charscript charprop case-table epa-hook

jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs

theme-loaddefs faces cus-face macroexp files window text-properties

overlay sha1 md5 base64 format env code-pages mule custom widget keymap

hashtable-print-readable backquote threads w32notify w32 lcms2 multi-tty

move-toolbar make-network-process native-compile mps emacs)



Memory information:

((conses 24 0 0) (symbols 56 0 0) (strings 40 0 0) (string-bytes 1 0)

 (vectors 24 0) (vector-slots 8 0 0) (floats 24 0 0)

 (intervals 64 0 0) (buffers 1000 0))

[-- Attachment #2: Type: text/html, Size: 37549 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#74202: Addendum: full error message
  2024-11-04  8:00 bug#74202: 31.0.50; package-el fails to delete outdated elpa packages Johann Höchtl
@ 2024-11-04  8:06 ` Johann Höchtl
  2024-11-04 13:11   ` bug#74202: 31.0.50; package-el fails to delete outdated elpa packages Eli Zaretskii
  2024-11-04 13:01 ` Eli Zaretskii
  1 sibling, 1 reply; 6+ messages in thread
From: Johann Höchtl @ 2024-11-04  8:06 UTC (permalink / raw)
  To: 74202

[-- Attachment #1: Type: text/plain, Size: 413 bytes --]

The full error message is:

Error when expiring the cache: (permission-denied Removing directory
Permission denied c:/Users/HoechtlJ/OneDrive - WKO
Online/Dokumente/.emacs.d/url/cache/HoechtlJ/https/org/gnu/www)

The directory unfortunately contains blanks, so it's possibly not a
permission error at all but emacs actually trying to delete another
directory but the one for which the error message gets printed?

[-- Attachment #2: Type: text/html, Size: 502 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#74202: 31.0.50; package-el fails to delete outdated elpa packages
  2024-11-04  8:00 bug#74202: 31.0.50; package-el fails to delete outdated elpa packages Johann Höchtl
  2024-11-04  8:06 ` bug#74202: Addendum: full error message Johann Höchtl
@ 2024-11-04 13:01 ` Eli Zaretskii
  1 sibling, 0 replies; 6+ messages in thread
From: Eli Zaretskii @ 2024-11-04 13:01 UTC (permalink / raw)
  To: Johann Höchtl; +Cc: 74202

> From: Johann Höchtl <johann.hoechtl@gmail.com>
> Date: Mon, 4 Nov 2024 09:00:31 +0100
> 
> Using Windows ucrt mps emacs build from
> 
> https://github.com/kiennq/emacs-build/releases/tag/v31.319.20241101.0cb75cf
> 
>  
> 
> Since like two months or so, most notably package-el, but also other file deleting operations like expiring eww
> cache, fails to delete files in .emacs directory on Windows. The error message is "permission denied". I do
> run emacs as the interactively logged in user. FWIW I start emacs from a bash command line as
> runemacs.exe
> 
>  
> 
> Manually deleting files from within dired in the .emacs-directory works so I do not think it is a permission
> issue.

Thanks, but that site has local patches to Emacs, and two months is a
very long time.  It also uses UCRT, which is not really supported for
the Windows builds, as we have no one who'd agree to maintain such a
build and take care of any issues that arise with it.

So to investigate this issue someone with access to that build should
catch these errors in a debugger and show the details: which file
cannot be removed, what is the Windows error code when we try to
remove it, etc.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#74202: 31.0.50; package-el fails to delete outdated elpa packages
  2024-11-04  8:06 ` bug#74202: Addendum: full error message Johann Höchtl
@ 2024-11-04 13:11   ` Eli Zaretskii
  2024-11-04 13:37     ` Johann Höchtl
  0 siblings, 1 reply; 6+ messages in thread
From: Eli Zaretskii @ 2024-11-04 13:11 UTC (permalink / raw)
  To: Johann Höchtl; +Cc: 74202

[Please don't change the Subject of the responses and followups.]

> From: Johann Höchtl <johann.hoechtl@gmail.com>
> Date: Mon, 4 Nov 2024 09:06:12 +0100
> 
> The full error message is:
> 
> Error when expiring the cache: (permission-denied Removing directory Permission denied
> c:/Users/HoechtlJ/OneDrive - WKO Online/Dokumente/.emacs.d/url/cache/HoechtlJ/https/org/gnu/www)

What is the Lisp code which triggers this error message?  IOW, please
show the Lisp code which "expires the cache".

> The directory unfortunately contains blanks, so it's possibly not a permission error at all but emacs actually
> trying to delete another directory but the one for which the error message gets printed?

Why would blanks in the directory name cause Emacs to try to delete a
different directory?  Emacs doesn't delete directories via the shell,
where this could be a problem, it deletes them by calling Windows
APIs.

Since this directory seems to be on OneDrive, I suspect that these are
not "normal" Windows files, but some kind of junction points or some
other filesystem wizardry that Emacs doesn't understand.  Please try
producing a standalone self-contained recipe for reproducing the
problem starting from "emacs -Q", preferably without installing any
ELPA packages.  Since the issue is with removing files from a
directory, presumably the problem has nothing to do with package.el
per se, but with basic file I/O, and so you should be able to find a
way of reproducing it by simply removing files from a directory,
perhaps if the directory is on OneDrive.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#74202: 31.0.50; package-el fails to delete outdated elpa packages
  2024-11-04 13:11   ` bug#74202: 31.0.50; package-el fails to delete outdated elpa packages Eli Zaretskii
@ 2024-11-04 13:37     ` Johann Höchtl
  2024-11-09 11:05       ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Johann Höchtl @ 2024-11-04 13:37 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 74202

[-- Attachment #1: Type: text/plain, Size: 2162 bytes --]

Dear Eli,

thank you for your response(s). I understand that this build is not
officially supported. Upon further investigation I think the culprit is
likely UCRT, as the directories are created without write permissions.
Former versions of Emacs, which used a different C runtime, created
directories with read/write permissions.

Therefore I will report the issue at the appropriate build site.

Best, Johann

Am Mo., 4. Nov. 2024 um 14:11 Uhr schrieb Eli Zaretskii <eliz@gnu.org>:

> [Please don't change the Subject of the responses and followups.]
>
> > From: Johann Höchtl <johann.hoechtl@gmail.com>
> > Date: Mon, 4 Nov 2024 09:06:12 +0100
> >
> > The full error message is:
> >
> > Error when expiring the cache: (permission-denied Removing directory
> Permission denied
> > c:/Users/HoechtlJ/OneDrive - WKO
> Online/Dokumente/.emacs.d/url/cache/HoechtlJ/https/org/gnu/www)
>
> What is the Lisp code which triggers this error message?  IOW, please
> show the Lisp code which "expires the cache".
>
> > The directory unfortunately contains blanks, so it's possibly not a
> permission error at all but emacs actually
> > trying to delete another directory but the one for which the error
> message gets printed?
>
> Why would blanks in the directory name cause Emacs to try to delete a
> different directory?  Emacs doesn't delete directories via the shell,
> where this could be a problem, it deletes them by calling Windows
> APIs.
>
> Since this directory seems to be on OneDrive, I suspect that these are
> not "normal" Windows files, but some kind of junction points or some
> other filesystem wizardry that Emacs doesn't understand.  Please try
> producing a standalone self-contained recipe for reproducing the
> problem starting from "emacs -Q", preferably without installing any
> ELPA packages.  Since the issue is with removing files from a
> directory, presumably the problem has nothing to do with package.el
> per se, but with basic file I/O, and so you should be able to find a
> way of reproducing it by simply removing files from a directory,
> perhaps if the directory is on OneDrive.
>

[-- Attachment #2: Type: text/html, Size: 2707 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#74202: 31.0.50; package-el fails to delete outdated elpa packages
  2024-11-04 13:37     ` Johann Höchtl
@ 2024-11-09 11:05       ` Eli Zaretskii
  0 siblings, 0 replies; 6+ messages in thread
From: Eli Zaretskii @ 2024-11-09 11:05 UTC (permalink / raw)
  To: Johann Höchtl; +Cc: 74202-done

> From: Johann Höchtl <johann.hoechtl@gmail.com>
> Date: Mon, 4 Nov 2024 14:37:17 +0100
> Cc: 74202@debbugs.gnu.org
> 
> thank you for your response(s). I understand that this build is not officially supported. Upon further
> investigation I think the culprit is likely UCRT, as the directories are created without write permissions. Former
> versions of Emacs, which used a different C runtime, created directories with read/write permissions.
> 
> Therefore I will report the issue at the appropriate build site.

Thanks, I'm therefore closing this bug.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-11-09 11:05 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-04  8:00 bug#74202: 31.0.50; package-el fails to delete outdated elpa packages Johann Höchtl
2024-11-04  8:06 ` bug#74202: Addendum: full error message Johann Höchtl
2024-11-04 13:11   ` bug#74202: 31.0.50; package-el fails to delete outdated elpa packages Eli Zaretskii
2024-11-04 13:37     ` Johann Höchtl
2024-11-09 11:05       ` Eli Zaretskii
2024-11-04 13:01 ` Eli Zaretskii

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).