diff --git a/.github/workflows/android_node_build.yml b/.github/workflows/android_node_build.yml index 3c2825a0..36be9bc6 100644 --- a/.github/workflows/android_node_build.yml +++ b/.github/workflows/android_node_build.yml @@ -9,7 +9,7 @@ on: env: JAVET_NODE_VERSION: 20.17.0 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 ROOT: /home/runner/work/Javet jobs: diff --git a/.github/workflows/android_v8_build.yml b/.github/workflows/android_v8_build.yml index 4cc8611b..8527a894 100644 --- a/.github/workflows/android_v8_build.yml +++ b/.github/workflows/android_v8_build.yml @@ -9,7 +9,7 @@ on: env: JAVET_V8_VERSION: 12.8.374.17 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 ROOT: /home/runner/work/Javet jobs: diff --git a/.github/workflows/linux_build_artifact.yml b/.github/workflows/linux_build_artifact.yml index 89570ee3..61dc1535 100644 --- a/.github/workflows/linux_build_artifact.yml +++ b/.github/workflows/linux_build_artifact.yml @@ -19,7 +19,7 @@ env: DOCKERHUB_REPO_JAVET: ${{ secrets.DOCKERHUB_REPO_JAVET }} JAVET_NODE_VERSION: 20.17.0 JAVET_V8_VERSION: 12.8.374.17 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 jobs: javet_linux_x86_64: diff --git a/.github/workflows/linux_build_node_v8_image.yml b/.github/workflows/linux_build_node_v8_image.yml index 4a22a4cf..c1307865 100644 --- a/.github/workflows/linux_build_node_v8_image.yml +++ b/.github/workflows/linux_build_node_v8_image.yml @@ -23,7 +23,7 @@ env: DOCKERHUB_REPO_JAVET: ${{ secrets.DOCKERHUB_REPO_JAVET }} JAVET_NODE_VERSION: 20.17.0 JAVET_V8_VERSION: 12.8.374.17 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 # if we skip a job using a job level `if` condition, then any dependent jobs also don't run. # we can skip a step of the job, using a step level `if` condition. diff --git a/.github/workflows/linux_x86_64_build.yml b/.github/workflows/linux_x86_64_build.yml index ca94665a..8331b32a 100644 --- a/.github/workflows/linux_x86_64_build.yml +++ b/.github/workflows/linux_x86_64_build.yml @@ -9,7 +9,7 @@ on: env: JAVET_NODE_VERSION: 20.17.0 JAVET_V8_VERSION: 12.8.374.17 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 ROOT: /home/runner/work/Javet jobs: diff --git a/.github/workflows/macos_arm64_build.yml b/.github/workflows/macos_arm64_build.yml index fc21d11c..ac10ec84 100644 --- a/.github/workflows/macos_arm64_build.yml +++ b/.github/workflows/macos_arm64_build.yml @@ -9,7 +9,7 @@ on: env: JAVET_NODE_VERSION: 20.17.0 JAVET_V8_VERSION: 12.8.374.17 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 ROOT: /Users/runner/work/Javet jobs: diff --git a/.github/workflows/macos_x86_64_build.yml b/.github/workflows/macos_x86_64_build.yml index b4ad6fc4..4851fd96 100644 --- a/.github/workflows/macos_x86_64_build.yml +++ b/.github/workflows/macos_x86_64_build.yml @@ -9,7 +9,7 @@ on: env: JAVET_NODE_VERSION: 20.17.0 JAVET_V8_VERSION: 12.8.374.17 - JAVET_VERSION: 3.1.6 + JAVET_VERSION: 3.1.7 ROOT: /Users/runner/work/Javet jobs: diff --git a/README.rst b/README.rst index d1c36a5c..f2ad5528 100644 --- a/README.rst +++ b/README.rst @@ -75,21 +75,21 @@ Maven com.caoccao.javet javet - 3.1.6 + 3.1.7 com.caoccao.javet javet-linux-arm64 - 3.1.6 + 3.1.7 com.caoccao.javet javet-macos - 3.1.6 + 3.1.7 Gradle Kotlin DSL @@ -97,22 +97,22 @@ Gradle Kotlin DSL .. code-block:: kotlin - implementation("com.caoccao.javet:javet:3.1.6") // Linux and Windows (x86_64) - implementation("com.caoccao.javet:javet-linux-arm64:3.1.6") // Linux (arm64) - implementation("com.caoccao.javet:javet-macos:3.1.6") // Mac OS (x86_64 and arm64) - implementation("com.caoccao.javet:javet-android-node:3.1.6") // Android Node (arm, arm64, x86 and x86_64) - implementation("com.caoccao.javet:javet-android-v8:3.1.6") // Android V8 (arm, arm64, x86 and x86_64) + implementation("com.caoccao.javet:javet:3.1.7") // Linux and Windows (x86_64) + implementation("com.caoccao.javet:javet-linux-arm64:3.1.7") // Linux (arm64) + implementation("com.caoccao.javet:javet-macos:3.1.7") // Mac OS (x86_64 and arm64) + implementation("com.caoccao.javet:javet-android-node:3.1.7") // Android Node (arm, arm64, x86 and x86_64) + implementation("com.caoccao.javet:javet-android-v8:3.1.7") // Android V8 (arm, arm64, x86 and x86_64) Gradle Groovy DSL ^^^^^^^^^^^^^^^^^ .. code-block:: groovy - implementation 'com.caoccao.javet:javet:3.1.6' // Linux and Windows (x86_64) - implementation 'com.caoccao.javet:javet-linux-arm64:3.1.6' // Linux (arm64) - implementation 'com.caoccao.javet:javet-macos:3.1.6' // Mac OS (x86_64 and arm64) - implementation 'com.caoccao.javet:javet-android-node:3.1.6' // Android Node (arm, arm64, x86 and x86_64) - implementation 'com.caoccao.javet:javet-android-v8:3.1.6' // Android V8 (arm, arm64, x86 and x86_64) + implementation 'com.caoccao.javet:javet:3.1.7' // Linux and Windows (x86_64) + implementation 'com.caoccao.javet:javet-linux-arm64:3.1.7' // Linux (arm64) + implementation 'com.caoccao.javet:javet-macos:3.1.7' // Mac OS (x86_64 and arm64) + implementation 'com.caoccao.javet:javet-android-node:3.1.7' // Android Node (arm, arm64, x86 and x86_64) + implementation 'com.caoccao.javet:javet-android-v8:3.1.7' // Android V8 (arm, arm64, x86 and x86_64) Hello Javet ----------- diff --git a/android/javet-android/build.gradle.kts b/android/javet-android/build.gradle.kts index 072d93cb..7067053d 100644 --- a/android/javet-android/build.gradle.kts +++ b/android/javet-android/build.gradle.kts @@ -73,7 +73,7 @@ object Config { const val ANDROIDX_TEST = "1.1.5" const val APPCOMPAT = "1.3.1" const val DESUGAR_JDK_LIBS = "2.0.4" - const val JAVET = "3.1.6" + const val JAVET = "3.1.7" const val JUNIT = "5.10.1" } } diff --git a/android/javet-android/src/main/AndroidManifest.xml b/android/javet-android/src/main/AndroidManifest.xml index 448b2d0a..e26a9a91 100644 --- a/android/javet-android/src/main/AndroidManifest.xml +++ b/android/javet-android/src/main/AndroidManifest.xml @@ -1,7 +1,7 @@ \ No newline at end of file diff --git a/android/pom.xml b/android/pom.xml index afe6191e..422ead19 100644 --- a/android/pom.xml +++ b/android/pom.xml @@ -3,7 +3,7 @@ com.caoccao.javet javet-android - 3.1.6 + 3.1.7 javet aar Javet is Java + V8 (JAVa + V + EighT). It is an awesome way of embedding V8 in Java. @@ -29,7 +29,7 @@ scm:git:git://github.com/caoccao/Javet.git scm:git:git@github.com:caoccao/caoccao.git https://github.com/caoccao/Javet - 3.1.6 + 3.1.7 diff --git a/build.gradle.kts b/build.gradle.kts index 12dc1065..55f87615 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -72,7 +72,7 @@ object Config { const val BYTE_BUDDY = "1.14.10" const val JACKSON_DATABIND = "2.16.0" const val JAVA_VERSION = "1.8" - const val JAVET = "3.1.6" + const val JAVET = "3.1.7" const val JETTY_WEBSOCKET = "9.4.53.v20231009" const val JUNIT = "5.10.1" } diff --git a/cpp/build-android.sh b/cpp/build-android.sh index 791ed4e7..9611c636 100755 --- a/cpp/build-android.sh +++ b/cpp/build-android.sh @@ -2,7 +2,7 @@ # Usage for V8: sh build-android.sh -DV8_DIR=${HOME}/v8 -DCMAKE_ANDROID_NDK=${HOME}/android -DCMAKE_ANDROID_ARCH=arm64 # Usage for Node: sh build-android.sh -DNODE_DIR=${HOME}/node -DCMAKE_ANDROID_NDK=${HOME}/android -DCMAKE_ANDROID_ARCH=arm64 -JAVET_VERSION=3.1.6 +JAVET_VERSION=3.1.7 rm -rf build_android mkdir build_android cd build_android diff --git a/cpp/build-linux-arm64.sh b/cpp/build-linux-arm64.sh index 3ce7cf31..1e951d62 100644 --- a/cpp/build-linux-arm64.sh +++ b/cpp/build-linux-arm64.sh @@ -2,7 +2,7 @@ # Usage for V8: sh build-linux-arm64.sh -DV8_DIR=${HOME}/v8 # Usage for Node: sh build-linux-arm64.sh -DNODE_DIR=${HOME}/node -JAVET_VERSION=3.1.6 +JAVET_VERSION=3.1.7 rm -rf build_linux_arm64 mkdir build_linux_arm64 cd build_linux_arm64 diff --git a/cpp/build-linux-x86_64.sh b/cpp/build-linux-x86_64.sh index 3545943e..48beaa8d 100644 --- a/cpp/build-linux-x86_64.sh +++ b/cpp/build-linux-x86_64.sh @@ -2,7 +2,7 @@ # Usage for V8: sh build-linux-x86_64.sh -DV8_DIR=${HOME}/v8 # Usage for Node: sh build-linux-x86_64.sh -DNODE_DIR=${HOME}/node -JAVET_VERSION=3.1.6 +JAVET_VERSION=3.1.7 rm -rf build_linux_x86_64 mkdir build_linux_x86_64 cd build_linux_x86_64 diff --git a/cpp/build-macos.sh b/cpp/build-macos.sh index 1e8ed4c1..031745d0 100755 --- a/cpp/build-macos.sh +++ b/cpp/build-macos.sh @@ -2,7 +2,7 @@ # Usage for V8: sh build-macos.sh -DV8_DIR=${HOME}/v8 # Usage for Node: sh build-macos.sh -DNODE_DIR=${HOME}/node -JAVET_VERSION=3.1.6 +JAVET_VERSION=3.1.7 rm -rf build_macos mkdir build_macos cd build_macos diff --git a/cpp/build-windows.cmd b/cpp/build-windows.cmd index 03b88865..e12b8ae0 100644 --- a/cpp/build-windows.cmd +++ b/cpp/build-windows.cmd @@ -1,7 +1,7 @@ @echo off REM Usage for V8: build -DV8_DIR=C:\v8 REM Usage for Node: build -DNODE_DIR=C:\node -SET JAVET_VERSION=3.1.6 +SET JAVET_VERSION=3.1.7 rd /s/q build_windows mkdir build_windows cd build_windows diff --git a/cpp/jni/javet_resource_node.rc b/cpp/jni/javet_resource_node.rc index 61506ad4..814c1bf4 100644 --- a/cpp/jni/javet_resource_node.rc +++ b/cpp/jni/javet_resource_node.rc @@ -61,8 +61,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // VS_VERSION_INFO VERSIONINFO - FILEVERSION 3,1,6,0 - PRODUCTVERSION 3,1,6,0 + FILEVERSION 3,1,7,0 + PRODUCTVERSION 3,1,7,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -79,12 +79,12 @@ BEGIN BEGIN VALUE "CompanyName", "caoccao.com" VALUE "FileDescription", "caoccao.com" - VALUE "FileVersion", "3.1.6.0" - VALUE "InternalName", "libjavet-node-windows-x86_64.v.3.1.6.dll" + VALUE "FileVersion", "3.1.7.0" + VALUE "InternalName", "libjavet-node-windows-x86_64.v.3.1.7.dll" VALUE "LegalCopyright", "Copyright (c) 2021-2024." - VALUE "OriginalFilename", "libjavet-node-windows-x86_64.v.3.1.6.dll" + VALUE "OriginalFilename", "libjavet-node-windows-x86_64.v.3.1.7.dll" VALUE "ProductName", "Javet Windows" - VALUE "ProductVersion", "3.1.6.0" + VALUE "ProductVersion", "3.1.7.0" END END BLOCK "VarFileInfo" diff --git a/cpp/jni/javet_resource_v8.rc b/cpp/jni/javet_resource_v8.rc index 89d8274a..08546061 100644 --- a/cpp/jni/javet_resource_v8.rc +++ b/cpp/jni/javet_resource_v8.rc @@ -61,8 +61,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // VS_VERSION_INFO VERSIONINFO - FILEVERSION 3,1,6,0 - PRODUCTVERSION 3,1,6,0 + FILEVERSION 3,1,7,0 + PRODUCTVERSION 3,1,7,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -79,12 +79,12 @@ BEGIN BEGIN VALUE "CompanyName", "caoccao.com" VALUE "FileDescription", "caoccao.com" - VALUE "FileVersion", "3.1.6.0" - VALUE "InternalName", "libjavet-v8-windows-x86_64.v.3.1.6.dll" + VALUE "FileVersion", "3.1.7.0" + VALUE "InternalName", "libjavet-v8-windows-x86_64.v.3.1.7.dll" VALUE "LegalCopyright", "Copyright (c) 2021-2024." - VALUE "OriginalFilename", "libjavet-v8-windows-x86_64.v.3.1.6.dll" + VALUE "OriginalFilename", "libjavet-v8-windows-x86_64.v.3.1.7.dll" VALUE "ProductName", "Javet Windows" - VALUE "ProductVersion", "3.1.6.0" + VALUE "ProductVersion", "3.1.7.0" END END BLOCK "VarFileInfo" diff --git a/docker/android/base.Dockerfile b/docker/android/base.Dockerfile index 949711d7..feb8e4b2 100644 --- a/docker/android/base.Dockerfile +++ b/docker/android/base.Dockerfile @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -# Usage: docker build -t sjtucaocao/javet-android:3.1.6 -f docker/android/base.Dockerfile . +# Usage: docker build -t sjtucaocao/javet-android:3.1.7 -f docker/android/base.Dockerfile . ARG JAVET_V8_VERSION=12.8.374.17 diff --git a/docker/android/build.Dockerfile b/docker/android/build.Dockerfile index 34fe666e..af814f9d 100644 --- a/docker/android/build.Dockerfile +++ b/docker/android/build.Dockerfile @@ -15,7 +15,7 @@ # Usage: docker build -t javet-android:local -f docker/android/build.Dockerfile . -FROM sjtucaocao/javet-android:3.1.6 +FROM sjtucaocao/javet-android:3.1.7 WORKDIR / # Copy Javet diff --git a/docker/linux-arm64/base_all_in_one.Dockerfile b/docker/linux-arm64/base_all_in_one.Dockerfile index 0d778d3c..ad644a65 100644 --- a/docker/linux-arm64/base_all_in_one.Dockerfile +++ b/docker/linux-arm64/base_all_in_one.Dockerfile @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -# Usage: docker build -t sjtucaocao/javet-arm64:3.1.6 -f docker/linux-arm64/base_all_in_one.Dockerfile . +# Usage: docker build -t sjtucaocao/javet-arm64:3.1.7 -f docker/linux-arm64/base_all_in_one.Dockerfile . ARG JAVET_NODE_VERSION=18.15.0 ARG JAVET_V8_VERSION=12.8.374.17 diff --git a/docker/linux-arm64/base_gradle.Dockerfile b/docker/linux-arm64/base_gradle.Dockerfile index 0f82c5da..8927e28f 100644 --- a/docker/linux-arm64/base_gradle.Dockerfile +++ b/docker/linux-arm64/base_gradle.Dockerfile @@ -14,7 +14,7 @@ # limitations under the License. # Usage: docker build \ -# -t sjtucaocao/javet:arm64-3.1.6 \ +# -t sjtucaocao/javet:arm64-3.1.7 \ # --build-arg JAVET_REPO=sjtucaocao/javet \ # -f docker/linux-arm64/base_gradle.Dockerfile . diff --git a/docker/linux-arm64/build_artifact.Dockerfile b/docker/linux-arm64/build_artifact.Dockerfile index 63c7fe8d..9df9c126 100644 --- a/docker/linux-arm64/build_artifact.Dockerfile +++ b/docker/linux-arm64/build_artifact.Dockerfile @@ -18,13 +18,13 @@ # --build-arg JAVET_REPO=sjtucaocao/javet \ # --build-arg JAVET_NODE_VERSION=18.12.1 \ # --build-arg JAVET_V8_VERSION=10.8.168.20 \ -# --build-arg JAVET_VERSION=3.1.6 \ +# --build-arg JAVET_VERSION=3.1.7 \ # -f docker/linux-arm64/build_artifact.Dockerfile . ARG JAVET_REPO=sjtucaocao/javet ARG JAVET_NODE_VERSION=18.12.1 ARG JAVET_V8_VERSION=10.8.168.20 -ARG JAVET_VERSION=3.1.6 +ARG JAVET_VERSION=3.1.7 FROM ${JAVET_REPO}:arm64-base-node_${JAVET_NODE_VERSION} as base-node diff --git a/docker/linux-x86_64/base_all_in_one.Dockerfile b/docker/linux-x86_64/base_all_in_one.Dockerfile index 76b89643..42816a10 100644 --- a/docker/linux-x86_64/base_all_in_one.Dockerfile +++ b/docker/linux-x86_64/base_all_in_one.Dockerfile @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -# Usage: docker build -t sjtucaocao/javet:3.1.6 -f docker/linux-x86_64/base_all_in_one.Dockerfile . +# Usage: docker build -t sjtucaocao/javet:3.1.7 -f docker/linux-x86_64/base_all_in_one.Dockerfile . FROM ubuntu:20.04 WORKDIR / diff --git a/docker/linux-x86_64/base_gradle.Dockerfile b/docker/linux-x86_64/base_gradle.Dockerfile index adc4010c..414f696d 100644 --- a/docker/linux-x86_64/base_gradle.Dockerfile +++ b/docker/linux-x86_64/base_gradle.Dockerfile @@ -14,7 +14,7 @@ # limitations under the License. # Usage: docker build \ -# -t sjtucaocao/javet:x86_64-3.1.6 \ +# -t sjtucaocao/javet:x86_64-3.1.7 \ # --build-arg JAVET_REPO=sjtucaocao/javet \ # -f docker/linux-x86_64/base_gradle.Dockerfile . diff --git a/docker/linux-x86_64/build.env b/docker/linux-x86_64/build.env index fe042c15..b7d73927 100644 --- a/docker/linux-x86_64/build.env +++ b/docker/linux-x86_64/build.env @@ -1,4 +1,4 @@ JAVET_REPO=sjtucaocao/javet -JAVET_VERSION=3.1.6 +JAVET_VERSION=3.1.7 JAVET_V8_VERSION=12.8.374.17 JAVET_NODE_VERSION=20.17.0 diff --git a/docker/linux-x86_64/build_all_in_one.Dockerfile b/docker/linux-x86_64/build_all_in_one.Dockerfile index c56bf39b..7a085dcd 100644 --- a/docker/linux-x86_64/build_all_in_one.Dockerfile +++ b/docker/linux-x86_64/build_all_in_one.Dockerfile @@ -15,7 +15,7 @@ # Usage: docker build -t javet:local -f docker/linux-x86_64/build_all_in_one.Dockerfile . -FROM sjtucaocao/javet:3.1.6 +FROM sjtucaocao/javet:3.1.7 WORKDIR / # Copy Javet diff --git a/docker/linux-x86_64/build_artifact.Dockerfile b/docker/linux-x86_64/build_artifact.Dockerfile index 5bf6eeb0..1c46a24c 100644 --- a/docker/linux-x86_64/build_artifact.Dockerfile +++ b/docker/linux-x86_64/build_artifact.Dockerfile @@ -18,13 +18,13 @@ # --build-arg JAVET_REPO=sjtucaocao/javet \ # --build-arg JAVET_NODE_VERSION=18.12.1 \ # --build-arg JAVET_V8_VERSION=10.8.168.20 \ -# --build-arg JAVET_VERSION=3.1.6 \ +# --build-arg JAVET_VERSION=3.1.7 \ # -f docker/linux-x86_64/build_artifact.Dockerfile . ARG JAVET_REPO=sjtucaocao/javet ARG JAVET_NODE_VERSION=18.12.1 ARG JAVET_V8_VERSION=10.8.168.20 -ARG JAVET_VERSION=3.1.6 +ARG JAVET_VERSION=3.1.7 FROM ${JAVET_REPO}:x86_64-base-node_${JAVET_NODE_VERSION} as base-v8 diff --git a/docker/windows-x86_64/base.Dockerfile b/docker/windows-x86_64/base.Dockerfile index c2521bc2..61470a8c 100644 --- a/docker/windows-x86_64/base.Dockerfile +++ b/docker/windows-x86_64/base.Dockerfile @@ -29,7 +29,7 @@ # The following dockerfile has been out of date because it still uses # Visual Studio 2019 Community. Please contact the maintainer if you want an upgrade. -# Usage: docker build -t sjtucaocao/javet-windows:3.1.6 -m 4G -f docker/windows-x86_64/base.Dockerfile . +# Usage: docker build -t sjtucaocao/javet-windows:3.1.7 -m 4G -f docker/windows-x86_64/base.Dockerfile . ARG JAVET_NODE_VERSION=20.17.0 ARG JAVET_V8_VERSION=12.8.374.17 diff --git a/docker/windows-x86_64/build.Dockerfile b/docker/windows-x86_64/build.Dockerfile index cdd773e0..0ed1b1ed 100644 --- a/docker/windows-x86_64/build.Dockerfile +++ b/docker/windows-x86_64/build.Dockerfile @@ -15,7 +15,7 @@ # Usage: docker build -t javet:local -f docker/windows-x86_64/build.Dockerfile . -FROM sjtucaocao/javet-windows:3.1.6 +FROM sjtucaocao/javet-windows:3.1.7 SHELL ["cmd", "/S", "/C"] WORKDIR / diff --git a/docs/conf.py b/docs/conf.py index 0888e661..22a027af 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -22,7 +22,7 @@ author = 'Sam Cao' # The full version, including alpha/beta/rc tags -release = '3.1.6' +release = '3.1.7' # -- General configuration --------------------------------------------------- diff --git a/docs/release_notes/release_notes_3_1.rst b/docs/release_notes/release_notes_3_1.rst index b4cef102..a8fdc22d 100644 --- a/docs/release_notes/release_notes_3_1.rst +++ b/docs/release_notes/release_notes_3_1.rst @@ -2,6 +2,11 @@ Release Notes 3.1.x =================== +3.1.7 +----- + +* Fixed race condition in ``V8Guard`` + 3.1.6 Node.js v20.17.0 ---------------------- diff --git a/docs/tutorial/basic/installation.rst b/docs/tutorial/basic/installation.rst index b5964af6..60e50ad2 100644 --- a/docs/tutorial/basic/installation.rst +++ b/docs/tutorial/basic/installation.rst @@ -16,21 +16,21 @@ Maven com.caoccao.javet javet - 3.1.6 + 3.1.7 com.caoccao.javet javet-linux-arm64 - 3.1.6 + 3.1.7 com.caoccao.javet javet-macos - 3.1.6 + 3.1.7 .. tab:: Complete @@ -38,7 +38,7 @@ Maven .. code-block:: xml - 3.1.6 + 3.1.7 @@ -115,11 +115,11 @@ Gradle Kotlin DSL .. code-block:: kotlin - implementation("com.caoccao.javet:javet:3.1.6") // Linux and Windows (x86_64) - implementation("com.caoccao.javet:javet-linux-arm64:3.1.6") // Linux (arm64) - implementation("com.caoccao.javet:javet-macos:3.1.6") // Mac OS (x86_64 and arm64) - implementation("com.caoccao.javet:javet-android-node:3.1.6") // Android Node (arm, arm64, x86 and x86_64) - implementation("com.caoccao.javet:javet-android-v8:3.1.6") // Android V8 (arm, arm64, x86 and x86_64) + implementation("com.caoccao.javet:javet:3.1.7") // Linux and Windows (x86_64) + implementation("com.caoccao.javet:javet-linux-arm64:3.1.7") // Linux (arm64) + implementation("com.caoccao.javet:javet-macos:3.1.7") // Mac OS (x86_64 and arm64) + implementation("com.caoccao.javet:javet-android-node:3.1.7") // Android Node (arm, arm64, x86 and x86_64) + implementation("com.caoccao.javet:javet-android-v8:3.1.7") // Android V8 (arm, arm64, x86 and x86_64) .. tab:: Complete @@ -130,11 +130,11 @@ Gradle Kotlin DSL val os = OperatingSystem.current() val cpuArch = System.getProperty("os.arch") if (os.isMacOsX) { - implementation("com.caoccao.javet:javet:3.1.6") + implementation("com.caoccao.javet:javet:3.1.7") } else if (os.isLinux && (cpuArch == "aarch64" || cpuArch == "arm64")) { - implementation("com.caoccao.javet:javet-linux-arm64:3.1.6") + implementation("com.caoccao.javet:javet-linux-arm64:3.1.7") } else { - implementation("com.caoccao.javet:javet-macos:3.1.6") + implementation("com.caoccao.javet:javet-macos:3.1.7") } Gradle Groovy DSL @@ -142,11 +142,11 @@ Gradle Groovy DSL .. code-block:: groovy - implementation 'com.caoccao.javet:javet:3.1.6' // Linux and Windows (x86_64) - implementation 'com.caoccao.javet:javet-linux-arm64:3.1.6' // Linux (arm64) - implementation 'com.caoccao.javet:javet-macos:3.1.6' // Mac OS (x86_64 and arm64) - implementation 'com.caoccao.javet:javet-android-node:3.1.6' // Android Node (arm, arm64, x86 and x86_64) - implementation 'com.caoccao.javet:javet-android-v8:3.1.6' // Android V8 (arm, arm64, x86 and x86_64) + implementation 'com.caoccao.javet:javet:3.1.7' // Linux and Windows (x86_64) + implementation 'com.caoccao.javet:javet-linux-arm64:3.1.7' // Linux (arm64) + implementation 'com.caoccao.javet:javet-macos:3.1.7' // Mac OS (x86_64 and arm64) + implementation 'com.caoccao.javet:javet-android-node:3.1.7' // Android Node (arm, arm64, x86 and x86_64) + implementation 'com.caoccao.javet:javet-android-v8:3.1.7' // Android V8 (arm, arm64, x86 and x86_64) OS Compatibility ================ diff --git a/scripts/node/javet-rebuild/rebuild.cmd b/scripts/node/javet-rebuild/rebuild.cmd index ff47572a..b0a0d570 100644 --- a/scripts/node/javet-rebuild/rebuild.cmd +++ b/scripts/node/javet-rebuild/rebuild.cmd @@ -1,5 +1,5 @@ @echo off -SET NODE_LIB_FILE="..\..\..\..\..\..\build\libs\libjavet-node-windows-x86_64.v.3.1.6.lib" +SET NODE_LIB_FILE="..\..\..\..\..\..\build\libs\libjavet-node-windows-x86_64.v.3.1.7.lib" cd %NODE_MODULE_ROOT% call node-gyp clean call node-gyp configure --module_name=%NODE_MODULE_NAME% --module_path=%NODE_MODULE_PATH% --node_lib_file=%NODE_LIB_FILE% diff --git a/scripts/node/javet-rebuild/rebuild.sh b/scripts/node/javet-rebuild/rebuild.sh index 58f04151..8195394b 100755 --- a/scripts/node/javet-rebuild/rebuild.sh +++ b/scripts/node/javet-rebuild/rebuild.sh @@ -1 +1 @@ -patchelf --add-needed libjavet-node-linux-x86_64.v.3.1.6.so ${NODE_MODULE_FILE} +patchelf --add-needed libjavet-node-linux-x86_64.v.3.1.7.so ${NODE_MODULE_FILE} diff --git a/scripts/python/change_javet_version.py b/scripts/python/change_javet_version.py index b5111c14..1a7a1d3f 100644 --- a/scripts/python/change_javet_version.py +++ b/scripts/python/change_javet_version.py @@ -186,7 +186,7 @@ def _update(self, relative_file_path: str, line_separator: str, *patterns: list) logging.info(' Updated.') def main(): - change_javet_version = ChangeJavetVersion('3.1.6') + change_javet_version = ChangeJavetVersion('3.1.7') change_javet_version.update() return 0 diff --git a/src/main/java/com/caoccao/javet/interop/V8Guard.java b/src/main/java/com/caoccao/javet/interop/V8Guard.java index 69920244..4384fdcf 100644 --- a/src/main/java/com/caoccao/javet/interop/V8Guard.java +++ b/src/main/java/com/caoccao/javet/interop/V8Guard.java @@ -83,9 +83,11 @@ public final class V8Guard implements IJavetClosable { */ public void cancel() { if (!isClosed()) { - PriorityBlockingQueue v8GuardQueue = v8Runtime.getV8Host().getV8GuardDaemon().getV8GuardQueue(); - boolean ignored = v8GuardQueue.remove(this); closed = true; + synchronized (v8Runtime.getCloseLock()) { + PriorityBlockingQueue v8GuardQueue = v8Runtime.getV8Host().getV8GuardDaemon().getV8GuardQueue(); + boolean ignored = v8GuardQueue.remove(this); + } } } diff --git a/src/main/java/com/caoccao/javet/interop/V8Host.java b/src/main/java/com/caoccao/javet/interop/V8Host.java index d306ff10..4b57cb25 100644 --- a/src/main/java/com/caoccao/javet/interop/V8Host.java +++ b/src/main/java/com/caoccao/javet/interop/V8Host.java @@ -573,7 +573,7 @@ public void run() { if (!(!v8Guard.isDebugModeEnabled() && IS_IN_DEBUG_MODE)) { V8Runtime v8Runtime = v8Guard.getV8Runtime(); synchronized (v8Runtime.getCloseLock()) { - if (!v8Runtime.isClosed() && v8Runtime.isInUse()) { + if (!v8Guard.isClosed() && !v8Runtime.isClosed() && v8Runtime.isInUse()) { v8Runtime.terminateExecution(); v8Runtime.getLogger().logWarn( "Execution was terminated after {0}ms.", @@ -582,9 +582,16 @@ public void run() { } } } else { - v8GuardQueue.add(v8Guard); - long sleepMillis = Math.min(v8Guard.getEndTimeMillis() - now, sleepIntervalMillis); - TimeUnit.MILLISECONDS.sleep(sleepMillis); + V8Runtime v8Runtime = v8Guard.getV8Runtime(); + synchronized (v8Runtime.getCloseLock()) { + if (!v8Guard.isClosed() && !v8Runtime.isClosed()) { + v8GuardQueue.add(v8Guard); + long sleepMillis = Math.min(v8Guard.getEndTimeMillis() - now, sleepIntervalMillis); + if (sleepMillis > 0) { + TimeUnit.MILLISECONDS.sleep(sleepMillis); + } + } + } } } catch (InterruptedException ignored) { break; diff --git a/src/main/java/com/caoccao/javet/interop/loader/JavetLibLoader.java b/src/main/java/com/caoccao/javet/interop/loader/JavetLibLoader.java index b9e78086..3d636b6f 100644 --- a/src/main/java/com/caoccao/javet/interop/loader/JavetLibLoader.java +++ b/src/main/java/com/caoccao/javet/interop/loader/JavetLibLoader.java @@ -45,7 +45,7 @@ public final class JavetLibLoader { * * @since 0.8.0 */ - public static final String LIB_VERSION = "3.1.6"; + public static final String LIB_VERSION = "3.1.7"; private static final String ANDROID_ABI_ARM = "armeabi-v7a"; private static final String ANDROID_ABI_ARM64 = "arm64-v8a"; private static final String ANDROID_ABI_X86 = "x86";