diff --git a/ipojo/manipulator/annotations/changelog.txt b/ipojo/manipulator/annotations/changelog.txt
index 7f8985a..65c6754 100644
--- a/ipojo/manipulator/annotations/changelog.txt
+++ b/ipojo/manipulator/annotations/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/manipulator/bnd-ipojo-plugin/changelog.txt b/ipojo/manipulator/bnd-ipojo-plugin/changelog.txt
index 2f42bb9..d6a5a75 100644
--- a/ipojo/manipulator/bnd-ipojo-plugin/changelog.txt
+++ b/ipojo/manipulator/bnd-ipojo-plugin/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/manipulator/changelog.txt b/ipojo/manipulator/changelog.txt
index 502b02b..abbde64 100644
--- a/ipojo/manipulator/changelog.txt
+++ b/ipojo/manipulator/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/manipulator/ipojo-ant-task/changelog.txt b/ipojo/manipulator/ipojo-ant-task/changelog.txt
index 17c5281..1a7fb58 100644
--- a/ipojo/manipulator/ipojo-ant-task/changelog.txt
+++ b/ipojo/manipulator/ipojo-ant-task/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/manipulator/manipulator/changelog.txt b/ipojo/manipulator/manipulator/changelog.txt
index 06e101e..2893950 100644
--- a/ipojo/manipulator/manipulator/changelog.txt
+++ b/ipojo/manipulator/manipulator/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/manipulator/maven-ipojo-plugin/changelog.txt b/ipojo/manipulator/maven-ipojo-plugin/changelog.txt
index b0993e8..4406d82 100644
--- a/ipojo/manipulator/maven-ipojo-plugin/changelog.txt
+++ b/ipojo/manipulator/maven-ipojo-plugin/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/manipulator/online-manipulator/changelog.txt b/ipojo/manipulator/online-manipulator/changelog.txt
index 735c7ef..182b532 100644
--- a/ipojo/manipulator/online-manipulator/changelog.txt
+++ b/ipojo/manipulator/online-manipulator/changelog.txt
@@ -1,3 +1,29 @@
+Changes from the 1.10.1 to 1.11.0
+---------------------------------
+
+** Bug
+    * [FELIX-4021] - maven-ipojo-plugin fails on WAR packaging
+    * [FELIX-4169] - bnd ipojo plugin adds components description to MANIFEST when they are already therein
+    * [FELIX-4219] - Variables named not stored in bytecode for constructors during manipulation
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+
+** Improvement
+    * [FELIX-4112] - Add meta annotations for handler description
+    * [FELIX-4269] - Introduce an enumeration to configure binding policy from the annotation
+
+** Task
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4155] - Update bnd-ipojo-plugin for bndlib 2.x
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4253] - Add methods from inner classes in the metadata collected during the manipulation
+    * [FELIX-4254] - Specify the method id of methods from inner class
+    * [FELIX-4255] - Extend the inner class manipulation to allow method interception
+    * [FELIX-4256] - Avoid manipulation native and static methods from inner classes
+
 Changes from the 1.10.0 to 1.10.1
 ---------------------------------
 
