Re: convert everything to rpmautospec?

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

 



On Mon, Apr 08, 2024 at 01:12:38PM -0500, Michel Lind wrote:
> On Mon, Apr 08, 2024 at 07:21:40AM -0400, Neal Gompa wrote:
> > On Mon, Apr 8, 2024 at 7:11 AM Petr Pisar <ppisar@xxxxxxxxxx> wrote:
> > > It's bascially the same problem as Fedora has when users upgrade from Fredora
> > > 40 to 41. Fedora "fixed" the rpmautospec problem by stating that upgrade path
> > > between Fedoras is not maintained anymore and users need to do "dnf
> > > distro-sync" to ignore the RPM versioning.
> > >
> > > All that stems from tha fact that a number of commits between parallelly
> > > supported braches is not monotonic.
> > >
> > 
> > We did this long before rpmautospec existed. We switched to this
> > behavior in Fedora 23 because we have never fully maintained "upgrade
> > paths" across releases.
> > 
> 
> Per private message with Neal this seems to be the Change that brought
> it about:
> 
> https://fedoraproject.org/wiki/Changes/DNF_System_Upgrades
> 
> I'm ... a bit surprised that we don't seem to have any documentation
> stating explicitly that the assumption that NEVRAs in a newer release
> are no longer assumed to be monotonically higher.

That Change was primarily about replacing fedup with dnf-plugin-system-upgrade,
changing from a custom-initrd-based solution that was rather fragile, to
a special systemd target during early boot.

dnf-plugin-system-upgrade uses 'distro-sync' because that's the most
reliable and easy way to do the upgrade, suitable for end users.
But this doesn't necessarilly mean that this is the only upgrade
method that can be used. That Change certainly wasn't intended to
change the packaging guidelines.

In general, we still keep the upgrade path. It's not enforced all
the time, but I think it's still good style.

There is a lot of code out there that doesn't handle downgrades
very well, in particular if there is data in files or state.
So it seems always a bit iffy when a version is downgraded during
a system upgrade. It seems that in practice, this actually happens
mostly when people forget to build for rawhide or branched, not
when they intentionally update a package in older releases only.

> e.g. packaging guidelines still say "Rawhide is allowed to lag
> *temporarily*" (emphasis mine)
> 
> https://docs.fedoraproject.org/en-US/packaging-guidelines/Versioning/#_rawhide_is_allowed_to_lag_temporarily
> 
> I suppose the user facing documentation does say that upgrading using
> only DNF is not tested -- but there's no guideline about loosening
> monotonicity provided to packagers as far as I can tell.
> 
> https://docs.fedoraproject.org/en-US/quick-docs/upgrading-fedora-new-release/#_can_i_upgrade_between_fedora_releases_using_only_dnf

And I think that's all good ;)

> - should we update the packaging docs? Does this need to be a new Change
>   Proposal or does this just need to go through the Fedora packaging
>   committee? (Those involved in the Change like zbyszek can probably
>   advise here)

IMO, no.

> - should we extend this further and say, if we no longer assume NEVRAs
>   are monotonically increasing in a new release, we should allow
>   packagers to use this opportunity to drop epochs in Rawhide? (likely
>   with proper announcement beforehand in devel@)

IMO, no. The fact that you can upgrade between versions and mix
packages from different releases, for testing or other purposes, is
great. I wouldn't throw this out just to save the bit of hassle
that is required to deal with Epochs.

>   (this might require coordination with RH's Leapp developers and
>   AlmaLinux's ELevate developers, to make sure those support upgrading
>   to lower NEVRAs too)

It'd probably cause pain for our downstreams. While not a strict
blocker, it's yet anothe reason to not do this.

Zbyszek
--
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [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