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).

Latest public release is:
 * Alpha 2 release, Release Notes

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 2008 true development process for all Maemo Eclipse Integration components started with Garage open source projects using agile development process
 * With Alpha 2 release end of February 2009 a lot of new features were added to the Maemo Eclipse Integration components. Initial support for Windows host PC was implemented. All but Maemo Mica Eclipse plugin framework products were released in Maemo Garage. Mica framework will be release in future when framework will be stable enough to be usable also for other than just ESbox and Pluthon Maemo Eclipse plugin development
 * Planned features for Beta 1 release (week 20 middle of May) include upgrades for many generic Eclipse components, support for Fremantle development environment and official Mac OS X support for PC Connectivity.

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/

New features planned for Beta 1 release (2.0.0M4, wk20 2009)
Notice: Maemo Eclipse Integration 2nd Edition Beta 1 release includes final versions of standard Eclipse components that will be released also with final Eclipse Integration release. This means that there are no plans to update any standard Eclipse components like IDE itself, CDT, RSE, pyDev, etc anymore after Beta 1 release but concentrate on developing our own components, testing and fixing the whole Eclipse Integration product for Fremantle to be able to create the best possible final release.

Beta 1 release planned for week 20 is not optional like Alpha 3 release was and it is the last prerelease that introduces a lot of updates to the existing functionality and a lot of new functionality.

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
 * Support for Fremantle SDK
 * Initial UI for flasher tool(s)
 * Support SBRSH in sandboxless mode
 * Better SBRSH configuration UI
 * Mica Garage site released for 2nd Edition

Maemo ESBox plugin for Eclipse

 * Provide one-time warning to users that running/debugging in SDK ARM rootstraps is not well-supported.
 * Support for Linux and Win32 host PC official (and documented)
 * Support for Mac OS X host PC (works and documented but not fully tested)
 * Keep up with Scratchbox 2 changes
 * ESbox Garage site main page updated to 2nd Edition level
 * Support for Fremantle SDK

Maemo Pluthon plugin for Eclipse

 * Support for Linux and Win32 host PC official (and documented)
 * Support for Mac OS X host PC (works and documented but not fully tested)
 * Support SBRSH natively on Linux, Win32 ans Mac OS X 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

 * Support for Linux, Win32 host PC official (and documented)
 * Support for Mac OS X host PC (works and documented but not fully tested)
 * Support for Maemo Fremantle SDK
 * Initial Fremantle/Diablo flasher support for Linux
 * Full support for VNC clients (native and Eclipse VNC plugin support)
 * Full support for Internet Tablet configuration with control panel applet and status bar plugin
 * Native sbrsh support for Linux, Win32 and Mac OS X
 * SBRSH supporting session based sandbox option
 * Sftp support to access Internet Tablet file system with native host PC GUI clients
 * Support for Maemo SDK CPU Transparency mode
 * Support for installing PC Connectivity components for Linux, Win32 and Mac OS X host PCs
 * Support for configuring PC Connectivity components for Linux, Win32 and Mac OS X host PCs
 * Improved documentation for installing and configuring PC Connectivity on Linux, Win32 and Mac OS X host PCs

Maemo Virtual SDK Image

 * Make studies if we are able to 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
 * make a study if we are able to get rid of Ubuntu Gutsy Server based image by fixing Hardy based image for Windows host PC
 * make a study if Ubuntu Inteprid Server can be used as base Ubuntu release for Maemo Virtual SDK Images
 * Provide do-it-yourself support for VirtualBox for Ubuntu Server based images (instructions how to configure environment and images for VirtualBox)
 * 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

Alpha 3 release was skipped (2.0.0M3, wk14 2009)
Notice: Maemo Eclipse Integration 2nd Edition Alpha 3 release was optional. Plan was that Alpha 3 release will be done but published (and announced) only if the quality level is good enough (equal or better than for Alpha 2). Because many basic Eclipse components (like Eclipse IDE itself, CDT, RSE, pyDev etc) were updated for Alpha 3 release it was not possible to have good enough quality for this release in given time schedule(about one month between Alpha 2 and Alpha 3 releases) and project decided to skip Alpha 3 release and target to have first Beta release out with good quality and with final versions of standard Eclipse components (no more major version updates for final). Beta 1 release planned for week 20 is not optional :).

New features in Alpha 2 release (2.0.0M2, wk09 2009)
Eclipse Integration 2nd Edition Alpha 2 Release Notes

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 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 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 for following connectivity types, USB Networking, Bluetooth and Wlan
 * First version of Network Manager applet (no full functinality)
 * First version of Network 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