XmlMethodSelector#includeMethod was always called before all the other selectors, because it was being invoked from setTestMethods(). Fixed this by deferring this code until includeMethod is really called by TestNG, this time respecting the priorities of the other method selectors
diff --git a/CHANGES.txt b/CHANGES.txt
index 492c746..7810777 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,6 +1,7 @@
===========================================================================
5.5
+Fixed: XmlMethodSelector was always run first regardless of its priority
Added: @BeforeGroups/@AfterGroups can live in classes without @Test methods
Added: DataProvider can now take an ITestContext parameter
Fixed: Wasn't parsing <selector-class-name> correctly