diff --git a/ipojo/manipulator/DEPENDENCIES b/ipojo/manipulator/DEPENDENCIES
index 44e6fce..8d9ab6d 100644
--- a/ipojo/manipulator/DEPENDENCIES
+++ b/ipojo/manipulator/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Manipulator Project
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 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 c39b708..ead6338 100644
--- a/ipojo/manipulator/NOTICE
+++ b/ipojo/manipulator/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Manipulator Project
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/manipulator/bnd-ipojo-plugin/DEPENDENCIES b/ipojo/manipulator/bnd-ipojo-plugin/DEPENDENCIES
index 7ae4c5d..40a3fc1 100644
--- a/ipojo/manipulator/bnd-ipojo-plugin/DEPENDENCIES
+++ b/ipojo/manipulator/bnd-ipojo-plugin/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix BND iPOJO Plugin
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 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/bnd-ipojo-plugin/NOTICE b/ipojo/manipulator/bnd-ipojo-plugin/NOTICE
index 73d33dd..8766670 100644
--- a/ipojo/manipulator/bnd-ipojo-plugin/NOTICE
+++ b/ipojo/manipulator/bnd-ipojo-plugin/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix BND iPOJO Plugin
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/manipulator/bnd-ipojo-plugin/doc/changelog.txt b/ipojo/manipulator/bnd-ipojo-plugin/doc/changelog.txt
index c1f69c3..b969309 100644
--- a/ipojo/manipulator/bnd-ipojo-plugin/doc/changelog.txt
+++ b/ipojo/manipulator/bnd-ipojo-plugin/doc/changelog.txt
@@ -1,3 +1,12 @@
+Changes from the 1.8.2 to 1.8.4
+-------------------------------
+
+** Bug
+    * [FELIX-3297] - iPOJO Manipulator throws ClassNotFoundException
+    * [FELIX-3359] - Turn around to avoid to use the split verifier on Java 7
+    * [FELIX-3389] - Bnd iPOJO Plugin ignores annotated components
+    * [FELIX-3391] - Unexpected warning when using bnd-ipojo-plugin
+
 Changes in the 1.8.2
 --------------------
 
diff --git a/ipojo/manipulator/doc/changelog.txt b/ipojo/manipulator/doc/changelog.txt
index c1f69c3..182fef1 100644
--- a/ipojo/manipulator/doc/changelog.txt
+++ b/ipojo/manipulator/doc/changelog.txt
@@ -1,3 +1,10 @@
+Changes from the 1.8.2 to 1.8.4
+-------------------------------
+
+** Bug
+    * [FELIX-3297] - iPOJO Manipulator throws ClassNotFoundException
+    * [FELIX-3359] - Turn around to avoid to use the split verifier on Java 7
+
 Changes in the 1.8.2
 --------------------
 
diff --git a/ipojo/manipulator/ipojo-ant-task/DEPENDENCIES b/ipojo/manipulator/ipojo-ant-task/DEPENDENCIES
index 8d8ce11..715756f 100644
--- a/ipojo/manipulator/ipojo-ant-task/DEPENDENCIES
+++ b/ipojo/manipulator/ipojo-ant-task/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Ant Task
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 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/ipojo-ant-task/NOTICE b/ipojo/manipulator/ipojo-ant-task/NOTICE
index a77fd9c..78f85ea 100644
--- a/ipojo/manipulator/ipojo-ant-task/NOTICE
+++ b/ipojo/manipulator/ipojo-ant-task/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Ant Task
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/manipulator/ipojo-ant-task/doc/changelog.txt b/ipojo/manipulator/ipojo-ant-task/doc/changelog.txt
index d401551..fe5bc76 100644
--- a/ipojo/manipulator/ipojo-ant-task/doc/changelog.txt
+++ b/ipojo/manipulator/ipojo-ant-task/doc/changelog.txt
@@ -1,3 +1,10 @@
+Changes from the 1.8.2 to 1.8.4
+-------------------------------
+
+** Bug
+    * [FELIX-3297] - iPOJO Manipulator throws ClassNotFoundException
+    * [FELIX-3359] - Turn around to avoid to use the split verifier on Java 7
+
 Changes from the 1.8.0 to 1.8.2
 -------------------------------
 
diff --git a/ipojo/manipulator/manipulator/DEPENDENCIES b/ipojo/manipulator/manipulator/DEPENDENCIES
index c4f5ede..2a23fab 100644
--- a/ipojo/manipulator/manipulator/DEPENDENCIES
+++ b/ipojo/manipulator/manipulator/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Manipulator
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 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/manipulator/NOTICE b/ipojo/manipulator/manipulator/NOTICE
index 4665c8b..525ed90 100644
--- a/ipojo/manipulator/manipulator/NOTICE
+++ b/ipojo/manipulator/manipulator/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Manipulator
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/manipulator/manipulator/doc/changelog.txt b/ipojo/manipulator/manipulator/doc/changelog.txt
index 0768bdc..b432911 100644
--- a/ipojo/manipulator/manipulator/doc/changelog.txt
+++ b/ipojo/manipulator/manipulator/doc/changelog.txt
@@ -1,3 +1,14 @@
+
+
+** Bug
+    * [FELIX-3297] - iPOJO Manipulator throws ClassNotFoundException
+    * [FELIX-3359] - Turn around to avoid to use the split verifier on Java 7
+    * [FELIX-3389] - Bnd iPOJO Plugin ignores annotated components
+    * [FELIX-3391] - Unexpected warning when using bnd-ipojo-plugin
+
+** Improvement
+    * [FELIX-3384] - Ensure maven-ipojo-plugin is thread-safe for parallel maven builds
+
 Changes from the 1.8.0 to 1.8.2
 -------------------------------
 
diff --git a/ipojo/manipulator/maven-ipojo-plugin/DEPENDENCIES b/ipojo/manipulator/maven-ipojo-plugin/DEPENDENCIES
index f3ffd69..89ccdbe 100644
--- a/ipojo/manipulator/maven-ipojo-plugin/DEPENDENCIES
+++ b/ipojo/manipulator/maven-ipojo-plugin/DEPENDENCIES
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Maven Plugin
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 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/maven-ipojo-plugin/NOTICE b/ipojo/manipulator/maven-ipojo-plugin/NOTICE
index 1d209d3..1410753 100644
--- a/ipojo/manipulator/maven-ipojo-plugin/NOTICE
+++ b/ipojo/manipulator/maven-ipojo-plugin/NOTICE
@@ -1,5 +1,5 @@
 Apache Felix iPOJO Maven Plugin
-Copyright 2008-2011 The Apache Software Foundation
+Copyright 2008-2012 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/ipojo/manipulator/maven-ipojo-plugin/doc/changelog.txt b/ipojo/manipulator/maven-ipojo-plugin/doc/changelog.txt
index f67286f..7acc814 100644
--- a/ipojo/manipulator/maven-ipojo-plugin/doc/changelog.txt
+++ b/ipojo/manipulator/maven-ipojo-plugin/doc/changelog.txt
@@ -1,3 +1,13 @@
+Changes from the 1.8.2 to 1.8.4
+-------------------------------
+
+** Bug
+    * [FELIX-3297] - iPOJO Manipulator throws ClassNotFoundException
+    * [FELIX-3359] - Turn around to avoid to use the split verifier on Java 7
+
+** Improvement
+    * [FELIX-3384] - Ensure maven-ipojo-plugin is thread-safe for parallel maven builds
+
 Changes from the 1.8.0 to 1.8.2
 -------------------------------
 
