On Thu, Jun 8, 2017 at 8:13 PM, Tom Hughes <tom(a)compton.nu> wrote:
On 08/06/17 18:54, Matthew Miller wrote:
> On Thu, Jun 08, 2017 at 06:48:27PM +0100, Tom Hughes wrote:
>> I mean it would probably still be quite daunting for somebody that
>> did want to get into more detail I guess but I think I wound up
>> there following through from some of the other stuff about arbitrary
>> branching and I was mostly just trying to see what changes I (as a
>> packager largely avoiding modularity) might find it impossible to
>> avoid and that was just the point at which I decided I wasn't likely
>> to find anything useful to that goal there and bailed out.
> Tom, you work on Node stuff, right? Do you think any of this might be
> useful for packaging and maintaining that in Fedora?
Well from what I understand I don't see how it will help with any of the
problems that we have internally with packaging Node stuff.
I mean assuming you're talking about the node interpreter and node
libraries (ie modules but I'll avoid that name as it will be confusing
here) all being part of a Fedora module then I don't see how it helps at
all because the issue with node packaging is the number of dependencies
within the node stack and the rate of change of those dependencies.
I can imagine the artificial branching that is coming with modularity could
be beneficial for you. It will give you the possibility of having package
branches with specific end of life and "support or quality level".
You say that you deal with a large number of dependencies that keep
changing. How often these changes happen? What if you could - and this is
just my idea - create a package of lower quality in a specific branch
(which would take less time), and explicitly say so. You could then use the
package just as a dependency of your thing. And when the dependencies
change and the package is no longer needed, you can just dump it. That's
fine because you said it's just for you.
And I don't want to make it sound like the main selling point of modularity
is bad packaging... :-) Another example: You want to add a package to
Fedora that you just need as a dependency. Two bad things can happen:
1/ The package is already there, but in a different version. You can't just
2/ You add the package and other people start to use it. That's great until
you need to change the version, but can't, because other people started to
use it as a dependency and it would break their stuff.
Modularity with artificial branching will solve both problems.
Is any of this relevant to you?
PS: I also call Python modules libraries... I guess nothing we do is
necessarily final. And that might include naming things.
Tom Hughes (tom(a)compton.nu)