Closed ichttt closed 1 year ago
Error: ] The projects in the reactor contain a cyclic reference: Edge between 'Vertex{label='com.aayushatharva.brotli4j:brotli4j:1.9.0'}' and 'Vertex{label='com.aayushatharva.brotli4j:native-osx-x86_64:1.9.0'}' introduces to cycle in the graph com.aayushatharva.brotli4j:native-osx-x86_64:1.9.0 --> com.aayushatharva.brotli4j:brotli4j:1.9.0 --> com.aayushatharva.brotli4j:native-osx-x86_64:1.9.0 @
Error: The projects in the reactor contain a cyclic reference: Edge between 'Vertex{label='com.aayushatharva.brotli4j:brotli4j:1.9.0'}' and 'Vertex{label='com.aayushatharva.brotli4j:native-osx-x86_64:1.9.0'}' introduces to cycle in the graph com.aayushatharva.brotli4j:native-osx-x86_64:1.9.0 --> com.aayushatharva.brotli4j:brotli4j:1.9.0 --> com.aayushatharva.brotli4j:native-osx-x86_64:1.9.0 -> [Help 1
:(
Ah ok I found the reason why: It introduces a cyclic reference when buildung due to the submodules referencing the main module...
Well, the only way to properly fix this is probably by moving the service interface into its own module and adding a dep from brotli4j and the natives to that module. That would also allow me to remove brotli4j-tests again and merge it into the main brotli4j module. Doesn't sound optimal, but it is the only thing I can think of that should work. I'll try to make that change later today.
Should be good now. Rudimentary testing on my linux machine shows everything is still working.
Your change breaks API now. We cannot rename packages.
Technically it does, but I dont't see any other way to split it. As the new jar needs to have its own package for module separation purposes. I also don't think anybody really uses this interface (also least a quick search on grep.app shows no results apart from this repo).
Please find some other way to fix this.
I will remove modules support. It is better to break modules support than breaking API.
Are we talking about the same breaking change? Cause the only breaking change I am seeing is the change of moving the BrotliNativeProvider, which is a class I added for module support, to a different package. This class is really not something brotli4j users should use and has only existed since the 1.9.0 release. If you are still not in favor of moving its package, I have a few ideas:
I would still argue that moving the package of this class, even if it is not a major version change and it is technically a breaking change, is an ok thing to do. But I'll leave that up to you.
By breaking change, I mean changing package names completely. This looks fine. I will try to improve if I can else I will cut release.
Yeah that was only the tests and due to bad refactoring. I though you meant the service interface :)
Should fix #82 Not quite sure yet why I removed it but doesn't seem to cause any issues