From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Francois Perrad <fperrad@gmail.com>,
Woody Douglass <wdouglass@carnegierobotics.com>,
buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH 5/5] support/download/git: handle git attributes
Date: Fri, 15 Sep 2023 09:50:45 +0200 [thread overview]
Message-ID: <20230915075045.GE2693@scaer> (raw)
In-Reply-To: <20230914230730.697c596a@windsurf>
Thomas, All,
On 2023-09-14 23:07 +0200, Thomas Petazzoni spake thusly:
> On Wed, 13 Sep 2023 00:15:52 +0200
> "Yann E. MORIN" <yann.morin.1998@free.fr> wrote:
[--SNIP--]
> > Extend the git backend to handle the export-subst attribute. There is
> > no git tool (that we could find) that does that automatically, except
> > git-archive, which we can't use. So, we do it manually with a bit of
> > trickery where we do use awk to:
> > - identify all files that have the export-subst attribute set,
> > - for each such file, iterate over all the placeholders, and
> > replace them with the expanded format.
[--SNIP--]
> I am not totally convinced by this. I recognize the massive efforts
> that have been into these complex awk scripts, but there are a few
> reasons why I dislike it:
I am not too surprised by your reply, indeed! ;-)
> (1) It's complex/non-obvious
TBH, we've seen more complex code (awk or otherwise) get in. ;-)
But I do agree that we need to asses the complexity vs. gain ratio.
> (2) It fixes a problem in only one single package, which is already
> fixed in a package-specific way, and we don't have visibility on
> many more packages adopting this.
Plus luajit that you applied just moments before (and was identified in
the commit log), which makes it two.
For those two, I am afraid that bumpers will simply forget to update the
post-extract hook with the appropriate data, especially as there is no
hint, close to the _VERSION setting, that another value has to be
updated in lock-step [*].
Plus the 4 qt5-related package (for which that has no impact on the
build, I'll grant it).
[*] we also recently ensured that the erlang API version is no longer
hard-coded, see b574a9606e62 (package/erlang: do not hard-code the
Erlang Interface Version (EI_VSN)) because, in the long run, people
forget about such things... And even so, even with hints, people just
don't follow them, like we had meas3d bumps that did not update
mesa3d-headers in spite of the hint right above MESA3D_VERISON.
> (3) It bumps the Git tarball version, which is going to cause breakage
> to *all* downstream users of Buildroot which have custom packages
> retrieved from Git (and there are probably thousands of these in
> the numerous companies using Buildroot). So causing so much hassle
> to our users for the gain of fixing one package in Buildroot is IMO
> not a good trade-off.
So:
- if the package does not use export-subst, then only the filename
changes, and it is easy to s/-br1/-br2/; that can be added to
release notres and in the "updating" section of the manual;
- if the package uses export-subst, then that will actually help those
out-of-tree packages because they will no longer have to deal with
it manually in an ad-hoc manner.
For that second point, we have always had people that wanted to keep the
git tree because their build system wanted to extract the git hash (or
other info) so that they can quickly identify the source *on a running
target*. Telling those to use export-subst can be a solution (now, we
just need to convince Linus to add that to his kernel tree ;-) ).
Finally, we also bumped the subversion backend version, which is now
-br3; that will probably have caused a lot of churn for those numerous
companies that still use svn. I don't see why that would be acceptable
for one backend and not another.
> Of course, I can be convinced that I'm wrong, but I'm not too convinced
> at the moment. And of course (again), Peter and Arnout are definitely
> welcome to disagree and overrule me :)
You won't be surprised when I tell you I believe it is worth it. ;-)
Regards,
Yann E. MORIN.
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-09-15 7:50 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-12 22:15 [Buildroot] [PATCH 0/5] support/downloaf/git: add support for git attirbutes (branch yem/git-attributes) Yann E. MORIN
2023-09-12 22:15 ` [Buildroot] [PATCH 1/5] package/qt5: fix upstream git trees Yann E. MORIN
2023-09-13 9:45 ` Thomas Petazzoni via buildroot
2023-09-13 9:55 ` Yann E. MORIN
2023-09-14 21:03 ` Thomas Petazzoni via buildroot
2023-09-17 6:45 ` Peter Korsgaard
2023-09-12 22:15 ` [Buildroot] [PATCH 2/5] support/download: generate even more reproducible tarballs Yann E. MORIN
2023-09-24 16:05 ` Peter Korsgaard
2023-09-12 22:15 ` [Buildroot] [PATCH 3/5] support/download/git: properly catch failures Yann E. MORIN
2023-09-24 16:05 ` Peter Korsgaard
2023-09-12 22:15 ` [Buildroot] [PATCH 4/5] support/download/git: fix shellcheck errors Yann E. MORIN
2023-09-24 16:05 ` Peter Korsgaard
2023-09-12 22:15 ` [Buildroot] [PATCH 5/5] support/download/git: handle git attributes Yann E. MORIN
2023-09-14 21:07 ` Thomas Petazzoni via buildroot
2023-09-15 7:50 ` Yann E. MORIN [this message]
2023-09-17 17:52 ` Arnout Vandecappelle via buildroot
2023-09-17 19:00 ` Yann E. MORIN
2023-09-18 7:38 ` Arnout Vandecappelle via buildroot
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=20230915075045.GE2693@scaer \
--to=yann.morin.1998@free.fr \
--cc=buildroot@buildroot.org \
--cc=fperrad@gmail.com \
--cc=thomas.petazzoni@bootlin.com \
--cc=wdouglass@carnegierobotics.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox