Re: What are the benefits of default modular streams over non-modular packages?

2019-11-19 Thread Nico Kadel-Garcia
On Mon, Nov 18, 2019 at 6:23 AM Mikolaj Izdebski  wrote:
>
> On Thu, Nov 14, 2019 at 4:59 PM Miro Hrončok  wrote:
> > I've asked whether it wouldn't be in fact much easier to keep the default
> > versions of our packages non-modular.
> >
> > Others have said they are interested in this as well. A huge thread 
> > happened but
> > it hasn't delivered an answer.
> > Arguments were made that default modular streams are planned to deliver the
> > exact same experience as non-modular packages, yet it was not said if it
> > wouldn't be easier to just deliver non-modular packages for default 
> > versions.
> >
> > Maybe it would be helpful to try to reformulate the question:
> >
> >
> > **What are the benefits of default modular streams over non-modular 
> > packages?**
>
> As Petr Pisar noted earlier, default streams are designed to deliver the same
> user experience as ursine packages, therefore there is no *direct* advantage
> or disadvantage of them over ursine packages, for Fedora *users*.

Confusing and inconsistent resolution of dependency chains is a direct
consequence of using modularity. These threads have pointed out
others.

> Default streams are modules. Building packages as modules has very significant
> advantages to some package maintainers. Certain maintainers (like me) can save
> a lot of time by building packages as modules.  This *indirectly*
> benefits users and

Those maintainers are a small though vocal minority. Can anyone name
three packages that genuinely benefit from modularity, rather than
/etc/alternatives, SCL style separate deployment in /opt/. If there
was always a bae installation and modules were, in fact, only an
add-on, that might have been more stable.

> other Fedora contributors - maintainers who can more easily build packages 
> have
> more time to spend on important bugs and features affecting users, can get 
> more
> involved in other Fedora activities etc.

At the cost of the time of *other* package maintainers who have to
deal with the inconsistent dependency resolutions at build and
deployment time. It's not, so far, proven to be a helpful technology.
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-19 Thread Stephen Gallagher
On Mon, Nov 18, 2019 at 7:24 AM Kevin Kofler  wrote:
>
> Mikolaj Izdebski wrote:
> > As Petr Pisar noted earlier, default streams are designed to deliver the
> > same user experience as ursine packages, therefore there is no *direct*
> > advantage or disadvantage of them over ursine packages, for Fedora
> > *users*.
>
> Sorry, the "no disadvantage" part is just not true:
> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/6KLXZXI777Q7C7MPEO7HHWM7XGVSJVIK/
>

> * introduce upgrade path issues when upgrading to a newer Fedora,

This has been acknowledged as a bug and is on its way to being fixed.

> * make it harder to replace packages with local versions (because the module 
> normally takes precedence over non-modular versions of the same packages),

This is a valid concern and it is one we are investigating a solution
for right now. One possible answer: if the RPM location is specified
directly (URL or filesystem location) assume that the user wants to
override the modular package.

> * may introduce dependency version conflicts due to versioned dependencies on 
> other modules (whereas non-modular packages currently cannot depend on 
> non-default modules, and it should really stay that way), and those are just 
> the 3 obvious issues.

We just adopted the policy that a default module stream may not depend
on any non-default module streams. As long as this is properly
enforced, this issue is addressed already.

> The design fails to deliver on its promise of delivering the exact same user
> experience.
>

This is incorrect. The *implementation* is currently failing to
deliver the same user experience.
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-18 Thread Kevin Kofler
Mikolaj Izdebski wrote:
> As Petr Pisar noted earlier, default streams are designed to deliver the
> same user experience as ursine packages, therefore there is no *direct*
> advantage or disadvantage of them over ursine packages, for Fedora
> *users*.

Sorry, the "no disadvantage" part is just not true:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/6KLXZXI777Q7C7MPEO7HHWM7XGVSJVIK/

The design fails to deliver on its promise of delivering the exact same user 
experience.

Kevin Kofler
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-18 Thread Mikolaj Izdebski
On Thu, Nov 14, 2019 at 4:59 PM Miro Hrončok  wrote:
> I've asked whether it wouldn't be in fact much easier to keep the default
> versions of our packages non-modular.
>
> Others have said they are interested in this as well. A huge thread happened 
> but
> it hasn't delivered an answer.
> Arguments were made that default modular streams are planned to deliver the
> exact same experience as non-modular packages, yet it was not said if it
> wouldn't be easier to just deliver non-modular packages for default versions.
>
> Maybe it would be helpful to try to reformulate the question:
>
>
> **What are the benefits of default modular streams over non-modular 
> packages?**

As Petr Pisar noted earlier, default streams are designed to deliver the same
user experience as ursine packages, therefore there is no *direct* advantage
or disadvantage of them over ursine packages, for Fedora *users*.

Default streams are modules. Building packages as modules has very significant
advantages to some package maintainers. Certain maintainers (like me) can save
a lot of time by building packages as modules.  This *indirectly*
benefits users and
other Fedora contributors - maintainers who can more easily build packages have
more time to spend on important bugs and features affecting users, can get more
involved in other Fedora activities etc.

--
Mikolaj Izdebski
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Kevin Kofler
John M. Harris Jr wrote:
> Python 2 and Python 3 are inherently incompatible, and many programs WILL
> NOT be migrated to Python 3. In fact, we're simply dropping many packages,
> some were even explicitly denied an exception, that refused to "upgrade"
> to Python 3.

Indeed. As much as I agree with Miro on the Modularity issue, his draconian 
Python 2 to 3 migration is not what I would call a good example to follow 
for such migrations. But this subthread no longer has anything to do with 
the subject of the thread, so can we please focus on the subject?

Kevin Kofler
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Kevin Kofler
Joe Orton wrote:
> So it's clear to me that you see that packagers chosing default streams
> over non-modular packages impose external costs on the rest of the
> distro (packagers and/or users?) somehow.  This thread was supposed to
> focus on benefits, and these vague claims about costs and trade-offs
> seem speculative, but maybe you could expand on that a bit?

Has this not already been mentioned in all the other threads?

Default streams:
* introduce upgrade path issues when upgrading to a newer Fedora,
* make it harder to replace packages with local versions (because the module
  normally takes precedence over non-modular versions of the same packages),
* may introduce dependency version conflicts due to versioned dependencies
  on other modules (whereas non-modular packages currently cannot depend on
  non-default modules, and it should really stay that way),
and those are just the 3 obvious issues.

Dealing with upgrade path issues and dependency version conflicts and using 
complicated workarounds to install local packages instead of the modular 
ones definitely comes at a cost (users' time).

Kevin Kofler
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread John M. Harris Jr
On Friday, November 15, 2019 1:55:44 PM MST Alex Scheel wrote:
> I do agree that we will need to migrate to JDK 11, but that'll take
> time. Perhaps we need Miro's fine management skills and strict policy
> enforcement to get us there a la python2->python3 migration.

That's not the same, at all.

Python 2 and Python 3 are inherently incompatible, and many programs WILL NOT 
be migrated to Python 3. In fact, we're simply dropping many packages, some 
were even explicitly denied an exception, that refused to "upgrade" to Python 
3.

-- 
John M. Harris, Jr.
Splentity

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Alex Scheel
- Original Message -
> From: "Fabio Valentini" 
> To: "Development discussions related to Fedora" 
> 
> Sent: Friday, November 15, 2019 10:58:04 AM
> Subject: Re: What are the benefits of default modular streams over 
> non-modular packages?
> 

~snipping long thread~

> Another issue is that the modular Java packages are now getting built
> with OpenJDK 11, while the non-modular default is still OpenJDK 8, and
> nobody is left to drive an OpenJDK 8 → 11 transition in fedora
> forward. We're basically the only holdout on Java 8 still, with even
> debian stable (!) defaulting to OpenJDK 11 now. This will probably
> lead to all kinds of fun incompatiblities between modular (Java 11)
> and non-modular (Java 8) packages. And I've not even mentioned the
> myriad of other, slightly incompatible changes between modular and
> non-modular Java packages ... *SIGH*

I think, assuming the proper -target / -release flags are used in
all modular packages, this will largely be a non-issue. Java does its
best to allow building packages with newer JDK versions while still
allowing older JREs to run the code. That's not the case if -target and
-release flags are missing. It also only really affects the consumers
of Java _libraries_ built with JDK11. Almost nobody will notice if Maven
was built with JDK 11. However this issue has been discussed elsewhere,
and we've determined that we'll be fine (TM):

https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/UNAKWOA4HZP233PT34OVXSYFWFX47FSF/

I do agree that we will need to migrate to JDK 11, but that'll take
time. Perhaps we need Miro's fine management skills and strict policy
enforcement to get us there a la python2->python3 migration.

> > Perhaps this stuff is obvious to others already.  In RHEL8 while we have
> > certainly hit various problems with modularity at least I don't recall
> > my teams hitting major issues with default streams being available for
> > non-modular packages.
> 
> Maybe the dogtag-pki team can offer some opinions here? I know that
> they've had to deal with this on both RHEL and fedora.

Most of the RHCS team's perceived shortcomings of Modularity have come from
general issues, not ones stemming particularly from default streams. A
portion has probably been because we did this the wrong way and committed
to shipping it in RHEL before it was stabilized in Fedora. As has been
mentioned before on this list, we have some version of Ursa {Prime,Major}
in RHEL and we don't have large, conflicting efforts to maintain ursine build
trees in parallel to modular ones like Fedora has.

I've aired most of our opinions on this list in other threads. I don't think
it is worth reiterating here. But I will say we have much more leniency
when it comes to packaging there than we do here.

---

My personal opinion is that modules in Fedora are broken because of
politics and a lack of policy that exacerbates the technical problems.
Mostly that's because people are refusing to collaborate and work
together to solve problems, preferring to build their own silos. That'll
drive contributors away and vastly increase technical debt in the long run,
which we do really need to avoid to have a healthy community.


Default modular streams shadowing non-modular packages is one such
problem, especially when they ship libraries.


My 2c.

- Alex
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Fabio Valentini
On Fri, Nov 15, 2019 at 3:31 PM Joe Orton  wrote:
>
> On Fri, Nov 15, 2019 at 12:44:52PM +0100, Miro Hroncok wrote:
> > Where is the end-user benefit with the modular default stream? I don't see
> > it either, sorry.

Let me offer a second opinion (coming from some first-hand experience) here:

> It's not clear to me how those examples are related to my argument,
> which I could summarize as:
>
> a) multiple module streams have a benefit to users, and

I think this is a valid point, and it's one of the biggest benefits of
Modularity. But default streams are orthogonal to this.

> b) default streams have a benefit to package owners.

This, however, is not true for fedora in my experience (it may be true
for RHEL, though).
See my explanation below.

> > > This comes at a high cost to package owners if we have to keep
> > > non-modular packages - we have to maintain, build, and test X streams
> > > plus Y non-modular release branch builds for each component, rather than
> > > just X streams.
> >
> > Yes. This is the benefit of the default modular stream for the modular
> > maintainers. I have never questioned it.

I don't even think that it's a (big) benefit for modular maintainers.

> OK great, though it is a bit surprising to hear in a thread which you
> started explicitly to question the benefits of default modular streams.

Ok, let's say you're maintaining default streams for 3-4 fedora
branches instead of 3-4 fedora branches "separately". I disagree that
this makes maintenance easier for the package owner *in general*.

Since there are inherent differences between the fedora "base systems"
in the different branches, one of the following things must be true:
- Either there will have to be a different default stream for some
fedora releases (making you maintain multiple branches anyway), or
- you will need %if%else%endif spaghetti in your .spec files to
support all branches of fedora you target at once.

Is this "easier" than using the clean separation provided by git
branches for non-modular packages ? Probably not.
(But hey, some maintainers do like their %if%else%endif spaghetti
because they want to git merge stuff from rawhide downwards. I don't.)

> > In my opinion (and that is my very subjective opinion, but based on
> > experience) the cost of that difference is otherwise paid by everybody else.
> >
> > The group of everybody else is very much bigger than the group of modular
> > maintainers. Hence, I'd approve such trade off.

I agree. This is very much in line with the "be excellent to each other" maxim.
Making my own work easier at the expense of making things worse for
everybody else who depends on my stuff is most definitely not
"excellent".

> So it's clear to me that you see that packagers chosing default streams
> over non-modular packages impose external costs on the rest of the
> distro (packagers and/or users?) somehow.  This thread was supposed to
> focus on benefits, and these vague claims about costs and trade-offs
> seem speculative, but maybe you could expand on that a bit?

I can provide one example (or two).

Probably the worst "offender" here is the "maven" module. The original
maintainers of most Java packages decided to drop all their
"non-modular" packages and leave them to bitrot (side note: the bitrot
started happening in 2017, but it got much worse in 2019, when
packages were starting to get retired after 6 weeks of being
orphaned). This situation also forced eclipse into becoming a module,
because many of their dependencies were now effectively unmaintained
or broken. It was also the explicit reason for the founding of the
Stewardship SIG - to make sure at least basic Java packaging stuff is
still working (otherwise, LibreOffice would now be broken in fedora
31+).

Also, currently, the "maven:3.5" branch is the default maven stream
for fedora. This means that everybody who "dnf install(s) maven" will
get maven 3.5, despite maven 3.6.1 being available as a non-modular
package in rawhide now. On the other hand, this was a major reason why
Ursa Whatever wasn't enabled for all default streams, because maven
from the 3.5 branch isn't able to build RPM packages. Yikes.

If I understand correctly, mizdebsk is working on making maven from
the modular branches be able to install in parallel with non-modular
maven packages, which would solve at least this particular issue with
maven. Still, I don't understand why modular branches for Java
packages are even necessary, and why it was necessary to force eclipse
maintainers to modularize eclipse as well. Sigh. At least for the
forseeable future, non-modular Java packages will stay maintained,
even if the Java SIG is basically nonexistent now.

Another issue is that the modular Java packages are now getting built
with OpenJDK 11, while the non-modular default is still OpenJDK 8, and
nobody is left to drive an OpenJDK 8 → 11 transition in fedora
forward. We're basically the only holdout on Java 8 still, with even
debian stable (!) 

Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Zbigniew Jędrzejewski-Szmek
On Fri, Nov 15, 2019 at 02:30:20PM +, Joe Orton wrote:
> On Fri, Nov 15, 2019 at 12:44:52PM +0100, Miro Hroncok wrote:
> > Where is the end-user benefit with the modular default stream? I don't see
> > it either, sorry.
> 
> It's not clear to me how those examples are related to my argument, 
> which I could summarize as:
> 
> a) multiple module streams have a benefit to users, and
> b) default streams have a benefit to package owners.

Hi Joe,

this thread is looking for details about a very specific question:
What are the benefits of default modular streams over non-modular packages?
(and as clarified in text: for everybody else, not the maintainers of those
modules). We also want to be as concrete as possible, to avoid getting
mired in speculation.

If I understood your argument, you are saying that default module
streams make it easier for the owners of those modules to deliver rpms
(as compared to providing non-modular rpms), and that this indirectly
benefits users because they get those rpms faster and will less maintainer
effort. Did I get this right?

If there's some other benefit, please describe a specific scenario.

Zbyszek
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Igor Gnatenko
On Fri, Nov 15, 2019 at 3:38 PM Joe Orton  wrote:
>
> On Fri, Nov 15, 2019 at 12:44:52PM +0100, Miro Hroncok wrote:
> > Where is the end-user benefit with the modular default stream? I don't see
> > it either, sorry.
>
> It's not clear to me how those examples are related to my argument,
> which I could summarize as:
>
> a) multiple module streams have a benefit to users, and
> b) default streams have a benefit to package owners.

You quoted Miro above, "end-user benefit". He is not talking about
packaging experience here, which is pretty bad with modules.

> > > This comes at a high cost to package owners if we have to keep
> > > non-modular packages - we have to maintain, build, and test X streams
> > > plus Y non-modular release branch builds for each component, rather than
> > > just X streams.
> >
> > Yes. This is the benefit of the default modular stream for the modular
> > maintainers. I have never questioned it.
>
> OK great, though it is a bit surprising to hear in a thread which you
> started explicitly to question the benefits of default modular streams.
>
> > In my opinion (and that is my very subjective opinion, but based on
> > experience) the cost of that difference is otherwise paid by everybody else.
> >
> > The group of everybody else is very much bigger than the group of modular
> > maintainers. Hence, I'd approve such trade off.
>
> So it's clear to me that you see that packagers chosing default streams
> over non-modular packages impose external costs on the rest of the
> distro (packagers and/or users?) somehow.  This thread was supposed to
> focus on benefits, and these vague claims about costs and trade-offs
> seem speculative, but maybe you could expand on that a bit?
>
> Perhaps this stuff is obvious to others already.  In RHEL8 while we have
> certainly hit various problems with modularity at least I don't recall
> my teams hitting major issues with default streams being available for
> non-modular packages.

Because they just have to do it, they don't have option to choose
technology. They get paid to do their job.

>
> Regards, Joe
> ___
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@lists.fedoraproject.org
> 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@lists.fedoraproject.org
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Joe Orton
On Fri, Nov 15, 2019 at 12:44:52PM +0100, Miro Hroncok wrote:
> Where is the end-user benefit with the modular default stream? I don't see
> it either, sorry.

It's not clear to me how those examples are related to my argument, 
which I could summarize as:

a) multiple module streams have a benefit to users, and
b) default streams have a benefit to package owners.

> > This comes at a high cost to package owners if we have to keep
> > non-modular packages - we have to maintain, build, and test X streams
> > plus Y non-modular release branch builds for each component, rather than
> > just X streams.
> 
> Yes. This is the benefit of the default modular stream for the modular
> maintainers. I have never questioned it.

OK great, though it is a bit surprising to hear in a thread which you 
started explicitly to question the benefits of default modular streams.

> In my opinion (and that is my very subjective opinion, but based on
> experience) the cost of that difference is otherwise paid by everybody else.
> 
> The group of everybody else is very much bigger than the group of modular
> maintainers. Hence, I'd approve such trade off.

So it's clear to me that you see that packagers chosing default streams 
over non-modular packages impose external costs on the rest of the 
distro (packagers and/or users?) somehow.  This thread was supposed to 
focus on benefits, and these vague claims about costs and trade-offs 
seem speculative, but maybe you could expand on that a bit?

Perhaps this stuff is obvious to others already.  In RHEL8 while we have 
certainly hit various problems with modularity at least I don't recall 
my teams hitting major issues with default streams being available for 
non-modular packages.

Regards, Joe
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Miro Hrončok

On 15. 11. 19 14:03, Petr Pisar wrote:

On 2019-11-14, Miro Hrončok  wrote:

I've asked whether it wouldn't be in fact much easier to keep the
default versions of our packages non-modular.

[...]

Arguments were made that default modular streams are planned to
deliver the exact same experience as non-modular packages, yet it was
not said if it wouldn't be easier to just deliver non-modular packages
for default versions.

Maybe it would be helpful to try to reformulate the question:

**What are the benefits of default modular streams over non-modular
packages?**

[...]

Considering we have 6 default modular streams, let me acknowledge that
for the maintainers who decided to deliver default modular streams
instead of non-modular packages, there clearly are some benefits.
While some of us might not understand them, let's not say there are
none. But even if there are clear benefits for the maintainers of
those modules, I'm asking about the benefits for everybody else.


You answered yourself: "default modular streams are planned to deliver
the exact same experience as non-modular packages." If they provide the
same experience, they provide the same set of benefits. Hence there
cannot be any "benefits of default modular streams over non-modular
packages". Q.E.D.


That is indeed how I understand it.


If you want a disuccion, then you should not have stripped all
modularity features and than ask what are the benefits of modularity
without modularity.


What features have I stripped?

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread John M. Harris Jr
On Friday, November 15, 2019 6:03:40 AM MST Petr Pisar wrote:
> You answered yourself: "default modular streams are planned to deliver
> the exact same experience as non-modular packages." If they provide the
> same experience, they provide the same set of benefits. Hence there
> cannot be any "benefits of default modular streams over non-modular
> packages". Q.E.D.
> 
> If you want a disuccion, then you should not have stripped all
> modularity features and than ask what are the benefits of modularity
> without modularity.

I believe that was precisely Miro's point. If there are no inherent benefits 
to default modular streams, why should we have "default streams" instead of 
simply having non-modular packages?

-- 
John M. Harris, Jr.
Splentity

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Petr Pisar
On 2019-11-14, Miro Hrončok  wrote:
> I've asked whether it wouldn't be in fact much easier to keep the
> default versions of our packages non-modular.
[...]
> Arguments were made that default modular streams are planned to
> deliver the exact same experience as non-modular packages, yet it was
> not said if it wouldn't be easier to just deliver non-modular packages
> for default versions.
>
> Maybe it would be helpful to try to reformulate the question:
>
> **What are the benefits of default modular streams over non-modular
> packages?**
[...]
> Considering we have 6 default modular streams, let me acknowledge that
> for the maintainers who decided to deliver default modular streams
> instead of non-modular packages, there clearly are some benefits.
> While some of us might not understand them, let's not say there are
> none. But even if there are clear benefits for the maintainers of
> those modules, I'm asking about the benefits for everybody else.
>
You answered yourself: "default modular streams are planned to deliver
the exact same experience as non-modular packages." If they provide the
same experience, they provide the same set of benefits. Hence there
cannot be any "benefits of default modular streams over non-modular
packages". Q.E.D.

If you want a disuccion, then you should not have stripped all
modularity features and than ask what are the benefits of modularity
without modularity.

-- Petr

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Miro Hrončok

On 15. 11. 19 12:14, Joe Orton wrote:

On Thu, Nov 14, 2019 at 04:56:28PM +0100, Miro Hroncok wrote:

I'll admit that I personally don't see any benefits, but of course that
doesn't mean that they don't exist or that it's not worth having this
discussion.

