GNOME 3.0 (2nd Half 2010 - September)

a11y

  • New accesibility stack:

    • It is based on dbus and has been designed jointly with hackers from other desktop environments. There is a list of items that need help.

Documentation

  • Roadmap for GNOME 3.0

  • Better end-user documentation using the new Mallard documentation format and the improved Yelp help viewer.

  • Mallard is a markup language that makes it easier for you to provide better user help for your software. Mallard documents are topic-oriented: They provide information in small chunks that match your users’ needs without forcing them to read lengthy manuals. More info about Mallard format in its project page.

  • Future plans: Improve developer documentation

GTK+ 3.0 (September 2010)

  • Roadmap page

  • Multitouch support:

    • MPX is an upgrade of the GTK+/GDK device stack, using the XI2 protocol it enables GTK+ to take maximum advantage of multiple pointing devices, either virtual or phisical; for example in multi touch screens like iPhone or special setups with multiple pointing devices.
  • Client Side Decorations:

    • A new feature to allow applications to control the decorations of its container windows. This means that developers can create and add custom visual or functionality enhancements to their apps; for example like Chromium browser does right now. It also enhances control over transparency (RGBA).
  • Resolution Independence:

    • FIXME
  • Extended layout:

    • Extended Layout improves the system of GTK+ used by widgets to define their size requirements or needs. This improves the presentation of GtkLabel widgets, so for example they ellipsize or wrap only when necessary and, above all, correctly. (width-for-height)

  • New theme framework (GtkStyleContext / Monet)

  • Declarative programming improvements (GtkComposite)

  • Application support

  • Complete refactor of the actual code:

    • Remove all deprecated code
    • More easy to add new funtionalities.

Glib 2.26 (September 2010)

  • Roadmap page

  • GSettings:

    • GSettings is the GLib infrastructure to replace the old GConf mechanism (deprecated in GNOME Platform 3.0). It is a unified API to store user preferences and settings with native backends in each of the supported platforms: GNU/Linux (dconf), Windows and OSX.
  • GDbus:

    • GDBus is the new and enhanced way for applications to interact among them using the system or session bus -aka- DBUS. It allows developers to easily create, publish and consume functionality between applications easily and in a well integrated manner.
  • Network API:

    • from low level (GSocket) to high level api to acces the network. Also feautres like proxy, TLS support ...etc
  • New Calendar API

    • Add support non-gregorian calendars and more

Other Libraries

  • 2D: Cairo (Roadmap)

  • OpenGL and 3D: Clutter

    • Clutter is an library for creating fast, visually rich, portable, animated graphical user interfaces. Clutter uses OpenGL for rendering (and optionally OpenGL|ES for use on mobile and embedded platforms), but wraps an easy to use, efficient, flexible API around GL's complexity.
  • Mutimedia: Gstreamer

    • Stabilization of the current 0.10 branch. New future api might be added to this branch in the future.
    • Future: Roadmap

  • Web rendering engine: WebKitGTK+

    • GObject DOM bindings:
      • The DOM specification provides a vast amount of APIs to access and modify most of the content that a web engine can show to the user. The most common way of using is through the JavaScript bindings that most browsers provide for it and that many web pages rely on. For the GNOME platform, though, we should provide bindings designed around the GObject system that is the core of our technology. Starting with WebKitGTK+ 1.4 we'll provide access to the DOM through a GObject-based set of APIs, putting GNOME developers on equal footing with those in the web.

    • Accessibility:
      • Continuing our ongoing commitment with a11y, our goal for this release is to have fixed all of the a11y bugs marked as blocker for the Orca screen reader to work correctly with WebKitGTK+ programs.
    • Stream-based libsoup and disk-cache:
      • For 1.4 we'll support disk caching of HTTP resources, which should consirebaly speed-up the loading of pages in many cases.In order to get here core parts of the libsoup have been redesigned to take advantage of the full power of the GNOME platform.
  • Calendar & Contacts framework: Evolution Data Server (Roadmap)

  • Communications framework: Telepathy

  • Mapping / Geolocation: Champlain / GeoClue

  • Network connectivity: NetworkManaget

  • UPNP/DLNA: Rygel

  • Database access: Libgda (Roadmap)

  • Search engine: tracker

    • Tracker allows the user to find their data as fast as possible. Users can search for their files and search for content in their files too. Tracker is a semantic data storage for desktop and mobile devices. Tracker uses W3C standards for RDF ontologies using Nepomuk with SPARQL to query and update the data. Roadmap

  • dconf

    • It's a low-level configuration system. Its main purpose is to provide a backend to GSettings on platforms that don't already have configuration storage systems. It's extremely fast and ligth.

Bindings

Major overhaul thanks to the inclusion of GObjectIntrospection support in most modules and libraries. GObjectIntrospection is a powerful technology that enables developers to offer bindings in different languages automatically. Notable improvements and changes in the way applications are developed and used include:

Technology preview (available NOW!)

  • Vala: High level programming with the speed and performance of C with Vala, a new programming language with a syntaxis much similar to C# that uses introspection to gain access to all the GNOME Platform.

GNOME 3.0 (September 2010)

  • JavaScript:

    • Complete support of the GNOME Platform under the JavaScript language enabling developers to quickly craft applications and modify them. GNOME Shell, the core of GNOME 3 user experience, is itself developed using JavaScript

    • Read more about GJS, Seed and JavaScript in GNOME

  • Python:

    • Enhanced support: faster, lighter on memory and CPU and always up-to-date. PyGI is the next generation Python binding for the GNOME libraries, it creates bindings on the fly thanks to introspection. Development is almost done and preliminar tests show it's X% lighter in general than current PyGTK bindings (FIXME: citation needed)

    • More about PyGI here

Future

Development tools

Glade

Community

  • GUADEC 2010 at The Hague - Netherlands: Explain

Hackfests

  • GNOME Boston Summit at Boston - USA: Explain (emphasis on hacking)
  • WebKitGTK+ Hackfest at Coruña - Spain: Explain
  • GTK+ Hackfest?

Promotion

  • New www.gnome.org: explain

Wishlist, room for improvement

  • New www.gtk.org with better documentation, guides and examples
  • Documentation system covering API usage and guides for developers using Mallard
  • GNOME Git instance in gitorious.
  • Sponsorship of video optimization work (see http://gstreamer.freedesktop.org/wiki/VideoHackfest)

GNOME 3.2 (1st half 2011)

Other libraries

  • Web rendering engine: WebKitGTK+

    • Improved HTML5 media (video) rendering with GStreamer:
      • Enhance fullscreen support, native controls, linked to GStreamer work on better/faster video.

Community

  • FOSDEM developer room

Wishlist, room for improvement

  • $x Hackfest at $p: Explain

GNOME 3.4 (2nd half 2011)

Other libraries

  • Web rendering engine: WebKitGTK+

    • WebKit2:

      • Finish the support for the new internal/external API layer.

Community

  • GNOME & KDE joint Desktop Summit at $tbd: Explain

Hackfests

  • GNOME Boston Summit at Boston - USA: Explain
  • WebKitGTK+ Hackfest at Coruña - Spain: Explain
  • GTK+ Hackfest?

Wishlist, room for improvement

  • $x Hackfest at $p: Explain

Recurrent

Platform

JavierJardon/Roadmap (last edited 2010-05-29 00:30:49 by DiegoEscalanteUrrelo)