diff --git a/.gitignore b/.gitignore
index dd94395..ea95219 100644
--- a/.gitignore
+++ b/.gitignore
@@ -85,5 +85,5 @@ examples/**/target/
# any secret keys
*.asc
local/**
-settings-local.xml
+local/settings-local.xml
diff --git a/examples/spring-boot-example/.gitkeep b/examples/spring-boot-example/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/polyglot-bom/pom.xml b/polyglot-bom/pom.xml
new file mode 100644
index 0000000..7267001
--- /dev/null
+++ b/polyglot-bom/pom.xml
@@ -0,0 +1,104 @@
+
+ 4.0.0
+
+
+ io.github.ih0r-d
+ polyglot-adapter-parent
+ 0.0.21-SNAPSHOT
+
+
+ polyglot-bom
+ pom
+
+ polyglot-adapter BOM
+ Bill of Materials for polyglot-adapter dependencies
+
+
+
+
+
+ io.github.ih0r-d
+ polyglot-adapter
+ ${project.version}
+
+
+
+
+ io.github.ih0r-d
+ polyglot-spring-starter
+ ${project.version}
+ true
+
+
+
+
+ org.graalvm.sdk
+ graal-sdk
+ ${graal.version}
+
+
+ org.graalvm.polyglot
+ polyglot
+ ${graal.version}
+
+
+
+
+ org.graalvm.python
+ python-launcher
+ ${graal.version}
+
+
+ org.graalvm.python
+ python-embedding
+ ${graal.version}
+
+
+
+
+ org.graalvm.js
+ js
+ ${graal.version}
+ pom
+
+
+
+
+ org.bouncycastle
+ bcpg-jdk18on
+ ${bcpg.version}
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ ${junit.version}
+
+
+ org.mockito
+ mockito-core
+ ${mockito.version}
+
+
+ org.mockito
+ mockito-inline
+ ${mockito-inline.version}
+
+
+ org.mockito
+ mockito-junit-jupiter
+ ${mockito.version}
+
+
+ org.assertj
+ assertj-core
+ ${assertj.version}
+
+
+
+
+
diff --git a/polyglot-core/pom.xml b/polyglot-core/pom.xml
new file mode 100644
index 0000000..5567bc0
--- /dev/null
+++ b/polyglot-core/pom.xml
@@ -0,0 +1,86 @@
+
+ 4.0.0
+
+
+ io.github.ih0r-d
+ polyglot-adapter-parent
+ 0.0.21-SNAPSHOT
+
+
+ polyglot-adapter
+ jar
+
+ polyglot-adapter core
+ Core library for executing polyglot code via GraalVM
+
+
+
+ org.graalvm.sdk
+ graal-sdk
+
+
+
+ org.graalvm.polyglot
+ polyglot
+
+
+
+ org.graalvm.python
+ python-launcher
+ true
+
+
+
+ org.graalvm.python
+ python-embedding
+ true
+
+
+
+ org.graalvm.js
+ js
+ pom
+ true
+
+
+
+ org.bouncycastle
+ bcpg-jdk18on
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ test
+
+
+
+ org.mockito
+ mockito-core
+ test
+
+
+
+ org.mockito
+ mockito-inline
+ test
+
+
+
+ org.mockito
+ mockito-junit-jupiter
+ test
+
+
+
+ org.assertj
+ assertj-core
+ test
+
+
+
+
diff --git a/src/main/java/io/github/ih0rd/adapter/context/AbstractPolyglotExecutor.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/context/AbstractPolyglotExecutor.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/context/AbstractPolyglotExecutor.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/context/AbstractPolyglotExecutor.java
diff --git a/src/main/java/io/github/ih0rd/adapter/context/JsExecutor.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/context/JsExecutor.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/context/JsExecutor.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/context/JsExecutor.java
diff --git a/src/main/java/io/github/ih0rd/adapter/context/PolyglotHelper.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/context/PolyglotHelper.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/context/PolyglotHelper.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/context/PolyglotHelper.java
diff --git a/src/main/java/io/github/ih0rd/adapter/context/PyExecutor.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/context/PyExecutor.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/context/PyExecutor.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/context/PyExecutor.java
diff --git a/src/main/java/io/github/ih0rd/adapter/context/ResourcesProvider.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/context/ResourcesProvider.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/context/ResourcesProvider.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/context/ResourcesProvider.java
diff --git a/src/main/java/io/github/ih0rd/adapter/context/SupportedLanguage.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/context/SupportedLanguage.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/context/SupportedLanguage.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/context/SupportedLanguage.java
diff --git a/src/main/java/io/github/ih0rd/adapter/exceptions/BindingException.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/BindingException.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/exceptions/BindingException.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/BindingException.java
diff --git a/src/main/java/io/github/ih0rd/adapter/exceptions/EvaluationException.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/EvaluationException.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/exceptions/EvaluationException.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/EvaluationException.java
diff --git a/src/main/java/io/github/ih0rd/adapter/exceptions/InvocationException.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/InvocationException.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/exceptions/InvocationException.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/InvocationException.java
diff --git a/src/main/java/io/github/ih0rd/adapter/exceptions/ScriptNotFoundException.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/ScriptNotFoundException.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/exceptions/ScriptNotFoundException.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/exceptions/ScriptNotFoundException.java
diff --git a/src/main/java/io/github/ih0rd/adapter/utils/CommonUtils.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/utils/CommonUtils.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/utils/CommonUtils.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/utils/CommonUtils.java
diff --git a/src/main/java/io/github/ih0rd/adapter/utils/Constants.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/utils/Constants.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/utils/Constants.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/utils/Constants.java
diff --git a/src/main/java/io/github/ih0rd/adapter/utils/StringCaseConverter.java b/polyglot-core/src/main/java/io/github/ih0rd/adapter/utils/StringCaseConverter.java
similarity index 100%
rename from src/main/java/io/github/ih0rd/adapter/utils/StringCaseConverter.java
rename to polyglot-core/src/main/java/io/github/ih0rd/adapter/utils/StringCaseConverter.java
diff --git a/src/test/java/io/github/ih0rd/adapter/DummyApi.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/DummyApi.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/DummyApi.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/DummyApi.java
diff --git a/src/test/java/io/github/ih0rd/adapter/DummyApiBoxed.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/DummyApiBoxed.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/DummyApiBoxed.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/DummyApiBoxed.java
diff --git a/src/test/java/io/github/ih0rd/adapter/context/BaseExecutorTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/context/BaseExecutorTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/context/BaseExecutorTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/context/BaseExecutorTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/context/PolyglotHelperTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/context/PolyglotHelperTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/context/PolyglotHelperTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/context/PolyglotHelperTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/context/PyExecutorTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/context/PyExecutorTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/context/PyExecutorTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/context/PyExecutorTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/context/ResourcesProviderTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/context/ResourcesProviderTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/context/ResourcesProviderTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/context/ResourcesProviderTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/context/SupportedLanguageTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/context/SupportedLanguageTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/context/SupportedLanguageTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/context/SupportedLanguageTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/exceptions/EvaluationExceptionTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/exceptions/EvaluationExceptionTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/exceptions/EvaluationExceptionTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/exceptions/EvaluationExceptionTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/utils/CommonUtilsTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/utils/CommonUtilsTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/utils/CommonUtilsTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/utils/CommonUtilsTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/utils/ConstantsTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/utils/ConstantsTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/utils/ConstantsTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/utils/ConstantsTest.java
diff --git a/src/test/java/io/github/ih0rd/adapter/utils/StringCaseConverterTest.java b/polyglot-core/src/test/java/io/github/ih0rd/adapter/utils/StringCaseConverterTest.java
similarity index 100%
rename from src/test/java/io/github/ih0rd/adapter/utils/StringCaseConverterTest.java
rename to polyglot-core/src/test/java/io/github/ih0rd/adapter/utils/StringCaseConverterTest.java
diff --git a/src/test/js/dummy_api.js b/polyglot-core/src/test/js/dummy_api.js
similarity index 100%
rename from src/test/js/dummy_api.js
rename to polyglot-core/src/test/js/dummy_api.js
diff --git a/src/test/python/dummy_api.py b/polyglot-core/src/test/python/dummy_api.py
similarity index 100%
rename from src/test/python/dummy_api.py
rename to polyglot-core/src/test/python/dummy_api.py
diff --git a/pom.xml b/pom.xml
index 603a189..949793b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,18 +1,25 @@
4.0.0
io.github.ih0r-d
- polyglot-adapter
+ polyglot-adapter-parent
0.0.21-SNAPSHOT
- jar
+ pom
- polyglot-adapter
+ polyglot-adapter parent
Lightweight Java SDK for executing polyglot code via GraalVM
https://github.com/ih0r-d/polyglot-adapter
+
+ polyglot-bom
+ polyglot-core
+
+
+
+
UTF-8
25
@@ -29,6 +36,7 @@
3.3.1
3.2.8
${env.GPG_PASSPHRASE}
+
25.0.1
6.0.1
5.20.0
@@ -43,12 +51,14 @@
https://www.apache.org/licenses/LICENSE-2.0
+
scm:git:git://github.com/ih0r-d/polyglot-adapter.git
scm:git:ssh://github.com:ih0r-d/polyglot-adapter.git
https://github.com/ih0r-d/polyglot-adapter
HEAD
+
ih0rd
@@ -56,6 +66,7 @@
https://github.com/ih0r-d
+
central
@@ -66,6 +77,7 @@
https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/
+
central
@@ -73,71 +85,82 @@
-
-
- org.graalvm.sdk
- graal-sdk
- ${graal.version}
-
-
- org.graalvm.polyglot
- polyglot
- ${graal.version}
-
-
- org.graalvm.python
- python-launcher
- ${graal.version}
- true
-
-
- org.graalvm.python
- python-embedding
- ${graal.version}
- true
-
-
- org.bouncycastle
- bcpg-jdk18on
- ${bcpg.version}
-
-
- org.graalvm.js
- js
- ${graal.version}
- pom
- true
-
-
- org.junit.jupiter
- junit-jupiter
- ${junit.version}
- test
-
-
- org.mockito
- mockito-core
- ${mockito.version}
- test
-
-
- org.mockito
- mockito-inline
- ${mockito-inline.version}
- test
-
-
- org.mockito
- mockito-junit-jupiter
- ${mockito.version}
- test
-
-
- org.assertj
- assertj-core
- ${assertj.version}
-
-
+
+
+
+
+ io.github.ih0r-d
+ polyglot-adapter
+ ${project.version}
+
+
+
+
+ org.graalvm.sdk
+ graal-sdk
+ ${graal.version}
+
+
+ org.graalvm.polyglot
+ polyglot
+ ${graal.version}
+
+
+
+
+ org.graalvm.python
+ python-launcher
+ ${graal.version}
+
+
+ org.graalvm.python
+ python-embedding
+ ${graal.version}
+
+
+
+
+ org.graalvm.js
+ js
+ ${graal.version}
+ pom
+
+
+
+
+ org.bouncycastle
+ bcpg-jdk18on
+ ${bcpg.version}
+
+
+
+
+ org.junit.jupiter
+ junit-jupiter
+ ${junit.version}
+
+
+ org.mockito
+ mockito-core
+ ${mockito.version}
+
+
+ org.mockito
+ mockito-inline
+ ${mockito-inline.version}
+
+
+ org.mockito
+ mockito-junit-jupiter
+ ${mockito.version}
+
+
+ org.assertj
+ assertj-core
+ ${assertj.version}
+
+
+
@@ -221,7 +244,6 @@
-