diff --git a/ipojo/runtime/api/changelog.txt b/ipojo/runtime/api/changelog.txt
index d6da9b6..f49163f 100644
--- a/ipojo/runtime/api/changelog.txt
+++ b/ipojo/runtime/api/changelog.txt
@@ -1,3 +1,64 @@
+Changes from 1.10.1 to 1.11.0
+-----------------------------
+
+** Bug
+    * [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
+    * [FELIX-4132] - @Modified not working on Equinox
+    * [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
+    * [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
+    * [FELIX-4164] - Instance / Component matching regression
+    * [FELIX-4172] - Updated method called twice at the bundle start
+    * [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
+    * [FELIX-4199] - The filter based service tracking interceptor should always be created
+    * [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
+    * [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
+    * [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
+    * [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
+    * [FELIX-4236] - Unvalued properties should be part of the instance's architecture
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+    * [FELIX-4248] - ServiceUsage ThreadLocal removal
+    * [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
+    * [FELIX-4251] - The @Bind annotation should use Class instead of String
+    * [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
+    * [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
+
+** Improvement
+    * [FELIX-4143] - Improve @Configuration management performances
+    * [FELIX-4216] - Allow @Property without name in constructors
+    * [FELIX-4228] - Improve dependency identification in log messages and exceptions
+    * [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
+    * [FELIX-4252] - Make Extender's ThreadPool size configurable
+    * [FELIX-4262] - QueueServices should be observable
+    * [FELIX-4263] - iPOJO Core should use ranged imports
+    * [FELIX-4264] - JobInfo should provide a way to identify the kind of task
+
+** New Feature
+    * [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
+    * [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
+    * [FELIX-4215] - Extend manipulation metadata with argument names
+    * [FELIX-4231] - Provide service binding interceptors
+    * [FELIX-4265] - Provides a recorder for startup events
+    * [FELIX-4267] - Define Apache Karaf features for iPOJO
+
+** Task
+    * [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
+    * [FELIX-4133] - Add distribution creation in the iPOJO runtime build
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4136] - Document service dependency interceptors
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
+    * [FELIX-4245] - Deadlock in Dependency
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
+    * [FELIX-4240] - Support the 'exception' attribute in service dependencies
+    * [FELIX-4242] - Support the 'timeout' attribute in service dependencies
+    * [FELIX-4243] - Define the dependency configuration matrix and improve error detection
+    * [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
+    * [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
+
 Changes from 1.10.0 to 1.10.1
 -----------------------------
 
diff --git a/ipojo/runtime/changelog.txt b/ipojo/runtime/changelog.txt
index 02d6836..f8046d7 100644
--- a/ipojo/runtime/changelog.txt
+++ b/ipojo/runtime/changelog.txt
@@ -1,3 +1,64 @@
+Changes from 1.10.1 to 1.11.0
+-----------------------------
+
+** Bug
+    * [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
+    * [FELIX-4132] - @Modified not working on Equinox
+    * [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
+    * [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
+    * [FELIX-4164] - Instance / Component matching regression
+    * [FELIX-4172] - Updated method called twice at the bundle start
+    * [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
+    * [FELIX-4199] - The filter based service tracking interceptor should always be created
+    * [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
+    * [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
+    * [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
+    * [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
+    * [FELIX-4236] - Unvalued properties should be part of the instance's architecture
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+    * [FELIX-4248] - ServiceUsage ThreadLocal removal
+    * [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
+    * [FELIX-4251] - The @Bind annotation should use Class instead of String
+    * [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
+    * [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
+
+** Improvement
+    * [FELIX-4143] - Improve @Configuration management performances
+    * [FELIX-4216] - Allow @Property without name in constructors
+    * [FELIX-4228] - Improve dependency identification in log messages and exceptions
+    * [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
+    * [FELIX-4252] - Make Extender's ThreadPool size configurable
+    * [FELIX-4262] - QueueServices should be observable
+    * [FELIX-4263] - iPOJO Core should use ranged imports
+    * [FELIX-4264] - JobInfo should provide a way to identify the kind of task
+
+** New Feature
+    * [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
+    * [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
+    * [FELIX-4215] - Extend manipulation metadata with argument names
+    * [FELIX-4231] - Provide service binding interceptors
+    * [FELIX-4265] - Provides a recorder for startup events
+    * [FELIX-4267] - Define Apache Karaf features for iPOJO
+
+** Task
+    * [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
+    * [FELIX-4133] - Add distribution creation in the iPOJO runtime build
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4136] - Document service dependency interceptors
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
+    * [FELIX-4245] - Deadlock in Dependency
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
+    * [FELIX-4240] - Support the 'exception' attribute in service dependencies
+    * [FELIX-4242] - Support the 'timeout' attribute in service dependencies
+    * [FELIX-4243] - Define the dependency configuration matrix and improve error detection
+    * [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
+    * [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
+
 Changes from 1.10.0 to 1.10.1
 -----------------------------
 
diff --git a/ipojo/runtime/composite/changelog.txt b/ipojo/runtime/composite/changelog.txt
index f768fd7..db21ba6 100644
--- a/ipojo/runtime/composite/changelog.txt
+++ b/ipojo/runtime/composite/changelog.txt
@@ -1,3 +1,64 @@
+Changes from 1.10.1 to 1.11.0
+-----------------------------
+
+** Bug
+    * [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
+    * [FELIX-4132] - @Modified not working on Equinox
+    * [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
+    * [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
+    * [FELIX-4164] - Instance / Component matching regression
+    * [FELIX-4172] - Updated method called twice at the bundle start
+    * [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
+    * [FELIX-4199] - The filter based service tracking interceptor should always be created
+    * [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
+    * [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
+    * [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
+    * [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
+    * [FELIX-4236] - Unvalued properties should be part of the instance's architecture
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+    * [FELIX-4248] - ServiceUsage ThreadLocal removal
+    * [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
+    * [FELIX-4251] - The @Bind annotation should use Class instead of String
+    * [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
+    * [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
+
+** Improvement
+    * [FELIX-4143] - Improve @Configuration management performances
+    * [FELIX-4216] - Allow @Property without name in constructors
+    * [FELIX-4228] - Improve dependency identification in log messages and exceptions
+    * [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
+    * [FELIX-4252] - Make Extender's ThreadPool size configurable
+    * [FELIX-4262] - QueueServices should be observable
+    * [FELIX-4263] - iPOJO Core should use ranged imports
+    * [FELIX-4264] - JobInfo should provide a way to identify the kind of task
+
+** New Feature
+    * [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
+    * [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
+    * [FELIX-4215] - Extend manipulation metadata with argument names
+    * [FELIX-4231] - Provide service binding interceptors
+    * [FELIX-4265] - Provides a recorder for startup events
+    * [FELIX-4267] - Define Apache Karaf features for iPOJO
+
+** Task
+    * [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
+    * [FELIX-4133] - Add distribution creation in the iPOJO runtime build
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4136] - Document service dependency interceptors
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
+    * [FELIX-4245] - Deadlock in Dependency
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
+    * [FELIX-4240] - Support the 'exception' attribute in service dependencies
+    * [FELIX-4242] - Support the 'timeout' attribute in service dependencies
+    * [FELIX-4243] - Define the dependency configuration matrix and improve error detection
+    * [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
+    * [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
+
 Changes from 1.10.0 to 1.10.1
 -----------------------------
 
diff --git a/ipojo/runtime/core/changelog.txt b/ipojo/runtime/core/changelog.txt
index 3676fbd..1167704 100644
--- a/ipojo/runtime/core/changelog.txt
+++ b/ipojo/runtime/core/changelog.txt
@@ -1,3 +1,64 @@
+Changes from 1.10.1 to 1.11.0
+-----------------------------
+
+** Bug
+    * [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
+    * [FELIX-4132] - @Modified not working on Equinox
+    * [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
+    * [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
+    * [FELIX-4164] - Instance / Component matching regression
+    * [FELIX-4172] - Updated method called twice at the bundle start
+    * [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
+    * [FELIX-4199] - The filter based service tracking interceptor should always be created
+    * [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
+    * [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
+    * [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
+    * [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
+    * [FELIX-4236] - Unvalued properties should be part of the instance's architecture
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+    * [FELIX-4248] - ServiceUsage ThreadLocal removal
+    * [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
+    * [FELIX-4251] - The @Bind annotation should use Class instead of String
+    * [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
+    * [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
+
+** Improvement
+    * [FELIX-4143] - Improve @Configuration management performances
+    * [FELIX-4216] - Allow @Property without name in constructors
+    * [FELIX-4228] - Improve dependency identification in log messages and exceptions
+    * [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
+    * [FELIX-4252] - Make Extender's ThreadPool size configurable
+    * [FELIX-4262] - QueueServices should be observable
+    * [FELIX-4263] - iPOJO Core should use ranged imports
+    * [FELIX-4264] - JobInfo should provide a way to identify the kind of task
+
+** New Feature
+    * [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
+    * [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
+    * [FELIX-4215] - Extend manipulation metadata with argument names
+    * [FELIX-4231] - Provide service binding interceptors
+    * [FELIX-4265] - Provides a recorder for startup events
+    * [FELIX-4267] - Define Apache Karaf features for iPOJO
+
+** Task
+    * [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
+    * [FELIX-4133] - Add distribution creation in the iPOJO runtime build
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4136] - Document service dependency interceptors
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
+    * [FELIX-4245] - Deadlock in Dependency
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
+    * [FELIX-4240] - Support the 'exception' attribute in service dependencies
+    * [FELIX-4242] - Support the 'timeout' attribute in service dependencies
+    * [FELIX-4243] - Define the dependency configuration matrix and improve error detection
+    * [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
+    * [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
+
 Changes from 1.10.0 to 1.10.1
 -----------------------------
 
diff --git a/ipojo/runtime/ipojo-gogo-commands/changelog.txt b/ipojo/runtime/ipojo-gogo-commands/changelog.txt
index 259b04a..d621a61 100644
--- a/ipojo/runtime/ipojo-gogo-commands/changelog.txt
+++ b/ipojo/runtime/ipojo-gogo-commands/changelog.txt
@@ -1,3 +1,64 @@
+Changes from 1.10.1 to 1.11.0
+-----------------------------
+
+** Bug
+    * [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
+    * [FELIX-4132] - @Modified not working on Equinox
+    * [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
+    * [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
+    * [FELIX-4164] - Instance / Component matching regression
+    * [FELIX-4172] - Updated method called twice at the bundle start
+    * [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
+    * [FELIX-4199] - The filter based service tracking interceptor should always be created
+    * [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
+    * [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
+    * [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
+    * [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
+    * [FELIX-4236] - Unvalued properties should be part of the instance's architecture
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+    * [FELIX-4248] - ServiceUsage ThreadLocal removal
+    * [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
+    * [FELIX-4251] - The @Bind annotation should use Class instead of String
+    * [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
+    * [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
+
+** Improvement
+    * [FELIX-4143] - Improve @Configuration management performances
+    * [FELIX-4216] - Allow @Property without name in constructors
+    * [FELIX-4228] - Improve dependency identification in log messages and exceptions
+    * [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
+    * [FELIX-4252] - Make Extender's ThreadPool size configurable
+    * [FELIX-4262] - QueueServices should be observable
+    * [FELIX-4263] - iPOJO Core should use ranged imports
+    * [FELIX-4264] - JobInfo should provide a way to identify the kind of task
+
+** New Feature
+    * [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
+    * [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
+    * [FELIX-4215] - Extend manipulation metadata with argument names
+    * [FELIX-4231] - Provide service binding interceptors
+    * [FELIX-4265] - Provides a recorder for startup events
+    * [FELIX-4267] - Define Apache Karaf features for iPOJO
+
+** Task
+    * [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
+    * [FELIX-4133] - Add distribution creation in the iPOJO runtime build
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4136] - Document service dependency interceptors
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
+    * [FELIX-4245] - Deadlock in Dependency
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
+    * [FELIX-4240] - Support the 'exception' attribute in service dependencies
+    * [FELIX-4242] - Support the 'timeout' attribute in service dependencies
+    * [FELIX-4243] - Define the dependency configuration matrix and improve error detection
+    * [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
+    * [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
+
 Changes from 1.1.0 to 1.10.1
 -----------------------------
 
diff --git a/ipojo/runtime/karaf-feature/changelog.txt b/ipojo/runtime/karaf-feature/changelog.txt
new file mode 100644
index 0000000..1167704
--- /dev/null
+++ b/ipojo/runtime/karaf-feature/changelog.txt
@@ -0,0 +1,341 @@
+Changes from 1.10.1 to 1.11.0
+-----------------------------
+
+** Bug
+    * [FELIX-4115] - NPE in DependencyModel.getService() when @Bind method throws an exception
+    * [FELIX-4132] - @Modified not working on Equinox
+    * [FELIX-4138] - TypeDeclaration calls factory.dispose() even if it already has been disposed (externally)
+    * [FELIX-4139] - package conflict with ipojo-annotations and ipojo-runtime
+    * [FELIX-4164] - Instance / Component matching regression
+    * [FELIX-4172] - Updated method called twice at the bundle start
+    * [FELIX-4183] - Wrong Javadoc of TrackerCustomizer addingService method
+    * [FELIX-4199] - The filter based service tracking interceptor should always be created
+    * [FELIX-4200] - Only the last iPOJO Tracking interceptor is modifying the reference
+    * [FELIX-4204] - Service Dependencies with a callback without a type attribute must be rejected
+    * [FELIX-4207] - ipojo @Component with propagation set to true doesn't propagate properties
+    * [FELIX-4218] - NPE with field annotated with both @Property and @ServiceProperty
+    * [FELIX-4236] - Unvalued properties should be part of the instance's architecture
+    * [FELIX-4247] - Memory leak with ServiceUsage and inner class (Listener style)
+    * [FELIX-4248] - ServiceUsage ThreadLocal removal
+    * [FELIX-4250] - Specification deduction broken when the method does not start with the 'bind' prefix
+    * [FELIX-4251] - The @Bind annotation should use Class instead of String
+    * [FELIX-4261] - NPE when an instance is declared without a configuration using the @ConfigurationTracker
+    * [FELIX-4268] - Duplicated name errors always happen when there are 2 factories with the same name
+
+** Improvement
+    * [FELIX-4143] - Improve @Configuration management performances
+    * [FELIX-4216] - Allow @Property without name in constructors
+    * [FELIX-4228] - Improve dependency identification in log messages and exceptions
+    * [FELIX-4232] - Service Dependency Interceptors should be part of the instance architecture
+    * [FELIX-4252] - Make Extender's ThreadPool size configurable
+    * [FELIX-4262] - QueueServices should be observable
+    * [FELIX-4263] - iPOJO Core should use ranged imports
+    * [FELIX-4264] - JobInfo should provide a way to identify the kind of task
+
+** New Feature
+    * [FELIX-4146] - Add getInstances and getInstanceNames in the Factory interface
+    * [FELIX-4147] - Add getProvidedService in ProvidedServiceDescription and allow external service management
+    * [FELIX-4215] - Extend manipulation metadata with argument names
+    * [FELIX-4231] - Provide service binding interceptors
+    * [FELIX-4265] - Provides a recorder for startup events
+    * [FELIX-4267] - Define Apache Karaf features for iPOJO
+
+** Task
+    * [FELIX-3925] - Merge the temporal dependency handler within the service dependency handler
+    * [FELIX-4133] - Add distribution creation in the iPOJO runtime build
+    * [FELIX-4134] - Move integration-tests to the reactor
+    * [FELIX-4136] - Document service dependency interceptors
+    * [FELIX-4151] - Fix mistakes in the javadoc tags
+    * [FELIX-4156] - Fix versions of maven plugins
+    * [FELIX-4217] - Ensure compatibility between Aries Blueprint and iPOJO
+    * [FELIX-4245] - Deadlock in Dependency
+    * [FELIX-4270] - Bump iPOJO package version to 1.11.0
+
+** Sub-task
+    * [FELIX-4239] - Extend service dependency documentation with the 'exception' attribute.
+    * [FELIX-4240] - Support the 'exception' attribute in service dependencies
+    * [FELIX-4242] - Support the 'timeout' attribute in service dependencies
+    * [FELIX-4243] - Define the dependency configuration matrix and improve error detection
+    * [FELIX-4244] - Extend the service dependency documentation with the timeout attribute
+    * [FELIX-4257] - Allow the dependency handler to track the entry and exit of inner class methods
+
+Changes from 1.10.0 to 1.10.1
+-----------------------------
+
+** Bug
+    * [FELIX-4072] - onGet and onSet methods do not provide the reference on the pojo object
+    * [FELIX-4076] - Useless locking on getRequiredHandler
+    * [FELIX-4077] - Fix documentation urls in maven projects
+    * [FELIX-4089] - Extender do not deactivate managed components when stopped
+    * [FELIX-4096] - NPE when retrieve required and missing handler on a disposed factory
+    * [FELIX-4105] - Factories not disposed when their bundle is leaving
+    * [FELIX-4106] - Defensive service registration and update
+    * [FELIX-4108] - Deadlock in the new extender
+    * [FELIX-4109] - ComponentTypeDescription.addProperty() ignore immutable parameter
+    * [FELIX-4113] - Factories not disposed when the extension provider is leaving
+    * [FELIX-4114] - iPOJO ProvidedServiceDescription does not expose policy & CreationStrategy
+    * [FELIX-4123] - Deadlock in new extender because of factory lock used in removedService
+    * [FELIX-4127] - Configuration tracker bug when starting and stopping iPOJO successively
+    * [FELIX-4129] - Cannot change the optionality of a dependency
+
+** Improvement
+    * [FELIX-1430] - Notification mechanism on bind/unbind events
+    * [FELIX-4073] - PrimitiveHandler.attach(ComponentInstance) is final
+    * [FELIX-4119] - Allow customization of DependencyHandler created Callbacks
+
+** New Feature
+    * [FELIX-4116] - Ability to listen for component service dependencies, providings, configuration properties, ...
+    * [FELIX-4120] - Allow external entity to interact during the service resolution
+    * [FELIX-4125] - Provide 'components' and 'component' commands
+    * [FELIX-4130] - Allow retrieving the component instance from the instance description
+    * [FELIX-4131] - Explicitly set configuration's location when the configuration is null
+
+** Task
+    * [FELIX-4092] - Move 'annotation' module from 'runtime' to 'manipulator' project
+    * [FELIX-4103] - Skip deployment of it-tests
+    * [FELIX-4104] - Do not run integration-tests in the default build
+    * [FELIX-4124] - Move arch-gogo to runtime
+
+Changes from 1.8.6 to 1.10.0
+----------------------------
+
+** Bug
+    * [FELIX-3451] - "instance.name" attribute not recognized
+    * [FELIX-3843] - ClassCastException when listing service properties of a non-ComponentFactory Factory service
+    * [FELIX-3895] - iPOJO instance is not shown (with the "arch" commands) if constructor is failing
+    * [FELIX-3896] - Null reference are injected with @Bind(optional=false) method on iPOJO components
+    * [FELIX-3918] - iPOJO Logger cannot be dynamically configured on Equinox and KF
+    * [FELIX-3919] - iPOJO Proxies strategy cannot be configured dynamically on Equinox and KF
+    * [FELIX-3920] - Creation Strategy does not work on KF3
+    * [FELIX-3974] - Properties cannot be set as immutable using annotations
+    * [FELIX-3995] - Missing options in Bind annotation
+    * [FELIX-4041] - Properties starting with . should not be propagated
+    * [FELIX-4048] - @Requires handler does not fail when no specification can be found
+    * [FELIX-4053] - Avoid @StaticServiceProperty to be used on classes
+    * [FELIX-4054] - Use current factory version to generate instance name if required
+
+** Improvement
+    * [FELIX-3860] - factories and instances iPOJO gogo commands should show the "public=false" instances/factories
+    * [FELIX-3932] - Allow dependency filter's to get context-source variables
+    * [FELIX-4040] - Implement config admin support to handle binding location properly
+    * [FELIX-4045] - Chain Exceptions when possible
+
+** New Feature
+    * [FELIX-4034] - Instance configuration DSL
+
+** Task
+    * [FELIX-3892] - Upgrade runtime codebase to Java 5
+    * [FELIX-3903] - Migrate tests to pax exam 3
+    * [FELIX-3921] - Update pom to latest Felix's parent
+    * [FELIX-3948] - Define a new extender model
+    * [FELIX-3978] - Check that we don't use java 6+ API
+
+** Wish
+    * [FELIX-3926] - Provide metadata for the Extender namespace
+
+Changes from the 1.8.4 to 1.8.6
+-------------------------------
+
+** Bug
+    * [FELIX-3742] - Implementing class fails to load unless super interface's (interface extended by implemented interface) package is imported.
+    * [FELIX-3789] - Deadlock due to synchronization on INSTANCE_NAME
+    * [FELIX-3819] - The export directive of iPOJO is wrong
+
+Changes from the 1.8.2 to 1.8.4
+--------------------------------
+
+** Bug
+    * [FELIX-3451] - "instance.name" attribute not recognized
+    * [FELIX-3500] - InstanceManager concurrency issue: "A methodID cannot be associated with a method from the POJO class"
+    * [FELIX-3501] - IPojo FactoryStateListener doesn't get notified while stopping factory
+    * [FELIX-3545] - Memory leak when unregistering a component used by an aggregate dependency with an unbind callback
+    * [FELIX-3548] - Concurrent access during startup
+    * [FELIX-3567] - iPOJO Configuration Handler should not reuse the dictionary object from the configuration admin
+    * [FELIX-3576] - iPOJO fails when using constructor injection and expecting BundleContext in ctor
+    * [FELIX-3599] - Problem with 'subservice action="instantiate"' in ipojo composite
+    * [FELIX-3621] - Two dimensional array as argument to a method in a component
+    * [FELIX-3672] - Potential Concurrent Modification Exception when a bundle is stopped
+
+** Improvement
+    * [FELIX-3560] - Extensions to IPojo's Factory and ComponentInstance documentation for custom handlers
+
+Changes from the 1.8.0 to 1.8.2
+-------------------------------
+** Bug
+    * [FELIX-2893] - Properties are not propagate to service by default
+    * [FELIX-2902] - Service properties added by propagation overrides already existing properties
+    * [FELIX-2907] - Problem calling _setInstanceManager on guice enhanced classe
+    * [FELIX-2981] - Unable to remove configuration properties using iPOJO's configuration handler
+    * [FELIX-2989] - Using a Service Controller set to true can trigger a service registration-unregistration-registration sequence
+    * [FELIX-2995] - The service properties are updated despite there is no changes
+    * [FELIX-3009] - Abstract classes as service specifications generates warnings at runtime
+    * [FELIX-3075] - Change to ServiceController status in current trunk does not re-register service
+    * [FELIX-3172] - Error when calling BundleContext.register(Class, Object, Dictionary)
+    * [FELIX-3192] - Service properties are not updated if the properties were already propagated
+    * [FELIX-3271] - On KF, the Instance singleton strategy throws an UnsupportedOperationException when stopping
+    * [FELIX-3323] - Ipojo composite throw ClassCastException when configuration is updated thru ConfigAdmin
+    * [FELIX-3356] - Objectweb ASM Clashes with IPojo
+    * [FELIX-3374] - Use of java.lang.Properties in iPOJO Core
+
+** Improvement
+    * [FELIX-3036] - Add IPOJO-Components header support
+    * [FELIX-3081] - Integrate the online-manipulator in iPOJO Core
+    * [FELIX-3144] - Method interceptors should receive Method or Constructor objects
+    * [FELIX-3155] - Allow identifying iPojo extensions by a namespace qualified name
+    * [FELIX-3190] - iPOJO Factories doesn't give access to the complete Metadata model
+    * [FELIX-3252] - Merge the online manipulator into iPOJO Core
+    * [FELIX-3326] - Accessing IPojo-Component's all inherited classes and all implemented interfaces in PrimitiveTypeDescription
+
+** New Feature
+    * [FELIX-2932] - Allows disabling the asynchronous processing in the iPOJO Extender
+
+Changes from the 1.6.8 to 1.8.0
+-------------------------------
+** Bug
+    * [FELIX-2694] - Instance state not recomputed after reconfiguration when the instance is stopped
+    * [FELIX-2716] - [iPOJO] Failure when creating proxies for classes in java.* packages
+
+** Improvement
+    * [FELIX-2781] - Expose the implementation class as service when no interfaces are found in the hierarchy
+    * [FELIX-1424] - Constructor Injection
+    * [FELIX-1428] - Constructor injection of Configuration properties
+    * [FELIX-2461] - Allow specifying the targeted service interface in the @ServiceController
+    * [FELIX-2620] - Change iPojo annotation parameters to follow java naming conventions
+    * [FELIX-2621] - Rename annotations to remove collisions
+    * [FELIX-2622] - Support static service properties that are not mirrored into fields
+    * [FELIX-2688] - iPojo "requires.filters" - Array object instead of Dictionary object
+    * [FELIX-2705] - Provide a way to extend the logger strategy
+    * [FELIX-2742] - Constructor injection of service dependencies
+    * [FELIX-2744] - Add annotations to the maven-ipojo-plugin archetype
+
+Changes from the 1.6.6 to 1.6.8
+-------------------------------
+** Improvement
+ * [FELIX-2688] - iPojo "requires.filters" - Array object instead of Dictionary object
+ * [FELIX-2705] - Provide a way to extend the logger strategy
+
+** Bug
+ * [FELIX-2685] - Wrong Element name when XML namespace contains ':'
+ * [FELIX-2694] - Instance state not recomputed after reconfiguration when the instance is stopped
+
+Changes from the 1.6.4 to 1.6.6
+-------------------------------
+** Improvement
+ * [FELIX-2594] - Have a way to create new custom iPojo handler without having to specify a handler usage
+ * [FELIX-2623] - @Update annotated methods should not require a Dictionary parameter
+
+** Bug
+ * [FELIX-2580] - iPOJO failed to create proxies on service which are not interface
+ * [FELIX-2596] - DependencyHandler.onObjectCreation throws NPE when bundle is refreshed
+ * [FELIX-2603] - wrong behavior of InstanceManager.onSet(..) method
+ * [FELIX-2636] - Cannot control the validity of an iPOJO instance using a configuration property
+
+Changes from the 1.6.2 to 1.6.4
+-------------------------------
+** Improvement
+    * [FELIX-2420] - Enum support for @Property annotation
+    * [FELIX-2461] - Allow specifying the targeted service interface in the @ServiceController
+    * [FELIX-2472] - Proxies should throw a runtime exception instead of a null pointer exception
+
+** Bug
+	* [FELIX-2561] - Properties set as required instead of optional in  the component type descriptions
+
+Changes from the 1.6.0 to 1.6.2
+-------------------------------
+** Bug
+    * [FELIX-2308] - getService is called during the unregistration of a service.
+    * [FELIX-2309] - Potential NPE when a service has abruptly in the smart proxies.
+    * [FELIX-2323] - Unbind method should not be called during the invalidation process if the invalidation does not come from a service departure.
+
+** Improvement
+    * [FELIX-2296] - Access to ServiceReference in iPOJO service.
+
+Changes from the 1.4.0 to 1.6.0
+-------------------------------
+** Bug
+    * [FELIX-1533] - Potential deadlock when stopping the underlying OSGi framework
+    * [FELIX-1965] - iPojo component is made available regardless of exception during validate
+    * [FELIX-2014] - Potential ClassCastException when a service property does not receive a value and is used in the constructor
+    * [FELIX-2019] - The Property value is 'null' in the Architecture description, while the value is well assigned to the component's field.
+    * [FELIX-2052] - Handler require callback are not called if the service (required) is registered before the instance of the handler has been started.
+    * [FELIX-2093] - iPOJO doesn't always use the correct class loader
+
+** Improvement
+    * [FELIX-1425] - Service Proxy Mode
+    * [FELIX-1426] - Service injection with Dynamic Proxies
+    * [FELIX-1427] - Service injection with Smart Proxies
+    * [FELIX-1532] - Be able to set the iPOJO Log Level from BND
+    * [FELIX-1741] - Allows the configuration handler description to retrieve the managed service PID
+    * [FELIX-1854] - Allows instances to directly declares service.* properties (pid, ranking, vendor, description)
+    * [FELIX-1885] - Ease CreationStrategy & iPOJOServiceFactory usage
+    * [FELIX-1906] - Allow calling a method when service properties of an already injected service are modified
+
+** New Feature
+    * [FELIX-2132] - Provides a way to control service exposition from the implementation class
+
+
+Changes from 1.2.0 to 1.4.0
+---------------------------
+** Bug
+    * [FELIX-985] - iPOJO analyzes already installed bundle by holding a lock
+    * [FELIX-1002] - iPOJO Static binding policy is not compliant with the Declarative Service static binding policy.
+    * [FELIX-1318] - Case mismatch problem of iPOJO custom handler name
+** Improvement
+    * Update parent pom
+    * [FELIX-936] - Allowing publishing class as services
+    * [FELIX-966] - iPOJO: Better error reporting when getPojoObject return null
+    * [FELIX-982] - Declare iPOJO as a singleton bundle to avoid multiple version of the runtime at the same time
+    * [FELIX-1114] - callback after configuration change needed
+    * [FELIX-1163] - Improve error message when an array cannot be created due to a classloading issue
+    * [FELIX-1182] - iPOJO - reconfiguration : get all properties with the update callback
+
+
+Changes from 1.0.0 to 1.2.0
+---------------------------
+** Bug
+    * [FELIX-797] - Composite Architecture contains duplicate instances
+    * [FELIX-803] - iPOJO Core schema needs to be fixed
+    * [FELIX-805] - Instance not created if the factory becomes valid later
+    * [FELIX-866] - iPOJO Provides 'interface' attribute should be 'specifications'
+
+** Improvement
+    * [FELIX-787] - iPOJO logger log messages inside the log service and print them
+    * [FELIX-796] - Allows enabling/disabling the internal event dispatcher
+    * [FELIX-801] - Support service properties injection in bind/unbind callbacks
+    * [FELIX-815] - Support optional properties
+    * [FELIX-816] - Support comparator attribute with any service binding policy
+    * [FELIX-818] - Implement the ServiceReference compareTo method
+    * [FELIX-853] - Provide new service object creation strategies
+    * New introspection API
+
+Changes from 0.8.0 to 1.0.0
+---------------------------
+** Bug
+    * [FELIX-557] - Factories still living when a primitive component does not have its manipulation metadata
+    * [FELIX-632] - Component are set to immediate despite they are already immediate
+    * [FELIX-635] - Simplify factory name computation
+    * [FELIX-628] - Architecture service should not publish the instance.name property
+    * [FELIX-621] - Instances not disposed when instances creation failed
+
+** Improvement
+    * [FELIX-552] - ClassCastException when using services as dynamic proxies
+    * [FELIX-555] - Error message in the iPOJO Extender could be more accurate when failing to get the bundle context
+    * [FELIX-558] - Non caught NoClassDefFoundError when the instantiation of a Nullable object failed
+    * [FELIX-603] - Improve iPOJO Arch service dependency description
+    * [FELIX-626] - Allow specifying instance configuration containing empty dictionaries
+    * [FELIX-629] - Allows instance configuration to declares complex properties
+    * [FELIX-631] - Immediate Component Detection
+    * [FELIX-633] - Factory creation should be done in another thread
+    * [FELIX-634] - Improve error handling
+    * [FELIX-655] - Add a 'from' attribute in the service dependencies
+    * [FELIX-673] - Provide OBR description to iPOJO bundles
+    * [FELIX-683] - Supporting lists and vectors in the service dependency management
+    * [FELIX-686] - Supporting collections and set in the service dependency management
+    * [FELIX-688] - Better error reporting when an instance creation failed
+    * [FELIX-689] - Instance 'name' property should become 'instance.name'
+    * [FELIX-716] - Provide XML schemas for iPOJO descriptors
+    * [FELIX-732] - Duplicate instance created of a managed service
+
+Version 0.8.0
+-------------
+    * Initial release
diff --git a/ipojo/runtime/karaf-feature/src/main/assembly/assembly.xml b/ipojo/runtime/karaf-feature/src/main/assembly/assembly.xml
index 8b213dc..3fb95b8 100644
--- a/ipojo/runtime/karaf-feature/src/main/assembly/assembly.xml
+++ b/ipojo/runtime/karaf-feature/src/main/assembly/assembly.xml
@@ -39,6 +39,14 @@
         </fileSet>
 
         <fileSet>
+            <directory>${project.basedir}</directory>
+            <includes>
+                <include>changelog.txt</include>
+            </includes>
+            <outputDirectory/>
+        </fileSet>
+
+        <fileSet>
             <directory>${legal.files}</directory>
             <outputDirectory/>
         </fileSet>
