weso / shex-s

Scala implementation of ShEx

Home Page:http://www.weso.es/shex-s/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Migrate to cats effect 3

labra opened this issue · comments

Migrate to cats effect 3 and fs2 3

At this moment the only failing dependency is decline, but there is already an open issue and a PR supporting cats-effect 3.
Once it is published, we could do the full migration.

The release 2.0.0-RC1 for decline has been published. Now it compiles and runs without arguments.

However, when running with some arguments line:

run validate --schema examples/e1.shex --data examples/e1.ttl --shapeMap examples/e1.shapeMap

it raises the exception:

error] java.lang.NoClassDefFoundError: cats/effect/Sync
[error]         at es.weso.shexs.Main$.infoError(Main.scala:199)
[error]         at es.weso.shexs.Main$.$anonfun$main$3(Main.scala:195)
[error]         at cats.effect.IOFiber.handleErrorWithK(IOFiber.scala:1083)
[error]         at cats.effect.IOFiber.failed(IOFiber.scala:862)
[error]         at cats.effect.IOFiber.uncancelableFailureK(IOFiber.scala:1117)
[error]         at cats.effect.IOFiber.failed(IOFiber.scala:864)
[error]         at cats.effect.IOFiber.runLoop(IOFiber.scala:277)
[error]         at cats.effect.IOFiber.afterBlockingSuccessfulR(IOFiber.scala:964)
[error]         at cats.effect.IOFiber.run(IOFiber.scala:138)
[error]         at cats.effect.unsafe.WorkerThread.runFiber(WorkerThread.scala:162)
[error]         at cats.effect.unsafe.WorkerThread.run(WorkerThread.scala:295)
[error] Caused by: java.lang.ClassNotFoundException: cats.effect.Sync
[error]         at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
[error]         at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
[error]         at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
[error]         ... 11 more
[error] Exception in thread "main" java.lang.NoClassDefFoundError: cats/effect/Sync
[error]         at es.weso.shexs.Main$.infoError(Main.scala:199)
[error]         at es.weso.shexs.Main$.$anonfun$main$3(Main.scala:195)
[error]         at cats.effect.IOFiber.handleErrorWithK(IOFiber.scala:1083)
[error]         at cats.effect.IOFiber.failed(IOFiber.scala:862)
[error]         at cats.effect.IOFiber.uncancelableFailureK(IOFiber.scala:1117)
[error]         at cats.effect.IOFiber.failed(IOFiber.scala:864)
[error]         at cats.effect.IOFiber.runLoop(IOFiber.scala:277)
[error]         at cats.effect.IOFiber.afterBlockingSuccessfulR(IOFiber.scala:964)
[error]         at cats.effect.IOFiber.run(IOFiber.scala:138)
[error]         at cats.effect.unsafe.WorkerThread.runFiber(WorkerThread.scala:162)
[error]         at cats.effect.unsafe.WorkerThread.run(WorkerThread.scala:295)
[error] Caused by: java.lang.ClassNotFoundException: cats.effect.Sync
[error]         at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
[error]         at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
[error]         at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
[error]         ... 11 more
[error] Nonzero exit code returned from runner: 1

The problem was a dependency on console4cats. After removing it, it works.