0.86/Roadmap
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.
Schedule
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
Feature Process
- Features/Feature Template provides a guideline for documenting a feature.
- Please follow the instructions on Features/Policy.
Features
- Features/3G Support
- Features/3G Support/Database Support
- Features/3G Support/Share
- Features/3G Support/Testing
- Features/About
- Features/About Me
- Features/Accessibility control panel
- Features/Accessibility virtual keyboard
- Features/Activity.info
- Features/Activity Help
- Features/Activity specific metadata in Journal
- Features/Ad hoc Networking
- Features/Ad hoc Networking/Testing
- Features/Add Information In About Computer
- Features/Automatic Proxy Settings
- Features/Automatic activity updates
- Features/Avoid surplus Activity launching
- Features/Background image on home view
- Features/Backup and Restore
- Features/Backup and Restore/Enhancements
- Features/Browse JS Fiddler
- Features/Buddy Positioning
- Features/Bug Report
- Features/Bulletin Board
- Features/Can share
- Features/Change home view name
- Features/Classroom management
- Features/Clipboard Item Transfer
- Features/Clock in Frame
- Features/Comment box in journal detail view
- Features/Configuring Hidden Wifi Access Points
- Features/Connection Indication
- Features/Content support
- Features/Cordova Container for Sugar
- Features/Dashboard
- Features/Develop Web
- Features/Discovery mode
- Features/Display Device
- Features/Display section for control panel
- Features/Dotted Activity Versions
- Features/Edit panel on Frame
- Features/Enhanced Gettext
- Features/Enhanced Gettext/Testing
- Features/Enhanced color selector
- Features/Enhanced color selector/Patch-colorpicker
- Features/Enhanced color selector/Patch-view
- Features/Enhanced color selector/Patch-window
- Features/Enhanced color selector/Patch-xocolor
- Features/Enhanced color selector/Testing
- Features/Enhanced color selector/atch-edit-undo
- Features/Evince Introspection Bindings
- Features/Fast Language Switch
- Features/Feature Template
- Features/Feature Template/Testing
- Features/Fixing Collab (Tubes)
- Features/Flash Activities
- Features/Flash Activities/Testing
- Features/Font configuration
- Features/FreeDesktop integration
- Features/GObject Introspection
- Features/GTK3
- Features/GTK3/API wish list
- Features/GTK3/Desktop Summit activities
- Features/GTK3/Development
- Features/GTK3/Porting
- Features/GTK3/Porting/Finance
- Features/GTK3/Porting/GetBooks
- Features/GTK3/Porting/Implode
- Features/GTK3/Porting/InfoSlicer
- Features/GTK3/Porting/Jukebox
- Features/GTK3/Porting/Log
- Features/GTK3/Porting/Record
- Features/GTK3/Porting/TamTam
- Features/GTK3/Porting/Typing Turtle
- Features/GTK3/Shell
- Features/GTK3/Shell/GTK3 Port
- Features/GTK3/Shell/Hippo Removal
- Features/GTK3/Shell/Hippo Removal/Testing on the XO
- Features/GTK3/Theme
- Features/Global Text To Speech
- Features/Host Version
- Features/Icon Change
- Features/Improved Accessibility
- Features/Improved Accessibility/Testing
- Features/Inquiry learning global chat
- Features/Introduction Tutorial
- Features/Introduction Tutorial/Overlay
- Features/JS Fiddler
- Features/Join Limits
- Features/Journal Entry Sharing
- Features/Journal Entry Sharing/Testing
- Features/Journal Sort
- Features/Journal Volume Toolbar enhancement
- Features/Journal data tagged private or public
- Features/Journal features for 0.96
- Features/Journal features for 0.96/Education Team Talks
- Features/Keyboard CP Section
- Features/Keyboard CP Section/Testing
- Features/Language keyboard options
- Features/Launch Limits
- Features/Lease Information Display
- Features/License selection in Journal
- Features/Messages Notification
- Features/Metacity
- Features/Metacity/Testing
- Features/Multi selection
- Features/Multi selection screenshots
- Features/Multiple home views
- Features/Multiple home views/Testing
- Features/Multiple schoolserver registration
- Features/Neighborhood List View
- Features/Network control panel
- Features/Network control panel/Testing
- Features/Network status
- Features/New ASLO
- Features/New ASLO/Testing
- Features/New Toolbar Design
- Features/New Toolbar Design/Testing
- Features/Notification Progress Bar
- Features/Notification Replacement
- Features/Notification System
- Features/Notification Urgency
- Features/Object Collections
- Features/Obsolete/Ad hoc Networking
- Features/Obsolete/Ad hoc Networking/Testing
- Features/Onscreen Keyboard
- Features/Optimize TreeViews
- Features/Optional activity updates
- Features/Optional adhoc autoconnect
- Features/Parental controls
- Features/Patch workflow
- Features/Peer to Peer Objects Sharing
- Features/Plain Query Format
- Features/Policy
- Features/Print Support
- Features/Problem Reports
- Features/Problem Reports/Testing
- Features/Proxy Settings
- Features/Publish Sugar Version
- Features/Python3
- Features/Remove Presence Service
- Features/Remove Presence Service/Testing
- Features/Replace GtkMenu
- Features/Replace combo box in journal search
- Features/Replace combo box in language panel
- Features/Resource monitoring
- Features/Revised Browse default-bookmarks.html
- Features/Revised Browse default-bookmarks.html/Testing
- Features/Save-As
- Features/Semantic Web
- Features/Semantic Web/Testing
- Features/Server Objects Sharing
- Features/Sharing Journal Entries Via School Server
- Features/Show Thumb Drives As Hierarchical
- Features/Signed Bundles
- Features/SimpleActivity
- Features/Simple Messages Notification
- Features/Smart Objects
- Features/Smart Objects/Shared Actions
- Features/SoaS Creation Station
- Features/SoaS Remixability
- Features/SoaS Remixability/Testing
- Features/SoaS customization
- Features/SoaS next
- Features/Soas V5/
- Features/Social Help
- Features/Spent Times
- Features/Spiral Home View
- Features/Spiral Home View/Testing
- Features/Start activity from another activity
- Features/Statistics gathering
- Features/Sugar3 Docs
- Features/Sugar3 Docs/How To Write
- Features/Sugar 0.90
- Features/Sugar Activity Library on a Stick
- Features/Sugar Activity Library on a Stick/Testing
- Features/Sugar Bundles
- Features/Sugar Creation Kit DVD
- Features/Sugar Screenshot Dialog Popup
- Features/Sugar Update Control ASLO
- Features/Sugar Update Control ASLO/Testing
- Features/Sync datastore object changes
- Features/TableView Widget
- Features/TableView Widget/Testing
- Features/Tabs In Browse
- Features/Tabs In Browse/Testing
- Features/Tags in Journal
- Features/Teacher Buddy
- Features/Terminal Sharing
- Features/Text To Speech In The Toolkit
- Features/Tick based animation
- Features/Toolbar utils
- Features/Touch
- Features/Touch/Development
- Features/Touch/Programming Tips
- Features/Touch/Testing
- Features/Touch/Testing os11
- Features/Touch/Testing os6
- Features/Touch/Testing os8
- Features/Touchpad control panel section
- Features/Touchpad control panel section/Testing
- Features/Transfer to many
- Features/Transfer to many options
- Features/Transfer to many screenshots
- Features/Trigger Bundle Add
- Features/Update Favorites
- Features/Variable-Appearance-of-Buddy-Icon
- Features/WPA-WPA2-Enterprise-Network-Connections
- Features/WPA-WPA2-Enterprise-Network-Connections/Testing
- Features/WebKit
- Features/WebKit/Development
- Features/Web services
- Features/Web services/Testing
- Features/Write to journal anytime
- Features/Write to journal anytime/Testing
Ideas
Switch to a standard WM
Switch to a standard compliant window manager (possibly Metacity)
- better non-sugarized activity support
- our current version of matchbox is unmaintained
- #602
- goal: test patch in a custom Soas image
- Owner/Coordinator: Sayamindu
New toolbar widget
- add new widget and switch basic activities to it
- keep the old widget if some of the activities do not change in this cycle
- Eben's mockups
- Ticket #452
- Solution for the 'Stop activity' issue
- Owner/Coordinator: Simon - ping Benzea?
On-disk icon cache
Cache pre-rendered svg icons on disk.
- Owner/Coordinator: Benzea
Browse
- 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
Journal
- tag auto completion for already existing tags, tag clouds
- its implemented in Library activity as well
- Owner/Coordinator: Kartik Rustagi (widget from the tagging work in the mesh), attach it to Library?
- Mock-ups
- Previous action/object view Journal mock-ups from Eben
- Journal toolbar & palette change mock-ups for discussion from Gary
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
- Google summer of code project
- Owner/Coordinator: IwikiwI
Search in home view
- The search is recently builds disabled
- Owner/Coordinator: ?
Collaboration
- Scalable presence service - Integrate gadget in the Sugar UI #7711
- Make collaboration more stable
- Owner/Coordinator: Tomeu/Simon
Groups
- 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
List views
- In the mesh view a list view of the access points and buddies
- Owner/Coordinator: Tomeu
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
Connection indication
- Indication of current connection (probably in the device section of the frame)
- Owner/Coordinator: Simon Schampijer
Ad-hoc networking
- As an alternative to the mesh
- Owner/Coordinator: Tomeu Vizoso
Bindings
- Moving Sugar to 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.
- 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
- Dictionary Proposal
- Owner/Coordinator: Sayamindu
CP - Language in native language
- link to ticket here
- Owner/Coordinator: Sayamindu
TA
- de-couple the portfolio from the base TA
- revive TA with Sensors (requires revisiting RPM issues re multiple architectures)
- Owner/Coordinator: Walter
Honey
- 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
Rainbow support
- Owner/Coordinator: mstone???
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.
- dbus method to resume/open activities(instead of sugar-toolkit API)
- Owner/Coordinator: Aleksey
Decoupling of Sucrose
The major idea is to have tough core(with stable release cycle) <=> dbus-API/sugar-toolkit-API(in ideal only dbus) <=> unlimited count of activities that uses core functionality and do not follow 6 months release cycle(which could be overmuch for activity).
It could looks like:
- core - glucose, six months(or so) release cycle, w/o any activities, only API
- in ideal, it should have only dbus API
- bridge - sugar-port for example, between all(in ideal) already deployed sugars and activities i.e. it provides backwards compatibility(so the same activity code will work on all sugars) and at the same time provides features from newest sugar(so the same activity code will use last sugar's features)
- we could write this level in vala to provide core functionality for wide range of programming languages
- world - the rest of sugar world i.e. fructose/honey (but now there are no differences between them) that use core directly, if all deployed sugars have the same API for desired functionality(for example in case of preselected mime type, ObjectsChooser has different API for 0.82-0.86), or use bridge otherwise.
imho another point to have activities outside of core release cycle - activities have more shorter release cycle then core has
And of course deployers can form any sets from these components
Core Bridge World +------------+ +------------+ | Sugar-0.82 |---+ +---| Activity A | +------------+ | +---------------------------+ | +------------+ +------------+ | | sugar-port | | +------------+ | ... |--dbus--| do not fail on 0.82 |---+---| ... | +------------+ | | but uses all 777 features | | +------------+ +------------+ | +---------------------------+ | +------------+ | Sugar-777 |---+ +---| Activity Z | +------------+ +------------+
- Owner/Coordinator: ?
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: ?
Security
Add support for the current version of Rainbow so
- security flaws in Browse (which are the norm rather than the exception) don't allow an attacker to take over the machine and
- programming mistakes cannot affect other activities (like deleting all Journal contents).
- Owner/Coordinator: ?
Testing
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).
- in case of Activities/Library we could have 0.82+ upgrading tool
Owner/Coordinator: ?
Improve accessibility
Move some views to use gtk widgets instead of hippo canvas, so we get AT-SPI support.
- Owner/Coordinator: Tomeu
Edit on clipboard
Add limited edit capability to text on the clipboard
- Owners/Coordinators: Walter and Lucian
- See Features/Edit-panel-on-Frame
Old items
Accessibility
- See [1]
Bundles
- Unified Bundles merge .xol bundles to .xo
Proposed modules
nothing proposed yet