Considering we have 6 default modular streams, let me acknowledge that for
the maintainers who decided to deliver default modular streams instead of
non-modular packages, there clearly are some benefits.
While some of us might not understand them, let's not say there are none.
But even if there are clear benefits for the maintainers of those modules,
I'm asking about the benefits for everybody else.


Seems like a bit of an odd question.  There is an end-user benefit from
making multiple module streams available both in the short run (more
features/choices today) and long run (better tested software via making
development/unstable releases available more widely).


I don't understand how are default modular streams valuable to that benefit.

(let's have a lamafarm software in the examples)

Suppose I have this situation:

- lamafarm version 1.x is in default modular stream only
- there are no other streams with other versions of lamafarm

Vs. this situation:

- lamafarm version 1.x is in non-modular Fedora
- there are no modular streams with other versions of lamafarm

Where is the end-user benefit with the modular default stream? I don't see it, 
sorry.



Or suppose I have this situation:

- lamafarm version 1.x is in default modular stream only
- there are N other streams with other versions of lamafarm (such as 2.x, ...)

Vs. this situation:

- lamafarm version 1.x is in non-modular Fedora
- there are N moulear streams with other versions of lamafarm (such as 2.x, ...)

Where is the end-user benefit with the modular default stream? I don't see it 
either, sorry.




This comes at a high cost to package owners if we have to keep
non-modular packages - we have to maintain, build, and test X streams
plus Y non-modular release branch builds for each component, rather than
just X streams.


Yes. This is the benefit of the default modular stream for the modular 
maintainers. I have never questioned it.


I have even proposed that we take the default modular stream RPMs and we add 
them to our non-modular repository when we compose it, in order to keep that 
benefit for the modular maintainers. It was turned down almost immediately.



In some cases the costs will be prohibitive to
supporting modular streams - the aim of switching to default streams +
dropping non-modular packages is precisely to eliminate that cost
difference.


In my opinion (and that is my very subjective opinion, but based on experience) 
the cost of that difference is otherwise paid by everybody else.


The group of everybody else is very much bigger than the group of modular 
maintainers. Hence, I'd approve such trade off.


--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Joe Orton
On Thu, Nov 14, 2019 at 04:56:28PM +0100, Miro Hroncok wrote:
> I'll admit that I personally don't see any benefits, but of course that
> doesn't mean that they don't exist or that it's not worth having this
> discussion.
> 
> Considering we have 6 default modular streams, let me acknowledge that for
> the maintainers who decided to deliver default modular streams instead of
> non-modular packages, there clearly are some benefits.
> While some of us might not understand them, let's not say there are none.
> But even if there are clear benefits for the maintainers of those modules,
> I'm asking about the benefits for everybody else.

Seems like a bit of an odd question.  There is an end-user benefit from 
making multiple module streams available both in the short run (more 
features/choices today) and long run (better tested software via making 
development/unstable releases available more widely).

This comes at a high cost to package owners if we have to keep 
non-modular packages - we have to maintain, build, and test X streams 
plus Y non-modular release branch builds for each component, rather than 
just X streams.  In some cases the costs will be prohibitive to 
supporting modular streams - the aim of switching to default streams + 
dropping non-modular packages is precisely to eliminate that cost 
difference.

Regards, Joe
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-15 Thread Miro Hrončok

On 15. 11. 19 2:56, Gordon Messmer wrote:

On 11/14/19 7:56 AM, Miro Hrončok wrote:
**What are the benefits of default modular streams over non-modular packages?** 



I think Adam Williamson tried to answer that in a message in the thread "Re: 
Modularity and the system-upgrade path" (link below) when he wrote:


"if you just don't modularize FreeIPA ... we're stuck shipping this one version 
of FreeIPA for the next seventy jillion years"


That I understood as a RHEL benefit, a solution to a RHEL problem.

We even put Python 2 to a module, so we don't need to support it that long.

Fedora is not supported for jillions of years, but 13 months.
Fedora has a hard rule that (default?) modular EOLs must align with Fedora 
release EOL.


So I don't see how this benefit applies for Fedora.

Thanks for the pointer anyway!

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-14 Thread Gordon Messmer

On 11/14/19 7:56 AM, Miro Hrončok wrote:
**What are the benefits of default modular streams over non-modular 
packages?** 



I think Adam Williamson tried to answer that in a message in the thread 
"Re: Modularity and the system-upgrade path" (link below) when he wrote:


"if you just don't modularize FreeIPA ... we're stuck shipping this one 
version of FreeIPA for the next seventy jillion years"


I didn't really understand that, but maybe he'll clarify (possibly 
again) in this thread.


I think I don't understand what he meant because I'm not clear on what 
he meant to imply would happen when the default module changes.  Perhaps 
the idea is that nothing happens.  The packages in that module just stop 
getting updates and it's up to the end user to enable a new module and 
migrate their data.  That could, conceivably, be seen as better than 
rebasing the packages on a new version that requires a data migration 
that can't reliably be done automatically.


That's speculation on my part, however, and it's inconsistent with the 
behavior that Stephen described in the first message in that thread, 
which was "When running `dnf update` or `dnf system-upgrade`, if the 
default stream for a module installed on the system changes and the 
module's current state is `default_enabled`, then the transaction should 
cause the new default stream to be enabled."  And I'm not sure how 
that's different or better than simply rebasing, as RHEL sometimes does.


Anyway, among the messages I've read in the earlier threads, Adam's came 
closest to answering this question, so I hope he'll weigh in again.


https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/7BITVJLX23OBZDTJUAJZAG43FQKSLZ4A/

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-14 Thread Stephen Gallagher
On Thu, Nov 14, 2019 at 11:39 AM Miro Hrončok  wrote:

> I thing the canonical source of this data is:
>
> https://pagure.io/releng/fedora-module-defaults/tree/master
>
> If I understand the format correctly, the yamls that have the stream key have
> default.

For the record, you are correct. This is the canonical way to
determine what has defaults (other than doing `dnf module list` and
looking through it for [d] in the streams).
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-14 Thread Miro Hrončok

On 14. 11. 19 17:22, Fabio Valentini wrote:

On Thu, Nov 14, 2019 at 4:57 PM Miro Hrončok  wrote:


Hello, in this thread (Fedora 32 System-Wide Change proposal: Modules in
Non-Modular Buildroot)

https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/JNTMUOBZHHCEOV7KS7MRNOBO6VGGT7RX/

I've asked whether it wouldn't be in fact much easier to keep the default
versions of our packages non-modular.

Others have said they are interested in this as well. A huge thread happened but
it hasn't delivered an answer.
Arguments were made that default modular streams are planned to deliver the
exact same experience as non-modular packages, yet it was not said if it
wouldn't be easier to just deliver non-modular packages for default versions.

Maybe it would be helpful to try to reformulate the question:


**What are the benefits of default modular streams over non-modular packages?**


I'll admit that I personally don't see any benefits, but of course that doesn't
mean that they don't exist or that it's not worth having this discussion.


(snip)


Considering we have 6 default modular streams,


Just to make this explicit for the people who don't know how to
determine this themselves (which includes me):
Which six modules do provide a default stream? I can't seem to tell by
looking at any modules' yaml files.


I've took that number from the document linked in:

https://pagure.io/fesco/issue/2255#comment-610332

It lists the following 6 modules:

dwm:6.2
avocado:69lts
scala:2.10
ant:1.10
gimp:2.10
maven:3.5

It also lists the eclipse module as a potential candidate. I've decide not to 
count it, because at the same time, gimp is dropping the default in:


https://bugzilla.redhat.com/show_bug.cgi?id=1772469

So either way, we are at 6.

I thing the canonical source of this data is:

https://pagure.io/releng/fedora-module-defaults/tree/master

If I understand the format correctly, the yamls that have the stream key have 
default.


  [fedora-module-defaults (master)]$ rg -F -g '!tests' 'stream: '
  ant.yaml
  5:stream: 1.10

  dwm.yaml
  6:stream: 6.2

  gimp.yaml
  5:stream: 2.10

  scala.yaml
  5:stream: 2.10

  maven.yaml
  5:stream: 3.5

  avocado.yaml
  5:stream: 69lts



I hope this counts as a clarifying question, and not as a negative
"this is difficult to figure out" criticism ;)


