2013-12-11

Knopflerfish OSGi Desktop - Now with Resolver support on the Repository tab

The Repository tab (circled in the picture below) in the Knopflerfish OSGi Desktop, now has support for the Resolver Service 1.0 specification.

What this means is that if there is a Resolver service available, clicking either the button to Install from repository or to Install and start from repository (circled in the picture below) will show a pop-up question asking if you want to resolve the selected resource and install its required dependencies.


Until the next full release this feature is available if you build from https://www.knopflerfish.org/svn/knopflerfish.org/trunk/.

In order to try this you also need to install an implementation of the Resolver Service. There is one available at org.apache.felix.resolver-1.0.0.jar.
To make things easier you can uncomment the following line in the init.xargs file in the osgi directory:

# Uncomment the following line to add Resolver support
#-istart http://repo2.maven.org/maven2/org/apache/felix/org.apache.felix.resolver/1.0.0/org.apache.felix.resolver-1.0.0.jar

2013-11-16

Repository Commands 1.1.0 - Now with Resolver support

The repository console commands bundle now has support for the Resolver Service 1.0 specification.

What this means is that the install command now has an optional [-r] flag that will try to find and install (and start if that option is given) the recursive dependencies of the bundle you are trying to install.

Until the next full release this feature is available if you build from https://www.knopflerfish.org/svn/knopflerfish.org/trunk/.

In order to try this you also need to install an implementation of the Resolver Service. There is one available at org.apache.felix.resolver-1.0.0.jar.
To make things easier you can uncomment the following line in the init.xargs file in the osgi directory:

# Uncomment the following line to add Resolver support
#-istart http://repo2.maven.org/maven2/org/apache/felix/org.apache.felix.resolver/1.0.0/org.apache.felix.resolver-1.0.0.jar


Example of how to install and start the Connection-Factories bundle (org.knopflerfish.bundle.connectors).

Knopflerfish OSGi console.
Type 'help' for help or 'alias' for a list of common commands

> /repository install -help
Usage: install [-help] [-s] [-r] <symbolicname> [<versionRange>]
  Install bundle resource.
  Installs first bundle resource that matches <symbolicname>
  and optional <versionRange>.
  -s             Persistently start bundles according
                 to activation policy
  -r             Recursively install additional bundles
                 needed to resolve
  <symbolicname> Bundle symbolic name to match
  <versionRange> Optional bundle version range
