<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/hamcrest-core-1.1.jar</filename>
    </added>
    <added>
      <filename>src/test/java/org/junit/tests/assertion/EachTest.java</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -3,6 +3,6 @@
 	&lt;classpathentry kind=&quot;src&quot; path=&quot;src/main/java&quot;/&gt;
 	&lt;classpathentry kind=&quot;src&quot; path=&quot;src/test/java&quot;/&gt;
 	&lt;classpathentry kind=&quot;con&quot; path=&quot;org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5&quot;/&gt;
-	&lt;classpathentry kind=&quot;lib&quot; path=&quot;lib/hamcrest-core-1.2.jar&quot;/&gt;
+	&lt;classpathentry exported=&quot;true&quot; kind=&quot;lib&quot; path=&quot;lib/hamcrest-core-1.1.jar&quot;/&gt;
 	&lt;classpathentry kind=&quot;output&quot; path=&quot;bin&quot;/&gt;
 &lt;/classpath&gt;</diff>
      <filename>.classpath</filename>
    </modified>
    <modified>
      <diff>@@ -4,9 +4,9 @@ import static java.util.Arrays.asList;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.notNullValue;
 import static org.hamcrest.CoreMatchers.nullValue;
-import static org.hamcrest.CoreMatchers.everyItem;
 import org.hamcrest.Matcher;
 import org.junit.internal.AssumptionViolatedException;
