Chnages from 5.6.4 to 5.6.6
---------------------------

** Improvement
    * Update to latest framework version 5.6.6

Changes from 5.6.2 to 5.6.4
---------------------------

** Improvement
    * Update to latest framework version 5.6.4
    * Update to latest gogo.jline 1.0.6
    * Update to latest obr 2.0.10
    * Update to jline 3.3.0
    * Update to jansi 1.16

Changes from 5.6.1 to 5.6.2
---------------------------

** Improvement
    * Update to latest framework version 5.6.2
    * Update to latest gogo command 1.0.2
    * Update to latest gogo runtime 1.0.2
    * Replace shell with gogo.jline 1.0.2
    * Include jline 3.0.1

Changes from 5.6.0 to 5.6.1
---------------------------

** Improvement
    * Update to latest framework version 5.6.1
    * Update to latest obr 2.0.8

Changes from 5.4.0 to 5.6.0
---------------------------

** Improvement
    * Update to latest framework version 5.6.0

Changes from 5.2.0 to 5.4.0
---------------------------

** Improvement
    * Update to latest framework version 5.4.0
    * Update to latest obr 2.0.6
    * Update to latest gogo command 0.16.0

Changes from 5.0.1 to 5.2.0
---------------------------

** Improvement
    * Update to latest framework version 5.2.0

Changes from 5.0.0 to 5.0.1
---------------------------

** Improvement
    * Update to latest framework version 5.0.1

Changes form 4.6.1 to 5.0.0
---------------------------

** Improvement
    * Update to latest framework version 5.0.0
    * Update to latest obr 2.0.4
    * Update to latest gogo runtime 0.16.2
    * Update to latest gogo command 0.14.0

Changes from 4.6.0 to 4.6.1
---------------------------

** Improvement
    * Update to latest framework version 4.6.1

Changes from 4.4.1 to 4.6.0
---------------------------

** Improvement
    * Update to latest framework version 4.6.0

Changes from 4.4.0 to 4.4.1
---------------------------

** Improvement
    * Update to latest framework version 4.4.1
    * Update to latest obr version 2.0.2
    * Update to gogo commands 0.14.0 and runtime 0.12.1

Changes from 4.2.1 to 4.4.0
---------------------------

** Improvement
    * Update to latest framework version 4.4.0

Changes form 4.2.0 to 4.2.1
---------------------------

** Improvement
    * Update to latest framework version 4.2.1

Changes from 4.0.3 to 4.2.0
---------------------------

** Improvement
    * Update to latest framework version 4.2.0

Changes from 4.0.2 to 4.0.3
---------------------------

** Improvement
    * Update to latest framework version 4.0.3

Changes from 4.0.1 to 4.0.2
---------------------------

** Improvement
    * Update to latest framework version 4.0.2

Changes from 4.0.0 to 4.0.1
---------------------------

** Improvement
    * Update to latest framework version 4.0.1

Changes from 3.2.2 to 4.0.0
---------------------------

** Improvement
    * [FELIX-3094] - [Main] Launcher should attempt to restart framework if the system bundle was updated
    * [FELIX-3123] - [Main] Integrate OBR 1.6.6
    * [FELIX-3125] - Update to latest framework version 4.0.0

** Task
    * [FELIX-3051] - [Main] Integrate latest Gogo Command bundle to support inspecting generic capabilities/requirements


Changes from 3.2.1 to 3.2.2
---------------------------

** Improvement
    * Update to latest framework version 3.2.2

Changes from 3.2.0 to 3.2.1
---------------------------

** Improvement
    * Update to latest framework version 3.2.1


Changes from 3.0.9 to 3.2.0
---------------------------

** Improvement
    * Update to latest framework version 3.2.0

Changes from 3.0.8 to 3.0.9
---------------------------

** Bug
    * [FELIX-2796] - felix.auto.deploy.action throws NPE with only "update" action

** Improvement
    * Update to latest framework version 3.0.9

Changes from 3.0.7 to 3.0.8
---------------------------

** Improvement
    * Update to latest framework version 3.0.8
    * Update to gogo version 0.8.0

Changes from 3.0.6 to 3.0.7
---------------------------

** Improvement
    * Update to latest framework version 3.0.7

Changes from 3.0.5 to 3.0.6
---------------------------

** Improvement
    * Update to latest framework version 3.0.6

** New Feature
    * [FELIX-2678] - Startlevel for bundles in auto.deploy.dir

Changes from 3.0.4 to 3.0.5
---------------------------

** Improvement
    * Update to latest framework version 3.0.5

Changes from 3.0.3 to 3.0.4
---------------------------

** Improvement
    * Update to latest framework version 3.0.4

Changes from 3.0.2 to 3.0.3
---------------------------

** Improvement
    * Update to latest framework version 3.0.3
    * Update to gogo 0.6.1

Changes from 3.0.1 to 3.0.2
---------------------------

** Improvement
    * Update to latest framework version 3.0.2

Changes from 3.0.0 to 3.0.1
---------------------------

** Improvement
    * Update to latest framework version 3.0.1

Changes from 2.0.5 to 3.0.0
---------------------------

** Improvement
    * Update to latest framework version 3.0.0
    * [FELIX-1797] - Customizable Framework startup message
    * [FELIX-2042] - Use Gogo as the default shell for the framework distribution
    * [FELIX-2336] - Variable substitution in configuration files should ignore mismatched delimiters

