Eclipse integration

= Maemo Eclipse Integration 2nd Edition features for each prerelease =

These feature lists roughly correspond to backlog items, but are intended to be a more high-level summaries of goals for the releases (actual planning, division of stories for sprints, resource allocation, etc. is not the goal).

Detailed plans for each product can be found from it's Garage pages.

Maemo Eclipse Integration 2nd Edition project plans to release several prereleases during 1H2009

 * With Alpha 1 release middle of November true development process for all Maemo Eclipse Integration components started with Garage open source projects using agile development process
 * Next prerelease will be Alpha 2 that is planned to be released February 2009

Maemo Eclipse Integration release versioning schema for Eclipse plugins
Eclipse Integration project, version numbers for plugin releases are composed of four (4) segments: 3 integers and a string respectively named major.minor.service.qualifier. The page  describes guidelines for the first three segments, which relate to API promises in official supported releases. These rules do not apply to intermediate builds, however, so we will hold the major.minor.service segments at "2.0.0", indicating an API break from Eclipse Integration v1.

Based on this, we will follow this convention in the whole version number:


 * "R " indicates fully tested and stable official release, released according to the following schedule.
 * " M or I or N" indicates that release is not fully tested official release but some prerelease.

The page  describes, somewhat roughly, the versioning of intermediate releases. Based on this, we will follow this convention in the qualifier segment:


 * "M " indicates milestones, which are integration tested and stable, released according to the following schedule.
 * "I " indicates integration builds, which are developer tested, released every two weeks as sprint artifacts.
 * "N ", if used, indicates nightly builds, which are untested and unstable.

Eclipse Integration Subprojects

 * ESbox project: http://esbox.garage.maemo.org/
 * Pluthon project: http://pluthon.garage.maemo.org/
 * Mica project: http://mica.garage.maemo.org/
 * PC Connectivity project: http://pc-connectivity.garage.maemo.org/
 * SDK Virtual Image project: http://maemovmware.garage.maemo.org/

Maemo Mica plugin framework

 * Update Eclipse IDE baseline components to Eclipse Ganymede SR2
 * Update pyDev component to the latest stable version 1.4.4
 * Add Scratchbox 1 installer wizard and SDK installer wizard
 * Initial Fremantle support
 * Initial UI for flasher tool(s)
 * Support SBRSH in sandboxless mode
 * Better SBRSH configuration UI

Maemo ESBox plugin for Eclipse

 * Disable (optionally) usage of SDK ARM rootstraps for running, testing, debugging, ... components (by default Maemo ARM rootstraps are meant only for arm cross-compilation)
 * Support Win32 host PC officially
 * Initial support for Mac OS X host PC
 * Keep up with Scratchbox 2 changes
 * ESbox Garage site main page updated to 2nd Edition level

Maemo Pluthon plugin for Eclipse

 * Support Win32 host PC officially
 * Initial support for Mac OS X host PC
 * Support SBRSH natively on Linux and Windows host PCs
 * Update to use the latest stable version 1.4.4 of pyDev component
 * Pluthon Garage site main page updated to 2nd Edition level

Maemo PC Connectivity

 * Initial support for Maemo Fremantle development environment
 * Initial Fremantle flasher support for Linux, Windows and Mac OS X (with new OMAP3 flasher)
 * Native sbrsh support for Linux, Window and Mac OS X
 * Sbrsh supporting session based sandbox option
 * Sftp support to access Internet Tablet file system with native host PC GUI clients
 * Linux host PC support for installing and configuring PC Connectivity components

Maemo Virtual SDK Image

 * Provide only one Ubuntu Server based image that can be used with all supported operating systems (Linuxes, Windows and Mac OS X) and with both VMWare Player and Qemu
 * Get rid of Ubuntu Gutsy Server based image for Windows host PC
 * Provide do-it-yourself support for VirtualBox for Ubuntu Server based images (instructions how to configure environment and images for VirtualBox)
 * Study if Ubuntu Inteprid can be used as base Ubuntu release for Maemo Virtual SDK Images
 * Provide out-of-the-box ready Ubuntu Hardy/Intrepid Desktop based image for VMWare that includes the whole Maemo Diablo development environment (including all Eclipse Integration 2nd Edition components preconfigured)
 * Provide support (like instructions) how to update Maemo Virtual SDK Images with new Eclipse Integration releases and with Fremantle SDK environment

