I finished updating versions of most of our 3rd party dependencies *[1]* except for the following:
*1) antlr* 2.7.7 (Jan, 2007) <-- current version 4.6 (Dec, 2016) Upgrading antlr will probably require changing a lot more than imports. I'm going to leave this to someone more familiar with the querying code. *2) jetty* 9.3.6.v20151106 (Nov, 2015) <-- current version 9.4.0.v20161208 (Dec, 2016) 9.4.2.v20170220 (Feb, 2017) I tried upgrading to 9.4.0.v20161208 and RestSecurityIntegrationTest failed. I filed "GEODE-2539: Upgrading Jetty causes RestSecurityIntegrationTest to fail" and I hope to resume working on this soon. *3) jgroups* 3.6.10.Final (Jun, 2016) <-- current version 3.6.13.Final (Feb, 2017) 4.0.0.Final (Feb, 2017) This dependency is used for our distributed system membership. I'm going to leave this to someone more familiar with Geode's use of JGroups. *4) jna* 4.0.0 (Jul, 2013) <-- current version 4.3.0 (Jan, 2017) Upgrading jna to 4.3.0 results in compilation errors in geode-core/src/main/java/org/apache/geode/internal/shared/NativeCallsJNAImpl.java which doesn't appear to have any tests. I filed "GEODE-2557: Upgrade jna dependency" and put this on hold until we have time to write some unit tests for this class. *5) mockito* 1.10.19 (Dec, 2014) <-- current version 2.7.11 (Feb, 2017) 2.7.12 (Feb, 2017) This upgrade results in lots of compilation errors. After changing the broken APIs to the new versions, there are many tests using mockito that fail. The failures are not straight forward. This blog article *[2]* does a good job explaining what I'm seeing when I attempt this upgrade. I filed "GEODE-2558: Upgrade mockito dependency" -- this is going to take quite a bit of work. The tests span all of the Geode components, and it would be ideal if we could have several committers and/or contributors work together on a feature branch to fix the failures. I'll follow-up on this in the near future. [1] https://issues.apache.org/jira/browse/GEODE-2460 [2] https://asolntsev.github.io/en/2016/10/11/mockito-2.1/