New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
vala_0_38, vala_0_40, vala_0_42: add configuration to disable graphviz (to reduce closure size) #53000
Conversation
cab5d97
to
3320ec8
Compare
cc @hedning Also, was there ever an attempt to get this patch upstream? |
@jtojnar - Following the chain of bug links, I found this, which doesn't really solve the problem; they added support for disabling the build of |
If https://gitlab.gnome.org/GNOME/gitg/merge_requests/16#note_345578 is correct and gitg is the only program using valadoc, we should be able to disable it outright, since we do not build gitg docs. |
Here is the patch to build vala with valadoc without graphviz avaliable https://gitlab.gnome.org/GNOME/gitg/commit/0cfd07f8ab8b2c9e210bb537ac15283ce8c746c2 We use it for a while but finally remove it as we want to keep in sync with fixes and improvements on vala, and there's no interest to maintain that upstream. Makes sense as build a project and build docs for a project can be done in different jobs. Our idea is to use a docker image with a recent distro to build docs. From a distro perspective not sure what is the correct approach |
3320ec8
to
c817216
Compare
I just force-pushed another iteration of this that avoids checking in the patches, and instead fetches the ones used by openembedded-core plus a small additional patch. OpenEmbedded a relatively well-supported project, so I'm pretty confident that we'll continue to have additional patches from them, but if not, the patches are relatively trivial and I'm happy to own forward-porting. @jtojnar - As for just disabling |
Oh, and one more question: this PR looks like it should go to |
Rebase onto some old commit that is both on staging and master, then force
push, then change base.
…On Fri, 28 Dec 2018, 21:04 Andrew Dunham ***@***.*** wrote:
Oh, and one more question: this PR looks like it should go to staging;
does anyone know the right way to do this? Last time that I changed the
PR's base branch, I ended up ccing like 15 people as reviewers because this
PR suddenly had a bunch of commits in it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#53000 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AArCY6AKT1bszSvYdj_I3pLYGYucv-ppks5u9nllgaJpZM4ZjjDG>
.
|
c817216
to
1d5abe6
Compare
@jtojnar - Any suggestions on how to move this forward? It's been rebased on |
I'd say we merge this, and if it becomes a pain to maintain down the road we can look at disabling valadoc altogether. Does that sound reasonable? |
Fine with me. |
@GrahamcOfBorg build vala_0_38 vala_0_40 vala_0_42 |
Ah, wait, we should turn this on by default, no? Not much point in doing this without actually using it. |
I'd very much like to enable this by default 👍 |
Okay, I’ll push an update when I’m back at my computer in ~15 minutes!
…On Tue, Jan 8, 2019 at 11:20 AM worldofpeace ***@***.***> wrote:
Ah, wait, we should turn this on by default, no? Not much point in doing
this without actually using it.
I'd very much like to enable this by default 👍
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#53000 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ABB3hUtOcgs_j87hIByHpQof_MyUn8dGks5vBO-FgaJpZM4ZjjDG>
.
|
1d5abe6
to
e488ece
Compare
A bit closer to 15 hours than 15 minutes, but... @worldofpeace and @hedning, enabled by default now! |
👍 @GrahamcOfBorg build vala_0_38 vala_0_40 vala_0_42 |
patch failed to apply for 0.40 Edit: also fails for 0.42 |
e488ece
to
dc43a5d
Compare
@hedning - Okay, the failure on 0.42 was legit; upstream just released 0.42.4 and the patch fails to apply; I've updated the PR to fix that. The failure on 0.40 looks like a build timeout on the Darwin builder. |
@GrahamcOfBorg build vala_0_38 vala_0_40 vala_0_42 |
dc43a5d
to
7a61d3e
Compare
The 0.42.4 build failure appears unrelated? Error shows as:
As for the 0.40.12 build failure, that's legit; upstream made the same changes as 0.42, so I did the same thing and fixed the patch merge conflict and just force-pushed. All three versions build successfully when I build them locally with the new versions/hashes from |
Patches for For
and for
|
This allows building Vala without support for Graphviz; useful for more minimal installs where we don't want to pull it (and transitively, pango, gd, etc.) in as a dependency.
7a61d3e
to
c52362c
Compare
@worldofpeace - Yeah, that's because this branch wasn't rebased on latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
très bien @andrew-d 👍
@GrahamcOfBorg build vala_0_38 vala_0_40 vala_0_42 |
Motivation for this change
This allows building Vala without support for Graphviz; useful for more minimal installs where we don't want to pull it (and transitively, pango, gd, etc.) in as a dependency.
As an example with vala 0.38:
Or, from ~187MiB to ~53MiB! TBD on whether we want to enable this by default; I've left it as-is for now, and will defer on whether to enable this in more places, or create
valaMinimal
, etc. to any reviewers. At the very least, we probably want to use this forlibsecret
, which is how I originally noticed this; building libsecret from scratch required building all of X11, since there was the following chain of dependencies:vala
➡️graphviz
➡️libXpm
➡️xproto
➡️libX11
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)nix path-info -S
before and after)r? @antono @jtojnar @lethalman @peterhoeg (maintainers)