Subject: bug#76926: 31.0.50; Hyperbole tarball bloat

From: Stefan Monnier <[email-masked]>
Date: Mon, 10 Mar 2025 16:15:43 -0400

Package: Emacs
Version: 31.0.50

The current Hyperbole code is a bit less than 3MB of ELisp code, but the
resulting tarball in GNU ELPA is more than 20MB.

Skipping the worst offenders

    *.eps
    *.pdf
    *.html
    HY-TALK/improve-performance.png
    man/im/wgrid4x3.png

would bring it down to about a third of the current size, but I suggest
you think about which of the files in the Git could be skipped in the
tarball (e.g. because they're only useful for the website) or even
completely removed from Git (like `man/im/wgrid[34]*.png` files which
don't seem to be used for anything, or the non-source files like
`hyperbole.pdf` or the `.eps` files which could be replaced by
appropriate Makefile rules).

There's no point skipping small files, so usually I encourage package
maintainers to include pretty much everything, but here I think we went
a bit overboard.

On a related note, have you tried to use `x-export-frames` to generate
screenshots in PDF or SVG format?  It might (should?) lead to images
that are more compact than `wgrid4x3.png` while giving a higher quality
rendering.

Also, I see there's a `man/hyperbole.texi` but the current package's
spec doesn't specify any manual.  I guess we should add

    :doc "man/hyperbole.texi"

right? [ That would auto-generate `hyperbole.info` and `dir` files so
users who install your packages get it in `M-x info`, as well as add an
HTML rendering of that same manual over at
https://elpa.gnu.org/packages/hyperbole.html.  You don't need to
include `hyperbole.html` and `dir` and `hyperbole.info` in the Git for that.  ]

        Stefan