From: Brett Gilio <brettg@gnu.org>
To: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Cc: Leo Prikler <leo.prikler@student.tugraz.at>, 38613@debbugs.gnu.org
Subject: bug#38613: Disabling bytecompilation on a list of files.
Date: Mon, 23 Dec 2019 18:31:05 -0600 [thread overview]
Message-ID: <87sglak1iu.fsf@gnu.org> (raw)
In-Reply-To: <875zifmtlq.fsf@gmail.com> (Maxim Cournoyer's message of "Tue, 17 Dec 2019 14:03:29 +0900")
Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:
> Hello,
>
> Leo Prikler <leo.prikler@student.tugraz.at>
>
> [...]
>
>> Regarding the impact, I think it should be fine if we commit this
>> closely before or after #38619, since that probably forces all Elisp
>> libraries to be rebuilt anyways (also CC'd Maxim to have a look at
>> this). Hopefully at least the doom-theme autoloads compile correctly.
>> WDYT?
>>
>> Leo
>
> IIRC, emacs{-minimal} have about ~300 non-Elisp dependents, which IMO is
> OK for master (Elisp packages are very cheap to build, so I don't count
> them).
>
> I've just verified this with the following script:
>
> (use-modules (gnu packages)
> (guix graph)
> (guix monads)
> (guix packages)
> (guix store)
> (guix scripts graph)
> (guix scripts refresh)
> (gnu packages emacs)
> (srfi srfi-1)
> (srfi srfi-26))
>
> (define (all-packages)
> "Return the list of all the distro's packages."
> (fold-packages (lambda (package result)
> ;; Ignore deprecated packages.
> (if (package-superseded package)
> result
> (cons package result)))
> '()
> #:select? (const #t)))
>
> (define (packages->dependents packages)
>
> (define (full-name package)
> (string-append (package-name package) "@"
> (package-version package)))
>
> (with-store store
> (run-with-store store
> (mlet %store-monad ((edges (node-back-edges
> %bag-node-type
> (package-closure (all-packages)))))
> (let ((dependents (node-transitive-edges packages edges)))
> (return (map full-name dependents)))))))
>
> (define (compute-results)
> (let* ((dependents (packages->dependents (list emacs emacs-minimal)))
> (non-emacs (remove (cut string-prefix? "emacs-" <>) dependents)))
> (format #t "Emacs{-minimal} have ~d dependents, ~d of which are not pure \
> Emacs libraries: ~a~%" (length dependents) (length non-emacs) non-emacs)))
>
> (compute-results)
>
> Which outputs:
>
> Emacs{-minimal} have 973 dependents, 274 of which are not pure Emacs
> libraries: (faust@2.5.23 cedille@1.1.1 cflow@1.6
> translate-shell@0.9.6.11 kicad@5.1.4 lepton-eda@1.9.5-20180820
> quadrapassel@3.31.3 eog-plugins@3.26.4 workrave@1.10.34 emacsy@0.4.1
> guile-gi@0.2.0 nomad@0.1.1-alpha emacsy-minimal@v0.4.1-19.f3bf0db
> evisum@0.2.6 enlightenment-wayland@0.23.1 terminology@1.5.0 ephoto@1.5
> enlightenment@0.23.1 econnman@1.1 python-efl@1.23.0 lekha@0.2.1
> python2-efl@1.23.0 edi@0.6.0 rage@0.3.1 dbus-c++@0.9.0
> [...]
>
> HTH,
>
> Maxim
>
>
>
>
Leo and Maxim,
Do you think this feature addition to the emacs-build-system is good to
be pushed, then? I think it looks quite fine but I want to double check
before potentially doing something dumb.
That said, we should probably also document this.
--
Brett M. Gilio
GNU Guix, Contributor | GNU Project, Webmaster
[DFC0 C7F7 9EE6 0CA7 AE55 5E19 6722 43C4 A03F 0EEE]
<brettg@gnu.org> <brettg@posteo.net>
next prev parent reply other threads:[~2019-12-24 0:32 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-14 19:45 bug#38613: Disabling bytecompilation on a list of files Brett Gilio
2019-12-15 0:35 ` Leo Prikler
2019-12-15 22:26 ` Brett Gilio
2019-12-15 23:01 ` Leo Prikler
2019-12-15 23:18 ` Brett Gilio
2019-12-17 5:03 ` Maxim Cournoyer
2019-12-24 0:31 ` Brett Gilio [this message]
2019-12-27 5:06 ` Maxim Cournoyer
2019-12-27 23:07 ` Brett Gilio
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sglak1iu.fsf@gnu.org \
--to=brettg@gnu.org \
--cc=38613@debbugs.gnu.org \
--cc=leo.prikler@student.tugraz.at \
--cc=maxim.cournoyer@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.