[PATCH] module upgrade table - no more troubles with legacy modules removed

Auke Kok auke at foo-projects.org
Tue Aug 23 05:40:20 CEST 2011


On 08/20/2011 11:59 AM, Zbigniew Luszpinski wrote:
> Hello,
>
> here is module upgrade patch I made. Please commit it because I have no
> write access to lunar.git.
>
> How Lunar core tools looks now:
> when legacy module is removed from moonbase Lunar asks if you want to
> remove it (default: yes) or keep it. This way when you sleep lunar update
> will silently cut some old modules. In my case this was kde3 - I woke up
> and surprise I have no desktop :(.
>
> How Lunar core tools behave after this patch:
> Lunar will check modules upgrade table if there is upgrade path. If it is
> present new module will be lined. If you are watching lunar update it will
> ask you if you wnat to upgrade. Default is yes so when firefox5 will be
> removed and lunar is updating when you are sleeping you will wake up next
> day with firefox 6.0 ready for work. If you say no default previous
> behaviour takes action (default remove - if no leave).
>
> Info for module developers:
> Module upgrade table is inside moonbase file named: upgrade.tbl in root
> directory of the moonbase. You have access to it via moonbase.git
>
> File format is easy:
> removed_module new_module
> for example:
> firefox4 firefox5
>
> firefox5 and thunderbird5 were removed from moonbase because of end of
> life. If you have them installed and have this patch applied do lunar
> update to test the solution. firefox5 will be upgraded to firefox6 and
> thunderbird5 will be upgraded to thunderbird6.

this patch is rejected by me, for the following reasons:

- this patch changes the core code and inserts global information into 
something that should be per-module. the table you're adding will get 
outdated instantly and the harm of having outdated tables is much larger 
than the benefit of having this table in the first place.

- you're solving a problem that you yourself created in the first place. 
Instead, you should have not merged firefox5 and firefox6 modules, and 
just updated the firefox module to version 5, 6 respectively.

- the idea of "Obsoletes" (the rpm equivalent of this code) is not a bad 
idea, but, given the current state of the lunar code, is just something 
I currently do not consider valuable. All of our lunar users are more 
than capable of determining that if they install module3, and module3 is 
removed from moonbase, that they may need to look for module4 or 
"module" instead. In short, your patch violates the rule that "you're 
making something simple too complex".

Auke


More information about the Lunar-dev mailing list