On Fri, Nov 15, 2019 at 02:53:08PM -0000, Petr Pisar wrote:
On 2019-11-15, John M. Harris Jr <johnmh(a)splentity.com> wrote:
> On Friday, November 15, 2019 6:32:21 AM MST Petr Pisar wrote:
>> Example: I have Perl 5.26 as a default version. I have Perl 5.30 as an
>> laternative version. Now I want to package Bugzilla that's written in
>> Perl. How do you package Bugzilla so that it works with Perl 5.26 as
>> well as with Perl 5.30?
> This sounds like a bug in Modularity.
Modularity can achieve it when both Perls are packaged as a module. I'm
only showing why we need default stream if we want modules.
I'm interested in how this should work when two different modules
interact, and we need a language binding across both modules.
Consider if we move the virtualization stack (QEMU & Libvirt) into a
module with two streams, one libvirt 5.8.0 and one libvirt 6.1.0.
Now we want to build Perl bindings for libvirt. We'll need the
corresponding version of perl-Sys-Virt either 5.8.0 or 6.1.0,
built for each virt module stream, but also built for each Perl
module stream 5.26 / 5.30. eg the combinatorial expansion
- perl-Sys-Virt 5.8.0 with libvirt 5.9.0 with perl 5.26
- perl-Sys-Virt 5.8.0 with libvirt 5.9.0 with perl 5.30
- perl-Sys-Virt 6.1.0 with libvirt 6.1.0 with perl 5.26
- perl-Sys-Virt 6.1.0 with libvirt 6.1.0 with perl 5.30
which module would the perl-Sys-Virt builds live in ?
If perl-Sys-Virt is part of the virt module, IIUC we'd only be
able to build it for one specific perl module stream.
If perl-Sys-Virt is part of the perl module, IIUC we'd only be
able to build it for one specific virt module stream
It looks to me like we have to create a new module just to hold
the perl-Sys-Virt package, and give this 4 streams, to cover the
combinatorial expansion of the perl & virt module streams. Is
this right ?
And we'd have to do create more modules for every other language
binding we ship (ocaml, python, ruby, etc) if the language runtime