> /repository install -s -r org.knopflerfish.bundle.connectors
Installed dependency: io (#30)
Installed: Connection-Factories (#31)
Started: io (#30)
Started: Connection-Factories (#31)
> 

2013-10-21

Knopflerfish 5 is released - OSGi R5 for embedded and desktop use

We are happy to announce the availability if Knopflerfish 5, the new major release of Knopflerfish, designed to be implemented according to the OSGi R5 specifications. KF5 fully support the OSGi R5 Core as well as the parts relevant for embedded and desktop use of OSGi R5 Compendium. KF5 also includes a new, compact version of the core Knopflerfish OSGi framework, occupying no more than 316K of disk-space. This compact version targets small embedded devices, typically in the m2m domain.

The new key features in Knopflerfish are:
  • Knopflerfish OSGi framework and OSGi Compendium Services are all updated to OSGi R5
  • A compact version of framework, occupying no more than 316K of disk-space
  • KF5 fully uses the OSGi specified repository format. Former KF formats (OBR) have been deprecated. New Repository Manager bundle, new console commands for interacting with the repository manager, as well as new Repository Desktop manager.
  • All Knopflerfish bundles, e.g. desktop, console commands etc have been update to use and reflect the new R5 APIs.
  • Simplified process for building Knopflerfish with Java 7
The Release Notes includes the complete list of features and fixes.

The KF5 overview page presents an overview of OSGi R5 and what features are supported in Knopflerfish 5.

/Christer




2013-09-17

Knopflerfish 5 beta-1 released, KF is getting ready for OSGi R5

We are happy to announce the release of Knopflerfish 5.0.0.beta-1. This is the first beta release of KF5, the next major release of Knopflerfish, designed to be compliant with the OSGi R5 specifications. The KF5 overview page presents an overview of OSGi R5 and the current status of KF5.

New features in OSGi R5 include the Resource API, OSGi namespace definition, repository service, resolver service and sub-systems to name a few. For KF users the most important changes in KF5 are:
  • Knopflerfish OSGi framework updated to R5
  • Repository services added. This is still work i progress
  • Configuration Admin has a new concept of targeted PIDs as well as API changes. The KF OSGi CM bundle has been updated accordingly
  • Other Knopflerfish bundles, e.g. desktop, console commands etc have been update to use and reflect the new R5 APIs.
The Release Notes includes the complete list of features and fixes.

Please report any errors / problems / missing bundles / incorrect documentation etc so we get it right for the official release of KF 5.0

Please also feel free to report how wonderful, fantastic, brilliant or magnificent you may find KF5

/Christer

2013-07-12

Knopflerfish moves to new major version - Knopflerfish 4 is released

We are happy to announce the availability of Knopflerfish 4, the next major release of Knopflerfish. KF4 is designed to be compliant with the OSGi R4 v4.3 specifications.

The new KF4 release support all core features, as well as all the the OSGi Services relevant for the embedded and desktop markets. The KF4 overview page presents a detailed overview of KF4 and OSGi R4 v4.3. A short summary is presented below:
  • Generics - core API now uses generics
  • Capabilities - generic requirements and capabilities
  • Bundle Wiring API - provide information how requirements and provided capabilities have been resolved by the framework. Replaces PackageAdmin
  • Adapt pattern - new adapt method on the Bundle class
  • Framework hooks - mechanism to plug into the framework for close interaction, Resolver Hooks, Bundle Hooks, Service Hooks, Weaving Hooks.
  • Declarative Services updates.
  • Knopflerfish bundles, e.g. desktop, console commands etc, are all update to use and reflect the new 4.3 APIs.
In addition to the upgrade to OSGi R4 v4.3 KF4 includes several new Knopflerfish features and fixes:
  • The class weaving using ASM has been been moved into a separate classpatcher bundle that implements a Weaving Hook.
  • General change to to all timer / timer functions to System.nanoTime() instead of System.currentTimeMillis() to avoid timer problems when correcting system clock.
  • The Android support has been extended with functions for building an Android .apk containing Knopflerfish.
  • The KF Directory Deployer bundle has been given an overhaul and a new feature for deployment of XML-files with OSGi CM configurations has been added.
  • Several new features in the CM-Desktop plug-in, in particular functions for handling the CM Meta data XML document used by the Directory Deployer.
  • The Desktop bundle fully support the new Wiring-API as well as several minor usability improvement.
  • The frameworkcommands bundle has been extended to support the new Wiring API and has several new commands, e.g. "wiring" and "capability".
  • Maven source and javadoc attachments for all Knopflerfish bundle artifacts are now generated.
The Knopflerfish 4.0 Release Notes includes the complete list of features and fixes.
 

2013-07-11

Knopflerfish 3.6 released, KF3 moves to maintenance branch. Knopflerfish 4.0 release is imminent

Knopflerfish 3.6 is the next minor KF3 release and includes several fixes and improvement in the core OSGi framework, the OSGi compendium services, and the Knopflerfish services.

The 3.6 release also marks the end of KF3 as the main development version in the KF trunk. With the 3.6 release the Knopflerfish SVN trunk is switched to KF4 / OSGi R4 v4.3, preparing for the imminent release of Knopflerfish 4.0.

The new KF3 maintenance branch is available in SVN at:
https://www.knopflerfish.org/svn/knopflerfish.org/branches/kf_3_support/

The most important changes are:
  • Stability issues corrected in the Knopflerfish OSGi framework
  • Several stability issues corrected in Declarative Services (SCR), e.g. bind/unbind issues, filter properties
  • Switched to use System.nanoTime() in the framework and all bundles to avoid timer problems when correcting system clocks.
  • Corrected resource leaks in HTTP server and corrected Data header formats
  • Corrected issue in Preference service when running with security

The Release Notes includes the complete list of features and fixes:
http://www.knopflerfish.org/releases/3.6.0/release_notes.html

/Christer

2013-06-14

Knopflerfish 4 beta-2 released

We are happy to announce the second beta release of Knopflerfish 4, the next major release of Knopflerfish, designed to be compliant with the OSGi R4 v4.3 specifications. With the KF4 release Knopflerfish moves to OSGi R4 v4.3 for both Core and Compendium.

Compared to the first beta-1 release of KF4 / OSGi R4 v4.3, the second beta release includes several new features and fixes:
  • With the completion of Declarative Services KF4 beta-2 implement OSGi R4 v4.3 fully.
  • Android support is restored and functions for building an Android .apk containing Knopflerfish has been added.
  • The class weaving using ASM has been been moved into a separate classpatcher bundle that implements a Weaving Hook.
  • The KF Directory Deployer bundle has been given an overhaul and a new feature for deployment of XML-files with OSGi CM configurations has been added.
  • Several new features in the CM-Desktop plug-in, in particular functions for handling the CM Meta data XML document used by the Directory Deployer.
  • Desktop bundle includes several minor improvements
The Release Notes includes the complete list of features and fixes.

KF4 is available for download at:
http://www.knopflerfish.org/download.html

The KF4 overview page presents an overview of OSGi R4 v4.3 and the current status of KF4.