This is the alternative PR (requires a bit more checking): https://github.com/apache/groovy/pull/679
On Fri, Mar 30, 2018 at 10:06 PM, Paul King <[email protected]> wrote: > > I have been cleaning up things ready for the rc1 release. I noticed a few > binary compatibility issues that have crept into the code base. There are a > couple in what I deem internal classes so I am not too worried about them > but I'll clean up where it makes sense. > > In groovy.lang.GroovyClassLoader we have two protected properties, > classCache and sourceCache that have different types in 2.4 and 2.5+. Map > vs EvictableCache. > > This will obviously break code built on one version of Groovy that someone > might like to use with the other. It seems we should avoid that. I tried > playing around with deprecating the Map fields and introducing some > alternate fields: > https://github.com/apache/groovy/pull/678 > > But I am not really happy with it. The alternative would be to make > EvictableCache more Map like and revert the field types. It is close but > just a little different and might require some finessing, e.g. we might > make entrySet() throw UnsupportedOperationException for instance. I'll > explore that possibility further but does anyone have alternative thoughts? > > Cheers, Paul. > > >