It does count as clarifying question :)

--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


Re: What are the benefits of default modular streams over non-modular packages?

2019-11-14 Thread Fabio Valentini
On Thu, Nov 14, 2019 at 4:57 PM Miro Hrončok  wrote:
>
> Hello, in this thread (Fedora 32 System-Wide Change proposal: Modules in
> Non-Modular Buildroot)
>
> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/JNTMUOBZHHCEOV7KS7MRNOBO6VGGT7RX/
>
> I've asked whether it wouldn't be in fact much easier to keep the default
> versions of our packages non-modular.
>
> Others have said they are interested in this as well. A huge thread happened 
> but
> it hasn't delivered an answer.
> Arguments were made that default modular streams are planned to deliver the
> exact same experience as non-modular packages, yet it was not said if it
> wouldn't be easier to just deliver non-modular packages for default versions.
>
> Maybe it would be helpful to try to reformulate the question:
>
>
> **What are the benefits of default modular streams over non-modular 
> packages?**
>
>
> I'll admit that I personally don't see any benefits, but of course that 
> doesn't
> mean that they don't exist or that it's not worth having this discussion.

(snip)

> Considering we have 6 default modular streams,

Just to make this explicit for the people who don't know how to
determine this themselves (which includes me):
Which six modules do provide a default stream? I can't seem to tell by
looking at any modules' yaml files.

