emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#63300: closed (29.0.90; Tramp keeps customizing variables on every c


From: GNU bug Tracking System
Subject: bug#63300: closed (29.0.90; Tramp keeps customizing variables on every connection)
Date: Thu, 08 Jun 2023 08:09:01 +0000

Your message dated Thu, 08 Jun 2023 10:08:27 +0200
with message-id <87o7lq5qbo.fsf@gmx.de>
and subject line Re: bug#63300: 29.0.90; Tramp keeps customizing variables on 
every connection
has caused the debbugs.gnu.org bug report #63300,
regarding 29.0.90; Tramp keeps customizing variables on every connection
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
63300: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63300
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: 29.0.90; Tramp keeps customizing variables on every connection Date: Fri, 05 May 2023 11:42:22 +0100
Whenever I install a package or do anything that turns on Tramp such as
sudoing, Tramp writes to my `custom-file-path` the variables
`connection-local-criteria-alist` and
`connection-local-profile-alist`. This is undesirable as it prevents the
customs files from being versioned effectively and shared across
multiple Emacs installations across machines. Furthermore, no package
should write to the customs file without the user's explicitly
approval. Defcustoms should be used for customizations, not caching.





In GNU Emacs 29.0.90 (build 1, aarch64-apple-darwin22.4.0, NS
 appkit-2299.50 Version 13.3.1 (a) (Build 22E772610a)) of 2023-05-04
 built on MobileCat.localdomain
Windowing system distributor 'Apple', version 10.3.2299
System Description:  macOS 13.3.1

Configured using:
 'configure --prefix=/opt/local --disable-silent-rules --without-dbus
 --without-gconf --without-libotf --without-m17n-flt --with-libgmp
 --with-gnutls --with-json --with-xml2 --with-modules --infodir
 /opt/local/share/info/emacs --with-sqlite3 --with-webp --with-ns
 --with-lcms2 --without-harfbuzz --without-imagemagick --without-xaw3d
 --with-tree-sitter --with-rsvg --with-xwidgets
 --with-native-compilation=aot 'CFLAGS=-pipe -Os -Wno-attributes
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk -arch
 arm64' 'CPPFLAGS=-I/opt/local/include
 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk'
 'LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-rpath
 /opt/local/lib/gcc12 -Wl,-no_pie
 -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk
 -arch arm64''

Configured features:
ACL GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XWIDGETS ZLIB

Important settings:
  value of $LANG: en_GB.UTF-8
  locale-coding-system: utf-8-unix

Major mode: ELisp/d

Minor modes in effect:
  company-quickhelp-mode: t
  company-quickhelp-local-mode: t
  company-prescient-mode: t
  prescient-persist-mode: t
  rainbow-mode: t
  elisp-def-mode: t
  display-line-numbers-mode: t
  subword-mode: t
  page-break-lines-mode: t
  beginend-prog-mode: t
  imenu-list-minor-mode: t
  purpose-mode: t
  windmove-mode: t
  magit-todos-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  diff-hl-flydiff-mode: t
  projectile-rails-global-mode: t
  projectile-mode: t
  shell-dirtrack-mode: t
  pdf-occur-global-minor-mode: t
  crm-custom-mode: t
  override-global-mode: t
  dap-tooltip-mode: t
  dap-ui-many-windows-mode: t
  dap-ui-controls-mode: t
  dap-ui-mode: t
  treemacs-filewatch-mode: t
  treemacs-follow-mode: t
  treemacs-git-mode: t
  treemacs-fringe-indicator-mode: t
  winner-mode: t
  which-key-mode: t
  which-function-mode: t
  smooth-scrolling-mode: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  smartparens-global-mode: t
  smartparens-mode: t
  server-mode: t
  savehist-mode: t
  save-place-mode: t
  rxt-global-mode: t
  rxt-mode: t
  recentf-mode: t
  minibuffer-depth-indicate-mode: t
  ido-vertical-mode: t
  ido-ubiquitous-mode: t
  global-whitespace-cleanup-mode: t
  whitespace-cleanup-mode: t
  global-so-long-mode: t
  global-origami-mode: t
  origami-mode: t
  global-move-dup-mode: t
  move-dup-mode: t
  global-hl-line-mode: t
  global-flycheck-mode: t
  global-diff-hl-show-hunk-mouse-mode: t
  diff-hl-show-hunk-mouse-mode: t
  global-diff-hl-mode: t
  diff-hl-mode: t
  global-company-mode: t
  company-mode: t
  global-auto-revert-mode: t
  global-aggressive-indent-mode: t
  aggressive-indent-mode: t
  flx-ido-mode: t
  ido-everywhere: t
  icomplete-vertical-mode: t
  icomplete-mode: t
  fido-mode: t
  editorconfig-mode: t
  direnv-mode: t
  desktop-save-mode: t
  delete-selection-mode: t
  dap-auto-configure-mode: t
  dap-mode: t
  yas-minor-mode: t
  auto-compile-on-save-mode: t
  auto-compile-mode: t
  amx-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  window-divider-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  visual-line-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  temp-buffer-resize-mode: t

