Re: Giving us the ability to go backwards [was Re: plan to update F27 to systemd-235]

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

 



On Sat, Oct 7, 2017 at 12:31 PM, Matthew Miller
<mattdm@xxxxxxxxxxxxxxxxx> wrote:
> On Sat, Oct 07, 2017 at 10:33:38AM -0400, Colin Walters wrote:
>> I'm personally very in favor of this; of course my usual refrain
>> here is that we should *try* new things and have the ability
>> to back them out if they don't work (the latter bit is what the
>> current system doesn't support).
>
> You know, we could easily _start_ supporting the thing you want if we
> switched from "Epoch is a horrible confusing hack that should never get
> used" to "We increment Epoch every time instead of Release (and don't
> reset back to 1 on new versions)".
>
> We could even define Release to %{epoch} and remove it from spec files,
> giving a user-visible indicator, even if that's not what the tools sort
> on. Or, I guess, we could to the other way around and define Epoch to
> equal release.
>

No. Please don't do this. If anything, I want Epoch to be a thing that
we reset on new distribution releases, since our tooling does support
this and the distribution upgrade procedures have long since been
adapted to handle it. Epochs shouldn't be permanent. :(

> We could also change the tools to increment with every build rather
> than manually — then, things like git-revert-and-build- would work. The
> ability to revert to previously-existing binaries *without* rebuilding
> would take more invasive tooling changes, of course.
>

We could do this now with the Release field. I've mentioned it
numerous times in the past that this is a well-proven idea. SUSE does
this now with OBS, which is why their release field is set to the
following format:

Release: <COMMIT_INC_NUM>.<BUILD_INC_NUM>

The values above are automatically written by OBS, ignoring whatever
Release is set to. When the version is bumped, <COMMIT_INC_NUM> is
reset to 1. Whenever a rebuild occurs for whatever reason, the
<BUILD_INC_NUM> is bumped, but it resets to 1 on a new commit+submit
build.

So, for example:

1. foo v1 => Release: 1.1
2. adjust spec => Release: 2.1
3. auto-rebuild due to dependency change => Release: 2.2
4. adjust spec => Release: 3.1
5. foo v2 => Release: 1.1

Since we don't have nice things like auto-rebuild of reverse
dependencies for packages, we could probably simplify the scheme to
be:

Release: <COMMIT_INC_NUM>%{?dist}

Though I would love to see us be able to do auto-rebuild of reverse
deps on submit and auto-bundling with an update, as that would
alleviate a huge burden, I don't think that will ever happen. :(

-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux