Difference between revisions of "0.86/Roadmap"

From Sugar Labs
Jump to navigation Jump to search
(→‎Decoupling of Sucrose: move to Features/Decoupling_of_Sucrose)
Line 184: Line 184:
==== Bindings ====
==== Bindings ====
* Moving Sugar to [http://live.gnome.org/PyBank PyBank] to save memory and improve startup speed. Pybank builds the bindings as you need them, so you don't import all the bindings for gtk at startup of every process.
* [http://live.gnome.org/Vala/Bindings Vala bindings] for the toolkit
* [http://live.gnome.org/Vala/Bindings Vala bindings] for the toolkit
** (?) we could write [[#Decoupling of Sucrose]]/'''bridge''' level on vala i.e. use for '''core''' only dbus API and provide bride level in vala binding [[User:Alsroot|Alsroot]] 06:15, 25 May 2009 (UTC)
** (?) we could write [[#Decoupling of Sucrose]]/'''bridge''' level on vala i.e. use for '''core''' only dbus API and provide bride level in vala binding [[User:Alsroot|Alsroot]] 06:15, 25 May 2009 (UTC)

Revision as of 12:51, 13 July 2009

Team Home   ·   Join   ·   Contacts   ·   Resources   ·   FAQ   ·   Roadmap   ·   To Do   ·   Meetings

Sucrose Development

Sucrose 0.85.x is an unstable development series intended for testing and development purposes. Sucrose uses odd minor version numbers to indicate development status, so this unstable 0.85.x series will finally become the 0.86 stable release.


Date Task Notes
2009 Jun 05 Release goals proposal
Jun 12 New modules proposal
Jul 09 Sucrose 0.85.1 Tarballs Due
Jul 10 Sucrose 0.85.1 Development Release
Jul 23 Sucrose 0.85.2 Tarballs Due
Jul 24 Sucrose 0.85.2 Development Release
Aug 20 Sucrose 0.85.3 Tarballs Due
Aug 21 Sucrose 0.85 Alpha (0.85.3) Feature and API Freeze, String Cooling*
Aug 27 Sucrose 0.85.4 Tarballs Due
Aug 28 Sucrose 0.85.4
Sep 03 Sucrose 0.85.5 Tarballs Due
Sep 04 Sucrose 0.85.5 Beta (0.85.5) String Freeze**
Sep 10 Sucrose 0.85.6 Tarballs Due
Sep 11 Sucrose 0.85.6
Sep 17 Sucrose 0.86 Tarballs Due Hard code freeze
Sep 18 Sucrose 0.86 Final Release!

* String changes have to be announced, but no exceptions have to be requested.

** Every string change has to be requested and to be approved.

Glucose Development Team/Release/Modules

Fructose Development Team/Release/Modules

Glucose Dependencies

Fructose Dependencies

  • pyabiword
  • hulahop



On-disk icon cache

Cache pre-rendered svg icons on disk.

  • Owner/Coordinator: Benzea


  • Lucian: SSB (Site specific browsing) - http://wiki.sugarlabs.org/go/Webified
  • bookmarks (global bookmarks, at the moment we only have session bookmarks and the auto-completion functionality) - needed by SSB
  • better naming of files to be uploaded #901(change temp name to something based on the title)
  • uploading (above) is also dependent on filenames being preserved on download #899
  • export for offline viewing (Web page - HTML only, Web page - Complete)
  • creating of web pages (highlighting support in Write, Activity with special HTML based features(can happen outside of the official cycle))
  • fix theme (scroll-bars #805, html form widgets - Gary)
  • Owner/Coordinator: Simon


More Accelerators (short cuts)

  • make sure we use the standard accelerator UI where possible for existing bindings, get discussion about which modifiers might be worth changing/adding/removing
  • Design_Team/Proposals/Keyboard_Action
  • Owner/Coordinator: Homunq?

Printing support

Search in home view

  • The search is recently builds disabled
  • Owner/Coordinator: ?


  • Scalable presence service - Integrate gadget in the Sugar UI #7711
  • Make collaboration more stable
  • Owner/Coordinator: Tomeu/Simon


  • Tagging buddies to build up relations, tagging can happen by a teacher tagging a class or the learner can tag himself
  • Owner/Coordinator: Kartik Rustagi
  • Proposal

Mesh View

  • Use buddy color to seed the position to get a more stable positioning in the mesh view
  • See ticket #318
  • Owner/Coordinator: Simon Schampijer


  • Vala bindings for the toolkit
    • (?) we could write #Decoupling of Sucrose/bridge level on vala i.e. use for core only dbus API and provide bride level in vala binding Alsroot 06:15, 25 May 2009 (UTC)
  • Owner/Coordinator: Tomeu

Keyboard control panel extension

  • (Sayamindu would prefer to keep it as a separate module, since everyone may not choose to go with XKB)
  • Owner/Coordinator: Sayamindu

Dictionary support in the shell

CP - Language in native language

  • link to ticket here
  • Owner/Coordinator: Sayamindu


  • de-couple the portfolio from the base TA
  • revive TA with Sensors (requires revisiting RPM issues re multiple architectures)
  • Owner/Coordinator: Walter


  • repackage Measure
Owner/Coordinator: ???
  • add Open Office for Children
Owner/Coordinator: ???
  • add a video editing activity
Owner/Coordinator: ???

Activities external to Sugar

launch activities outside of Sugar

Owner/Coordinator: ???

integration with new Collabora code

on-the-fly i18n support

Let users translate strings and push them back to Pootle

  • as per C Scott's demo from Sugar Camp 2008-11
Owner/Coordinator: ???

Library activity

  • Library Activity Proposal
  • in honey
  • maybe we want a pluggable Views(Home/Journal) to ease the use of such kinds of activities(activities that can browse sugar objects)
    • another option - add autostart activities
  • Owner/Coordinator: Alsroot

Read Activity

  • Bookmarks support
    • Owner: Sayamindu
    • Status: 75% complete (bookmarks work - support adding notes to them is pending)
  • Epub Support
    • Owner: Sayamindu
    • Status: 80% complete (Epub files are fully viewable. Changes to webkit needs to be upstreamed)
  • Long keypress support
    • Owner: Sayamindu
    • Status: 50% complete (proof of concept code ready, needs integration into Read codebase, and one patch for Xlib needs to go upstream)

ImageViewer Activity

  • Image sharing support (as in Read)
    • Owner: Sayamindu
    • Status: Complete

API work

  • backwards compability
  • (http://wiki.sugarlabs.org/go/Development_Team/sugar-port will take care for the activities needs for a working activity on 0.82 for example) see "Decoupling of Sucrose" section Alsroot 16:16, 21 May 2009 (UTC)
  • (?) start moving to pure dbus interface for glucose
    • dbus method to resume/open activities(instead of sugar-toolkit API)
      • something simple like dbus_object.activate(uid) or
    • etc.
  • Owner/Coordinator: Aleksey

Version support for datastore

See Version_support_for_datastore/Proposal.

  • Owner/Coordinator: Silbe

Datastore features that could benefit Library

These features can benefit Activities/Library activity. At present(for 0.82/0.84) Library uses "rich" datastore client which fetches all Journal objects to make short list of objects(by collapsing all versions to one item), moreover it has to unzip .xo bundles to get bundle_id value. So its not good.

With all these features implemented Library can use "thin" datastore client and not fetch all objects, just make proper request for datasotre.find() to get sorted and collapsed objects by portions (by using offset/limit find() arguments).

find() returns only last versions of journal objects

So, all objects should be grouped by "object_id" which could be:

  • activity_id for objects that were generated by activities
  • bundle_id for .xo bundles in the Journal
  • uid for other objecets

Sort find()'s resultset

Let datastore clients sort objects by any field(not only predefined like uid, activity_id etc).

  • Sort by buddies count
  • Owner/Coordinator: ?


Add support for the current version of Rainbow so

  1. security flaws in Browse (which are the norm rather than the exception) don't allow an attacker to take over the machine and
  2. programming mistakes cannot affect other activities (like deleting all Journal contents).
  • Owner/Coordinator: ?


Add some automated testing to catch bugs earlier and ease integration work:

  • SugarBot (activity-level testing)
  • some system-level tests (e.g. verify datastore works correctly)
  • regression tests
  • Owner/Coordinator: ?

Activities updates

Let users update theirs activities.

There could be several options:

  • Use XO's mechanism to have update item in control panel(pretty common choice)
    • we will have specific option - update only activities
  • Follow Unified Objects paradigm, one of implementation of this idea is Activities/Library, so give user more freedom in upgrading procedure(i.e. w/o ceilings) - incorporate updating procedure into browsing tool(like Journal, Library), so users get one unified method to browse and update(sync) theirs objects(not only activities).

Owner/Coordinator: ?

Old items



Proposed modules

nothing proposed yet