Open mikera opened 5 years ago
As per the current design/implementation, below mentioned java classes are tightly coupled with Squid.java classes, and it is not possible to remove that dependency. Also, the current version of squid is 0.6.2(https://mvnrepository.com/artifact/com.oceanprotocol/squid/0.6.2) which need java 11. Classes: Ocean.java SquidAgent SquidAsset AEVMAccount
The only way I can think as of now is to re-design Starfish-java and make is de-couple with squid-java.
It will not be simple to just modify the scope of squid-java in the pom to test/runtime and it will be de-coupled. Can we have a core library of starfish may be starfish-core, which will have all the current functionality except integration with Ocean Network? Also, we will publish starfish-network, which will have starfish -core + the Ocean Network.
Also, it will help with Surfer integration, as now if someone wants to use surfer, all the library will be getting downloaded(starfish-clj,starfish-java,squid-java, all network lib) and it take a huge amount of time. Also, the java version in surfer version needs to upgrade to 11. Kindly suggest?
What would be helpful is a way that:
I think this should be possible, given Java's pretty strong focus on backward compatibility. We just need to compile starfish with Java 8 I think.
Can just skip Squid tests when running in Java 8 environment
We should ideally be able to support Java 8 if possible, since this is still in long term support and may still be used in many enterprise environments.
Will need to: a) Analyse dependencies, and ensure Java 8 compatibility if possible b) Ensure we are testing against Java 8 in CI as well as 11,12 etc.