[OE-core] automatic recipe upgrades - making them better and sweeter
Paul Eggleton
paul.eggleton at intel.com
Mon Nov 6 20:04:30 UTC 2017
Hi Alex,
On Tuesday, 7 November 2017 12:50:05 AM NZDT Alexander Kanavin wrote:
> I've been asked by RP to look into making automatic package upgrades
> work better, so here's what I'd like to improve:
>
> 1) when using 'devtool upgrade', remove the need to specify version and
> source revision on the command line, if we want to upgrade to the latest
> release. There is now distrodata/checkpkg code in place to determine
> both, so 'devtool upgrade <recipe>' could simply default to that.
You could certainly have it dynamically inherit distrodata for the recipe (via
the workspace bbappend) and then use that to get the required information. I'd
avoided that extra complexity earlier but it may be that now it's actually
easier than it was before. The only thing I would say is we need to produce
clear error messages if we don't have the needed information to automatically
figure out what the upgrade version should be.
> 2) help with LICENSE checksum changes a bit more; both devtool and AUH
> have some code for this, so I want to review what they do, and
> consolidate it in a single place. Maintainers should be able to see a
> diff of what the changes are.
Agreed. For everyone else's benefit, Alex filed a bug for this a while ago:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10801
I am keeping an eye on this one.
> 3) 'devtool finish' currently does not handle the recipe upgrade
> situation well: the new recipe and patches are placed side by side with
> the current recipe. The old stuff should be removed, and a tentative
> commit should be created. So maybe add a 'devtool finish-upgrade'.
That's not what's supposed to happen - it should already be deleting the
original files (it takes a record of the copied files when you run devtool
upgrade, and then when you run devtool finish it deletes those and moves the
new ones across from the workspace). If that's not working it's a bug and I
would appreciate a reproducer. I'd certainly prefer that we keep to one finish
command that does its best to "do the right thing" depending on the situation.
> 4) AUH should be stripped to its core business: sending useful emails to
> maintainers, and leave the rest to devtool. If 'devtool upgrade'
> succeeded, then corresponding patches should be attached, otherwise (if
> patch rebase failed, or a fetch issue), at least it could tell what
> happened and suggest a devtool upgrade command to get started. Any
> duplicate functionality for upgrading (stuff that is also in devtool)
> should be removed.
Agreed. There's a bug open for this one too:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10598
BTW, you have impeccable timing as I am currently in the middle of preparing a
fairly substantial changeset for devtool including implementing a dry-run mode
for devtool finish (so you can see what it's going to do) and fixing the
following bugs, among others:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10939
https://bugzilla.yoctoproject.org/show_bug.cgi?id=11948
https://bugzilla.yoctoproject.org/show_bug.cgi?id=11516
Current WIP is on paule/devtool31 in poky-contrib.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
More information about the Openembedded-core
mailing list