Subject: bug#72652: 31.0.50; url-retrieve on non-existent domain gives no indication of error

From: Greg Minshall <[email-masked]>
Date: Fri, 16 Aug 2024 07:34:08 +0300

if url-retrieve is called with a url for a non-existent domain, it
neither returns an error (it returns a buffer, as it is documented to
do), nor does it seem to invoke the callback routine passed to it to
report any error (or success, or anything else, for that matter).

the following code uses example.com.  calling
- `(mytry 0)` should work, downloading "index.html"
- `(mytry 1)` should give a 404 -- no such file "index99.html"
- `(mytry 2)` doesn't give anything (but, the code ends after 5 seconds)
  as there is no such host "x.example.com".

with 0 or 1, the callback routine is invoked, but with 2, it isn't.
(after 5 seconds the code finishes, displays whatever might be in the
buffer url-retrieve uses to return the results.)

apologies if i'm missing some channel through which `url-retrieve` is
announcing the failure (like a sentinel?).

;;; ...  -*- lexical-binding: t -*-

(defun mysage (&rest args)
    "Like (message), but send ARGS to stdout, even in batch mode.
  \(In batch mode, (message) sends to stderr; the prin1, etc.,
  send to stdout."
    (princ (format "%s\n" (apply 'format args))))

(defun mytry (n)
  "Try url-retrieve on a URL.  N is 0, 1, or 2."
  (let* ((urls '("https://example.com/index.html"
                 "https://example.com/index99.html"
                 "https://x.example.com/index.html"))
         (buffer
         (url-retrieve (nth n urls)
                       (lambda (&rest results)
                         (mysage "called back"))
                       nil)))
    (mysage "url-retrieve returns %s" buffer)
    (sleep-for 5)
    (with-current-buffer buffer
      (mysage "buffer %s contents: %s" buffer (buffer-substring (point-min) (point-max))))))

In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.42, cairo version 1.18.0) of 2024-08-15 built on archlinuxRepository revision: dcd5b80b09c4679d7cceecc852725dba6a75b5f0
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101013
System Description: Arch Linux

Configured using:
 'configure --with-xwidgets --with-modules --without-dbus CFLAGS=-g3
 'LDFLAGS=-L/usr/local/lib -L/lib -L/usr/X11R6/lib''

Configured features:
ACL CAIRO FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2
LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY
PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS
TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM XWIDGETS GTK3 ZLIB

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

Major mode: ELisp/l

Minor modes in effect:
  bug-reference-prog-mode: t
  windmove-mode: t
  my-global-column-number-mode: t
  subword-mode: t
  my-global-subword-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  which-key-mode: t
  vertico-mode: t
  sly-symbol-completion-mode: t
  pulsar-global-mode: t
  pulsar-mode: t
  org-roam-db-autosync-mode: t
  marginalia-mode: t
  highlight-doxygen-global-mode: t
  filladapt-mode: t
  emms-mode-line-mode: t
  emms-playing-time-display-mode: t
  emms-playing-time-mode: t
  csv-field-index-mode: t
  global-corfu-mode: t
  corfu-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  override-global-mode: t
  straight-use-package-mode: t
  straight-package-neutering-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
  minibuffer-regexp-mode: 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:
/home/minshall/usr/share/emacs/lisp/misc/middling hides /home/minshall/.emacs.d/straight/build/middling/middling
/home/minshall/.emacs.d/straight/build/emacsql/emacsql-sqlite-builtin hides /home/minshall/.emacs.d/straight/build/emacsql-sqlite-builtin/emacsql-sqlite-builtin
/home/minshall/usr/share/emacs/lisp/misc/orgtbl-sqlinsert hides /home/minshall/.emacs.d/straight/build/org-contrib/orgtbl-sqlinsert
/home/minshall/.emacs.d/straight/build/jsonrpc/jsonrpc hides /usr/local/share/emacs/31.0.50/lisp/jsonrpc
/home/minshall/.emacs.d/straight/build/bind-key/bind-key hides /usr/local/share/emacs/31.0.50/lisp/bind-key
/home/minshall/.emacs.d/straight/build/transient/transient hides /usr/local/share/emacs/31.0.50/lisp/transient
/home/minshall/.emacs.d/straight/build/which-key/which-key hides /usr/local/share/emacs/31.0.50/lisp/which-key
/home/minshall/.emacs.d/straight/build/use-package/use-package-diminish hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-diminish
/home/minshall/.emacs.d/straight/build/use-package/use-package-core hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-core
/home/minshall/.emacs.d/straight/build/use-package/use-package-delight hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-delight
/home/minshall/.emacs.d/straight/build/use-package/use-package-ensure hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-ensure
/home/minshall/.emacs.d/straight/build/use-package/use-package-bind-key hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-bind-key
/home/minshall/.emacs.d/straight/build/use-package/use-package-lint hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-lint
/home/minshall/.emacs.d/straight/build/use-package/use-package hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package
/home/minshall/.emacs.d/straight/build/use-package/use-package-jump hides /usr/local/share/emacs/31.0.50/lisp/use-package/use-package-jump
/home/minshall/.emacs.d/straight/build/xref/xref hides /usr/local/share/emacs/31.0.50/lisp/progmodes/xref
/home/minshall/.emacs.d/straight/build/flymake/flymake hides /usr/local/share/emacs/31.0.50/lisp/progmodes/flymake
/home/minshall/.emacs.d/straight/build/eglot/eglot hides /usr/local/share/emacs/31.0.50/lisp/progmodes/eglot
/home/minshall/.emacs.d/straight/build/peg/peg hides /usr/local/share/emacs/31.0.50/lisp/progmodes/peg
/home/minshall/.emacs.d/straight/build/project/project hides /usr/local/share/emacs/31.0.50/lisp/progmodes/project
/home/minshall/.emacs.d/straight/build/org/ol-w3m hides /usr/local/share/emacs/31.0.50/lisp/org/ol-w3m
/home/minshall/.emacs.d/straight/build/org/ob-perl hides /usr/local/share/emacs/31.0.50/lisp/org/ob-perl
/home/minshall/.emacs.d/straight/build/org/ox-beamer hides /usr/local/share/emacs/31.0.50/lisp/org/ox-beamer
/home/minshall/.emacs.d/straight/build/org/org-duration hides /usr/local/share/emacs/31.0.50/lisp/org/org-duration
/home/minshall/.emacs.d/straight/build/org/ob-sass hides /usr/local/share/emacs/31.0.50/lisp/org/ob-sass
/home/minshall/.emacs.d/straight/build/org/ob-julia hides /usr/local/share/emacs/31.0.50/lisp/org/ob-julia
/home/minshall/.emacs.d/straight/build/org/ob-C hides /usr/local/share/emacs/31.0.50/lisp/org/ob-C
/home/minshall/.emacs.d/straight/build/org/ob-lilypond hides /usr/local/share/emacs/31.0.50/lisp/org/ob-lilypond
/home/minshall/.emacs.d/straight/build/org/org-mouse hides /usr/local/share/emacs/31.0.50/lisp/org/org-mouse
/home/minshall/.emacs.d/straight/build/org/oc-csl hides /usr/local/share/emacs/31.0.50/lisp/org/oc-csl
/home/minshall/.emacs.d/straight/build/org/ob-lua hides /usr/local/share/emacs/31.0.50/lisp/org/ob-lua
/home/minshall/.emacs.d/straight/build/org/org-inlinetask hides /usr/local/share/emacs/31.0.50/lisp/org/org-inlinetask
/home/minshall/.emacs.d/straight/build/org/org-macro hides /usr/local/share/emacs/31.0.50/lisp/org/org-macro
/home/minshall/.emacs.d/straight/build/org/ob-clojure hides /usr/local/share/emacs/31.0.50/lisp/org/ob-clojure
/home/minshall/.emacs.d/straight/build/org/org-macs hides /usr/local/share/emacs/31.0.50/lisp/org/org-macs
/home/minshall/.emacs.d/straight/build/org/ol-bbdb hides /usr/local/share/emacs/31.0.50/lisp/org/ol-bbdb
/home/minshall/.emacs.d/straight/build/org/ox-md hides /usr/local/share/emacs/31.0.50/lisp/org/ox-md
/home/minshall/.emacs.d/straight/build/org/org-num hides /usr/local/share/emacs/31.0.50/lisp/org/org-num
/home/minshall/.emacs.d/straight/build/org/ob-matlab hides /usr/local/share/emacs/31.0.50/lisp/org/ob-matlab
/home/minshall/.emacs.d/straight/build/org/org-list hides /usr/local/share/emacs/31.0.50/lisp/org/org-list
/home/minshall/.emacs.d/straight/build/org/ob-tangle hides /usr/local/share/emacs/31.0.50/lisp/org/ob-tangle
/home/minshall/.emacs.d/straight/build/org/ob-plantuml hides /usr/local/share/emacs/31.0.50/lisp/org/ob-plantuml
/home/minshall/.emacs.d/straight/build/org/oc-natbib hides /usr/local/share/emacs/31.0.50/lisp/org/oc-natbib
/home/minshall/.emacs.d/straight/build/org/ob-awk hides /usr/local/share/emacs/31.0.50/lisp/org/ob-awk
/home/minshall/.emacs.d/straight/build/org/ox-texinfo hides /usr/local/share/emacs/31.0.50/lisp/org/ox-texinfo
/home/minshall/.emacs.d/straight/build/org/ol-gnus hides /usr/local/share/emacs/31.0.50/lisp/org/ol-gnus
/home/minshall/.emacs.d/straight/build/org/oc-biblatex hides /usr/local/share/emacs/31.0.50/lisp/org/oc-biblatex
/home/minshall/.emacs.d/straight/build/org/ob-calc hides /usr/local/share/emacs/31.0.50/lisp/org/ob-calc
/home/minshall/.emacs.d/straight/build/org/org-loaddefs hides /usr/local/share/emacs/31.0.50/lisp/org/org-loaddefs
/home/minshall/.emacs.d/straight/build/org/ol-eww hides /usr/local/share/emacs/31.0.50/lisp/org/ol-eww
/home/minshall/.emacs.d/straight/build/org/ob-ditaa hides /usr/local/share/emacs/31.0.50/lisp/org/ob-ditaa
/home/minshall/.emacs.d/straight/build/org/org-ctags hides /usr/local/share/emacs/31.0.50/lisp/org/org-ctags
/home/minshall/.emacs.d/straight/build/org/ob-sed hides /usr/local/share/emacs/31.0.50/lisp/org/ob-sed
/home/minshall/.emacs.d/straight/build/org/org-refile hides /usr/local/share/emacs/31.0.50/lisp/org/org-refile
/home/minshall/.emacs.d/straight/build/org/ob-processing hides /usr/local/share/emacs/31.0.50/lisp/org/ob-processing
/home/minshall/.emacs.d/straight/build/org/org-pcomplete hides /usr/local/share/emacs/31.0.50/lisp/org/org-pcomplete
/home/minshall/.emacs.d/straight/build/org/ox-org hides /usr/local/share/emacs/31.0.50/lisp/org/ox-org
/home/minshall/.emacs.d/straight/build/org/ob-comint hides /usr/local/share/emacs/31.0.50/lisp/org/ob-comint
/home/minshall/.emacs.d/straight/build/org/ox-ascii hides /usr/local/share/emacs/31.0.50/lisp/org/ox-ascii
/home/minshall/.emacs.d/straight/build/org/org-timer hides /usr/local/share/emacs/31.0.50/lisp/org/org-timer
/home/minshall/.emacs.d/straight/build/org/ob-groovy hides /usr/local/share/emacs/31.0.50/lisp/org/ob-groovy
/home/minshall/.emacs.d/straight/build/org/ox hides /usr/local/share/emacs/31.0.50/lisp/org/ox
/home/minshall/.emacs.d/straight/build/org/ob-table hides /usr/local/share/emacs/31.0.50/lisp/org/ob-table
/home/minshall/.emacs.d/straight/build/org/ox-latex hides /usr/local/share/emacs/31.0.50/lisp/org/ox-latex
/home/minshall/.emacs.d/straight/build/org/ol hides /usr/local/share/emacs/31.0.50/lisp/org/ol
/home/minshall/.emacs.d/straight/build/org/org-protocol hides /usr/local/share/emacs/31.0.50/lisp/org/org-protocol
/home/minshall/.emacs.d/straight/build/org/org-id hides /usr/local/share/emacs/31.0.50/lisp/org/org-id
/home/minshall/.emacs.d/straight/build/org/ob-latex hides /usr/local/share/emacs/31.0.50/lisp/org/ob-latex
/home/minshall/.emacs.d/straight/build/org/org-attach hides /usr/local/share/emacs/31.0.50/lisp/org/org-attach
/home/minshall/.emacs.d/straight/build/org/ol-info hides /usr/local/share/emacs/31.0.50/lisp/org/ol-info
/home/minshall/.emacs.d/straight/build/org/ob-screen hides /usr/local/share/emacs/31.0.50/lisp/org/ob-screen
/home/minshall/.emacs.d/straight/build/org/ob-forth hides /usr/local/share/emacs/31.0.50/lisp/org/ob-forth
/home/minshall/.emacs.d/straight/build/org/ob-ref hides /usr/local/share/emacs/31.0.50/lisp/org/ob-ref
/home/minshall/.emacs.d/straight/build/org/org-src hides /usr/local/share/emacs/31.0.50/lisp/org/org-src
/home/minshall/.emacs.d/straight/build/org/ol-mhe hides /usr/local/share/emacs/31.0.50/lisp/org/ol-mhe
/home/minshall/.emacs.d/straight/build/org/ob-haskell hides /usr/local/share/emacs/31.0.50/lisp/org/ob-haskell
/home/minshall/.emacs.d/straight/build/org/ol-bibtex hides /usr/local/share/emacs/31.0.50/lisp/org/ol-bibtex
/home/minshall/.emacs.d/straight/build/org/org-table hides /usr/local/share/emacs/31.0.50/lisp/org/org-table
/home/minshall/.emacs.d/straight/build/org/ob-scheme hides /usr/local/share/emacs/31.0.50/lisp/org/ob-scheme
/home/minshall/.emacs.d/straight/build/org/ox-publish hides /usr/local/share/emacs/31.0.50/lisp/org/ox-publish
/home/minshall/.emacs.d/straight/build/org/ol-irc hides /usr/local/share/emacs/31.0.50/lisp/org/ol-irc
/home/minshall/.emacs.d/straight/build/org/ob-org hides /usr/local/share/emacs/31.0.50/lisp/org/ob-org
/home/minshall/.emacs.d/straight/build/org/org-crypt hides /usr/local/share/emacs/31.0.50/lisp/org/org-crypt
/home/minshall/.emacs.d/straight/build/org/ob-fortran hides /usr/local/share/emacs/31.0.50/lisp/org/ob-fortran
/home/minshall/.emacs.d/straight/build/org/org-attach-git hides /usr/local/share/emacs/31.0.50/lisp/org/org-attach-git
/home/minshall/.emacs.d/straight/build/org/ob-shell hides /usr/local/share/emacs/31.0.50/lisp/org/ob-shell
/home/minshall/.emacs.d/straight/build/org/org-faces hides /usr/local/share/emacs/31.0.50/lisp/org/org-faces
/home/minshall/.emacs.d/straight/build/org/ob-js hides /usr/local/share/emacs/31.0.50/lisp/org/ob-js
/home/minshall/.emacs.d/straight/build/org/org-datetree hides /usr/local/share/emacs/31.0.50/lisp/org/org-datetree
/home/minshall/.emacs.d/straight/build/org/ox-odt hides /usr/local/share/emacs/31.0.50/lisp/org/ox-odt
/home/minshall/.emacs.d/straight/build/org/ob-maxima hides /usr/local/share/emacs/31.0.50/lisp/org/ob-maxima
/home/minshall/.emacs.d/straight/build/org/org-version hides /usr/local/share/emacs/31.0.50/lisp/org/org-version
/home/minshall/.emacs.d/straight/build/org/ol-man hides /usr/local/share/emacs/31.0.50/lisp/org/ol-man
/home/minshall/.emacs.d/straight/build/org/org-fold-core hides /usr/local/share/emacs/31.0.50/lisp/org/org-fold-core
/home/minshall/.emacs.d/straight/build/org/org-persist hides /usr/local/share/emacs/31.0.50/lisp/org/org-persist
/home/minshall/.emacs.d/straight/build/org/org hides /usr/local/share/emacs/31.0.50/lisp/org/org
/home/minshall/.emacs.d/straight/build/org/ob-gnuplot hides /usr/local/share/emacs/31.0.50/lisp/org/ob-gnuplot
/home/minshall/.emacs.d/straight/build/org/ob-emacs-lisp hides /usr/local/share/emacs/31.0.50/lisp/org/ob-emacs-lisp
/home/minshall/.emacs.d/straight/build/org/ob-sqlite hides /usr/local/share/emacs/31.0.50/lisp/org/ob-sqlite
/home/minshall/.emacs.d/straight/build/org/ol-rmail hides /usr/local/share/emacs/31.0.50/lisp/org/ol-rmail
/home/minshall/.emacs.d/straight/build/org/ob-exp hides /usr/local/share/emacs/31.0.50/lisp/org/ob-exp
/home/minshall/.emacs.d/straight/build/org/ob-lob hides /usr/local/share/emacs/31.0.50/lisp/org/ob-lob
/home/minshall/.emacs.d/straight/build/org/ob-R hides /usr/local/share/emacs/31.0.50/lisp/org/ob-R
/home/minshall/.emacs.d/straight/build/org/org-mobile hides /usr/local/share/emacs/31.0.50/lisp/org/org-mobile
/home/minshall/.emacs.d/straight/build/org/ob hides /usr/local/share/emacs/31.0.50/lisp/org/ob
/home/minshall/.emacs.d/straight/build/org/ol-doi hides /usr/local/share/emacs/31.0.50/lisp/org/ol-doi
/home/minshall/.emacs.d/straight/build/org/org-goto hides /usr/local/share/emacs/31.0.50/lisp/org/org-goto
/home/minshall/.emacs.d/straight/build/org/ob-eval hides /usr/local/share/emacs/31.0.50/lisp/org/ob-eval
/home/minshall/.emacs.d/straight/build/org/org-lint hides /usr/local/share/emacs/31.0.50/lisp/org/org-lint
/home/minshall/.emacs.d/straight/build/org/ob-python hides /usr/local/share/emacs/31.0.50/lisp/org/ob-python
/home/minshall/.emacs.d/straight/build/org/org-compat hides /usr/local/share/emacs/31.0.50/lisp/org/org-compat
/home/minshall/.emacs.d/straight/build/org/org-indent hides /usr/local/share/emacs/31.0.50/lisp/org/org-indent
/home/minshall/.emacs.d/straight/build/org/ob-core hides /usr/local/share/emacs/31.0.50/lisp/org/ob-core
/home/minshall/.emacs.d/straight/build/org/ob-eshell hides /usr/local/share/emacs/31.0.50/lisp/org/ob-eshell
/home/minshall/.emacs.d/straight/build/org/org-cycle hides /usr/local/share/emacs/31.0.50/lisp/org/org-cycle
/home/minshall/.emacs.d/straight/build/org/org-footnote hides /usr/local/share/emacs/31.0.50/lisp/org/org-footnote
/home/minshall/.emacs.d/straight/build/org/ol-eshell hides /usr/local/share/emacs/31.0.50/lisp/org/ol-eshell
/home/minshall/.emacs.d/straight/build/org/ox-koma-letter hides /usr/local/share/emacs/31.0.50/lisp/org/ox-koma-letter
/home/minshall/.emacs.d/straight/build/org/oc hides /usr/local/share/emacs/31.0.50/lisp/org/oc
/home/minshall/.emacs.d/straight/build/org/ob-dot hides /usr/local/share/emacs/31.0.50/lisp/org/ob-dot
/home/minshall/.emacs.d/straight/build/org/org-capture hides /usr/local/share/emacs/31.0.50/lisp/org/org-capture
/home/minshall/.emacs.d/straight/build/org/org-colview hides /usr/local/share/emacs/31.0.50/lisp/org/org-colview
/home/minshall/.emacs.d/straight/build/org/ox-icalendar hides /usr/local/share/emacs/31.0.50/lisp/org/ox-icalendar
/home/minshall/.emacs.d/straight/build/org/ob-ruby hides /usr/local/share/emacs/31.0.50/lisp/org/ob-ruby
/home/minshall/.emacs.d/straight/build/org/ob-octave hides /usr/local/share/emacs/31.0.50/lisp/org/ob-octave
/home/minshall/.emacs.d/straight/build/org/org-keys hides /usr/local/share/emacs/31.0.50/lisp/org/org-keys
/home/minshall/.emacs.d/straight/build/org/oc-bibtex hides /usr/local/share/emacs/31.0.50/lisp/org/oc-bibtex
/home/minshall/.emacs.d/straight/build/org/org-entities hides /usr/local/share/emacs/31.0.50/lisp/org/org-entities
/home/minshall/.emacs.d/straight/build/org/org-habit hides /usr/local/share/emacs/31.0.50/lisp/org/org-habit
/home/minshall/.emacs.d/straight/build/org/ob-css hides /usr/local/share/emacs/31.0.50/lisp/org/ob-css
/home/minshall/.emacs.d/straight/build/org/org-element-ast hides /usr/local/share/emacs/31.0.50/lisp/org/org-element-ast
/home/minshall/.emacs.d/straight/build/org/ob-lisp hides /usr/local/share/emacs/31.0.50/lisp/org/ob-lisp
/home/minshall/.emacs.d/straight/build/org/org-plot hides /usr/local/share/emacs/31.0.50/lisp/org/org-plot
/home/minshall/.emacs.d/straight/build/org/org-clock hides /usr/local/share/emacs/31.0.50/lisp/org/org-clock
/home/minshall/.emacs.d/straight/build/org/oc-basic hides /usr/local/share/emacs/31.0.50/lisp/org/oc-basic
/home/minshall/.emacs.d/straight/build/org/org-archive hides /usr/local/share/emacs/31.0.50/lisp/org/org-archive
/home/minshall/.emacs.d/straight/build/org/org-fold hides /usr/local/share/emacs/31.0.50/lisp/org/org-fold
/home/minshall/.emacs.d/straight/build/org/ob-java hides /usr/local/share/emacs/31.0.50/lisp/org/ob-java
/home/minshall/.emacs.d/straight/build/org/ox-html hides /usr/local/share/emacs/31.0.50/lisp/org/ox-html
/home/minshall/.emacs.d/straight/build/org/org-element hides /usr/local/share/emacs/31.0.50/lisp/org/org-element
/home/minshall/.emacs.d/straight/build/org/org-feed hides /usr/local/share/emacs/31.0.50/lisp/org/org-feed
/home/minshall/.emacs.d/straight/build/org/org-agenda hides /usr/local/share/emacs/31.0.50/lisp/org/org-agenda
/home/minshall/.emacs.d/straight/build/org/ob-makefile hides /usr/local/share/emacs/31.0.50/lisp/org/ob-makefile
/home/minshall/.emacs.d/straight/build/org/ob-ocaml hides /usr/local/share/emacs/31.0.50/lisp/org/ob-ocaml
/home/minshall/.emacs.d/straight/build/org/ob-sql hides /usr/local/share/emacs/31.0.50/lisp/org/ob-sql
/home/minshall/.emacs.d/straight/build/org/ox-man hides /usr/local/share/emacs/31.0.50/lisp/org/ox-man
/home/minshall/.emacs.d/straight/build/org/ol-docview hides /usr/local/share/emacs/31.0.50/lisp/org/ol-docview
/home/minshall/.emacs.d/straight/build/org/org-tempo hides /usr/local/share/emacs/31.0.50/lisp/org/org-tempo
/home/minshall/.emacs.d/straight/build/map/map hides /usr/local/share/emacs/31.0.50/lisp/emacs-lisp/map
/home/minshall/.emacs.d/straight/build/compat/compat hides /usr/local/share/emacs/31.0.50/lisp/emacs-lisp/compat
/home/minshall/.emacs.d/straight/build/eldoc/eldoc hides /usr/local/share/emacs/31.0.50/lisp/emacs-lisp/eldoc
/home/minshall/.emacs.d/straight/build/let-alist/let-alist hides /usr/local/share/emacs/31.0.50/lisp/emacs-lisp/let-alist

Features:
(shadow mh-identity flyspell mh-tool-bar mh-letter mh-xface mh-utils
mh-comp emacsbug mule-util bug-reference disp-table windmove ox-md
my-org-grep my-input quail mh-e-extensions mh-show goto-addr gnus-cite
mh-folder which-func mh-scan erc erc-backend erc-networks erc-common
erc-compat erc-loaddefs mh-mime mh-gnus mh-acros mh-e mh-buffers
mh-loaddefs subword-mode-expansions cap-words superword subword doct
ytel ytel-autoloads yasnippet yasnippet-autoloads xr xr-autoloads xclip
xclip-autoloads wiki-summary wiki-summary-autoloads which-key
which-key-autoloads w3m w3m-hist bookmark-w3m w3m-ems w3m-favicon
w3m-image w3m-fb tab-line w3m-proc w3m-util w3m-load w3m-autoloads
vertico vertico-autoloads vdiff smerge-mode diff hydra lv units-mode
units-mode-autoloads tzc timezone tzc-autoloads transient toml
toml-autoloads swiper swiper-autoloads spell-fu ispell
spell-fu-autoloads sly sly-completion sly-buttons sly-messages
sly-common apropos arc-mode archive-mode hyperspec sly-autoloads
shrface-autoloads language-detection-autoloads sdcv pos-tip popup
showtip sdcv-autoloads pos-tip-autoloads showtip-autoloads scpaste
scpaste-autoloads rpn-calc-autoloads popup-autoloads pulsar pulse
pulsar-autoloads prettied-diff-autoloads vdiff-autoloads pcsv
pcsv-autoloads parse-csv parse-csv-autoloads pacmand-autoloads osm-ol
osm-autoloads org-roam-migrate org-roam-log org-roam-mode
org-roam-capture org-roam-id org-roam-node org-roam-db org-roam-utils
org-roam-compat org-roam org-capture org-attach emacsql-sqlite
magit-section cursor-sensor org-roam-bibtex-autoloads org-roam-autoloads
org-ref-autoloads ox-pandoc-autoloads citeproc-autoloads
string-inflection-autoloads queue-autoloads hydra-autoloads lv-autoloads
org-ql peg ts org-habit org-agenda org-duration org-ql-autoloads
peg-autoloads ov-autoloads org-super-agenda-autoloads ts-autoloads
map-autoloads org-grep org-grep-autoloads org-cliplink-autoloads
orderless orderless-autoloads ob-typescript ob-typescript-autoloads
names edebug names-autoloads advice ob-ess-julia ess-julia ess-r-mode
ess-r-flymake ess-r-xref ess-trns ess-r-package ess-r-completion
ess-roxy ess-r-syntax ess-rd hideshow ess-s-lang ess-help ess-mode
ess-inf ess-tracebug comp comp-cstr comp-run comp-common
ob-ess-julia-autoloads nov recentf tree-widget esxml-query nov-autoloads
esxml-autoloads kv-autoloads ol-w3m ol-rmail ol-mhe ol-irc ol-info
ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls
dig gnus-sum gnus-group gnus-undo gnus-start gnus-dbus gnus-cloud nnimap
nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win
ol-docview doc-view jka-compr image-mode exif ol-bibtex ol-bbdb
modus-vivendi-theme modus-themes middling middling-autoloads mastodon
mastodon-search mastodon-toot facemenu mastodon-iso persist
mastodon-http request mastodon-autoloads persist-autoloads
request-autoloads markdown-mode markdown-mode-autoloads marginalia
marginalia-autoloads magit-autoloads magit-section-autoloads
git-commit-autoloads with-editor-autoloads transient-autoloads lua-mode
lua-mode-autoloads link-hint-autoloads lex lex-autoloads ob-julia
julia-mode julia-mode-latexsubs julia-mode-autoloads js2-mode-expansions
js2-mode etags fileloop js2-mode-autoloads json-mode json-snatcher
js-mode-expansions js c-ts-common json-mode-autoloads
json-snatcher-autoloads htmlize htmlize-autoloads parsebib bibtex
ivy-bibtex-autoloads bibtex-completion-autoloads biblio-autoloads
biblio-core-autoloads parsebib-autoloads ivy delsel ivy-faces
ivy-overlay colir color ivy-autoloads ht ht-autoloads highlight-doxygen
highlight-doxygen-autoloads hide-lines hide-lines-autoloads help-fns
radix-tree elisp-refs helpful-autoloads elisp-refs-autoloads gnuplot
info-look gnuplot-autoloads getopt-autoloads free-keys
free-keys-autoloads flycheck-package package-lint let-alist finder
package flycheck-package-autoloads package-lint-autoloads filladapt
filladapt-autoloads expand-region text-mode-expansions
cc-mode-expansions the-org-mode-expansions python-el-fgallina-expansions
er-basic-expansions expand-region-core expand-region-custom
expand-region-autoloads ess lisp-mnt ess-utils ess-custom ess-autoloads
emms-mpris dbus emms-librefm-stream emms-librefm-scrobbler
emms-playlist-limit emms-i18n emms-history emms-score emms-stream-info
emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon
emms-browser emms-volume emms-volume-sndioctl emms-volume-mixerctl
emms-volume-pulse emms-volume-amixer emms-playlist-sort emms-last-played
emms-player-xine emms-player-mpd tq emms-lyrics emms-url emms-streams
emms-show-all emms-tag-editor emms-tag-tracktag emms-mark emms-mode-line
emms-cache emms-info-exiftool emms-info-tinytag emms-info-metaflac
emms-info-opusinfo emms-info-ogginfo emms-info-mp3info
emms-playlist-mode emms-player-vlc emms-player-mpv emms-playing-time
emms-player-mplayer emms-player-simple emms-source-playlist
emms-source-file locate emms-info-native emms-info-native-spc
emms-info-native-mp3 emms-info-native-ogg emms-info-native-opus
emms-info-native-flac emms-info-native-vorbis emms-info emms-later-do
emms-setup emms emms-compat emms-autoloads deadgrep spinner
deadgrep-autoloads spinner-autoloads embark-consult-autoloads
embark-autoloads emacsql-sqlite-builtin sqlite emacsql-sqlite-common
emacsql emacsql-compiler emacsql-sqlite-builtin-autoloads
emacsql-autoloads elfeed-org elfeed-org-autoloads elfeed-dashboard
elfeed-dashboard-autoloads elfeed-show elfeed-search vc-git diff-mode
track-changes vc-dispatcher message sendmail yank-media dired
dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config
mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader shr
pixel-fill kinsoku svg dom elfeed-csv elfeed elfeed-curl elfeed-log
elfeed-db elfeed-lib url-queue url-file browse-url xml-query xml
elfeed-autoloads doct-autoloads use-package-ensure eat-autoloads docstr
docstr-key docstr-faces docstr-writers docstr-util docstr-autoloads
datetime extmap bindat datetime-autoloads extmap-autoloads csv-mode sort
csv-mode-autoloads corfu corfu-autoloads consult-recoll
consult-recoll-autoloads consult-flycheck flycheck
consult-flycheck-autoloads flycheck-autoloads let-alist-autoloads
pkg-info-autoloads epl-autoloads consult-eglot consult bookmark eglot
array ert ewoc debug backtrace filenotify jsonrpc xref flymake compile
imenu consult-eglot-autoloads eglot-autoloads flymake-autoloads
project-autoloads xref-autoloads eldoc-autoloads jsonrpc-autoloads
consult-autoloads compat-autoloads warnings tramp-cache time-stamp
tramp-sh shortdoc s commander-autoloads f-autoloads s-autoloads
avy-autoloads finder-inf aurel url-http url-auth mail-parse rfc2231
rfc2047 rfc2045 ietf-drums url-gw nsm puny bui bui-list bui-info
bui-entry bui-core bui-history bui-button bui-utils cus-edit pp dash
url-handlers url url-proxy url-privacy url-expand url-methods
url-history url-cookie generate-lisp-file url-domsuf url-util url-parse
url-vars mailcap aurel-autoloads bui-autoloads dash-autoloads annotate
annotate-autoloads adoc-mode tempo adoc-mode-autoloads org-contrib
org-contrib-autoloads ob-js ob-gnuplot ox-html table ox-beamer ox-latex
ox-ascii ox-publish ox org-element org-persist org-id org-refile
org-element-ast inline avl-tree generator ob-shell ob-octave ob-scheme
ob-org ob-latex ob-C cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs ob-python python project
compat pcase ob-awk ob-ditaa ob-R org ob ob-tangle ob-ref ob-lob
ob-table ob-exp org-macro org-src sh-script smie treesit executable
ob-comint org-pcomplete org-list org-footnote org-faces org-entities
noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol
org-fold org-fold-core org-keys oc org-loaddefs thingatpt find-func
cal-menu calendar cal-loaddefs org-version org-compat org-macs edmacro
kmacro use-package-bind-key bind-key easy-mmode use-package-core
use-package-autoloads info bind-key-autoloads tramp rx trampver
tramp-integration files-x tramp-message tramp-compat xdg shell pcomplete
comint ansi-osc ring parse-time iso8601 format-spec auth-source eieio
eieio-core icons password-cache json map byte-opt ansi-color
tramp-loaddefs avoid gnus nnheader gnus-util text-property-search
time-date mail-utils range mm-util mail-prsvr wid-edit cus-load
straight-autoloads cl-seq cl-extra help-mode straight subr-x cl-macs gv
cl-loaddefs cl-lib bytecomp byte-compile rmc iso-transl tooltip cconv
eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen
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 inotify lcms2 dynamic-setting system-font-setting
font-render-setting cairo gtk x-toolkit xinput2 x multi-tty move-toolbar
make-network-process native-compile emacs)

Memory information:
((conses 16 1060905 79018) (symbols 48 111899 5)
 (strings 32 353188 12178) (string-bytes 1 10900349)
 (vectors 16 109263) (vector-slots 8 1705705 133280)
 (floats 8 901 353) (intervals 56 1238 87) (buffers 992 19))