[Sugar-devel] Rationale behind the JSON -> CJSON switch in Sugar codebase?

Tomeu Vizoso tomeu at sugarlabs.org
Thu Nov 19 09:11:07 EST 2009

2009/11/13 Jonas Smedegaard <dr at jones.dk>:
> On Fri, Nov 13, 2009 at 01:10:35PM +0100, Sascha Silbe wrote:
>> On Fri, Nov 13, 2009 at 10:12:11AM +0000, Daniel Drake wrote:
>>>> As Tomeu mentions, Python 2.6 reduces the cjson/json performance advantage.
>>> OK, didn't see this. Yes, using python standard library seems like the way to go.
>> Unfortunately not all distros ship Python 2.6 yet, most notably Debian. So we need to at least fall back to simplejson for those.
> Generally, I recommend Sugarlabs to document clearly in source of the various components (e.g. in an INSTALL file) which versions of Python the code is expected to work against, and which version has been extensively tested.

We have http://wiki.sugarlabs.org/go/0.86/Platform_Components for
that, maybe we can point to that page in the INSTALL files of all
Sugar modules?

> One thing is that Debian do not currently ship Python 2.6 as default version of Python.  Another is that we ship multiple versions concurrently, and attempt[1] to allow users to choose at runtime.
> Currently I package Sugar packages with the assumption that they all work with Python 2.5 and newer - but it would sure be better if you explicitly stated which version were a) believed working and b) actually tested.

2.5 is all we have required to date, AFAIK.

> ...or that you provide refression tests, so that distributors can automatically discover if some odd setup suddently stop working at a "minor" Sugar update.

We really need that, though I think that we should first get a more
normal ratio of maintainers per module before we raise the
expectations of packagers.



>  - Jonas
> [1] it is often difficult to package for multiple Python releases, so some package maintainers choose the easier approach of only packaging for whatever is the default version (which allows Ubuntu to switvh to their often newer default version with a simple rebuild of same packaging, but does not allow users at runtime to switch to a different version for that Python module - and all dependent modules).
> --
> * Jonas Smedegaard - idealist & Internet-arkitekt
> * Tlf.: +45 40843136  Website: http://dr.jones.dk/
>  [x] quote me freely  [ ] ask before reusing  [ ] keep private
> Version: GnuPG v1.4.10 (GNU/Linux)
> 08y+EulLZ3HnM0f+HrIDlxqXjFrdjam3dn6gBaLYx6OdZ6rAwLiZtpAUtcE2LLp4
> i5ykvuCOSiePVPCRY7PpaskGNy7s8lgc3mrGSz9mOyQageqjOa+mVhrVL4joHLL0
> vqK1Y/jBl2IzKEcYGZnlTn5y5ZK42OXSwzpGPiDcn9i0sco2+tuLz/4PEeVZKy2q
> k/SIFXtgMXl1RRsR6QuIg4zwVeZopQnvCMxdjrLdXH+OfjHOv1TvTzkZF24iH9/p
> SYS8ZrtvPbCDgShgo3G4NIYj+MMbcXp9rT9bH6Z70nyKavO5SzPI/UAonB7LgNkZ
> ZBoq5mz1ZXNqhb7kW/D1nz9t33PPikBQ+Fnuy4JUZFBYKx9UueBHxueMoCw/cm5D
> BjNFUhfQD6vCfH5g4MzXgQ0TvSmW4bJLfvJpRIF0DnLQSl6nileiO1RV2li+Oiix
> itM5yHJlY4DbhZpKYw38AWNGVDZSv/+4+8aLs6lfr3PGMGj47Vqok/ENftkqBY0x
> 2bmekjv0+391LzOkKTqRfptAMBl4rswR7aZjEiuqfiWYK7XtPKPOUJXT9ELV82fK
> suyuGVmlBVeeFif1ATzx++pjjDaEovXAXAh25wHBfnAAg97rdyuJBfUFX11j97Z2
> jgt7n4LsnbtSumeTxjQo
> =w3U6
> _______________________________________________
> Sugar-devel mailing list
> Sugar-devel at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel

«Sugar Labs is anyone who participates in improving and using Sugar.
What Sugar Labs does is determined by the participants.» - David

More information about the Sugar-devel mailing list