Features/GObject Introspection

From Sugar Labs
< Features
Revision as of 00:54, 18 October 2009 by FGrose (talk | contribs)
Jump to navigation Jump to search


Use GObject-based libraries via introspection, instead of build-time bindings.


Current status

  • Targeted release: 0.88
  • Last updated: July 13th 2009
  • Percentage of completion: 0%

Detailed Description

http://live.gnome.org/PyBank/ will allow us to load classes and other symbols as we need them, reducing memory usage and startup time.

Benefit to Sugar

This will reduce overall memory usage and startup time of the shell and activities. Also will make easier use libraries written in languages other than Python.


Will need changes in about every sugar module, including activities, but we'll have a script that will make it easier. Not all activities need to switch at the same time.

How To Test

Run Sugar and activities as usual, notice startup is faster and check with 'free' the amount of free memory.

User Experience

The shell and activities should start much faster and you can launch more activities before systems with low memory and no swap (like the XO) become unresponsive and crash.


Yes, we depend on work in other GNOME projects: http://live.gnome.org/GObjectIntrospection/ and http://live.gnome.org/PyBank/ .

Contingency Plan

None necessary, revert to previous release behaviour.


http://live.gnome.org/GObjectIntrospection http://live.gnome.org/PyBank/

Release Notes


Comments and Discussion

You can add categories to tie features back to real deployments/schools requesting them, for example [[Category:Features requested by School Xyz]]