guix-devel
[Top][All Lists]
Advanced

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

Re: On commit access, patch review, and remaining healthy


From: Giovanni Biscuolo
Subject: Re: On commit access, patch review, and remaining healthy
Date: Fri, 10 Jun 2022 14:27:44 +0200

Hi Arun,

thank you for your detailed analysis!

Arun Isaac <arunisaac@systemreboot.net> writes:

[...]

> I meant that Guix has very high coding/packaging standards in the
> following senses:
>
> - We prefer to not bundle dependencies. Tracking out bundled
>   dependencies, git submodules, etc. and figuring out how to rewire
>   everything so it works with unbundled dependencies can be really
>   tricky for some packages.

more than tricky: sometimes /impossible/

this is a /huge/ complex issue (I know you know) that some upstream
developers simply ignore; in a sense I feel that Guix was developed
/also/ to help solve this issue and avoid programmers to invent too
creative ways to distribute theis software dependencies

...but it's a hard work, it needs... zen discipline

anyway: AFAIU all of us do agree that this requirement is a Good Thing™
and we have to keep it as a "core requirement"

also, AFAIU there is no way Guix maintainers can help in making this
process easier or automatic: right?

> - We build strictly from source.

This is also a requirement now adopted by many other distributions, at
least all the ones in https://reproducible-builds.org/who/projects/

> - We aim to package tests for all packages.

is there something different that should be done?

do this requirement (is it a requirement?) need to be better documented
or discussed?

> - We have strict conventions for commit messages. Our commit message
>   Changelog is a strange dated practice from the time before good
>   version control systems. I can live with it, but not everyone likes
>   it. Let's just say I've heard complaints about it offlist.

AFAIU this is a requirement Guix inherits from GNU (being it a GNU
project)

I don't remember the ratio for this requirement but AFAIU it made sense
to me when I read that.

I just hope this requirement is refraining people to contribute and to
review patches.

Maybe we could help users not using Emacs with other editor-related
snippets in [~/src/guix/]etc/snippets? (I don't know other editors
templating systems)

> - We don't just list the main license of a package. We trace out the
>   license of each and every file, if they are different from the main
>   license.

Is it possible to write an helper tool?!?  I have still not searched for
one such tool, maybe other distributions do have such a tool?

BTW AFAIU this is a legal requirement we cannot avoid, even if sometimes
it's avoided by some upstream author

> - Our synopses and descriptions are not casually copy-pasted from the
>   project website. We try to rewrite and improve on them if necessary.

AFAIK similar requirements are "enforced" by all other distributions

> - We have to be careful about pushing changes that will cause too many
>   rebuilds. We have a core-updates process for that.

Could this be automated by a pre-commit hook?

[...]

>> please can you expand on this?  What is that cost of failure?
>
> The cost of failure is mostly in the mind. A commit is something that
> has your name on it and lives on in the repo history *forever*. So, it
> better be good. That's the pressure. I do have one or two commits in the
> guix repo with badly borked commit messages.

OK thanks, I understand

[...]

>> specifically speaking, IMHO in cases like this you should send an
>> email-reply to that bug (patch) explaining the 1% you are unsure of
>
> Yeah, I would. But, often that 1% is too nitpicky to be worth
> reporting. Sometimes, I fix the 1% myself and push. But often, I confess
> that I just leave it to other committers.

I don't imagine a specific use case, but nevermind

[...]

Thank you! Gio'

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

Attachment: signature.asc
Description: PGP signature


reply via email to

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