Load-path shadows:
/opt/local/share/emacs/site-lisp/cmake-mode hides 
/Users/wyuenho/.emacs.d/elpa/cmake-mode-20230422.828/cmake-mode
/Users/wyuenho/.emacs.d/elpa/transient-20230501.1034/transient hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/transient
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-jump hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-jump
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-ensure hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-ensure
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-core hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-core
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-delight 
hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-delight
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-diminish 
hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-diminish
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-bind-key 
hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-bind-key
/Users/wyuenho/.emacs.d/elpa/use-package-20230426.2324/use-package-lint hides 
/Applications/MacPorts/Emacs.app/Contents/Resources/lisp/use-package/use-package-lint

Features:
(epa-file mailalias smtpmail textsec uni-scripts idna-mapping
uni-confusable textsec-check qp shadow sort mail-extr emacsbug cl-print
pager-autoloads tabify loaddefs-gen misearch multi-isearch
visual-regexp-steroids visual-regexp mm-archive url-cache facemenu
two-column dired-aux diff-hl-dired all-the-icons-dired dired-collapse
dired-hacks-utils company-quickhelp pos-tip company-prescient prescient
char-fold company-keywords company-etags etags fileloop company-gtags
company-dabbrev-code company-dabbrev company-yasnippet company-capf
company-files company-cmake company-clang company-semantic
company-template company-bbdb rainbow-mode elisp-def ert debug backtrace
display-line-numbers cap-words superword subword smartparens-config
smartparens-javascript smartparens-ruby smartparens-org
smartparens-python smartparens-markdown smartparens-text smartparens-c
page-break-lines vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs
beginend window-purpose-x shut-up imenu-list hideshow window-purpose
window-purpose-fixes window-purpose-prefix-overload
window-purpose-switch window-purpose-layout window-purpose-core
window-purpose-configuration window-purpose-utils ibuffer-vc windmove
dired-hide-dotfiles shrink-path git-timemachine vc-git magit-lfs
magit-todos hl-todo async forge-list forge-commands forge-semi
forge-bitbucket buck forge-gogs gogs forge-gitea gtea forge-gitlab glab
forge-github ghub-graphql treepy gsexp ghub url-http url-gw url-auth
gnutls forge-notify forge-revnote forge-pullreq forge-issue forge-topic
bug-reference forge-post forge-repo forge forge-core forge-db closql
emacsql-sqlite-common emacsql emacsql-compiler magit-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
git-commit log-edit message sendmail yank-media rfc822 mml mml-sec epa
gnus-util mailabbrev gmm-utils add-log magit-core magit-autorevert
magit-margin magit-transient magit-process with-editor magit-mode
magit-git magit-base magit-section cursor-sensor crm diff-hl-flydiff
diff ediff-merg ediff-mult ediff-wind ediff-diff ediff-help ediff-init
ediff-util rg rg-info-hack rg-menu rg-ibuffer rg-result wgrep-rg wgrep
rg-history rg-header projectile-rails rake inflections inf-ruby
ruby-mode smie autoinsert lsp-sourcekit dap-java lsp-java request
mailheader mail-utils lsp cargo cargo-process rust-ts-mode yard-mode
lsp-pyright pet lsp-jedi python-pytest projectile grep transient
python-isort python-black python compat python-insert-docstring
jq-format prettier tramp tramp-loaddefs trampver tramp-integration
files-x tramp-compat ls-lisp nvm iter2 generator reformatter
flycheck-package package-lint finder finder-inf eterm-256color term
disp-table native-complete shell ehelp xterm-color verb js c-ts-common
treesit cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs url-queue url-file org ob ob-tangle ob-ref
ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete
pcomplete org-list org-footnote org-faces org-entities ob-emacs-lisp
ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys
oc org-loaddefs cal-menu calendar cal-loaddefs org-version org-compat
org-macs quick-peek lsp-ui lsp-ui-flycheck lsp-ui-doc xwidget goto-addr
lsp-ui-imenu lsp-ui-peek lsp-ui-sideline lsp-ui-util face-remap
pdf-loader pdf-occur ibuf-ext ibuffer ibuffer-loaddefs tablist
tablist-filter semantic/wisent/comp semantic/wisent
semantic/wisent/wisent semantic/util-modes semantic/util semantic
semantic/tag semantic/lex semantic/fw mode-local cedet pdf-isearch
pdf-misc pdf-tools pdf-view treemacs-bookmarks treemacs-tags bookmark
jka-compr pdf-cache pdf-info tq pdf-util format-spec pdf-macs image-mode
dired dired-loaddefs exif iedit iedit-lib mc-hide-unmatched-lines-mode
mc-mark-more mc-cycle-cursors multiple-cursors-core rect crm-custom
scroll-on-jump browse-kill-ring edmacro kmacro use-package-bind-key
bind-key use-package-delight exec-path-from-shell all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons parse-time iso8601
time-date spaceline-config spaceline-segments spaceline powerline
powerline-separators powerline-themes solarized-dark-theme
solarized-theme solarized solarized-faces delight quelpa-use-package
use-package-core quelpa mm-decode mm-bodies mm-encode mail-parse rfc2231
rfc2047 rfc2045 mm-util ietf-drums mail-prsvr lisp-mnt help-fns
radix-tree dap-mouse dap-ui lsp-treemacs lsp-treemacs-generic
lsp-treemacs-themes treemacs-treelib treemacs treemacs-header-line
treemacs-compatibility treemacs-mode treemacs-interface
treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode
treemacs-rendering treemacs-annotations treemacs-async
treemacs-workspaces treemacs-dom treemacs-visuals
treemacs-fringe-indicator pulse treemacs-faces treemacs-icons
treemacs-scope treemacs-themes treemacs-core-utils pfuture
treemacs-logging treemacs-customization treemacs-macros gdb-mi bindat
gud bui bui-list bui-info bui-entry bui-core bui-history bui-button
bui-utils lsp-lens winner which-key which-func smooth-scrolling
smartparens loadhist server savehist saveplace pcre2el rxt re-builder
recentf mb-depth ido-vertical-mode ido-completing-read+ memoize cus-edit
pp minibuf-eldef help-at-pt whitespace-cleanup-mode whitespace so-long
origami origami-parsers cl move-dup hl-line flycheck find-func
diff-hl-show-hunk diff-hl-inline-popup diff-hl log-view pcvs-util vc-dir
vc vc-dispatcher company autorevert aggressive-indent flx-ido advice flx
ido icomplete editorconfig editorconfig-core editorconfig-core-handle
editorconfig-fnmatch direnv diff-mode easy-mmode desktop frameset delsel
dap-mode dap-tasks dap-launch lsp-docker yaml posframe dap-overlays
lsp-mode lsp-protocol yasnippet-snippets yasnippet xref project
tree-widget wid-edit spinner network-stream puny nsm markdown-mode color
thingatpt noutline outline lv inline imenu ht f f-shortdoc ewoc epg
rfc6068 epg-config dash compile text-property-search comint ansi-osc
ansi-color ring auto-compile amx s let-alist filenotify cus-load
move-dup-autoloads yarn-mode-autoloads git-timemachine-autoloads
web-mode-autoloads flycheck-golangci-lint-autoloads
docker-compose-mode-autoloads ibuffer-vc-autoloads monky-autoloads
auto-yasnippet-autoloads company-prescient-autoloads
cycle-quotes-autoloads python-docstring-autoloads
flycheck-plantuml-autoloads direnv-autoloads lsp-java-autoloads
dap-mode-autoloads lsp-pyright-autoloads graphviz-dot-mode-autoloads
lsp-sourcekit-autoloads highlight-indent-guides-autoloads
ts-comint-autoloads impostman-autoloads spaceline-autoloads
bug-hunter-autoloads graphql-mode-autoloads protobuf-mode-autoloads
fontify-face-autoloads crm-custom-autoloads buffer-move-autoloads
pet-autoloads scroll-on-jump-autoloads flycheck-package-autoloads
magit-lfs-autoloads lsp-origami-autoloads origami-autoloads
pdf-tools-autoloads ido-completing-read+-autoloads go-mode-autoloads
window-purpose-autoloads shut-up-autoloads verb-autoloads
memoize-autoloads lsp-ui-autoloads reason-mode-autoloads
company-quickhelp-autoloads sbt-mode-autoloads vundo-autoloads
lsp-jedi-autoloads page-break-lines-autoloads smart-semicolon-autoloads
ssh-config-mode-autoloads sphinx-doc-autoloads solarized-theme-autoloads
browse-kill-ring-autoloads dired-hide-dotfiles-autoloads
svg-lib-autoloads jsonian-autoloads amx-autoloads
eterm-256color-autoloads xterm-color-autoloads package-build-autoloads
derived ialign-autoloads dotenv-mode-autoloads shrink-path-autoloads
default-text-scale-autoloads enh-ruby-mode-autoloads csv-mode-autoloads
dired-single-autoloads package-utils-autoloads restart-emacs-autoloads
flycheck-cask-autoloads tuareg-autoloads caml-autoloads
all-the-icons-dired-autoloads all-the-icons-autoloads jq-mode-autoloads
smartparens-autoloads flx-isearch-autoloads emmet-mode-autoloads
imenu-list-autoloads cask-mode-autoloads yard-mode-autoloads
company-native-complete-autoloads native-complete-autoloads
company-autoloads focus-autoloads flycheck-projectile-autoloads
rainbow-mode-autoloads po-mode-autoloads delight-autoloads
flx-ido-autoloads lorem-ipsum-autoloads wgrep-ag-autoloads
buttercup-autoloads yaml-mode-autoloads
python-insert-docstring-autoloads cargo-autoloads
add-node-modules-path-autoloads request-autoloads pos-tip-autoloads
jq-format-autoloads expand-region-autoloads sass-mode-autoloads
haml-mode-autoloads powerline-autoloads js-doc-autoloads forge-autoloads
ghub-autoloads nodejs-repl-autoloads prescient-autoloads
string-inflection-autoloads visual-regexp-steroids-autoloads
terraform-mode-autoloads lsp-docker-autoloads yaml-autoloads
flycheck-inline-autoloads flycheck-autoloads pkg-info-autoloads
epl-autoloads whitespace-cleanup-mode-autoloads closql-autoloads
emacsql-autoloads projectile-rails-autoloads rake-autoloads
inf-ruby-autoloads inflections-autoloads git-modes-autoloads
macrostep-autoloads python-pytest-autoloads projectile-autoloads
scala-mode-autoloads quick-peek-autoloads tablist-autoloads
groovy-mode-autoloads imenu-anywhere-autoloads olivetti-autoloads
treepy-autoloads bui-autoloads repeat-help-autoloads apib-mode-autoloads
quelpa-use-package-autoloads quelpa-autoloads
ido-vertical-mode-autoloads multiple-cursors-autoloads
beginend-autoloads smooth-scrolling-autoloads vterm-autoloads
which-key-autoloads aggressive-indent-autoloads diff-hl-autoloads
osx-trash-autoloads cmake-font-lock-autoloads cmake-mode-autoloads
use-package-autoloads ron-mode-autoloads rg-autoloads wgrep-autoloads
hcl-mode-autoloads visual-regexp-autoloads udev-mode-autoloads
dired-collapse-autoloads dired-hacks-utils-autoloads ag-autoloads
arduino-mode-autoloads ede/auto eieio-base crux-autoloads
auto-compile-autoloads prettier-autoloads editorconfig-autoloads
nvm-autoloads iter2-autoloads elisp-def-autoloads package-lint-autoloads
coverage-autoloads ov-autoloads shift-number-autoloads
python-isort-autoloads magit-todos-autoloads pcre2el-autoloads
magit-autoloads magit-section-autoloads git-commit-autoloads
with-editor-autoloads transient-autoloads hl-todo-autoloads
compat-autoloads async-autoloads kurecolor-autoloads flx-autoloads
lsp-treemacs-autoloads lsp-mode-autoloads markdown-mode-autoloads
spinner-autoloads treemacs-autoloads cfrs-autoloads posframe-autoloads
hydra-autoloads lv-autoloads pfuture-autoloads ace-window-autoloads
avy-autoloads yasnippet-snippets-autoloads yasnippet-autoloads
python-black-autoloads reformatter-autoloads iedit-autoloads
exec-path-from-shell-autoloads plantuml-mode-autoloads helpful-autoloads
elisp-refs-autoloads f-autoloads s-autoloads swift-mode-autoloads
ht-autoloads info dash-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 eieio eieio-core password-cache json map byte-opt url-vars
comp comp-cstr warnings icons subr-x rx cl-seq cl-macs cl-extra
help-mode bytecomp byte-compile gv pcase bootstrap-theme cl-loaddefs
cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify
ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win
ucs-normalize mule-util 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 xwidget-internal kqueue cocoa
ns lcms2 multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 2734066 1135755)
 (symbols 48 90871 204)
 (strings 32 487214 217323)
 (string-bytes 1 16684250)
 (vectors 16 203584)
 (vector-slots 8 5399284 682384)
 (floats 8 1516 5281)
 (intervals 56 188246 17889)
 (buffers 984 30))



--- End Message ---
--- Begin Message --- Subject: Re: bug#63300: 29.0.90; Tramp keeps customizing variables on every connection Date: Thu, 08 Jun 2023 10:08:27 +0200 User-agent: Gnus/5.13 (Gnus v5.13)
Version: 29.1

Eli Zaretskii <eliz@gnu.org> writes:

Hi Eli,

>> See my other message for a proposal.
>
> If it works, I don't mind, although the solution looks more
> complicated (thus more risky during a pretest).

No further comments, so I've pushed the change to the emacs-29
branch. Closing the bug.

> In general, Lisp programs should not modify values of user options,
> that is only for the user.

I agree, but here we have the case, that two complex variables have been
transformed into user options in order to offer more convenient ways to
modify them. So we must handle both cases, modification by other
packages due to call of connection-local-set-profiles or
connection-local-set-profile-variables, and modification in the
customization buffer.

Best regards, Michael.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]