[lsb-discuss] LSB conference call (2011-04-27, 11am ET)

Robert Schweikert rschweikert at novell.com
Fri Apr 29 07:00:45 PDT 2011



On 04/27/2011 05:43 PM, Craig.Scott at csiro.au wrote:
>  From the meeting minutes:
>
> Jeff: So the concensus on submodules seems to be ISV won't care (in the sense they can pick whatever level of granularity works for them) and it may actually be easier for distros
> Alan: They're going to care with respect to how much trouble it becomes to describe things
> Jeff: Do you think more modules/submodules is more trouble for an ISV?
> Alan: No, if we break it down right
> Robert: We can't be afraid of getting things wrong. Our infrastructure has to be robust enough that we can move things around easily
> Jeff: But will it be easy to move things? How will an ISV handle it if a module moves?
> Robert: We'll have to have a transition period when things move, similar to the deprecation policy, so people can adapt.
>
>
> If the granularity/number of subcomponents is not relatively simple/small, ISV's may just revert to requiring lsb>=4.0 rather than bother working out the specifics of what their package really depends on. Personally, I wouldn't be surprised if for many it was just a question of whether or not GUI components are used and thus whether or not to add lsb-gui to the list of dependencies above lsb-core. That may just reflect the sort of packages I tend to work on though.
>
> But a clearer situation is what would happen if you move things around later, by which I'm assuming you mean to rename the sub-components.

Not necessarily, sub-components could retain the same name but be 
"promoted" to components, or become a sub-component of a different 
component. Thus, "lsb-X" my start out as a sub-component of "lsb-A" but 
after people started using things it becomes obvious that "lsb-X" should 
really be part of component "lsb-B" instead. We have to make things like 
this easy from an infrastructure point of view and define a policy that 
allows ISVs to transition.

Further, from an ISV perspective the division between sub-components and 
components should probably be completely transparent, meaning for an ISV 
they all look the same. An ISV would specify "Requires: lsb-gtk" or 
check "Is lsb-gtk installed?". That lsb-gtk is from an organizational 
point of view a sub-component of "lsb-gui" is therefore irrelevant.

Sub-components as such would only be visible for an ISV if there were 
"namespaces" such as "Requires: lsb-gui::lsb-gtk". However, namespaces 
in this sense do not exist, thus for an ISV a component is more or less 
the same than a sub-component from a dependency point of view.

> If you do that, ISV's will be rather annoyed. The whole point of an ISV making use of the LSB is to not have to deal with precisely these sort of issues (things being renamed or changing between versions).

Well, change is inevitable. First we are not going to get it 100% 
"right", whatever "right" may mean, when we release the first iteration 
of modules. Second, from my experience a big part is how we deal with 
changes. If today we do it one way and tomorrow we do at different way 
without warning, compatibility, transition, then I agree with you. 
However, with proper messaging, transition periods etc. I am confident 
changes are tolerable to ISVs. Most changes in the module structure will 
be unnoticeable to ISVs anyway and only effect distros.

> The deprecation mechanism should really be reserved for things that were valid/current, but have since been phased out more so than correcting "things we got wrong".

Lets state this as we need a policy that defines how such changes are 
handled. I agree we should not use the deprecation policy even if the 
new policy looks similar to the deprecation policy.

> I'd suggest first understanding what didn't work with the previous attempt at making the LSB support a set of sub-components before having another go at this.

There was no previous attempt. We've been discussing this for a long 
time and might finally have a proposal that has a good chance at 
success. Time to get cracking and do something.

Robert

-- 
Robert Schweikert                           MAY THE SOURCE BE WITH YOU
SUSE-IBM Software Integration Center                   LINUX
Tech Lead
rschweikert at novell.com
rschweikert at ca.ibm.com
781-464-8147


More information about the lsb-discuss mailing list