prepare for 2.8.0
diff --git a/pom.xml b/pom.xml
index f38c727..3992b13 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
   <parent>
     <groupId>com.fasterxml.jackson</groupId>
     <artifactId>jackson-parent</artifactId>
-    <version>2.8-rc1b</version>
+    <version>2.8</version>
   </parent>
 
   <groupId>com.fasterxml.jackson.core</groupId>
@@ -50,7 +50,7 @@
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-core</artifactId>
-      <version>2.8.0-SNAPSHOT</version>
+      <version>2.8.0</version>
     </dependency>
 
     <!-- and for testing we need a few libraries
diff --git a/release-notes/VERSION b/release-notes/VERSION
index 0e7fed0..10b1413 100644
--- a/release-notes/VERSION
+++ b/release-notes/VERSION
@@ -4,7 +4,7 @@
 === Releases ===
 ------------------------------------------------------------------------
 
-2.8.0 (not released yet)
+2.8.0 (04-Jul-2016)
 
 #621: Allow definition of "ignorable types" without annotation (using
   `Mapper.configOverride(type).setIsIgnoredType(true)`
diff --git a/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsArrayTypeDeserializer.java b/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsArrayTypeDeserializer.java
index bd0e9e7..4172c17 100644
--- a/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsArrayTypeDeserializer.java
+++ b/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsArrayTypeDeserializer.java
@@ -110,7 +110,7 @@
             // 02-Jul-2016, tatu: Depending on for JsonParserSequence is initialized it may
             //   try to access current token; ensure there isn't one
             p.clearCurrentToken();
-            p = JsonParserSequence.createFlattened(tb.asParser(p), p);
+            p = JsonParserSequence.createFlattened(false, tb.asParser(p), p);
             p.nextToken();
         }
         Object value = deser.deserialize(p, ctxt);
diff --git a/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsPropertyTypeDeserializer.java b/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsPropertyTypeDeserializer.java
index 639ef97..d1d096a 100644
--- a/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsPropertyTypeDeserializer.java
+++ b/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsPropertyTypeDeserializer.java
@@ -121,7 +121,7 @@
             // 02-Jul-2016, tatu: Depending on for JsonParserSequence is initialized it may
             //   try to access current token; ensure there isn't one
             p.clearCurrentToken();
-            p = JsonParserSequence.createFlattened(tb.asParser(p), p);
+            p = JsonParserSequence.createFlattened(false, tb.asParser(p), p);
         }
         // Must point to the next value; tb had no current, jp pointed to VALUE_STRING:
         p.nextToken(); // to skip past String value
diff --git a/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsWrapperTypeDeserializer.java b/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsWrapperTypeDeserializer.java
index a683885..02f26ca 100644
--- a/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsWrapperTypeDeserializer.java
+++ b/src/main/java/com/fasterxml/jackson/databind/jsontype/impl/AsWrapperTypeDeserializer.java
@@ -114,7 +114,7 @@
             // 02-Jul-2016, tatu: Depending on for JsonParserSequence is initialized it may
             //   try to access current token; ensure there isn't one
             p.clearCurrentToken();
-            p = JsonParserSequence.createFlattened(tb.asParser(p), p);
+            p = JsonParserSequence.createFlattened(false, tb.asParser(p), p);
             p.nextToken();
         }
         
diff --git a/src/test/java/com/fasterxml/jackson/databind/util/TestTokenBuffer.java b/src/test/java/com/fasterxml/jackson/databind/util/TestTokenBuffer.java
index 6ed62c6..477301e 100644
--- a/src/test/java/com/fasterxml/jackson/databind/util/TestTokenBuffer.java
+++ b/src/test/java/com/fasterxml/jackson/databind/util/TestTokenBuffer.java
@@ -396,7 +396,7 @@
         buf.writeString("test");
         JsonParser p = createParserUsingReader("[ true, null ]");
         
-        JsonParserSequence seq = JsonParserSequence.createFlattened(buf.asParser(), p);
+        JsonParserSequence seq = JsonParserSequence.createFlattened(false, buf.asParser(), p);
         assertEquals(2, seq.containedParsersCount());
 
         assertFalse(p.isClosed());
@@ -449,11 +449,11 @@
         TokenBuffer buf4 = new TokenBuffer(null, false);
         buf4.writeEndArray();
 
-        JsonParserSequence seq1 = JsonParserSequence.createFlattened(buf1.asParser(), buf2.asParser());
+        JsonParserSequence seq1 = JsonParserSequence.createFlattened(false, buf1.asParser(), buf2.asParser());
         assertEquals(2, seq1.containedParsersCount());
-        JsonParserSequence seq2 = JsonParserSequence.createFlattened(buf3.asParser(), buf4.asParser());
+        JsonParserSequence seq2 = JsonParserSequence.createFlattened(false, buf3.asParser(), buf4.asParser());
         assertEquals(2, seq2.containedParsersCount());
-        JsonParserSequence combo = JsonParserSequence.createFlattened(seq1, seq2);
+        JsonParserSequence combo = JsonParserSequence.createFlattened(false, seq1, seq2);
         // should flatten it to have 4 underlying parsers
         assertEquals(4, combo.containedParsersCount());