Eclipse integration

(Maemo PC Connectivity)
 
(41 intermediate revisions not shown)
Line 1: Line 1:
-
= 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).
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 releases are:
Latest public releases are:
-
* Beta 2 release, [http://wiki.maemo.org/Eclipse_integration/ReleaseNotes_beta2 Release Notes], [http://wiki.maemo.org/Eclipse_integration/KnownIssues_beta2 Known Issues]
+
 
-
* Beta 1 release, [http://wiki.maemo.org/Eclipse_integration/ReleaseNotes_beta1 Release Notes], [http://wiki.maemo.org/Eclipse_integration/KnownIssues_beta1 Known Issues]
+
* Final release, [[Eclipse_integration/ReleaseNotes_final|Release Notes]], [[/Known issues|Known Issues]]
-
* Alpha 2 release, [http://wiki.maemo.org/Eclipse_integration/ReleaseNotes_alpha2 Release Notes]
+
* PreFinal release, [[Eclipse_integration/ReleaseNotes_prefinal|Release Notes]], [[/Known issues prefinal|Known Issues]]
 +
* Beta 2 release, [[Eclipse_integration/ReleaseNotes_beta2 |Release Notes]], [[/Known issues beta2|Known Issues]]
 +
* Beta 1 release, [[Eclipse_integration/ReleaseNotes_beta1|Release Notes]], [[/Known issues beta1|Known Issues]]
 +
* Alpha 2 release, [[Eclipse_integration/ReleaseNotes_alpha2|Release Notes]]
Detailed plans for each product can be found from their Garage project pages.
Detailed plans for each product can be found from their Garage project pages.
-
=== Maemo Eclipse Integration 2nd Edition project plans to release several prereleases ===
+
See also the [[Documentation/Maemo Eclipse Tutorial|Maemo Eclipse Tutorial]]
 +
 
 +
== Maemo Eclipse Integration 2nd Edition project released several prereleases ==
 +
 
* 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 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
* 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
* With Beta 1 release (week 21 middle of May) major upgrades for many generic Eclipse components were introduced, a lot of new functionality of all components were implemented, good support for Windows host PCs and initial support for Mac OS X host PCs were introduced for PC Connectivity, Mica Eclipse plugin framework was released as separate product, first integration effort to support Fremantle development environment was done, SDK Virtual Images were updated to Ubuntu Intrepid level.
* With Beta 1 release (week 21 middle of May) major upgrades for many generic Eclipse components were introduced, a lot of new functionality of all components were implemented, good support for Windows host PCs and initial support for Mac OS X host PCs were introduced for PC Connectivity, Mica Eclipse plugin framework was released as separate product, first integration effort to support Fremantle development environment was done, SDK Virtual Images were updated to Ubuntu Intrepid level.
* With Beta 2 release (week 27 beginning of July) usable support for Fremantle development environment, good support for Mac OS X for Maemo PC Connectivity, Mica plugin framework refactored and cleaned up, Maemo Flasher-3.5 beta Tools released and integrated to Eclipse, localization support added to the ESbox, first Windows and Mac OS X configuration tools for PC Connectivity released, a lot of stability fixes for existing components and also some new functionality.
* With Beta 2 release (week 27 beginning of July) usable support for Fremantle development environment, good support for Mac OS X for Maemo PC Connectivity, Mica plugin framework refactored and cleaned up, Maemo Flasher-3.5 beta Tools released and integrated to Eclipse, localization support added to the ESbox, first Windows and Mac OS X configuration tools for PC Connectivity released, a lot of stability fixes for existing components and also some new functionality.
-
* With Prefinal release (week 37 middle of September) much improved support for Fremantle SDK development environment and new N900 device, improved support for Windows and Mac OS X as host PC, Mica plugin framework ready for third party plugin development, more automatic configuration of host PC for PC Connectivity using ZeroConf (Avahi and DHCP), Samba support to enable disk mounts between Maemo device and Windows host PCs, Eclipse installation wizard for automated SDK Virtual Image installation, a lot of stability fixes for existing components.
+
* With Prefinal release (week 37 middle of September) much improved support for Fremantle SDK development environment and new N900 device, improved support for Windows and Mac OS X as host PC, Mica plugin framework ready for third party plugin development, more automatic configuration of host PC for PC Connectivity using ZeroConf (Avahi) and DHCP, Samba support to enable disk mounts between Maemo device and Windows host PCs, Eclipse installation wizard for automated Maemo SDK Virtual Image installation, a lot of stability fixes for existing components and functionality.
=== Maemo Eclipse Integration release versioning schema for Eclipse plugins ===
=== Maemo Eclipse Integration release versioning schema for Eclipse plugins ===
Line 40: Line 44:
* Maemo Flasher-3.5 Tools (no Garage project because flasher is closed binary)
* Maemo Flasher-3.5 Tools (no Garage project because flasher is closed binary)
----
----
 +
 +
== New features in Final release (R2.0.0, w52 2009) ==
 +
 +
Eclipse Final release was done about one month AFTER final Fremantle 5.0 SDK and N900 releases.
 +
 +
'''Notice''' especially that Final release replaced old Eclipse Integration 1st Edition release and all 2nd Edition prereleases meaning that support for those releases was discontinued and deliverables and documentation were removed.
 +
 +
Eclipse Integration components now support the latest Debian based Linuxes, Windows XP with SP3, Mac OS X 10.5 Leopard and Mac OS X 10.6 Snow Leopard with x86/32bit architectures. Support for Windows 7 and Windows Vista with SP2 is only at beta level because their support is based on Cygwin 1.7 which has only beta version available.
 +
 +
Support for other than above listed operating systems has not been tested but should be possible if chosen operating system supports Eclipse IDE, if similar functionality for Host PC Connectivity is available for that operating system (for example most Linuxes like Fedora have that) and if operating system is able to run Maemo SDK Virtual Image (in practice supports either QEMU, VMWare or VirtualBox).
 +
 +
=== Product infrastructure ===
 +
 +
* Support for Eclipse Integration 1st Edition discontinued for Diablo
 +
* Support for earlier Ubuntu Gutsy and Hardy based SDK Virtual Images discontinued
 +
** Old SDK Virtual images are still available from Old Maemo Development Platform Downloads page http://tablets-dev.nokia.com/old-maemo-dev-env-downloads.php
 +
* Documentation in maemo.org and Garage projects updated to 2nd Edition Final level
 +
** Edition 1 documentation removed
 +
* Maemo PC Connectivity components released in Frementle extras-devel repository
 +
* Maemo PC Connectivity components released in Diablo extras repository
 +
* Eclipse components
 +
** released from ESbox and PluThon Garage projects as full installation (including also Eclipse 3.4.2 IDE)
 +
** installable from ESbox, PluThon and Mica P2 update sites to the existing Eclipse 3.4.2 installation (including upgrade from previous Eclipse Integration PreFinal release)
 +
* Maemo Info Center service available from maemo.org for documentation
 +
** infrastructure is scalable and supports load balancing and two (or more) Info Center server instances
 +
** integrated to the Eclipse IDE help system (online documentation)
 +
*** online documentation is usable also outside Eclipse IDE with standard browsers
 +
*** online documentation supports searches
 +
** integrated to the Eclipse dynamic help system (offline documentation)
 +
*** offline documentation can be downloaded/updated from Info Center servers to Eclipse IDE automatically
 +
** includes full Maemo Fremantle documentation
 +
 +
=== Product configuration ===
 +
* Diablo 4.1.2 SDK (latest maintenance), N800 and N810 devices used as base
 +
* Fremantle 5.0 SDK (Final) and N900 device used as base
 +
* Latest Cygwin 1.5.25-15 as base for Windows XP porting framework
 +
* Latest Cygwin 1.7 beta as base for Windows 7 and Windows Vista porting framework
 +
* Latest MacPorts 1.8.x as base for Mac OS X porting framework
 +
* Maemo Flasher-3.5 Tools for Linux, Windows XP/7/Vista (x86/32-bit) and Mac OS X 10.5/10.6 (x86 and PPC/32-bit)
 +
* Maemo SDK Virtual Images for Eclipse usage (Ubuntu Intrepid Server based image) and for standalone development with full Maemo Fremantle and Diablo development environments preinstalled (Ununtu Intrepid Desktop based image)
 +
 +
=== Maemo Eclipse products ===
 +
* [http://esbox.garage.maemo.org/ Maemo ESbox for Eclipse]
 +
* [http://pluthon.garage.maemo.org/ Maemo PluThon for Eclipse]
 +
* [http://mica.garage.maemo.org/ Maemo Mica plugin framework]
 +
* Garage documentation integrated to the Maemo Info Center
 +
* Separate Maemo Eclipse Tutorial documentation including
 +
** how to use tracing tool (ltrace) and analyze results
 +
** how to use memory leak tool (Valgrind) and analyze results
 +
** how to use profiling tool (OProfile) and analyze results
 +
* All bug reports in Garage are either "transferred to the next release", "verified" or "closed" status for the final
 +
* Minimal Qt support by integrating qmake project builder type and Qt documentation
 +
* Wizard to create new Maemo Eclipse project from existing Qt development project
 +
* Maemo SDK Virtual Image configuration improvements for ESbox
 +
* Externalize strings in Mica, ESbox and PluThon
 +
* Refactoring the ESbox/PluThon help into Mica framework
 +
 +
=== [http://pc-connectivity.garage.maemo.org/ Maemo PC Connectivity] ===
 +
* Garage documentation integrated to the Fremantle Developer Guide / Development Environment
 +
* Basic documentation will be installed also together with PC Connectivity packages
 +
* All bug reports in Garage are either "transferred to the next release", "verified" or "closed" status for the final
 +
* Connectivity framework has a method to get information which Maemo platform version (at least on level Diablo or Fremantle) and Maemo device HW version (at least on level N8x0 or N900) connected Maemo device runs
 +
 +
=== [http://maemovmware.garage.maemo.org/ Maemo SDK Virtual Image] ===
 +
* Garage documentation integrated to the Fremantle Developer Guide / Development Environment
 +
* All bug reports in Garage are either "transferred to the next release", "verified" or "closed" status for the final
 +
* New Ubuntu Desktop image will be done AFTER Eclipse Integration Final release
 +
 +
=== Maemo Flasher-3.5 Tool ===
 +
* Documentation integrated to the Fremantle Developer Guide / Development Environment
 +
* All bug reports are either "transferred to the next release", "verified" or "closed" status for the final
 +
** flashing eMMC image to the memory card will be either fixed as feature for Flasher-3.5 Windows version
 +
** unpacking FIASCO image with '-u' option will be fixed for Windows version
 +
* All Flasher-3.5 versions will be updated to use the latest flasher code base
 +
* Flasher-3.5 supports also Mac OS X 10.x (Snow) Leopard with PPC/32-bit architecture in addition to the x86/32-bit architecture
 +
 +
=== Integration testing ===
 +
* General stability improvements verified
 +
** if network connection between Maemo device and host PC gets broken system recovers itself when connection is re-established
 +
** if download or installation from maemo.org resources gets interrupted system cleans up and allows user to retry
 +
** if update of our own Eclipse components gets interrupted (any reason) from our update site system cleans up and restores latest stanble environment
 +
** if erros happen in SDK operations like with building with autotools, package creation etc system recovers from those and gives "usable" error messages
 +
** usage of features "unplanned" way either works as expected or gives proper error message
 +
 +
----
 +
----
 +
 +
'''THESE FEATURES FOR RELEASED PRERELEASES ARE HERE ONLY FOR DOCUMENTATION PURPOSES'''
== New features in PreFinal release (2.0.0M6, wk37 2009) ==
== New features in PreFinal release (2.0.0M6, wk37 2009) ==
Line 45: Line 137:
Eclipse Integration 2nd Edition PreFinal [http://wiki.maemo.org/Eclipse_integration/ReleaseNotes_prefinal Release Notes] and [http://wiki.maemo.org/Eclipse_integration/KnownIssues_prefinal Known Issues]
Eclipse Integration 2nd Edition PreFinal [http://wiki.maemo.org/Eclipse_integration/ReleaseNotes_prefinal Release Notes] and [http://wiki.maemo.org/Eclipse_integration/KnownIssues_prefinal Known Issues]
-
'''Notice''' especially that this Prefinal release replaces old Eclipse Integration Edition 1 release meaning that support for Edition 1 will be discontinued and Edition 1 deliverables and documentation will not be available anymore.  
+
'''Notice''' especially that this Prefinal release replaces old Eclipse Integration Edition 1 release meaning that support for Edition 1 will be discontinued and Edition 1 deliverables and documentation will be removed before Final release.  
Eclipse Integration components now support the latest Debian based Linuxes, Windows XP SP3, Windows Vista SP2 and Mac OS X 10.5 Leopard all with x86/32bit architectures.  
Eclipse Integration components now support the latest Debian based Linuxes, Windows XP SP3, Windows Vista SP2 and Mac OS X 10.5 Leopard all with x86/32bit architectures.  
-
Support for other than above listed operating systems has not been tested but should be possible if chosen operating system supports Eclipse IDE, if similar functionality for Host PC Connectivity is available for that operating system (for example most Linuxes like RedHat should have that) and if operating system is able to run Maemo SDK Virtual Image (in practice supports either QEmu, VMWare or VirtualBox).
+
Support for other than above listed operating systems has not been tested but should be possible if chosen operating system supports Eclipse IDE, if similar functionality for Host PC Connectivity is available for that operating system (for example most Linuxes like Fedora have that) and if operating system is able to run Maemo SDK Virtual Image (in practice supports either QEmu, VMWare or VirtualBox).
=== Product infrastructure ===
=== Product infrastructure ===
Line 59: Line 151:
* Eclipse components
* Eclipse components
** released from ESBox and Pluthon Garage projects as full installation (including also Eclipse 3.4.2 IDE)
** released from ESBox and Pluthon Garage projects as full installation (including also Eclipse 3.4.2 IDE)
-
** released from Maemo Eclipse update P2 site as update to Beta 2
+
** installable from ESBox, Pluthon and Mica P2 update sites to the existing Eclipse 3.4.2 installation (including upgrade from previous Eclipse Integration Beta 2 release)
=== Product configuration ===
=== Product configuration ===
Line 76: Line 168:
** Have Scratcbox 1 installers just start with the list of tuples above
** Have Scratcbox 1 installers just start with the list of tuples above
* Improve localization support for C/C++ and Python application development
* Improve localization support for C/C++ and Python application development
-
 
-
=== [http://esbox.garage.maemo.org/ Maemo ESBox plugin for Eclipse] ===
 
* Using trace tool (ltrace) with SDK and Maemo device for a process can be done online with Eclipse IDE
* Using trace tool (ltrace) with SDK and Maemo device for a process can be done online with Eclipse IDE
** setting up trace environment and starting and stopping tracing is easy
** setting up trace environment and starting and stopping tracing is easy
Line 83: Line 173:
** viewing trace data online from SDK is possible
** viewing trace data online from SDK is possible
* Hover help integrated for online and local documentation
* Hover help integrated for online and local documentation
 +
 +
=== [http://esbox.garage.maemo.org/ Maemo ESBox plugin for Eclipse] ===
* Integration to Maemo Fremantle C/C++ and Python documentation (API docs and Reference Manual)
* Integration to Maemo Fremantle C/C++ and Python documentation (API docs and Reference Manual)
 +
* Hover help support for Maemo C SDK APIs
 +
* Improved Maemo SDK Virtual Image configuration
 +
* New Maemo SDK Virtual Image installer wizard
 +
* Support for detecting errors in autoconf/configure builds
=== [http://pluthon.garage.maemo.org/ Maemo Pluthon plugin for Eclipse] ===
=== [http://pluthon.garage.maemo.org/ Maemo Pluthon plugin for Eclipse] ===
* Hover help integrated for online and local documentation
* Hover help integrated for online and local documentation
-
* Integration to pyMaemo Fremantle documentation (API docs and tutorial)
 
=== [http://pc-connectivity.garage.maemo.org/ Maemo PC Connectivity] ===
=== [http://pc-connectivity.garage.maemo.org/ Maemo PC Connectivity] ===
Line 104: Line 199:
* Support to use rsync  
* Support to use rsync  
** to backup Maemo device to the host PC (as new backup method in addition to using  osso_backup program)
** to backup Maemo device to the host PC (as new backup method in addition to using  osso_backup program)
-
** to copy large files between host PC and Maemo device
+
** to syncronize files between host PC and Maemo device
* Support to use RDesktop
* Support to use RDesktop
** rdesktop client to enable desktop share access using Remote Desktop Protocol (RDP) to Windows PCs
** rdesktop client to enable desktop share access using Remote Desktop Protocol (RDP) to Windows PCs
 +
* Support for Samba shares
 +
** Samba to enable disk mounts between Mameo device and Windows host PCs
 +
* Support ZeroConf and DHCP
 +
** Avahi and DHCP server to enable automatic configuration of Maemo PC Connectivity between Maemo device and Host PC
* Support to localize PC Connectivity UI components  
* Support to localize PC Connectivity UI components  
** configuration applets in Maemo Device and configuration tools in host PC
** configuration applets in Maemo Device and configuration tools in host PC
Line 119: Line 218:
** provide installation of productivity enhancement tools for VMWare and VirtualBox virtualization technologies
** provide installation of productivity enhancement tools for VMWare and VirtualBox virtualization technologies
-
=== Maemo Flasher-3.5 Tool] ===
+
=== Maemo Flasher-3.5 Tool ===
* Mac OS X support enhanced to Power PC Macs (32-bit)
* Mac OS X support enhanced to Power PC Macs (32-bit)
Line 129: Line 228:
** if erros happen in SDK operations like with building with autotools, package creation etc system recovers from those and gives "usable" error messages
** if erros happen in SDK operations like with building with autotools, package creation etc system recovers from those and gives "usable" error messages
** usage of features "unplanned" way either works as expected or gives proper error message
** usage of features "unplanned" way either works as expected or gives proper error message
-
* First draft for Maemo Eclipse Test Guide available for Eclipse components
 
-
** explains how automatic build environment is linked to product development
 
-
** explains how Eclipse unit tests can be implemented and run with automatic build system
 
-
** explains how automatice unit test results are published
 
-
** explains how integration testing is linked to product development
 
-
** explains how integration testing is done and what tools are used
 
-
** explains how test case management and test result publishing are done
 
-
** explains what publically available test sets and related tools are used
 
-
** explains what Maemo specific testing is done
 
-
 
-
 
----
----
-
----
 
-
 
-
'''THESE FEATURES FOR RELEASED PRODUCTS ARE HERE ONLY FOR DOCUMENTATION PURPOSES'''
 
== New features in Beta 2 release (2.0.0M5, wk27 2009) ==
== New features in Beta 2 release (2.0.0M5, wk27 2009) ==
Line 337: Line 422:
----
----
-
== New features for Alpha 1 release (2.0.0M1, wk46 2008), released ==
+
== New features in Alpha 1 release (2.0.0M1, wk46 2008) ==
Both ESBox and Pluthon plugin architecture was restructured to use common Maemo Eclipse plugin framework called Mica (Maemo Integration Common Architecture)
Both ESBox and Pluthon plugin architecture was restructured to use common Maemo Eclipse plugin framework called Mica (Maemo Integration Common Architecture)
Line 366: Line 451:
* Full product build which allows user to get all requried Eclipse components by downloading and installing just one distribution package
* Full product build which allows user to get all requried Eclipse components by downloading and installing just one distribution package
* Some bug fixes
* Some bug fixes
 +
 +
[[Category:Development]]
 +
[[Category:Eclipse]]

Latest revision as of 04:08, 29 June 2010

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 releases are:

Detailed plans for each product can be found from their Garage project pages.

See also the Maemo Eclipse Tutorial

Contents

[edit] Maemo Eclipse Integration 2nd Edition project released several prereleases

  • 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
  • With Beta 1 release (week 21 middle of May) major upgrades for many generic Eclipse components were introduced, a lot of new functionality of all components were implemented, good support for Windows host PCs and initial support for Mac OS X host PCs were introduced for PC Connectivity, Mica Eclipse plugin framework was released as separate product, first integration effort to support Fremantle development environment was done, SDK Virtual Images were updated to Ubuntu Intrepid level.
  • With Beta 2 release (week 27 beginning of July) usable support for Fremantle development environment, good support for Mac OS X for Maemo PC Connectivity, Mica plugin framework refactored and cleaned up, Maemo Flasher-3.5 beta Tools released and integrated to Eclipse, localization support added to the ESbox, first Windows and Mac OS X configuration tools for PC Connectivity released, a lot of stability fixes for existing components and also some new functionality.
  • With Prefinal release (week 37 middle of September) much improved support for Fremantle SDK development environment and new N900 device, improved support for Windows and Mac OS X as host PC, Mica plugin framework ready for third party plugin development, more automatic configuration of host PC for PC Connectivity using ZeroConf (Avahi) and DHCP, Samba support to enable disk mounts between Maemo device and Windows host PCs, Eclipse installation wizard for automated Maemo SDK Virtual Image installation, a lot of stability fixes for existing components and functionality.

[edit] 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 <http://wiki.eclipse.org/Eclipse_Version_Numbering> 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<version>" indicates fully tested and stable official release, released according to the following schedule.
  • "<version>M or I or N" indicates that release is not fully tested official release but some prerelease.

The page <http://download.eclipse.org/eclipse/downloads/build_types.html> describes, somewhat roughly, the versioning of intermediate releases. Based on this, we will follow this convention in the qualifier segment:

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

[edit] Eclipse Integration Subprojects


[edit] New features in Final release (R2.0.0, w52 2009)

Eclipse Final release was done about one month AFTER final Fremantle 5.0 SDK and N900 releases.

Notice especially that Final release replaced old Eclipse Integration 1st Edition release and all 2nd Edition prereleases meaning that support for those releases was discontinued and deliverables and documentation were removed.

Eclipse Integration components now support the latest Debian based Linuxes, Windows XP with SP3, Mac OS X 10.5 Leopard and Mac OS X 10.6 Snow Leopard with x86/32bit architectures. Support for Windows 7 and Windows Vista with SP2 is only at beta level because their support is based on Cygwin 1.7 which has only beta version available.

Support for other than above listed operating systems has not been tested but should be possible if chosen operating system supports Eclipse IDE, if similar functionality for Host PC Connectivity is available for that operating system (for example most Linuxes like Fedora have that) and if operating system is able to run Maemo SDK Virtual Image (in practice supports either QEMU, VMWare or VirtualBox).

[edit] Product infrastructure

  • Support for Eclipse Integration 1st Edition discontinued for Diablo
  • Support for earlier Ubuntu Gutsy and Hardy based SDK Virtual Images discontinued
  • Documentation in maemo.org and Garage projects updated to 2nd Edition Final level
    • Edition 1 documentation removed
  • Maemo PC Connectivity components released in Frementle extras-devel repository
  • Maemo PC Connectivity components released in Diablo extras repository
  • Eclipse components
    • released from ESbox and PluThon Garage projects as full installation (including also Eclipse 3.4.2 IDE)
    • installable from ESbox, PluThon and Mica P2 update sites to the existing Eclipse 3.4.2 installation (including upgrade from previous Eclipse Integration PreFinal release)
  • Maemo Info Center service available from maemo.org for documentation
    • infrastructure is scalable and supports load balancing and two (or more) Info Center server instances
    • integrated to the Eclipse IDE help system (online documentation)
      • online documentation is usable also outside Eclipse IDE with standard browsers
      • online documentation supports searches
    • integrated to the Eclipse dynamic help system (offline documentation)
      • offline documentation can be downloaded/updated from Info Center servers to Eclipse IDE automatically
    • includes full Maemo Fremantle documentation

[edit] Product configuration

  • Diablo 4.1.2 SDK (latest maintenance), N800 and N810 devices used as base
  • Fremantle 5.0 SDK (Final) and N900 device used as base
  • Latest Cygwin 1.5.25-15 as base for Windows XP porting framework
  • Latest Cygwin 1.7 beta as base for Windows 7 and Windows Vista porting framework
  • Latest MacPorts 1.8.x as base for Mac OS X porting framework
  • Maemo Flasher-3.5 Tools for Linux, Windows XP/7/Vista (x86/32-bit) and Mac OS X 10.5/10.6 (x86 and PPC/32-bit)
  • Maemo SDK Virtual Images for Eclipse usage (Ubuntu Intrepid Server based image) and for standalone development with full Maemo Fremantle and Diablo development environments preinstalled (Ununtu Intrepid Desktop based image)

[edit] Maemo Eclipse products

  • Maemo ESbox for Eclipse
  • Maemo PluThon for Eclipse
  • Maemo Mica plugin framework
  • Garage documentation integrated to the Maemo Info Center
  • Separate Maemo Eclipse Tutorial documentation including
    • how to use tracing tool (ltrace) and analyze results
    • how to use memory leak tool (Valgrind) and analyze results
    • how to use profiling tool (OProfile) and analyze results
  • All bug reports in Garage are either "transferred to the next release", "verified" or "closed" status for the final
  • Minimal Qt support by integrating qmake project builder type and Qt documentation
  • Wizard to create new Maemo Eclipse project from existing Qt development project
  • Maemo SDK Virtual Image configuration improvements for ESbox
  • Externalize strings in Mica, ESbox and PluThon
  • Refactoring the ESbox/PluThon help into Mica framework

[edit] Maemo PC Connectivity

  • Garage documentation integrated to the Fremantle Developer Guide / Development Environment
  • Basic documentation will be installed also together with PC Connectivity packages
  • All bug reports in Garage are either "transferred to the next release", "verified" or "closed" status for the final
  • Connectivity framework has a method to get information which Maemo platform version (at least on level Diablo or Fremantle) and Maemo device HW version (at least on level N8x0 or N900) connected Maemo device runs

[edit] Maemo SDK Virtual Image

  • Garage documentation integrated to the Fremantle Developer Guide / Development Environment
  • All bug reports in Garage are either "transferred to the next release", "verified" or "closed" status for the final
  • New Ubuntu Desktop image will be done AFTER Eclipse Integration Final release

[edit] Maemo Flasher-3.5 Tool

  • Documentation integrated to the Fremantle Developer Guide / Development Environment
  • All bug reports are either "transferred to the next release", "verified" or "closed" status for the final
    • flashing eMMC image to the memory card will be either fixed as feature for Flasher-3.5 Windows version
    • unpacking FIASCO image with '-u' option will be fixed for Windows version
  • All Flasher-3.5 versions will be updated to use the latest flasher code base
  • Flasher-3.5 supports also Mac OS X 10.x (Snow) Leopard with PPC/32-bit architecture in addition to the x86/32-bit architecture

[edit] Integration testing

  • General stability improvements verified
    • if network connection between Maemo device and host PC gets broken system recovers itself when connection is re-established
    • if download or installation from maemo.org resources gets interrupted system cleans up and allows user to retry
    • if update of our own Eclipse components gets interrupted (any reason) from our update site system cleans up and restores latest stanble environment
    • if erros happen in SDK operations like with building with autotools, package creation etc system recovers from those and gives "usable" error messages
    • usage of features "unplanned" way either works as expected or gives proper error message


THESE FEATURES FOR RELEASED PRERELEASES ARE HERE ONLY FOR DOCUMENTATION PURPOSES

[edit] New features in PreFinal release (2.0.0M6, wk37 2009)

Eclipse Integration 2nd Edition PreFinal Release Notes and Known Issues

Notice especially that this Prefinal release replaces old Eclipse Integration Edition 1 release meaning that support for Edition 1 will be discontinued and Edition 1 deliverables and documentation will be removed before Final release.

Eclipse Integration components now support the latest Debian based Linuxes, Windows XP SP3, Windows Vista SP2 and Mac OS X 10.5 Leopard all with x86/32bit architectures.

Support for other than above listed operating systems has not been tested but should be possible if chosen operating system supports Eclipse IDE, if similar functionality for Host PC Connectivity is available for that operating system (for example most Linuxes like Fedora have that) and if operating system is able to run Maemo SDK Virtual Image (in practice supports either QEmu, VMWare or VirtualBox).

[edit] Product infrastructure

  • Support for Eclipse Integration Edition 1 discontinued for Diablo
  • Support for earlier Ubuntu Gutsy and Hardy based SDK Virtual Images discontinued
  • Documentation in maemo.org and Garage projects updated to Edition 2 level
  • Maemo PC Connectivity components released in Frementle extras-devel repository
  • Maemo PC Connectivity components released in Diablo extras-devel repository
  • Eclipse components
    • released from ESBox and Pluthon Garage projects as full installation (including also Eclipse 3.4.2 IDE)
    • installable from ESBox, Pluthon and Mica P2 update sites to the existing Eclipse 3.4.2 installation (including upgrade from previous Eclipse Integration Beta 2 release)

[edit] Product configuration

  • Diablo 4.1.2 SDK and platform image used as base
  • Fremantle 5.0 SDK Beta 2 and platform image used as base
  • Latest Cygwin 1.5.25-15 as base for Windows porting framework
  • Latest MacPorts 1.9.0 as base for Mac OS X porting framework
  • Maemo Flasher-3.5 Tool Betas for Linux, Windows XP/Vista (x86/32-bit) and Mac OS X (x86 and PPC/32-bit)

[edit] Maemo Mica plugin framework

  • pyDev component upgraded to the latest stable release
  • Package manager cleanup
    • Unify project package installer and machine package installer
    • Split out gathering of required packages to a separate step (and a separate page in the project package installer wizard)
    • Provide list of (package manager, package, repository) tuples to package installer engine
    • Have Scratcbox 1 installers just start with the list of tuples above
  • Improve localization support for C/C++ and Python application development
  • Using trace tool (ltrace) with SDK and Maemo device for a process can be done online with Eclipse IDE
    • setting up trace environment and starting and stopping tracing is easy
    • viewing trace date online from Tablet is possible through VNC
    • viewing trace data online from SDK is possible
  • Hover help integrated for online and local documentation

[edit] Maemo ESBox plugin for Eclipse

  • Integration to Maemo Fremantle C/C++ and Python documentation (API docs and Reference Manual)
  • Hover help support for Maemo C SDK APIs
  • Improved Maemo SDK Virtual Image configuration
  • New Maemo SDK Virtual Image installer wizard
  • Support for detecting errors in autoconf/configure builds

[edit] Maemo Pluthon plugin for Eclipse

  • Hover help integrated for online and local documentation

[edit] Maemo PC Connectivity

  • Support for restoring host PC specific environment
    • possibility to automatically restore previous environment triggered by connection establishment
    • when connection to host PC is restored also previously configured environment is restored
    • if host PC specific environment configuration is not available default environment is created e.g. disk mounts restored, sbrsh connections started, ...
  • Support for easily configurable connections and environment on host PC
    • automatically configure USB, BT and WLAN connections on host PC using DHCP server and ZeroConf (Avahi) with Maemo device
    • configuration tool or script available for host PC so that there is less manual configuration after installation
    • configuration scripts available for all supported operating systems for host PCs
    • configuration scripts work together with Maemo device services and configuration applets to setup and test connectivity
  • Support for IP Forwarding between Maemo device and host PC
    • Maemo device can use public network through host PC
    • host PC can use public network through Maemo device
  • Support to use rsync
    • to backup Maemo device to the host PC (as new backup method in addition to using osso_backup program)
    • to syncronize files between host PC and Maemo device
  • Support to use RDesktop
    • rdesktop client to enable desktop share access using Remote Desktop Protocol (RDP) to Windows PCs
  • Support for Samba shares
    • Samba to enable disk mounts between Mameo device and Windows host PCs
  • Support ZeroConf and DHCP
    • Avahi and DHCP server to enable automatic configuration of Maemo PC Connectivity between Maemo device and Host PC
  • Support to localize PC Connectivity UI components
    • configuration applets in Maemo Device and configuration tools in host PC

[edit] Maemo SDK Virtual Image

  • Release both Ubuntu Intrepid Server and Desktop based Maemo SDK Virtual Images
  • Update both Ubuntu Intrepid Desktop and Server installations in images to the latest Ubuntu Intrepid maintenance level
  • Maemo Ubuntu Desktop SDK Virtual Image
    • provide installation of Official VM Tools as productivity enhancement tool for VMWare virtualization technology in addition to Open VM Tools
    • preinstall both Diablo and Fremantle SDKs (and Nokia closed binaries together with SDKs)
  • Maemo Ubuntu Server SDK Virtual Image
    • provide installation of productivity enhancement tools for VMWare and VirtualBox virtualization technologies

[edit] Maemo Flasher-3.5 Tool

  • Mac OS X support enhanced to Power PC Macs (32-bit)

[edit] Integration testing

  • General stability improvements verified
    • if network connection between Maemo device and host PC gets broken system recovers itself when connection is re-established
    • if download or installation from maemo.org resources gets interrupted system cleans up and allows user to retry
    • if update of our own Eclipse components gets interrupted (any reason) from our update site system cleans up and restores latest stanble environment
    • if erros happen in SDK operations like with building with autotools, package creation etc system recovers from those and gives "usable" error messages
    • usage of features "unplanned" way either works as expected or gives proper error message

[edit] New features in Beta 2 release (2.0.0M5, wk27 2009)

Eclipse Integration 2nd Edition Beta 2 Release Notes and Known Issues

[edit] Product infrastructure

  • Front pages in Garage projects updated to Edition 2 level
  • Support for old Ubuntu Hardy and Gutsy Maemo SDK Virtual Images discontinued
  • Beta 2 Maemo PC Connectivity components have been released in Frementle extras-devel repository
  • Beta 2 Maemo PC Connectivity components have been released in Diablo extras-devel
  • Beta 2 Eclipse components
    • released from ESBox and Pluthon Garage projects as full installation (including also Eclipse 3.4.2 IDE)
    • released from Maemo Eclipse update P2 site as update to Beta 1

[edit] Product configuration

  • Diablo 4.1.2 SDK and platform image used as base
  • Latest Fremantle Beta SDK and platform image used as base
  • Latest Cygwin 1.5.25-15 as base for Windows porting framework
  • Latest MacPorts 1.7.1 as base for Mac OS X porting framework
  • Maemo Flasher-3.5 Tools for Linux, Windows XP/Vista and Mac OS X

[edit] Maemo Mica plugin framework

[edit] Maemo ESBox plugin for Eclipse

  • Improvements to the OProfile and Valgrind integration
  • Support for Maemo Flasher-3.5 Beta Tool for Linux, Windows and Mac OS X
  • Externalize Strings wizard improvements for C/C++
  • Externalize Strings wizard improvements for Python
  • Updates for ESbox help

[edit] Maemo Pluthon plugin for Eclipse

  • More code templates for PluThon (with GTK, multimedia, d-bus, hildon widgets, ...)
  • Support for Maemo Flasher-3.5 Beta Tool for Linux, Windows and Mac OS X
  • Improved method to generate Debian packages on device
  • Uninstallation of generated Python Debian packages is now supported
  • Externalize Strings wizard improvements for Python
  • Updates for Pluthon help
  • Updataed pyMaemo tutorial and manual for Fremantle (http://pymaemo.garage.maemo.org/documentation_fremantle.html)

[edit] Maemo PC Connectivity

  • Support for easily configurable connections and environment on host PC
    • Windows tool to configure USB networking connection added
    • Mac OS X tool to configure BT connection added
    • manual configuration editing configuration files directly is possible
  • Host PC connectivity installation is done using installation script or tool
    • for Linux, Windows, Mac OS X host PCs there is an installation package that can be used to install Maemo PC Connectivity to the host PC
  • PC Connectivity environment settings in Maemo device can be backed up with osso-backup application (for example before reflashing Maemo device)

[edit] Maemo SDK Virtual Image

  • Productivity enhancement tools (Open VM Tools for VMWare and GuestAdditions for VirtualBox) can be installed manually also for Beta 1 level Ubuntu Server based Maemo SDK virtual Image
  • Beta 1 level Ubuntu Desktop based Maemo SDK virtual Image can be upgraded to Beta 2 level. See instructions from here http://maemovmware.garage.maemo.org/2nd_edition/update_maemo_vm.html

[edit] Integration testing

  • General product stability issues verified after refactorization of Mica, ESBox and PluThon was done
  • General product stability issues verified after support for Fremantle SDK environment was added
  • General product stability issues verified after support for Fremantle PC Connectivity was added

[edit] New features in Beta 1 release (2.0.0M4, wk21 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.

[edit] Maemo Mica plugin framework

  • Update Eclipse IDE baseline components to Eclipse Ganymede SR2
  • Update pyDev, CDT, RSE, DSF and EMF components to the latest stable versions
  • Add Scratchbox 1 installer wizard and SDK installer wizard
  • Support for both Diablo and Fremantle SDK
  • Support SBRSH in sandboxless mode
  • Better SBRSH configuration UI
  • Flasher wizard for flashing Internet Tablet from Eclipse IDE
  • Support for P2 update site for Mica
  • Mica Garage site released for 2nd Edition

[edit] 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
  • Initial support for Mac OS X host PC (works and documented but not fully tested)
  • Full connectivity support for Internet Tablet with SSH, RSE and SBRSH from Linux, Windows and Mac OS X
  • Keep up with Scratchbox 2 changes
  • ESbox Garage site has separate Beta 1 documentation
  • Support for both Diablo and Fremantle SDK
  • Import Eclipse projects from Maemo SDK and Debian packages
  • C/C++ debug/optimized configuration support
  • Shared library debugging improvements
  • Python interpreter configuration improvements (support for Scratchbox and Tablets)
  • Support for P2 update site for ESbox
  • Installation wizard for Scratchbox, Diablo SDK and Fremantle SDK
  • SDK Virtual Image configuration improvements (like Eclipse installation wizard for Windows and Mac OS X for maemo SDK environments)

[edit] Maemo Pluthon plugin for Eclipse

  • Support for Linux and Win32 host PC official and documented
  • Initial support for Mac OS X host PC (works and documented but not fully tested)
  • Full connectivity support for Internet Tablet with SSH, RSE and SBRSH from Linux, Windows and Mac OS X
  • Pluthon Garage site has separate Beta 1 documentation
  • 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
  • Support for P2 update site for Pluthon
  • Installation wizard to setup Python development environment for host PC and Internet Tablet

[edit] Maemo PC Connectivity

  • Support for Linux, Win32 host PC official and documented
  • Initial support for Mac OS X host PC (works and documented but not fully tested)
  • Initial support for maemo porting framework with Cygwin
  • Full connectivity support with USB, BlueTooth and WLAN for Linux, Windows and Mac OS X
  • Full ssh, sftp, vnc and disk mount support for Linux, Windows and Mac OS X host PCs
  • Support for both Diablo and 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 to support 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 Host PC Connectivity components for Linux, Win32 and Mac OS X host PCs
  • Support for configuring Host PC Connectivity components for Linux, Win32 and Mac OS X host PCs
  • Improved documentation for installing and configuring Host PC Connectivity on Linux, Win32 and Mac OS X host PCs
  • Tablet configuration applet allows easy configuration of sbrsh, vnc, unfs3, etc.
  • Tablet configuration applet supports several configuration environments that store configuration information for many services and connection types
  • Status bar plugin can be used to easily switch between predefined environments

[edit] Maemo SDK Virtual Image

  • Ubuntu Intrepid Server based Maemo SDK Virtual Image for Linux, Windows and Mac OS X
    • Provide full support for VMWare and QEMU virtualization technologies
    • Provide do-it-yourself support for VirtualBox
    • Server image includes just basic Ubuntu Intrepid Server and Host PC Connectivity environment prefonfigured and Maemo Diablo and Fremantle Development Environments can be installed with Eclipse installation wizard automatically
  • Ubuntu Intrepid Desktop based Maemo SDK Virtual Image for Linux, Windows and Mac OS X
    • Provide out-of-the-box ready Ubuntu Intrepid Desktop based image
    • Desktop image includes fully configured Maemo Diablo Development Environment and Fremantle Development Environment can be installed with Eclipse installation wizard automatically
    • Desktop image includes installers for GuestAdditions (for VirtualBox) and OpenVMTools (for VMWare)
  • Installer/tool to configure Maemo SDK Virtual Images for VirtualBox usage
  • Separate Beta 1 documentation for SDK Virtual Images on Garage site

[edit] 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 :).


[edit] New features in Alpha 2 release (2.0.0M2, wk09 2009)

Eclipse Integration 2nd Edition Alpha 2 Release Notes

[edit] 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

[edit] 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 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

[edit] 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

[edit] 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

[edit] New features in Alpha 1 release (2.0.0M1, wk46 2008)

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

[edit] 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

[edit] 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