+import org.junit.internal.matchers.Each;
 
 /**
  * A set of methods useful for stating assumptions about the conditions in which a test is meaningful.
@@ -44,7 +44,7 @@ public class Assume {
 	 * @param objects
 	 */
 		public static void assumeNotNull(Object... objects) {
-		assumeThat(asList(objects), everyItem(notNullValue()));
+		assumeThat(asList(objects), Each.each(notNullValue()));
 	}
 
 	    /**</diff>
      <filename>src/main/java/org/junit/Assume.java</filename>
    </modified>
    <modified>
      <diff>@@ -3,7 +3,7 @@ package org.junit.experimental.results;
 import org.hamcrest.BaseMatcher;
 import org.hamcrest.Description;
 import org.hamcrest.Matcher;
-import org.hamcrest.TypeSafeMatcher;
+import org.junit.internal.matchers.TypeSafeMatcher;
 
 /**
  * Matchers on a PrintableResult, to enable JUnit self-tests.</diff>
      <filename>src/main/java/org/junit/experimental/results/ResultMatchers.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,14 +1,34 @@
 package org.junit.internal.matchers;
 
+import static org.hamcrest.CoreMatchers.allOf;
+import static org.hamcrest.CoreMatchers.anyOf;
+import org.hamcrest.BaseMatcher;
+import org.hamcrest.Description;
 import org.hamcrest.Matcher;
 
-/**
- * @deprectated Use org.hamcrest.core.CombinableMatcher directly
- */
-@Deprecated
-public class CombinableMatcher&lt;T&gt; extends org.hamcrest.core.CombinableMatcher&lt;T&gt; {
-	// should only be using static factories
-	private CombinableMatcher(Matcher&lt;? super T&gt; matcher) {
-		super(matcher);
+public class CombinableMatcher&lt;T&gt; extends BaseMatcher&lt;T&gt; {
+
+	private final Matcher&lt;? extends T&gt; fMatcher;
+
+	public CombinableMatcher(Matcher&lt;? extends T&gt; matcher) {
+		fMatcher= matcher;
+	}
+
+	public boolean matches(Object item) {
+		return fMatcher.matches(item);
+	}
+
+	public void describeTo(Description description) {
+		description.appendDescriptionOf(fMatcher);
+	}
+	
+	@SuppressWarnings(&quot;unchecked&quot;)
+	public CombinableMatcher&lt;T&gt; and(Matcher&lt;? extends T&gt; matcher) {
+		return new CombinableMatcher&lt;T&gt;(allOf(matcher, fMatcher));
+	}
+
+	@SuppressWarnings(&quot;unchecked&quot;)
+	public CombinableMatcher&lt;T&gt; or(Matcher&lt;? extends T&gt; matcher) {
+		return new CombinableMatcher&lt;T&gt;(anyOf(matcher, fMatcher));
 	}
 }
\ No newline at end of file</diff>
      <filename>src/main/java/org/junit/internal/matchers/CombinableMatcher.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,15 +1,24 @@
 package org.junit.internal.matchers;
 
+import static org.hamcrest.CoreMatchers.not;
+import static org.junit.internal.matchers.IsCollectionContaining.hasItem;
+import org.hamcrest.BaseMatcher;
+import org.hamcrest.Description;
 import org.hamcrest.Matcher;
-import org.hamcrest.core.Every;
 
-
-/**
- * @deprecated use org.hamcrest.core.Every
- */
-@Deprecated
 public class Each {
 	public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; each(final Matcher&lt;T&gt; individual) {
-		return Every.everyItem(individual);
+		final Matcher&lt;Iterable&lt;T&gt;&gt; allItemsAre = not(hasItem(not(individual)));
+		
+		return new BaseMatcher&lt;Iterable&lt;T&gt;&gt;() {
+			public boolean matches(Object item) {
+				return allItemsAre.matches(item);
+			}
+			
+			public void describeTo(Description description) {
+				description.appendText(&quot;each &quot;);
+				individual.describeTo(description);
+			}
+		};
 	}
 }</diff>
      <filename>src/main/java/org/junit/internal/matchers/Each.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,15 +1,67 @@
 package org.junit.internal.matchers;
 
+import static org.hamcrest.core.AllOf.allOf;
+import static org.hamcrest.core.IsEqual.equalTo;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.hamcrest.Description;
+import org.hamcrest.Factory;
 import org.hamcrest.Matcher;
 
 // Copied (hopefully temporarily) from hamcrest-library
-/**
- * @deprecated use org.hamcrest.core.IsCollectionContaining directly
- */
-@Deprecated 
-public class IsCollectionContaining&lt;T&gt; extends org.hamcrest.core.IsCollectionContaining&lt;T&gt; {
-	// Client code should just use static factories, so this should be OK
-	private IsCollectionContaining(Matcher&lt;? super T&gt; elementMatcher) {
-		super(elementMatcher);
-	}
+public class IsCollectionContaining&lt;T&gt; extends TypeSafeMatcher&lt;Iterable&lt;T&gt;&gt; {
+    private final Matcher&lt;? extends T&gt; elementMatcher;
+
+    public IsCollectionContaining(Matcher&lt;? extends T&gt; elementMatcher) {
+        this.elementMatcher = elementMatcher;
+    }
+
+    @Override
+	public boolean matchesSafely(Iterable&lt;T&gt; collection) {
+        for (T item : collection) {
+            if (elementMatcher.matches(item)){
+                return true;
+            }
+        }
+        return false;
+    }
+
+    public void describeTo(Description description) {
+        description
+        	.appendText(&quot;a collection containing &quot;)
+        	.appendDescriptionOf(elementMatcher);
+    }
+
+    @Factory
+    public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; hasItem(Matcher&lt;? extends T&gt; elementMatcher) {
+        return new IsCollectionContaining&lt;T&gt;(elementMatcher);
+    }
+
+    @Factory
+    public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; hasItem(T element) {
+        return hasItem(equalTo(element));
+    }
+
+    @Factory
+    public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; hasItems(Matcher&lt;? extends T&gt;... elementMatchers) {
+        Collection&lt;Matcher&lt;? extends Iterable&lt;T&gt;&gt;&gt; all
+                = new ArrayList&lt;Matcher&lt;? extends Iterable&lt;T&gt;&gt;&gt;(elementMatchers.length);
+        for (Matcher&lt;? extends T&gt; elementMatcher : elementMatchers) {
+            all.add(hasItem(elementMatcher));
+        }
+        return allOf(all);
+    }
+
+    @Factory
+    public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; hasItems(T... elements) {
+        Collection&lt;Matcher&lt;? extends Iterable&lt;T&gt;&gt;&gt; all
+                = new ArrayList&lt;Matcher&lt;? extends Iterable&lt;T&gt;&gt;&gt;(elements.length);
+        for (T element : elements) {
+            all.add(hasItem(element));
+        }
+        return allOf(all);
+    }
+
 }</diff>
      <filename>src/main/java/org/junit/internal/matchers/IsCollectionContaining.java</filename>
    </modified>
    <modified>
      <diff>@@ -2,14 +2,12 @@
  */
 package org.junit.internal.matchers;
 
-import org.hamcrest.CoreMatchers;
 import org.hamcrest.Factory;
 import org.hamcrest.Matcher;
 
 /**
- * @deprectated Use org.hamcrest.core.StringContains directly
+ * Tests if the argument is a string that contains a substring.
  */
-@Deprecated
 public class StringContains extends SubstringMatcher {
     public StringContains(String substring) {
         super(substring);
@@ -27,7 +25,7 @@ public class StringContains extends SubstringMatcher {
 
     @Factory
     public static Matcher&lt;String&gt; containsString(String substring) {
-        return CoreMatchers.containsString(substring);
+        return new StringContains(substring);
     }
 
 }
\ No newline at end of file</diff>
      <filename>src/main/java/org/junit/internal/matchers/StringContains.java</filename>
    </modified>
    <modified>
      <diff>@@ -2,10 +2,6 @@ package org.junit.internal.matchers;
 
 import org.hamcrest.Description;
 
-/**
- * @deprectated Use org.hamcrest.core.SubstringMatcher directly
- */
-@Deprecated
 public abstract class SubstringMatcher extends TypeSafeMatcher&lt;String&gt; {
 
     protected final String substring;</diff>
      <filename>src/main/java/org/junit/internal/matchers/SubstringMatcher.java</filename>
    </modified>
    <modified>
      <diff>@@ -10,10 +10,6 @@ import org.hamcrest.BaseMatcher;
  *
  * @author Joe Walnes
  */
-/**
- * @deprectated Use org.hamcrest.TypeSafeMatcher
- */
-@Deprecated
 public abstract class TypeSafeMatcher&lt;T&gt; extends BaseMatcher&lt;T&gt; {
 
     private Class&lt;?&gt; expectedType;</diff>
      <filename>src/main/java/org/junit/internal/matchers/TypeSafeMatcher.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,14 +1,10 @@
 package org.junit.matchers;
 
-import static org.hamcrest.CoreMatchers.anyOf;
-import static org.hamcrest.CoreMatchers.equalTo;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.hamcrest.CoreMatchers;
 import org.hamcrest.Matcher;
-import org.hamcrest.core.CombinableMatcher;
+import org.junit.internal.matchers.CombinableMatcher;
+import org.junit.internal.matchers.Each;
+import org.junit.internal.matchers.IsCollectionContaining;
+import org.junit.internal.matchers.StringContains;
 
 /**
  * Convenience import class: these are useful matchers for use with the assertThat method, but they are
@@ -18,31 +14,25 @@ public class JUnitMatchers {
 	/**
 	 * @param element
 	 * @return A matcher matching any collection containing element
-	 * @deprecated Use org.hamcrest.CoreMatchers.hasItem
 	 */
-	@Deprecated
-	public static &lt;T&gt; Matcher&lt;Iterable&lt;? super T&gt;&gt; hasItem(T element) {
-		return CoreMatchers.&lt;T&gt;hasItem(element);
+	public static &lt;T&gt; org.hamcrest.Matcher&lt;java.lang.Iterable&lt;T&gt;&gt; hasItem(T element) {
+		return IsCollectionContaining.hasItem(element);
 	}
 
 	/**
 	 * @param elementMatcher
 	 * @return A matcher matching any collection containing an element matching elementMatcher
-	 * @deprecated Use org.hamcrest.CoreMatchers.hasItem
 	 */
-	@Deprecated
-    public static &lt;T&gt; Matcher&lt;Iterable&lt;? super T&gt;&gt; hasItem(Matcher&lt;? super T&gt; elementMatcher) {
-		return CoreMatchers.&lt;T&gt;hasItem(elementMatcher);
+	public static &lt;T&gt; org.hamcrest.Matcher&lt;java.lang.Iterable&lt;T&gt;&gt; hasItem(org.hamcrest.Matcher&lt;? extends T&gt; elementMatcher) {
+		return IsCollectionContaining.hasItem(elementMatcher);
 	}
 
 	/**
 	 * @param elements
 	 * @return A matcher matching any collection containing every element in elements
-	 * @deprecated Use org.hamcrest.CoreMatchers.hasItems
 	 */
-	@Deprecated
 	public static &lt;T&gt; org.hamcrest.Matcher&lt;java.lang.Iterable&lt;T&gt;&gt; hasItems(T... elements) {
-		return CoreMatchers.hasItems(elements);
+		return IsCollectionContaining.hasItems(elements);
 	}
 
 	/**
@@ -50,31 +40,25 @@ public class JUnitMatchers {
 	 * @return A matcher matching any collection containing at least one element that matches 
 	 *         each matcher in elementMatcher (this may be one element matching all matchers,
 	 *         or different elements matching each matcher)
-	 * @deprecated Use org.hamcrest.CoreMatchers.hasItems
 	 */
-	@Deprecated
-	public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; hasItems(Matcher&lt;? super T&gt;... elementMatchers) {
-		return CoreMatchers.hasItems(elementMatchers);
+	public static &lt;T&gt; org.hamcrest.Matcher&lt;java.lang.Iterable&lt;T&gt;&gt; hasItems(org.hamcrest.Matcher&lt;? extends T&gt;... elementMatchers) {
+		return IsCollectionContaining.hasItems(elementMatchers);
 	}
 
 	/**
 	 * @param elementMatcher
 	 * @return A matcher matching any collection in which every element matches elementMatcher
-	 * @deprecated use CoreMatchers.everyItem directly
 	 */
-	@Deprecated
-	public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; each(final Matcher&lt;T&gt; elementMatcher) {
-		return CoreMatchers.everyItem(elementMatcher);
+	public static &lt;T&gt; Matcher&lt;Iterable&lt;T&gt;&gt; everyItem(final Matcher&lt;T&gt; elementMatcher) {
+		return Each.each(elementMatcher);
 	}
 
 	/**
 	 * @param substring
 	 * @return a matcher matching any string that contains substring
-	 * @deprecated Use org.hamcrest.CoreMatchers.containsString
 	 */
-	@Deprecated
 	public static org.hamcrest.Matcher&lt;java.lang.String&gt; containsString(java.lang.String substring) {
-		return CoreMatchers.containsString(substring);
+		return StringContains.containsString(substring);
 	}
 	
 	/**
@@ -84,57 +68,16 @@ public class JUnitMatchers {
 	 * &lt;/pre&gt;
 	 */
 	public static &lt;T&gt; CombinableMatcher&lt;T&gt; both(Matcher&lt;T&gt; matcher) {
-		return CoreMatchers.both(matcher);
+		return new CombinableMatcher&lt;T&gt;(matcher);
 	}
 	
 	/**
 	 * This is useful for fluently combining matchers where either may pass, for example:
 	 * &lt;pre&gt;
-	 *   assertThat(string, either(containsString(&quot;a&quot;)).or(containsString(&quot;b&quot;)));
+	 *   assertThat(string, both(containsString(&quot;a&quot;)).and(containsString(&quot;b&quot;)));
 	 * &lt;/pre&gt;
-	 * 
-	 * If you want to say either(is(3)).or(is(4)), and are prevented,
-	 * please see isOneOf(...) below.
 	 */
 	public static &lt;T&gt; CombinableMatcher&lt;T&gt; either(Matcher&lt;T&gt; matcher) {
-		return CoreMatchers.either(matcher);
-	}
-	
-	/**
-	 * This is sugar for the situation where you want to specify
-	 * a finite list of concrete objects that can match.
-	 * For example:
-	 * &lt;pre&gt;
-	 *   assertThat(string, isOneOf(&quot;a&quot;, &quot;b&quot;, &quot;c&quot;));
-	 *   // is equivalent to
-	 *   assertThat(string, anyOf(is(&quot;a&quot;), is(&quot;b&quot;), is(&quot;c&quot;)))
-	 * &lt;/pre&gt;
-	 */
-	public static &lt;T&gt; Matcher&lt;T&gt; isOneOf(T... objects) {
-		List&lt;Matcher&lt;? super T&gt;&gt; matchers = new ArrayList&lt;Matcher&lt;? super T&gt;&gt;();
-		for (T each : objects) {
-			matchers.add(equalTo(each));
-		}
-		return anyOf(matchers);
-	}
-	
-	/**
-	 * Loosens type parameter, in order to use a Matcher 
-	 * in a place where Java doesn't want to type-check:
-	 *
-	 * Goofy example:
-	 * &lt;pre&gt;
-	 *   assertThat(3, matches(containsString(&quot;a&quot;)));
-	 * &lt;/pre&gt;
-	 * 
-	 * Real example:
-	 * &lt;pre&gt;
-	 *   assertThat(3, either(matches(is(String.class))).or(
-	 *		                  matches(is(Integer.class))));
-	 * &lt;/pre&gt;
-	 */
-	@SuppressWarnings(&quot;unchecked&quot;)
-	public static &lt;T&gt; Matcher&lt;T&gt; matches(Matcher&lt;?&gt; matcher) {
-		return (Matcher&lt;T&gt;)matcher;
-	}
+		return new CombinableMatcher&lt;T&gt;(matcher);
+	}	
 }</diff>
      <filename>src/main/java/org/junit/matchers/JUnitMatchers.java</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,7 @@ import org.junit.runners.Suite;
 import org.junit.runners.Suite.SuiteClasses;
 import org.junit.tests.assertion.AssertionTest;
 import org.junit.tests.assertion.BothTest;
+import org.junit.tests.assertion.EachTest;
 import org.junit.tests.deprecated.JUnit4ClassRunnerTest;
 import org.junit.tests.description.AnnotatedDescriptionTest;
 import org.junit.tests.description.SuiteDescriptionTest;
@@ -110,6 +111,7 @@ import org.junit.tests.validation.ValidationTest;
 	AnnotatedDescriptionTest.class,
 	BothTest.class,
 	AssumptionViolatedExceptionTest.class,
+	EachTest.class,
 	ExperimentalTests.class,
 	InheritedTestTest.class,
 	TestClassTest.class,</diff>
      <filename>src/test/java/org/junit/tests/AllTests.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,19 +1,12 @@
 package org.junit.tests.assertion;
 
-import static org.hamcrest.CoreMatchers.any;
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.not;
-import static org.hamcrest.CoreMatchers.sameInstance;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assume.assumeTrue;
 import static org.junit.matchers.JUnitMatchers.both;
+import static org.junit.matchers.JUnitMatchers.containsString;
 import static org.junit.matchers.JUnitMatchers.either;
-import static org.junit.matchers.JUnitMatchers.isOneOf;
-import static org.junit.matchers.JUnitMatchers.matches;
-
-import java.util.Arrays;
-
 import org.hamcrest.Matcher;
 import org.junit.Test;
 import org.junit.experimental.theories.DataPoint;
@@ -24,18 +17,17 @@ import org.junit.runner.RunWith;
 @RunWith(Theories.class)
 public class BothTest {
 	@DataPoint
-	public static Matcher&lt;? super Integer&gt; IS_3= is(3);
+	public static Matcher&lt;Integer&gt; IS_3= is(3);
 
 	@DataPoint
-	public static Matcher&lt;? super Integer&gt; IS_4= is(4);
+	public static Matcher&lt;Integer&gt; IS_4= is(4);
 
 	@DataPoint
 	public static int THREE= 3;
 
 	@Test
 	public void bothPasses() {
-		assertThat(3, both(any(Integer.class)).and(is(3)));
-		assertThat(&quot;ab&quot;, both(containsString(&quot;a&quot;)).and(containsString(&quot;b&quot;)));
+		assertThat(3, both(is(Integer.class)).and(is(3)));
 	}
 
 	@Theory
@@ -54,18 +46,7 @@ public class BothTest {
 
 	@Test
 	public void eitherPasses() {
-		assertThat(3, either(sameInstance(3)).or(sameInstance(4)));
-		assertThat(3, either(matches(is(String.class))).or(
-				matches(is(Integer.class))));
-		assertThat(&quot;a&quot;, either(sameInstance(&quot;a&quot;)).or(sameInstance(&quot;b&quot;)));
-	}
-
-	@SuppressWarnings(&quot;unchecked&quot;)
-	@Test
-	public void isOneOfPasses() {
-		assertThat(3, isOneOf(3, 4));
-		assertThat(Arrays.asList(&quot;a&quot;), isOneOf(Arrays.asList(&quot;a&quot;), Arrays
-				.asList(&quot;b&quot;)));
+		assertThat(3, either(is(3)).or(is(4)));
 	}
 
 	@Theory
@@ -83,9 +64,8 @@ public class BothTest {
 				|| third.matches(value));
 		assertThat(value, either(first).or(second).or(third));
 	}
-
-	@Test
-	public void superclassesAreOkInSecondPositionOnly() {
-		assertThat(&quot;a&quot;, both(containsString(&quot;a&quot;)).and(is(String.class)));
+	
+	@Test public void subclassesAreOkInSecondPositionOnly() {
+		assertThat(3, both(is(Integer.class)).and(is(3)));
 	}
 }</diff>
      <filename>src/test/java/org/junit/tests/assertion/BothTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,5 @@
 package org.junit.tests.experimental;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.fail;
@@ -10,6 +9,7 @@ import static org.junit.Assume.assumeThat;
 import static org.junit.Assume.assumeTrue;
 import static org.junit.experimental.results.PrintableResult.testResult;
 import static org.junit.experimental.results.ResultMatchers.isSuccessful;
+import static org.junit.internal.matchers.StringContains.containsString;
 import org.junit.Assume;
 import org.junit.Before;
 import org.junit.BeforeClass;</diff>
      <filename>src/test/java/org/junit/tests/experimental/AssumptionTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,10 @@
 package org.junit.tests.experimental;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.notNullValue;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assume.assumeThat;
+import static org.junit.internal.matchers.StringContains.containsString;
 import org.hamcrest.Matcher;
 import org.hamcrest.StringDescription;
 import org.junit.Test;</diff>
      <filename>src/test/java/org/junit/tests/experimental/AssumptionViolatedExceptionTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,11 +1,11 @@
 package org.junit.tests.experimental.max;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
+import static org.junit.matchers.JUnitMatchers.containsString;
 
 import java.io.File;
 import java.util.ArrayList;</diff>
      <filename>src/test/java/org/junit/tests/experimental/max/MaxStarterTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -4,9 +4,9 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 import org.hamcrest.Description;
 import org.hamcrest.Matcher;
-import org.hamcrest.TypeSafeMatcher;
 import org.junit.Test;
 import org.junit.experimental.ParallelComputer;
+import org.junit.internal.matchers.TypeSafeMatcher;
 import org.junit.runner.JUnitCore;
 import org.junit.runner.Result;
 import org.junit.runner.RunWith;</diff>
      <filename>src/test/java/org/junit/tests/experimental/parallel/ParallelClassTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -4,9 +4,9 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 import org.hamcrest.Description;
 import org.hamcrest.Matcher;
-import org.hamcrest.TypeSafeMatcher;
 import org.junit.Test;
 import org.junit.experimental.ParallelComputer;
+import org.junit.internal.matchers.TypeSafeMatcher;
 import org.junit.runner.JUnitCore;
 import org.junit.runner.Result;
 </diff>
      <filename>src/test/java/org/junit/tests/experimental/parallel/ParallelMethodTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -2,8 +2,8 @@ package org.junit.tests.experimental.results;
 
 import static java.util.Arrays.asList;
 import static org.hamcrest.CoreMatchers.allOf;
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.junit.Assert.assertThat;
+import static org.junit.internal.matchers.StringContains.containsString;
 
 import java.util.Arrays;
 
@@ -17,6 +17,7 @@ import org.junit.runner.notification.Failure;
 
 @RunWith(Theories.class)
 public class PrintableResultTest {
+	@SuppressWarnings(&quot;unchecked&quot;)
 	@Theory(nullsAccepted= false)
 	public void backTraceHasGoodToString(String descriptionName,
 			final String stackTraceClassName) {</diff>
      <filename>src/test/java/org/junit/tests/experimental/results/PrintableResultTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,12 +1,11 @@
 package org.junit.tests.experimental.results;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
+import static org.junit.internal.matchers.StringContains.containsString;
 import org.junit.Test;
 import org.junit.experimental.results.ResultMatchers;
 import org.junit.experimental.theories.Theory;
-
 public class ResultMatchersTest {
 	@Test
 	public void hasFailuresHasGoodDescription() {</diff>
      <filename>src/test/java/org/junit/tests/experimental/results/ResultMatchersTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,5 @@
 package org.junit.tests.experimental.rules;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
@@ -8,6 +7,7 @@ import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 import static org.junit.experimental.results.PrintableResult.testResult;
 import static org.junit.experimental.results.ResultMatchers.hasSingleFailureContaining;
+import static org.junit.matchers.JUnitMatchers.containsString;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;</diff>
      <filename>src/test/java/org/junit/tests/experimental/rules/RulesTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,8 @@
 package org.junit.tests.experimental.rules;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
+import static org.junit.matchers.JUnitMatchers.containsString;
 import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;</diff>
      <filename>src/test/java/org/junit/tests/experimental/rules/TimeoutRuleTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,10 @@
 package org.junit.tests.experimental.theories;
 
-import static org.hamcrest.CoreMatchers.hasItem;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assume.assumeTrue;
+import static org.junit.matchers.JUnitMatchers.hasItem;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Method;</diff>
      <filename>src/test/java/org/junit/tests/experimental/theories/ParameterSignatureTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,10 @@
 package org.junit.tests.experimental.theories;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.not;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assume.assumeThat;
+import static org.junit.internal.matchers.StringContains.containsString;
 import org.junit.Test;
 import org.junit.experimental.theories.DataPoint;
 import org.junit.experimental.theories.Theories;</diff>
      <filename>src/test/java/org/junit/tests/experimental/theories/ParameterizedAssertionErrorTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,12 +1,12 @@
 package org.junit.tests.experimental.theories.runner;
 
-import static org.junit.matchers.JUnitMatchers.both;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
 import static org.junit.experimental.results.PrintableResult.testResult;
 import static org.junit.experimental.results.ResultMatchers.failureCountIs;
 import static org.junit.experimental.results.ResultMatchers.hasFailureContaining;
 import static org.junit.experimental.results.ResultMatchers.hasSingleFailureContaining;
+import static org.junit.matchers.JUnitMatchers.both;
 import org.junit.Test;
 import org.junit.experimental.theories.DataPoint;
 import org.junit.experimental.theories.Theories;
@@ -123,4 +123,4 @@ public class UnsuccessfulWithDataPointFields {
 				testResult(TheoriesMustBePublic.class),
 				hasSingleFailureContaining(&quot;public&quot;));
 	}
-}
\ No newline at end of file
+}</diff>
      <filename>src/test/java/org/junit/tests/experimental/theories/runner/UnsuccessfulWithDataPointFields.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,11 +1,11 @@
 package org.junit.tests.experimental.theories.runner;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.not;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assume.assumeThat;
 import static org.junit.experimental.results.PrintableResult.testResult;
+import static org.junit.internal.matchers.StringContains.containsString;
 import org.hamcrest.Matcher;
 import org.junit.experimental.theories.DataPoint;
 import org.junit.experimental.theories.DataPoints;</diff>
      <filename>src/test/java/org/junit/tests/experimental/theories/runner/WhenNoParametersMatch.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,13 +1,13 @@
 package org.junit.tests.experimental.theories.runner;
 
-import static org.hamcrest.CoreMatchers.containsString;
-import static org.hamcrest.CoreMatchers.everyItem;
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.CoreMatchers.not;
 import static org.hamcrest.CoreMatchers.nullValue;
 import static org.junit.Assert.assertThat;
 import static org.junit.experimental.results.PrintableResult.testResult;
 import static org.junit.experimental.results.ResultMatchers.isSuccessful;
+import static org.junit.internal.matchers.Each.each;
+import static org.junit.internal.matchers.StringContains.containsString;
 
 import java.lang.reflect.Method;
 import java.util.ArrayList;
@@ -147,6 +147,6 @@ public class WithDataPointMethod {
 
 	private Matcher&lt;Iterable&lt;Failure&gt;&gt; empty() {
 		Matcher&lt;Failure&gt; nullValue= nullValue();
-		return everyItem(nullValue);
+		return each(nullValue);
 	}
 }</diff>
      <filename>src/test/java/org/junit/tests/experimental/theories/runner/WithDataPointMethod.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,12 +1,12 @@
 package org.junit.tests.experimental.theories.runner;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.experimental.results.PrintableResult.testResult;
 import static org.junit.experimental.results.ResultMatchers.failureCountIs;
 import static org.junit.experimental.results.ResultMatchers.isSuccessful;
+import static org.junit.matchers.JUnitMatchers.containsString;
 import org.junit.Test;
 import org.junit.experimental.theories.DataPoint;
 import org.junit.experimental.theories.Theories;</diff>
      <filename>src/test/java/org/junit/tests/experimental/theories/runner/WithOnlyTestAnnotations.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 package org.junit.tests.junit3compatibility;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
+import static org.junit.matchers.JUnitMatchers.containsString;
 import junit.framework.JUnit4TestAdapter;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;</diff>
      <filename>src/test/java/org/junit/tests/junit3compatibility/AllTestsTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 package org.junit.tests.running.classes;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.experimental.results.PrintableResult.testResult;
+import static org.junit.matchers.JUnitMatchers.containsString;
 
 import java.util.Arrays;
 import java.util.Collection;</diff>
      <filename>src/test/java/org/junit/tests/running/classes/ParameterizedTestTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,8 @@
 package org.junit.tests.running.methods;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.junit.Assert.assertThat;
 import static org.junit.matchers.JUnitMatchers.both;
+import static org.junit.matchers.JUnitMatchers.containsString;
 
 import java.util.Collection;
 import java.util.HashSet;</diff>
      <filename>src/test/java/org/junit/tests/running/methods/AnnotationTest.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,11 +1,11 @@
 package org.junit.tests.running.methods;
 
-import static org.hamcrest.CoreMatchers.containsString;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
+import static org.junit.matchers.JUnitMatchers.containsString;
 
 import java.io.PrintWriter;
 import java.io.StringWriter;</diff>
      <filename>src/test/java/org/junit/tests/running/methods/TimeoutTest.java</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>lib/hamcrest-core-1.2.jar</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>017ce048adbc360fed2e8d7ae55dfbb3dbdc76dc</id>
    </parent>
  </parents>
  <author>
    <name>David Saff</name>
    <email>saff@dhcp-172-31-197-71.cam.corp.google.com</email>
  </author>
  <url>http://github.com/KentBeck/junit/commit/4e2455b1f142bdf8f07383082638718695e51224</url>
  <id>4e2455b1f142bdf8f07383082638718695e51224</id>
  <committed-date>2009-07-20T07:35:10-07:00</committed-date>
  <authored-date>2009-07-20T07:35:10-07:00</authored-date>
  <message>Rollback to hamcrest 1.1</message>
  <tree>2706dbd7942db0f08a4b3d86320cd3d34da480af</tree>
  <committer>
    <name>David Saff</name>
    <email>saff@dhcp-172-31-197-71.cam.corp.google.com</email>
  </committer>
</commit>
