@@ -363,6 +363,7 @@ lazy val enso = (project in file("."))
363
363
`persistance`,
364
364
`persistance-dsl`,
365
365
pkg,
366
+ `poi-wrapper`,
366
367
`polyglot-api`,
367
368
`polyglot-api-macros`,
368
369
`process-utils`,
@@ -618,7 +619,7 @@ val bouncyCastle = Seq(
618
619
val jlineVersion = " 3.26.3"
619
620
val jline = Seq (
620
621
" org.jline" % " jline-terminal" % jlineVersion,
621
- " org.jline" % " jline-terminal-jna " % jlineVersion,
622
+ " org.jline" % " jline-terminal-jni " % jlineVersion, // The terminal provider jna has been deprecated, check your configuration.
622
623
" org.jline" % " jline-reader" % jlineVersion,
623
624
" org.jline" % " jline-native" % jlineVersion
624
625
)
@@ -1384,6 +1385,20 @@ lazy val `jna-wrapper` = project
1384
1385
}
1385
1386
)
1386
1387
1388
+ lazy val `poi-wrapper` = project
1389
+ .in(file(" lib/java/poi-wrapper" ))
1390
+ .settings(
1391
+ frgaalJavaCompilerSetting,
1392
+ version := " 0.1" ,
1393
+ autoScalaLibrary := false ,
1394
+ libraryDependencies ++= Seq (
1395
+ " org.apache.poi" % " poi-ooxml" % poiOoxmlVersion
1396
+ ),
1397
+ assemblyMergeStrategy := { case _ =>
1398
+ MergeStrategy .preferProject
1399
+ }
1400
+ )
1401
+
1387
1402
lazy val `runtime-utils` = project
1388
1403
.in(file(" lib/java/runtime-utils" ))
1389
1404
.enablePlugins(JPMSPlugin )
@@ -1435,6 +1450,7 @@ lazy val `directory-watcher-wrapper` = project
1435
1450
)
1436
1451
}
1437
1452
)
1453
+ .dependsOn(`jna-wrapper` % " provided" )
1438
1454
1439
1455
lazy val `fansi-wrapper` = project
1440
1456
.in(file(" lib/java/fansi-wrapper" ))
@@ -1495,14 +1511,16 @@ lazy val `akka-wrapper` = project
1495
1511
" com.google.protobuf" % " protobuf-java" % googleProtobufVersion,
1496
1512
" io.github.java-diff-utils" % " java-diff-utils" % javaDiffVersion,
1497
1513
" org.reactivestreams" % " reactive-streams" % reactiveStreamsVersion,
1498
- " net.java.dev.jna" % " jna" % jnaVersion,
1499
1514
" io.spray" %% " spray-json" % sprayJsonVersion
1500
1515
),
1501
1516
javaModuleName := " org.enso.akka.wrapper" ,
1502
1517
Compile / moduleDependencies ++= slf4jApi ++ Seq (
1503
1518
" com.google.protobuf" % " protobuf-java" % googleProtobufVersion,
1504
1519
" org.reactivestreams" % " reactive-streams" % reactiveStreamsVersion
1505
1520
),
1521
+ Compile / internalModuleDependencies := Seq (
1522
+ (`jna-wrapper` / Compile / exportedModule).value
1523
+ ),
1506
1524
assembly / assemblyExcludedJars := {
1507
1525
val excludedJars = JPMSUtils .filterModulesFromUpdate(
1508
1526
update.value,
@@ -1511,8 +1529,7 @@ lazy val `akka-wrapper` = project
1511
1529
" com.typesafe" % " config" % typesafeConfigVersion,
1512
1530
" io.github.java-diff-utils" % " java-diff-utils" % javaDiffVersion,
1513
1531
" com.google.protobuf" % " protobuf-java" % googleProtobufVersion,
1514
- " org.reactivestreams" % " reactive-streams" % reactiveStreamsVersion,
1515
- " net.java.dev.jna" % " jna" % jnaVersion
1532
+ " org.reactivestreams" % " reactive-streams" % reactiveStreamsVersion
1516
1533
),
1517
1534
streams.value.log,
1518
1535
moduleName.value,
@@ -1549,6 +1566,7 @@ lazy val `akka-wrapper` = project
1549
1566
)
1550
1567
}
1551
1568
)
1569
+ .dependsOn(`jna-wrapper` % " provided" )
1552
1570
1553
1571
lazy val `zio-wrapper` = project
1554
1572
.in(file(" lib/java/zio-wrapper" ))
@@ -3902,7 +3920,7 @@ lazy val `engine-runner` = project
3902
3920
val NI_MODULES =
3903
3921
" org.graalvm.nativeimage,org.graalvm.nativeimage.builder,org.graalvm.nativeimage.base,org.graalvm.nativeimage.driver,org.graalvm.nativeimage.librarysupport,org.graalvm.nativeimage.objectfile,org.graalvm.nativeimage.pointsto,com.oracle.graal.graal_enterprise,com.oracle.svm.svm_enterprise"
3904
3922
val JDK_MODULES =
3905
- " java.desktop,java. naming,java.net.http,jdk.charsets,jdk.crypto.ec,jdk.localedata,jdk.httpserver,java.rmi"
3923
+ " java.naming,java.net.http,jdk.charsets,jdk.crypto.ec,jdk.localedata,jdk.httpserver,java.rmi"
3906
3924
val DEBUG_MODULES = " jdk.jdwp.agent"
3907
3925
val PYTHON_MODULES = " jdk.security.auth,java.naming"
3908
3926
@@ -3982,6 +4000,7 @@ lazy val `engine-runner` = project
3982
4000
" -H:+AddAllCharsets" ,
3983
4001
" -H:+IncludeAllLocales" ,
3984
4002
" -H:+RunReachabilityHandlersConcurrently" ,
4003
+ " -R:-InstallSegfaultHandler" ,
3985
4004
// Workaround a problem with build-/runtime-initialization conflict
3986
4005
// by disabling this service provider
3987
4006
" -H:ServiceLoaderFeatureExcludeServiceProviders=net.snowflake.client.core.FileTypeDetector" ,
@@ -4285,12 +4304,13 @@ lazy val `os-environment` =
4285
4304
val targetDir = (Test / target).value
4286
4305
NativeImage .buildNativeImage(
4287
4306
" test-os-env" ,
4288
- staticOnLinux = true ,
4307
+ staticOnLinux = false ,
4289
4308
targetDir = targetDir,
4290
4309
mainClass = Some (" org.enso.os.environment.TestRunner" ),
4291
4310
additionalOptions = Seq (
4292
4311
" -ea" ,
4293
- " --features=org.enso.os.environment.TestCollectorFeature"
4312
+ " --features=org.enso.os.environment.TestCollectorFeature" ,
4313
+ " -R:-InstallSegfaultHandler"
4294
4314
)
4295
4315
)
4296
4316
}.value,
@@ -4301,7 +4321,7 @@ lazy val `os-environment` =
4301
4321
val exeFile =
4302
4322
(Test / target).value / (" test-os-env" + exeSuffix)
4303
4323
val binPath = exeFile.getAbsolutePath
4304
- val res = binPath ! logger
4324
+ val res = Process ( Seq ( binPath), None , " JAVA_OPTS " -> " " ) ! logger
4305
4325
if (res != 0 ) {
4306
4326
logger.error(" Some test in os-environment failed" )
4307
4327
throw new TestsFailedException ()
@@ -5027,6 +5047,11 @@ lazy val `std-table` = project
5027
5047
" org.mockito" % " mockito-core" % mockitoJavaVersion % Test ,
5028
5048
" org.mockito" % " mockito-junit-jupiter" % mockitoJavaVersion % Test
5029
5049
),
5050
+ Compile / unmanagedJars := {
5051
+ Seq (
5052
+ Attributed .blank((`poi-wrapper` / assembly).value)
5053
+ )
5054
+ },
5030
5055
Compile / packageBin := {
5031
5056
val result = (Compile / packageBin).value
5032
5057
val cacheStoreFactory = streams.value.cacheStoreFactory
@@ -5037,13 +5062,21 @@ lazy val `std-table` = project
5037
5062
ignoreScalaLibrary = true ,
5038
5063
libraryUpdates = (Compile / update).value,
5039
5064
unmanagedClasspath = (Compile / unmanagedJars).value,
5040
- logger = streams.value.log,
5041
- cacheStoreFactory = cacheStoreFactory,
5042
- previousRun = None
5065
+ ignoreDependencies = Some (
5066
+ Seq (
5067
+ " org.apache.poi" % " poi" % poiOoxmlVersion,
5068
+ " org.apache.poi" % " poi-ooxml" % poiOoxmlVersion,
5069
+ " org.apache.poi" % " poi-ooxml-lite" % poiOoxmlVersion
5070
+ )
5071
+ ),
5072
+ logger = streams.value.log,
5073
+ cacheStoreFactory = cacheStoreFactory,
5074
+ previousRun = None
5043
5075
)
5044
5076
result
5045
5077
}
5046
5078
)
5079
+ .dependsOn(`poi-wrapper`)
5047
5080
.dependsOn(`std-base` % " provided" )
5048
5081
5049
5082
lazy val extractNativeLibs = taskKey[AnalysisOfExtractedNativeLibs ](
@@ -5082,7 +5115,8 @@ lazy val `std-image` = project
5082
5115
`image-polyglot-root`,
5083
5116
Seq (" std-image.jar" , " opencv.jar" ),
5084
5117
ignoreScalaLibrary = true ,
5085
- ignoreDependency = Some (" org.openpnp" % " opencv" % opencvVersion),
5118
+ ignoreDependencies =
5119
+ Some (Seq (" org.openpnp" % " opencv" % opencvVersion)),
5086
5120
libraryUpdates = (Compile / update).value,
5087
5121
logger = logger,
5088
5122
cacheStoreFactory = cacheStoreFactory,
@@ -5515,7 +5549,6 @@ lazy val `std-tableau` = project
5515
5549
unmanagedClasspath = unmanagedClasspath,
5516
5550
previousRun = prev
5517
5551
)
5518
-
5519
5552
StdBits
5520
5553
.extractNativeLibsFromTableau(
5521
5554
`std-tableau-polyglot-root`,
0 commit comments