Changes from 2.0.4 to 2.0.5
---------------------------

** Improvement
    * Update to latest framework version 2.0.5

Changes from 2.0.3 to 2.0.4
---------------------------

** Improvement
    * Update to latest framework version 2.0.4

Changes from 2.0.2 to 2.0.3
---------------------------

** Improvement
    * Update to latest framework version 2.0.3

Changes from 2.0.1 to 2.0.2
---------------------------

** Improvement
    * Update to latest framework version 2.0.2

Changes from 2.0.0 to 2.0.1
---------------------------

** Improvement
    * Update to latest framework version 2.0.1

Changes from 1.8.1 to 2.0.0
---------------------------

** Improvement
    * Update to latest framework version 2.0.0

Changes form 1.6.1 to 1.8.0
---------------------------

** Improvement
    * Update to latest framework version 1.8.0

Changes from 1.6.0 to 1.6.1
---------------------------

** Improvement 
    * Update to latest framework version 1.6.1

Changes from 1.4.1 to 1.6.0
---------------------------

** Improvement
    * Update to latest framework version 1.6.0

Changes from 1.4.0 to 1.4.1
---------------------------

* [2008-12-20] Update to latest framework version 1.4.0
* [2008-11-18] Modified the pom file to export the OSGi packages; this can be 
  helpful for tools trying to determine what the JAR file provides.
* [2008-11-07] Align log level property name in pom.xml and config.properties

Changes from 1.2.2 to 1.4.0
---------------------------

* [2008-10-31] Fixed a possible NPE when no configuration file is found.
* [2008-10-23] Change the name of the SystemBundle interface to be Framework. 
  (FELIX-753)
* [2008-10-22] Hide wire messages in felix releases. (FELIX-707)
* [2008-10-16] Modified framework to have default values for the system packages 
  property. Now it is really possible to start Felix with no configuration 
  properties. (FELIX-753)
* [2008-10-10] Implements support for flushing the cache on framework 
  initialization. (FELIX-755)
* [2008-10-09] Modified the bundle cache to no longer have profiles. (FELIX-754)
* [2008-10-08] Modified the Felix API to aligned with the proposed standard OSGi 
  framework API. (FELIX-753)
* [2008-09-23] Added symbolic names to framework and main.
* [2008-09-12] Added a configuration property to determine whether installing a 
  fragment that uses unimplemented features throws an exception or logs a 
  warning. (FELIX-725)

Changes form 1.2.1 to 1.2.2
---------------------------

* [2008-10-14] Update to latest framework version 1.2.2.

Changes from 1.2.0 to 1.2.1
---------------------------

* [2008-09-07] Hide WIRE log messages. (FELIX-707)
* [2008-09-07] Use the new Felix releases obr repository URL. 
  (FELIX-708)

Changes from 1.0.3 to 1.2.0
---------------------------

* [2008-08-03] Change to the R4.1 version of the spec. (FELIX-514)
* [2008-05-08] Fixed a NPE. (FELIX-525)

Changes from 1.0.3 to 1.0.4
---------------------------

* [2008-04-22] Update to framework version 1.0.4.

Changes from 1.0.1 to 1.0.3
---------------------------

* [2008-01-27] Added launching and embedding docs to main project.
* [2008-01-22] Update to maven-bundle-plugin version 1.2.0.
* [2008-01-07] Modifed default launcher in Main to separate out 
  auto-property processing so that it is easier to reuse the code in 
  custom launchers. (FELIX-448)
* [2007-12-14] Removed auto-property processing out of the framework and 
  into the default launcher. (FELIX-393)
* [2007-10-16] Use variable substitution via BND to define the properties 
  in default.properties from the properties in config.properties.
  (FELIX-380)
* [2007-10-03] Added support to the Main launcher to use a default 
  embedded resource for setting the framework configuration properties 
  if the actual config.properties file cannot be loaded. (FELIX-380)
* [2007-09-20] Remove some packages for jre1.3 profile  and add/remove a 
  few for 1.4, 1.5, and 1.6 (javax.crypto.*). (FELIX-371)


Changes from 1.0.0 to 1.0.1
---------------------------

* [2007-09-16] Update to framework version 1.0.1.


Changes from 0.8.0-incubator to 1.0.0
-------------------------------------

* [2007-01-31] Changed how the system packages property is calculated to
  make it more robust; previously it was leaving a dangling comma if the
  execution platform was not known.
* [2007-02-05] Added system package support for Java 6. (FELIX-201)
* [2007-02-13] Removed support for trusted certificate authorities; this
  will be added later as an extension.
* [2007-03-16] Felix configuration properties can now be set as system
  properties when using the standard launcher. (FELIX-250)
* [2007-03-28] No longer including config.properties in the JAR file.
* [2007-04-13] The javax.net and javax.net.ssl packages were missing
  from the system packages properties.
* [2007-04-13] Fixed a bug where the launcher was not correctly calculating
  the installation directory correctly.
* [2007-05-07] Was accidentally including OBR service interface package
  in main JAR.
* [2007-05-22] Now includes the Service Tracker package in main JAR.
* [2007-07-04] Modified to use the new Felix embedding API.
