This is an automated email from the ASF dual-hosted git repository.

chaokunyang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/fury.git


The following commit(s) were added to refs/heads/main by this push:
     new a02b0d68 chore(doc): bump release version to 0.8.0 (#1869)
a02b0d68 is described below

commit a02b0d689cce596831d165911de341c4a0bfc227
Author: Shawn Yang <[email protected]>
AuthorDate: Sat Oct 5 00:33:55 2024 -0600

    chore(doc): bump release version to 0.8.0 (#1869)
    
    ## What does this PR do?
    
    bump release version to 0.8.0
    
    ## Related issues
    
    <!--
    Is there any related issue? Please attach here.
    
    - #xxxx0
    - #xxxx1
    - #xxxx2
    -->
    
    ## Does this PR introduce any user-facing change?
    
    <!--
    If any user-facing interface changes, please [open an
    issue](https://github.com/apache/fury/issues/new/choose) describing the
    need to do so and update the document if necessary.
    -->
    
    - [ ] Does this PR introduce any public API change?
    - [ ] Does this PR introduce any binary protocol compatibility change?
    
    ## Benchmark
    
    <!--
    When the PR has an impact on performance (if you don't know whether the
    PR will have an impact on performance, you can submit the PR first, and
    if it will have impact on performance, the code reviewer will explain
    it), be sure to attach a benchmark data here.
    -->
---
 README.md                                         | 14 +++++++--
 ci/release.py                                     |  4 +--
 docs/guide/scala_guide.md                         | 36 +++++++++++++++--------
 integration_tests/graalvm_tests/pom.xml           |  2 +-
 integration_tests/jdk_compatibility_tests/pom.xml |  2 +-
 integration_tests/jpms_tests/pom.xml              |  2 +-
 integration_tests/latest_jdk_tests/pom.xml        |  2 +-
 java/benchmark/pom.xml                            |  2 +-
 java/fury-core/pom.xml                            |  2 +-
 java/fury-format/pom.xml                          |  2 +-
 java/fury-test-core/pom.xml                       |  2 +-
 java/fury-testsuite/pom.xml                       |  2 +-
 java/pom.xml                                      |  2 +-
 javascript/packages/fury/package.json             |  2 +-
 javascript/packages/hps/package.json              |  2 +-
 python/pyfury/__init__.py                         |  2 +-
 rust/Cargo.toml                                   |  2 +-
 17 files changed, 50 insertions(+), 32 deletions(-)

diff --git a/README.md b/README.md
index ebed7352..6dd7149a 100644
--- a/README.md
+++ b/README.md
@@ -124,20 +124,28 @@ Release version:
 <dependency>
   <groupId>org.apache.fury</groupId>
   <artifactId>fury-core</artifactId>
-  <version>0.7.1</version>
+  <version>0.8.0</version>
 </dependency>
 <!-- row/arrow format support -->
 <!-- <dependency>
   <groupId>org.apache.fury</groupId>
   <artifactId>fury-format</artifactId>
-  <version>0.7.1</version>
+  <version>0.8.0</version>
 </dependency> -->
 ```
 
 ### Scala
 
+Scala2:
+
+```sbt
+libraryDependencies += "org.apache.fury" % "fury-scala_2.13" % "0.8.0"
+```
+
+Scala3:
+
 ```sbt
-libraryDependencies += "org.apache.fury" % "fury-core" % "0.7.1"
+libraryDependencies += "org.apache.fury" % "fury-scala_3" % "0.8.0"
 ```
 
 ### Python
diff --git a/ci/release.py b/ci/release.py
index be2c8a4a..0f110461 100644
--- a/ci/release.py
+++ b/ci/release.py
@@ -223,11 +223,11 @@ def _update_rust_version(lines, v):
 
 def _update_python_version(lines, v: str):
     for index, line in enumerate(lines):
-        if "version = " in line:
+        if "__version__ = " in line:
             v = v.replace("-alpha", "a")
             v = v.replace("-beta", "b")
             v = v.replace("-rc", "rc")
-            lines[index] = f'version = "{v}"\n'
+            lines[index] = f'__version__ = "{v}"\n'
             break
 
 
diff --git a/docs/guide/scala_guide.md b/docs/guide/scala_guide.md
index 2f78afd6..83efd1b4 100644
--- a/docs/guide/scala_guide.md
+++ b/docs/guide/scala_guide.md
@@ -16,8 +16,16 @@ Scala 2 and 3 are both supported.
 
 ## Install
 
+To add a dependency on Fury scala for scala 2 with sbt, use the following:
+
 ```sbt
-libraryDependencies += "org.apache.fury" % "fury-core" % "0.7.1"
+libraryDependencies += "org.apache.fury" % "fury-scala_2.13" % "0.8.0"
+```
+
+To add a dependency on Fury scala for scala 3 with sbt, use the following:
+
+```sbt
+libraryDependencies += "org.apache.fury" % "fury-scala_3" % "0.8.0"
 ```
 
 ## Fury creation
@@ -25,11 +33,25 @@ libraryDependencies += "org.apache.fury" % "fury-core" % 
"0.7.1"
 When using fury for scala serialization, you should create fury at least with 
following options:
 
 ```scala
+import org.apache.fury.Fury
+import org.apache.fury.serializer.scala.ScalaSerializers
+import 
org.apache.fury.serializer.collection.CollectionSerializers.DefaultJavaCollectionSerializer
+
 val fury = Fury.builder()
   .withScalaOptimizationEnabled(true)
   .requireClassRegistration(true)
   .withRefTracking(true)
   .build()
+
+// Register optimized fury serializers for scala
+ScalaSerializers.registerSerializers(fury)
+// serialize range as (start, step, end) instead of collection
+// this will be handled in next version automatically.
+fury.registerSerializer(classOf[Range.Inclusive], 
classOf[DefaultJavaCollectionSerializer])
+fury.registerSerializer(classOf[Range.Exclusive], 
classOf[DefaultJavaCollectionSerializer])
+fury.registerSerializer(classOf[NumericRange], 
classOf[DefaultJavaCollectionSerializer])
+fury.registerSerializer(classOf[NumericRange.Inclusive], 
classOf[DefaultJavaCollectionSerializer])
+fury.registerSerializer(classOf[NumericRange.Exclusive], 
classOf[DefaultJavaCollectionSerializer])
 ```
 
 Depending on the object types you serialize, you may need to register some 
scala internal types:
@@ -123,15 +145,3 @@ println(fury.deserialize(fury.serialize(opt)))
 val opt1: Option[Long] = None
 println(fury.deserialize(fury.serialize(opt1)))
 ```
-
-## Performance
-
-Scala `pojo/bean/case/object` are supported by fury jit well, the performance 
is as good as fury java.
-
-Scala collections and generics doesn't follow java collection framework, and 
is not fully integrated with Fury JIT in current release version. The 
performance won't be as good as fury collections serialization for java.
-
-The execution for scala collections will invoke Java serialization API 
`writeObject/readObject/writeReplace/readResolve/readObjectNoData/Externalizable`
 with fury `ObjectStream` implementation. Although 
`org.apache.fury.serializer.ObjectStreamSerializer` is much faster than JDK 
`ObjectOutputStream/ObjectInputStream`, but it still doesn't know how use scala 
collection generics.
-
-In future we plan to provide more optimization for scala types, see 
https://github.com/apache/fury/issues/682, stay tuned!
-
-Scala collections serialization is finished in 
https://github.com/apache/fury/pull/1073, if you want better performance, 
please use fury snapshot version.
diff --git a/integration_tests/graalvm_tests/pom.xml 
b/integration_tests/graalvm_tests/pom.xml
index 5a2083d6..f0680425 100644
--- a/integration_tests/graalvm_tests/pom.xml
+++ b/integration_tests/graalvm_tests/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.fury</groupId>
     <artifactId>fury-parent</artifactId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
     <relativePath>../../java</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
diff --git a/integration_tests/jdk_compatibility_tests/pom.xml 
b/integration_tests/jdk_compatibility_tests/pom.xml
index cd970438..9ee31e81 100644
--- a/integration_tests/jdk_compatibility_tests/pom.xml
+++ b/integration_tests/jdk_compatibility_tests/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.fury</groupId>
     <artifactId>fury-parent</artifactId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
     <relativePath>../../java</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
diff --git a/integration_tests/jpms_tests/pom.xml 
b/integration_tests/jpms_tests/pom.xml
index fec837f8..1b11d462 100644
--- a/integration_tests/jpms_tests/pom.xml
+++ b/integration_tests/jpms_tests/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.fury</groupId>
     <artifactId>fury-parent</artifactId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
     <relativePath>../../java</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
diff --git a/integration_tests/latest_jdk_tests/pom.xml 
b/integration_tests/latest_jdk_tests/pom.xml
index 06e01567..548a0c1e 100644
--- a/integration_tests/latest_jdk_tests/pom.xml
+++ b/integration_tests/latest_jdk_tests/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.fury</groupId>
     <artifactId>fury-parent</artifactId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
     <relativePath>../../java</relativePath>
   </parent>
   <modelVersion>4.0.0</modelVersion>
diff --git a/java/benchmark/pom.xml b/java/benchmark/pom.xml
index 090d6da0..ea348048 100644
--- a/java/benchmark/pom.xml
+++ b/java/benchmark/pom.xml
@@ -26,7 +26,7 @@
   <parent>
     <artifactId>fury-parent</artifactId>
     <groupId>org.apache.fury</groupId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>benchmark</artifactId>
diff --git a/java/fury-core/pom.xml b/java/fury-core/pom.xml
index ed91406d..ad984f8e 100644
--- a/java/fury-core/pom.xml
+++ b/java/fury-core/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.fury</groupId>
     <artifactId>fury-parent</artifactId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java/fury-format/pom.xml b/java/fury-format/pom.xml
index fc0f26d2..ff2489f3 100644
--- a/java/fury-format/pom.xml
+++ b/java/fury-format/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.fury</groupId>
     <artifactId>fury-parent</artifactId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java/fury-test-core/pom.xml b/java/fury-test-core/pom.xml
index 0920c4a6..002f381b 100644
--- a/java/fury-test-core/pom.xml
+++ b/java/fury-test-core/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <artifactId>fury-parent</artifactId>
     <groupId>org.apache.fury</groupId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java/fury-testsuite/pom.xml b/java/fury-testsuite/pom.xml
index c1cfe1bc..29309663 100644
--- a/java/fury-testsuite/pom.xml
+++ b/java/fury-testsuite/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <artifactId>fury-parent</artifactId>
     <groupId>org.apache.fury</groupId>
-    <version>0.8.0-SNAPSHOT</version>
+    <version>0.9.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java/pom.xml b/java/pom.xml
index 23652e77..7384eeb8 100644
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -33,7 +33,7 @@
   <groupId>org.apache.fury</groupId>
   <artifactId>fury-parent</artifactId>
   <packaging>pom</packaging>
-  <version>0.8.0-SNAPSHOT</version>
+  <version>0.9.0-SNAPSHOT</version>
   <name>Fury Project Parent POM</name>
   <description>
     Apache Fury™ is a blazingly fast multi-language serialization framework 
powered by jit and zero-copy.
diff --git a/javascript/packages/fury/package.json 
b/javascript/packages/fury/package.json
index 599dbd9d..1960f3f2 100644
--- a/javascript/packages/fury/package.json
+++ b/javascript/packages/fury/package.json
@@ -1,6 +1,6 @@
 {
   "name": "@furyjs/fury",
-  "version": "0.8.0.dev",
+  "version": "0.9.0.dev",
   "description": "Apache Fury™(incubating) is a blazingly fast multi-language 
serialization framework powered by jit and zero-copy",
   "main": "dist/index.js",
   "scripts": {
diff --git a/javascript/packages/hps/package.json 
b/javascript/packages/hps/package.json
index dd62cea7..ba5c9f88 100644
--- a/javascript/packages/hps/package.json
+++ b/javascript/packages/hps/package.json
@@ -1,6 +1,6 @@
 {
   "name": "@furyjs/hps",
-  "version": "0.8.0.dev",
+  "version": "0.9.0.dev",
   "description": "Apache Fury™(incubating) nodejs high-performance suite",
   "main": "dist/index.js",
   "files": [
diff --git a/python/pyfury/__init__.py b/python/pyfury/__init__.py
index ec94d4f5..71480da0 100644
--- a/python/pyfury/__init__.py
+++ b/python/pyfury/__init__.py
@@ -71,4 +71,4 @@ try:
 except (AttributeError, ImportError):
     pass
 
-__version__ = "0.6.0.dev"
+__version__ = "0.9.0.dev"
diff --git a/rust/Cargo.toml b/rust/Cargo.toml
index 51e4155d..fe8d4da0 100644
--- a/rust/Cargo.toml
+++ b/rust/Cargo.toml
@@ -30,7 +30,7 @@ exclude = [
 resolver = "2"
 
 [workspace.package]
-version = "0.8.0"
+version = "0.9.0"
 rust-version = "1.70"
 license = "Apache-2.0"
 readme = "README.md"


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to