THESE FEATURES FOR RELEASED PRODUCTS ARE HERE ONLY FOR DOCUMENTATION PURPOSES

Maemo Mica plugin framework

 * Be able to detect the platform installed on a device
 * Support installing packages and update repositories to device in a synchronized way (integration to apt-tools)
 * Autoconfigure Python Interpreter preferences
 * Better Python launch shortcut behavior (launch from project, send all files)
 * Improved SSH and RSE support (reduced password dialogs)
 * Initial support for VNC client
 * Automatically generate Debian structure for projects
 * All template projects can build Debian packages
 * Better support for mixed ESbox/PluThon targeting

Maemo ESBox plugin for Eclipse

 * Initial support for Windows and Mac OS X hosting using VMware and QEMU virtual machines for maemo SDK
 * Support importing projects from apt repositories
 * Support installing packages and update repositories to Scratchbox in a synchronized way (integration to apt-tools)
 * Initial support for prebuilt SDK C/C++ indexes
 * Initial support for running/debugging with shared libraries with DSF
 * Initial support for SBRSH autoconfiguration with an "Exchange keys" button in SBRSH launch configurations
 * Initial C/C++ shared library template project
 * Initial integration to the latest Scratchbox 2 stable release
 * Fix issues with templates that need doctools support by automatically adding it to Scratchbox 1 devkits

Maemo Pluthon plugin for Eclipse

 * Prototype level support for Mac OS X or Windows host PC
 * Integration with RSE, instead of custom SSH Connections
 * Better support for copying/running/tracing/debugging Python applications on Tablet

Maemo PC Connectivity

 * Prototype level support running sbrsh natively on Mac OS X or Windows host PC (verify if this can be done)
 * Support enabling sbrsh sandbox mode per client session
 * Support for following connectivity types, USB Networking, Bluetooth and Wlan
 * First version of Connection Manager applet (no full functinality)
 * First version of Connection Switcher status bar plugin (no full functionality)
 * Initial support for normal and advanced user modes (different UIs for modes) for configuration tools
 * Initial tools and scripts for host PC installation and configuration (for all supported operating systems)
 * VNC support for Linux and SDK virtual image
 * X-tunneling support for Linux and SDK virtual image

New features for Alpha 1 release (2.0.0M1, wk46 2008), released
Both ESBox and Pluthon plugin architecture was restructured to use common Maemo Eclipse plugin framework called Mica (Maemo Integration Common Architecture)

There were no changes with Alpha 1 release to these products:
 * Maemo PC Connectivity 1st Edition
 * Maemo SDK Virtual Image
 * Maemo C++ and Python programming language support

Maemo ESBox plugin for Eclipse

 * Architecture of plugin was restructured to support Mica plugin framework
 * New C/C++ and Python project wizards will automatically install missing build/runtime dependencies in Scratchbox
 * Eclipse DSF debugger framework integration
 * New template engine and wizard for C/C++ and Python
 * Build configurations support, there is a one-to-one mapping from build target to build configuration
 * Autotools files editing ,you can edit *.ac, *.m4, and *.am files with the editor provided
 * Eclipse TM/RSE framework integration with features such as remote file system explorer, remote process viewer, remote shell and terminal to the Internet Tablet
 * New download method Copy via RSE (in addition to Copy via SSH and Mount via SBRSH) is added for Maemo Remote Application launch configuration
 * Full product build which allows user to get all requried Eclipse components by downloading and installing just one distribution package
 * Some bug fixes

Maemo Pluthon plugin for Eclipse

 * Architecture of plugin was restructured to support Mica plugin framework
 * New template engine and wizard for Python
 * It is possible to select what files you want to upload to the Internet Tablet
 * Build configurations support, there is a one-to-one mapping from build target to build configuration
 * Python debugger now stops on the breakpoints of source code
 * Full product build which allows user to get all requried Eclipse components by downloading and installing just one distribution package
 * Some bug fixes