diff --git a/ipojo/annotations/DEPENDENCIES b/ipojo/annotations/DEPENDENCIES
index ac6fd9e..e1ea054 100644
--- a/ipojo/annotations/DEPENDENCIES
+++ b/ipojo/annotations/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Annotations
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This software was developed at the Apache Software Foundation
 (http://www.apache.org) and may have dependencies on other
diff --git a/ipojo/annotations/NOTICE b/ipojo/annotations/NOTICE
index 8c8ea0f..b1ed786 100644
--- a/ipojo/annotations/NOTICE
+++ b/ipojo/annotations/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Annotations
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/annotations/doc/changelog.txt b/ipojo/annotations/doc/changelog.txt
index 889b9c6..e2c9f16 100644
--- a/ipojo/annotations/doc/changelog.txt
+++ b/ipojo/annotations/doc/changelog.txt
@@ -1,9 +1,27 @@
+Changes from the 1.6.4 to 1.8.0
+-------------------------------
+** Bug
+    * [FELIX-2568] - Rename Transactionnal to Transactional
+
+** Improvement
+    * [FELIX-1428] - Constructor injection of Configuration properties
+    * [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-2624] - Support multiple whiteboards using annotations
+    * [FELIX-2630] - Rename @Component attributes to follow the java naming conventions
+    * [FELIX-2631] - Rename @Publisher and @Subscriber attributes to follow the java naming conventions
+    * [FELIX-2633] - Rename JMX annotations
+    * [FELIX-2634] - Rename the @Publisher annotation into @Publishes annotation to avoid collision
+    * [FELIX-2666] - Rename the temporal handler annotation to avoid collision
+    * [FELIX-2742] - Constructor injection of service dependencies
+
 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
-    
+
 Changes from the 1.6.0 to 1.6.2
 -------------------------------
 ** Improvement
@@ -13,7 +31,7 @@
 -------------------------------
 ** Bug
     * [FELIX-1557] - Cosmetic change of the Bundle-Name and Bundle-SymbolicName in iPOJO annotations.
-    
+
 ** Improvement
     * [FELIX-1426] - Service injection with Dynamic Proxies
     * [FELIX-1427] - Service injection with Smart Proxies
@@ -24,7 +42,7 @@
 
 ** Wish
     * [FELIX-1940] - Add @Instance annotation to declare instances without metadata.xml
-    
+
 Changes from 1.2.0 to 1.4.0
 ---------------------------
 ** Bug
@@ -33,7 +51,7 @@
 ** Improvement
     * Update parent pom
 
-    
+
 Changes from 1.0.0 to 1.2.0
 ---------------------------
 ** Improvement
@@ -42,7 +60,7 @@
 
 ** Bug
     * [FELIX-867] - iPOJO @ServiceProperty can target method
-    * [FELIX-868] - iPOJO @Component don't support factory methods    
+    * [FELIX-868] - iPOJO @Component don't support factory methods
 
 
 Changes from 0.8.0 to 1.0.0
diff --git a/ipojo/ant/DEPENDENCIES b/ipojo/ant/DEPENDENCIES
index a715222..ab25a49 100644
--- a/ipojo/ant/DEPENDENCIES
+++ b/ipojo/ant/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Ant Task
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/ant/NOTICE b/ipojo/ant/NOTICE
index 1814e70..a77fd9c 100644
--- a/ipojo/ant/NOTICE
+++ b/ipojo/ant/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Ant Task
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/ant/doc/changelog.txt b/ipojo/ant/doc/changelog.txt
index 39ab246..d86850f 100644
--- a/ipojo/ant/doc/changelog.txt
+++ b/ipojo/ant/doc/changelog.txt
@@ -1,13 +1,18 @@
+Changes from the 1.6.0 to 1.8.0
+-------------------------------
+** Improvement
+    * [FELIX-2755] - Allow the manipulator and the different front end to use several metadata files
+
 Changes from the 1.4.2 to 1.6.0
 -------------------------------
 ** Bug
     * [FELIX-1411] - Issue on windows to find components inside bundle
-    
+
 ** Improvement
     * [FELIX-1427] - Service injection with Smart Proxies
     * [FELIX-1906] - Allow calling a method when service properties of an already injected service are modified
-    
-    
+
+
 Changes from the 1.4.0 to 1.4.2
 -------------------------------
 ** Bug
@@ -21,8 +26,8 @@
 
 ** Improvement
     * Update parent pom
-    
-    
+
+
 Changes from 1.0.0 to 1.2.0
 ---------------------------
 ** Improvement
@@ -30,12 +35,12 @@
 
 Changes from 0.8.1 to 1.0.0
 ---------------------------
-** Bug    
+** Bug
     * Update contained Xerces packages to support XML-Schemas
 
 ** Improvement
     * Embed the latest manipulator
-    
+
 Version 0.8.1
 -------------
-    * Initial release 
+    * Initial release
diff --git a/ipojo/arch/DEPENDENCIES b/ipojo/arch/DEPENDENCIES
index 330b30d..3d6a810 100644
--- a/ipojo/arch/DEPENDENCIES
+++ b/ipojo/arch/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Arch Command
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/arch/NOTICE b/ipojo/arch/NOTICE
index 3f562aa..4c747af 100644
--- a/ipojo/arch/NOTICE
+++ b/ipojo/arch/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Arch Command
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/composite/DEPENDENCIES b/ipojo/composite/DEPENDENCIES
index 0346e51..b16ed8f 100644
--- a/ipojo/composite/DEPENDENCIES
+++ b/ipojo/composite/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Composite
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/composite/NOTICE b/ipojo/composite/NOTICE
index 81972a5..4c77df6 100644
--- a/ipojo/composite/NOTICE
+++ b/ipojo/composite/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Composite
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/composite/doc/changelog.txt b/ipojo/composite/doc/changelog.txt
index 765d424..36548c7 100644
--- a/ipojo/composite/doc/changelog.txt
+++ b/ipojo/composite/doc/changelog.txt
@@ -1,38 +1,43 @@
+Changes from the 1.6.0 to 1.8.0
+-------------------------------
+** Improvement
+    * [FELIX-2746] - Composite should support instance configuration
+
 Changes from the 1.4.0 to 1.6.0
 -------------------------------
 ** Improvement
     * [FELIX-1427] - Service injection with Smart Proxies
     * [FELIX-1906] - Allow calling a method when service properties of an already injected service are modified
 
-    
+
 Changes from 1.2.0 to 1.4.0
 ---------------------------
 ** Bug
     * [FELIX-994] - ClassCastException while Architecture on a composite with a provided service
-     
+
 ** Improvement
     * Update parent pom
 
- 
+
 Changes from 1.0.0 to 1.2.0
 ---------------------------
 ** Bug
     * [FELIX-797] - Composite Architecture contains duplicate instances
     * [FELIX-817] - iPOJO Service Exported throw an error when stopping
-    
+
 Changes from 0.8.1 to 1.0.0
 ---------------------------
-** Bug    
+** Bug
     * [FELIX-622] - iPOJO Composite Service Instance can use factories twice to create service instance
     * [FELIX-628] - Architecture service should not publish the instance.name property
-    * [FELIX-637] - Composite service implementation does not support long argument 
-    
+    * [FELIX-637] - Composite service implementation does not support long argument
+
 ** Improvement
-    * [FELIX-673] - Provide OBR description to iPOJO bundles 
-    * [FELIX-688] - Better error reporting when an instance creation failed 
-    * [FELIX-689] - Instance 'name' property should become 'instance.name' 
+    * [FELIX-673] - Provide OBR description to iPOJO bundles
+    * [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
 
 Version 0.8.1
 -------------
-    * Initial release 
+    * Initial release
diff --git a/ipojo/core/DEPENDENCIES b/ipojo/core/DEPENDENCIES
index 4855e33..9341de7 100644
--- a/ipojo/core/DEPENDENCIES
+++ b/ipojo/core/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Runtime
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This software was developed at the Apache Software Foundation
 (http://www.apache.org) and may have dependencies on other
diff --git a/ipojo/core/NOTICE b/ipojo/core/NOTICE
index 6831d31..65496d1 100644
--- a/ipojo/core/NOTICE
+++ b/ipojo/core/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Runtime
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/core/doc/changelog.txt b/ipojo/core/doc/changelog.txt
index eb1d52f..7a02735 100644
--- a/ipojo/core/doc/changelog.txt
+++ b/ipojo/core/doc/changelog.txt
@@ -1,3 +1,21 @@
+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-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
diff --git a/ipojo/handler/eventadmin/DEPENDENCIES b/ipojo/handler/eventadmin/DEPENDENCIES
index b32d9f9..962cac6 100644
--- a/ipojo/handler/eventadmin/DEPENDENCIES
+++ b/ipojo/handler/eventadmin/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Event Admin Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/handler/eventadmin/NOTICE b/ipojo/handler/eventadmin/NOTICE
index ffbc6fe..253c41f 100644
--- a/ipojo/handler/eventadmin/NOTICE
+++ b/ipojo/handler/eventadmin/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Event Admin Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/handler/eventadmin/doc/changelog.txt b/ipojo/handler/eventadmin/doc/changelog.txt
index 76fb707..dec3825 100644
--- a/ipojo/handler/eventadmin/doc/changelog.txt
+++ b/ipojo/handler/eventadmin/doc/changelog.txt
@@ -1,10 +1,20 @@
+Changes from the 1.6.0 to 1.8.0
+-------------------------------
+** Bug
+    * [FELIX-2718] - EventHandler are invoked one by one when using the @Subscribe handler
+
+** Improvement
+    * [FELIX-2631] - Rename @Publisher and @Subscriber attributes to follow the java naming conventions
+    * [FELIX-2634] - Rename the @Publisher annotation into @Publishes annotation to avoid collision
+    * [FELIX-2711] - The event admin handler should provides a Handler Description
+
 Changes from the 1.4.0 to 1.6.0
 -------------------------------
 ** Bug
     * [FELIX-1938] - Bad error message when an Event Subscriber does not set the data type and data key
-    
+
 Changes from 1.2.0 to 1.4.0
----------------------------     
+---------------------------
 ** Improvement
     * Update parent pom
 
diff --git a/ipojo/handler/extender/DEPENDENCIES b/ipojo/handler/extender/DEPENDENCIES
index b290f6f..a289053 100644
--- a/ipojo/handler/extender/DEPENDENCIES
+++ b/ipojo/handler/extender/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Extender Pattern Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/handler/extender/NOTICE b/ipojo/handler/extender/NOTICE
index 145fced..ba27583 100644
--- a/ipojo/handler/extender/NOTICE
+++ b/ipojo/handler/extender/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Extender Pattern Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/handler/jmx/DEPENDENCIES b/ipojo/handler/jmx/DEPENDENCIES
index 170da69..62e77d5 100644
--- a/ipojo/handler/jmx/DEPENDENCIES
+++ b/ipojo/handler/jmx/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO JMX Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/handler/jmx/NOTICE b/ipojo/handler/jmx/NOTICE
index 246955c..ae6a19c 100644
--- a/ipojo/handler/jmx/NOTICE
+++ b/ipojo/handler/jmx/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO JMX Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/handler/jmx/doc/changelog.txt b/ipojo/handler/jmx/doc/changelog.txt
index c958799..87556fc 100644
--- a/ipojo/handler/jmx/doc/changelog.txt
+++ b/ipojo/handler/jmx/doc/changelog.txt
@@ -1,8 +1,13 @@
+Changes from 1.4.0 to 1.6.0
+---------------------------
+** Improvement
+    * [FELIX-2633] - Rename JMX annotations
+
 Changes from 1.2.0 to 1.4.0
 ---------------------------
 ** Bug
-    * [FELIX-1183] - iPOJO JMX handler doesn't re-throw exceptions 
-     
+    * [FELIX-1183] - iPOJO JMX handler doesn't re-throw exceptions
+
 ** Improvement
     * Update parent pom
 
@@ -11,7 +16,7 @@
 ---------------------------
 ** Bug
    * [FELIX-828] - iPOJO JMX Handler: the name attribute has not the expected behavior
-    * [FELIX-829] - iPOJO JMX Handler: the sub-element should refer to the handler namespace    
+    * [FELIX-829] - iPOJO JMX Handler: the sub-element should refer to the handler namespace
 
 Version 1.0.0
 -------------
diff --git a/ipojo/handler/temporal/DEPENDENCIES b/ipojo/handler/temporal/DEPENDENCIES
index 0c4a72a..47e17c9 100644
--- a/ipojo/handler/temporal/DEPENDENCIES
+++ b/ipojo/handler/temporal/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Temporal Dependency Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/handler/temporal/NOTICE b/ipojo/handler/temporal/NOTICE
index 3e8e54f..2d72e45 100644
--- a/ipojo/handler/temporal/NOTICE
+++ b/ipojo/handler/temporal/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Temporal Dependency Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/handler/temporal/doc/changelog.txt b/ipojo/handler/temporal/doc/changelog.txt
index 22deeee..ce0f55b 100644
--- a/ipojo/handler/temporal/doc/changelog.txt
+++ b/ipojo/handler/temporal/doc/changelog.txt
@@ -1,3 +1,11 @@
+Changes from the 1.6.2 to 1.8.0
+-------------------------------
+** Bug
+    * [FELIX-2438] - Temporal dependencies should use proxies by default
+
+** Improvement
+    * [FELIX-2666] - Rename the temporal handler annotation to avoid collision
+
 Changes from the 1.6.0 to 1.6.2
 -------------------------------
 ** Improvement
@@ -8,7 +16,7 @@
 ** Improvement
     * [FELIX-1906] - Allow calling a method when service properties of an already injected service are modified
 
-    
+
 Changes from 1.2.0 to 1.4.0
 ---------------------------
 ** Improvement
@@ -20,7 +28,7 @@
 ** Improvement
     * [FELIX-855] - Collection support in iPOJO Temporal Dependencies
     * [FELIX-860] - Temporal Dependency Proxy injection
-    
+
 Changes from 0.8.1 to 1.0.0
 ---------------------------
 ** Improvement
diff --git a/ipojo/handler/whiteboard/DEPENDENCIES b/ipojo/handler/whiteboard/DEPENDENCIES
index 029037a..15f983b 100644
--- a/ipojo/handler/whiteboard/DEPENDENCIES
+++ b/ipojo/handler/whiteboard/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Whiteboard Pattern Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/handler/whiteboard/NOTICE b/ipojo/handler/whiteboard/NOTICE
index c607b10..6d95dad 100644
--- a/ipojo/handler/whiteboard/NOTICE
+++ b/ipojo/handler/whiteboard/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Whiteboard Pattern Handler
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/handler/whiteboard/doc/changelog.txt b/ipojo/handler/whiteboard/doc/changelog.txt
index 541694a..e0aa745 100644
--- a/ipojo/handler/whiteboard/doc/changelog.txt
+++ b/ipojo/handler/whiteboard/doc/changelog.txt
@@ -1,8 +1,17 @@
+Changes from 1.6.2 to 1.8.0
+----------------------------
+** Bug
+    * [FELIX-2581] - White Board Pattern onActivate called before @Validate
+
+** Improvement
+    * [FELIX-2624] - Support multiple whiteboards using annotations
+
+
 Changes from 1.2.0 to 1.4.0
 ---------------------------
 ** Bug
     * [FELIX-944] - Fix white-board pattern handler symbolic name
-     
+
 ** Improvement
     * Update parent pom
 
@@ -11,14 +20,14 @@
 ---------------------------
 ** Improvement
     * [FELIX-834] - Provide Annotations for the extender, whiteboard and event admin handlers
-    
+
 Changes from 0.8.0 to 1.0.0
 ---------------------------
 ** Improvement
     * [FELIX-673] - Provide OBR description to iPOJO bundles
     * [FELIX-716] - Provide XML schemas for iPOJO descriptors
 
-    
+
 Version 0.8.0
 -------------
-    * Initial release 
+    * Initial release
diff --git a/ipojo/manipulator/DEPENDENCIES b/ipojo/manipulator/DEPENDENCIES
index d09902d..5f8f449 100644
--- a/ipojo/manipulator/DEPENDENCIES
+++ b/ipojo/manipulator/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Manipulator
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This software was developed at the Apache Software Foundation
 (http://www.apache.org) and may have dependencies on other
diff --git a/ipojo/manipulator/NOTICE b/ipojo/manipulator/NOTICE
index 90128d7..4665c8b 100644
--- a/ipojo/manipulator/NOTICE
+++ b/ipojo/manipulator/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Manipulator
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/manipulator/doc/changelog.txt b/ipojo/manipulator/doc/changelog.txt
index 1a1a37f..dd40a55 100644
--- a/ipojo/manipulator/doc/changelog.txt
+++ b/ipojo/manipulator/doc/changelog.txt
@@ -1,3 +1,20 @@
+Changes from the 1.6.4 to 1.8.0
+-------------------------------
+** Bug
+    * [FELIX-2664] - Native methods should not be manipulated
+
+** Improvement
+    * [FELIX-1424] - Constructor Injection
+    * [FELIX-1428] - Constructor injection of Configuration properties
+    * [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-2630] - Rename @Component attributes to follow the java naming conventions
+    * [FELIX-2732] - [iPOJO] Service modified callback should define a default method name
+    * [FELIX-2742] - Constructor injection of service dependencies
+    * [FELIX-2743] - Modify Pojoization to be more easily customizable
+    * [FELIX-2755] - Allow the manipulator and the different front end to use several metadata files
+
 Changes from the 1.6.2 to 1.6.4
 -------------------------------
 ** Bug
diff --git a/ipojo/metadata/DEPENDENCIES b/ipojo/metadata/DEPENDENCIES
index 7ffbe6f..95c4779 100644
--- a/ipojo/metadata/DEPENDENCIES
+++ b/ipojo/metadata/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Metadata
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/metadata/NOTICE b/ipojo/metadata/NOTICE
index 8ba11f8..ae05e5d 100644
--- a/ipojo/metadata/NOTICE
+++ b/ipojo/metadata/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Metadata
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/online-manipulator/DEPENDENCIES b/ipojo/online-manipulator/DEPENDENCIES
index 153bb30..c39ae15 100644
--- a/ipojo/online-manipulator/DEPENDENCIES
+++ b/ipojo/online-manipulator/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Online Manipulator
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/online-manipulator/NOTICE b/ipojo/online-manipulator/NOTICE
index ea61ae3..1423576 100644
--- a/ipojo/online-manipulator/NOTICE
+++ b/ipojo/online-manipulator/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Online Manipulator
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/plugin/DEPENDENCIES b/ipojo/plugin/DEPENDENCIES
index 9f8b48f..1d209d3 100644
--- a/ipojo/plugin/DEPENDENCIES
+++ b/ipojo/plugin/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Maven Plugin
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/plugin/NOTICE b/ipojo/plugin/NOTICE
index eabddbd..1e2f3be 100644
--- a/ipojo/plugin/NOTICE
+++ b/ipojo/plugin/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Maven Plugin
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/plugin/doc/changelog.txt b/ipojo/plugin/doc/changelog.txt
index 0353c79..821dd1c 100644
--- a/ipojo/plugin/doc/changelog.txt
+++ b/ipojo/plugin/doc/changelog.txt
@@ -1,8 +1,15 @@
+Changes from the 1.6.0 to 1.8.0
+-------------------------------
+** Improvement
+    * [FELIX-2733] - The maven-ipojo-plugin should support JAR and WAR as packaging type
+    * [FELIX-2744] - Add annotations to the maven-ipojo-plugin archetype
+    * [FELIX-2755] - Allow the manipulator and the different front end to use several metadata files
+
 Changes from the 1.4.2 to 1.6.0
 -------------------------------
 ** Bug
     * [FELIX-1411] - Issue on windows to find components inside bundle
-    
+
 ** Improvement
     * [FELIX-1427] - Service injection with Smart Proxies
     * [FELIX-1906] - Allow calling a method when service properties of an already injected service are modified
@@ -13,7 +20,7 @@
 ** Bug
     * [FELIX-1411] - Issue on windows to find components inside bundle
 
-    
+
 Changes from 1.2.0 to 1.4.0
 ---------------------------
 ** Bug
@@ -21,19 +28,19 @@
 
 ** Improvement
     * Update parent pom
-    
-  
+
+
 Changes from 1.0.0 to 1.2.0
 ---------------------------
 ** Improvement
     * [FELIX-813] - Resolve XML-Schemas locally rather than from Internet
     * [FELIX-846] - Enhance the iPojo maven plugin to take metadata from pom.
-        
+
 Changes from 0.8.0 to 1.0.0
 ---------------------------
 ** Improvement
     * Embed the latest manipulator
-    
+
 Version 0.8.0
 -------------
-    * Initial release 
+    * Initial release
diff --git a/ipojo/webconsole-plugin/DEPENDENCIES b/ipojo/webconsole-plugin/DEPENDENCIES
index 2b2770d..95fbe5c 100644
--- a/ipojo/webconsole-plugin/DEPENDENCIES
+++ b/ipojo/webconsole-plugin/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Webconsole Plugins
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 I. Included Software
 
diff --git a/ipojo/webconsole-plugin/NOTICE b/ipojo/webconsole-plugin/NOTICE
index 226fefe..a04b7c1 100644
--- a/ipojo/webconsole-plugin/NOTICE
+++ b/ipojo/webconsole-plugin/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Webconsole Plugins
-Copyright 2008-2010 The Apache Software Foundation
+Copyright 2008-2011 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
