I have had a chance to look at usage of System.out in JTS-core, and I stand corrected: there are over 1K references to it in live code!
This is for a variety of uses. Some are in methods which are only intended to support debugging. Some are in code which should be moved to the test package. And there are probably other cases - haven't looked through them all (for obvious reasons).
This said, it will require more thought about whether the solution is to replace all usages with output to a logging library. One thing is that if that is done I'd prefer to wrap the logging in an internal API (e.g. perhaps using the Debug class), to avoid proliferating an external API through the code.
I'd also like to go through and remove or move as many System.out calls as possible. But that's going to be a long-term exercise, obviously.
It sounds like it is in test code, and in that case the JARs should certainly be separated, and only the actual core jars used.
I would suggest separating the submissions - one for functional
changes (the GeometryStrategies change) and one or more for the
logging/stack dump related changes. I also wonder if the output
is limited to test code, and if so if this should simply be
separated into a distinct jar from the operational code.
On 3/30/2022 4:05 PM, Bryant, Phil L.
wrote:
While
I’m hopeful the following changes can be merged into a
future release, I certainly understand if it goes against
the JTS design and the PR is rejected.