[Sugar-devel] Activity Versioning - Dotted Scheme

Simon Schampijer simon at schampijer.de
Sun Nov 29 14:50:12 EST 2009


On 11/29/2009 07:23 PM, Wade Brainerd wrote:
> A problem with introducing dotted version numbers is that Sugar
> versions 0.82-0.86 parse the activity version field using the Python
> int() function.
>
>>>> a = int('100.3')
> Traceback (most recent call last):
>    File "<stdin>", line 1, in<module>
> ValueError: invalid literal for int() with base 10: '100.3'
>
> If we introduce periods into activity version strings, Sugar will
> throw a MalformedBundleException when parsing activity.info.  The
> effect would be that Sugar would simply fail to register the activity;
> it would not appear in the Home view etc.
>
> So, introducing period syntax into an activity bundle automatically
> makes it incompatible with Sugar versions 0.82 - 0.86.
> This is too harsh for me, so like Gary I would just keep using integers.

Well, if an activity will work for an older release is not only 
determined by the activity version number. For example, activities that 
moved to the new toolbar design are not working for older releases < 
0.86. I don't think we can always avoid breaking backwards compatibility.

As Aleksey stated, it is good to keep the dependencies at one place: 
ASLO does this now (for the users that use it to install and update 
activities).

If we conclude to remove Fructose, I guess the major-minor version 
numbers makes only sense technically - easier to differentiate between 
minor and major changes.

Regards,
    Simon


More information about the Sugar-devel mailing list