I hope this counts as a clarifying question, and not as a negative
"this is difficult to figure out" criticism ;)

Fabio

> let me acknowledge that for the
> maintainers who decided to deliver default modular streams instead of
> non-modular packages, there clearly are some benefits.
> While some of us might not understand them, let's not say there are none. But
> even if there are clear benefits for the maintainers of those modules, I'm
> asking about the benefits for everybody else.
>
> I'm mainly interested in benefits for:
>   - Fedora users
>   - Fedora non-modular packagers
>   - Fedora QA
>   - Fedora Release Engineering
>   - Community Platform Engineering Team
>   - Fedora downstream
>
> To get the most out of this discussion I think it's useful to set a few rules,
> similarly to the official modularity complaint thread:
>
> https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/CAT3WZ5OJ2N3TPKRHZA3N3PVNSOYX32I/
>
> So let's set some rules:
>
> 1. Always assume good faith. If you are not sure, ask clarifying questions.
>
> 2. No complaints. This thread is about benefits. Use the complaint thread for
> complaints.
>
> 3. Any vague speculative benefits will be ignored. "I think that having 
> default
> modular streams sends a better message about how we are a progressive
> distribution" is an example of a speculative statement. Always be try to be
> concrete about who benefits, how and by what means.
>
> 4. Any argument based on the already spent money/time/energy to deliver 
> default
> modular streams is to be ignored. It's a classic example of a sunk cost 
> fallacy.
> "I think we need default modular streams because people have been working 
> really
> hard to make them happen" is an example of such argument.
>
> --
> Miro Hrončok
> --
> Phone: +420777974800
> IRC: mhroncok
> ___
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@lists.fedoraproject.org
> 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@lists.fedoraproject.org
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org


What are the benefits of default modular streams over non-modular packages?

2019-11-14 Thread Miro Hrončok
Hello, in this thread (Fedora 32 System-Wide Change proposal: Modules in 
Non-Modular Buildroot)


https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/JNTMUOBZHHCEOV7KS7MRNOBO6VGGT7RX/

I've asked whether it wouldn't be in fact much easier to keep the default 
versions of our packages non-modular.


Others have said they are interested in this as well. A huge thread happened but 
it hasn't delivered an answer.
Arguments were made that default modular streams are planned to deliver the 
exact same experience as non-modular packages, yet it was not said if it 
wouldn't be easier to just deliver non-modular packages for default versions.


Maybe it would be helpful to try to reformulate the question:


**What are the benefits of default modular streams over non-modular packages?**


I'll admit that I personally don't see any benefits, but of course that doesn't 
mean that they don't exist or that it's not worth having this discussion.


Considering we have 6 default modular streams, let me acknowledge that for the 
maintainers who decided to deliver default modular streams instead of 
non-modular packages, there clearly are some benefits.
While some of us might not understand them, let's not say there are none. But 
even if there are clear benefits for the maintainers of those modules, I'm 
asking about the benefits for everybody else.


I'm mainly interested in benefits for:
 - Fedora users
 - Fedora non-modular packagers
 - Fedora QA
 - Fedora Release Engineering
 - Community Platform Engineering Team
 - Fedora downstream

To get the most out of this discussion I think it's useful to set a few rules, 
similarly to the official modularity complaint thread:


https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/CAT3WZ5OJ2N3TPKRHZA3N3PVNSOYX32I/

So let's set some rules:

1. Always assume good faith. If you are not sure, ask clarifying questions.

2. No complaints. This thread is about benefits. Use the complaint thread for 
complaints.


3. Any vague speculative benefits will be ignored. "I think that having default 
modular streams sends a better message about how we are a progressive 
distribution" is an example of a speculative statement. Always be try to be 
concrete about who benefits, how and by what means.


4. Any argument based on the already spent money/time/energy to deliver default 
modular streams is to be ignored. It's a classic example of a sunk cost fallacy. 
"I think we need default modular streams because people have been working really 
hard to make them happen" is an example of such argument.


--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org