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-site.git


The following commit(s) were added to refs/heads/main by this push:
     new 469c499  Release fury 0.6.0 (#137)
469c499 is described below

commit 469c4991c666a3fd4262643ba603c93f5b697361
Author: Shawn Yang <[email protected]>
AuthorDate: Tue Jul 23 23:36:36 2024 +0800

    Release fury 0.6.0 (#137)
---
 blog/2024-0723-fury_0_6_0_release.md | 126 +++++++++++++++++++++++++++++++++++
 docs/guide/scala_guide.md            |   2 +-
 docs/start/install.md                |   4 +-
 src/pages/download.md                |  10 +--
 static/img/20240723/perf.png         | Bin 0 -> 88771 bytes
 static/img/20240723/size.png         | Bin 0 -> 28691 bytes
 6 files changed, 134 insertions(+), 8 deletions(-)

diff --git a/blog/2024-0723-fury_0_6_0_release.md 
b/blog/2024-0723-fury_0_6_0_release.md
new file mode 100644
index 0000000..d16af41
--- /dev/null
+++ b/blog/2024-0723-fury_0_6_0_release.md
@@ -0,0 +1,126 @@
+---
+slug: fury_0_6_0_release
+title: Fury 0.6.0 Released
+authors: [chaokunyang]
+tags: [fury]
+---
+
+The Apache Fury team is pleased to announce the 0.6.0 release. This is a major 
release that includes [35 
PR](https://github.com/apache/fury/compare/v0.5.1...v0.6.0) from 12 distinct 
contributors. See the [Install](https://fury.apache.org/docs/start/install) 
Page to learn how to get the libraries for your platform.
+
+## High light
+In this release, we introduced a scoped meta share mode for schema evolution 
in java and enabled it by default when `CompatibleMode` is set to `Compatible`:
+- This mode is **50%** faster than previous KV compatible mode, and only 
**1/6** size of serialized payload than before. 
+- It's **4x** faster than protobuf, less than **1/2** serialized size of 
protobuf for complex object.
+
+<p>
+<img width="44%" alt="Perfomance" src="/img/20240723/perf.png" />
+<img  width="44%" alt="Size" src="/img/20240723/size.png" />
+</p>
+
+
+### Serialize data
+```java
+  public static class NumericStruct {
+    public int f1;
+    public int f2;
+    public int f3;
+    public int f4;
+    public int f5;
+    public int f6;
+    public int f7;
+    public int f8;
+
+    public static NumericStruct build() {
+      NumericStruct struct = new NumericStruct();
+      struct.f1 = 1;
+      struct.f2 = 2;
+      struct.f3 = 3;
+      struct.f4 = 4;
+      struct.f5 = 5;
+      struct.f6 = 6;
+      struct.f7 = 7;
+      struct.f8 = 8;
+      return struct;
+    }
+  }
+
+  public static class NumericStructList {
+    public List<NumericStruct> list;
+
+    public static NumericStructList build() {
+      NumericStructList structList = new NumericStructList();
+      structList.list = new ArrayList<>(1000);
+      for (int i = 0; i < 1000; i++) {
+        structList.list.add(NumericStruct.build());
+      }
+      return structList;
+    }
+```
+
+### Result
+Performance:
+```
+Benchmark                       Mode  Cnt      Score      Error  Units
+fury_deserialize                thrpt   30  49667.900 ± 3004.061  ops/s
+fury_kv_compatible_deserialize  thrpt   30  33014.595 ± 3716.199  ops/s
+fury_kv_compatible_serialize    thrpt   30  23915.260 ± 3968.119  ops/s
+fury_serialize                  thrpt   30  63146.826 ± 2930.505  ops/s
+protobuf_deserialize            thrpt   30  14156.610 ±  685.272  ops/s
+protobuf_serialize              thrpt   30  10060.293 ±  706.064  ops/s
+```
+
+Size:
+| Lib | Serialized Payload Size |
+|-----|-------------------------|
+| fury |       8077|
+| furystrict | 8009 |
+| furykv |     48028 |
+| protobuf     | 18000 |
+
+
+## Feature
+* feat(java): support nonexistent class deserialization in meta share mode by 
@chaokunyang in https://github.com/apache/fury/pull/1646
+* feat(java): scoped meta share mode for type forward/backward compaibility by 
@chaokunyang in https://github.com/apache/fury/pull/1660
+* feat(java): support meta compression by Deflater by @chaokunyang in 
https://github.com/apache/fury/pull/1663
+* perf(java): Add ClassInfo ClassBytes generation conditions. by 
@LiangliangSui in https://github.com/apache/fury/pull/1667
+* feat(javascript): use TextDecoder to decode buffer by @bytemain in 
https://github.com/apache/fury/pull/1699
+* feat(Python): meta string encoding algorithm in Python by @pandalee99 in 
https://github.com/apache/fury/pull/1702
+* feat(C++): String detection is performed using SIMD techniques by 
@pandalee99 in https://github.com/apache/fury/pull/1720
+* feat(C++): The use of SIMD accelerated to implement and optimize utf16 utf8 
by @pandalee99 in https://github.com/apache/fury/pull/1732
+* feat(java): enable scoped meta share for compatible mode by default by 
@chaokunyang in https://github.com/apache/fury/pull/1733
+* perf(java): optimize scoped meta share mode perf by @chaokunyang in 
https://github.com/apache/fury/pull/1734
+
+## Bug Fix
+* chore(doc): fix example by @wangjie-fourth in 
https://github.com/apache/fury/pull/1657
+* fix(java): fix scala object type codegen by @chaokunyang in 
https://github.com/apache/fury/pull/1659
+* fix(java): Fix header offset issue in MetaStringBytes hashcode by 
@LiangliangSui in https://github.com/apache/fury/pull/1668
+* fix(java): return fury to pooled which get from by @MrChang0 in 
https://github.com/apache/fury/pull/1697
+* fix(doc): codestyle version in python by @pandalee99 in 
https://github.com/apache/fury/pull/1706
+* fix(java): fix nested map serialization codegen by @chaokunyang in 
https://github.com/apache/fury/pull/1713
+* fix(java): fix fastjson object serialization by @chaokunyang in 
https://github.com/apache/fury/pull/1717
+
+## Others
+* chore: Add IssueNavigationLink and icon for IDEA by @lvshaokang in 
https://github.com/apache/fury/pull/1665
+* chore(rust): resolve deprecate warnings by @waynexia in 
https://github.com/apache/fury/pull/1662
+* chore(doc): fix doc example code by @wangjie-fourth in 
https://github.com/apache/fury/pull/1666
+* chore(rust): Setup rustfmt and toolchain for rust by @Xuanwo in 
https://github.com/apache/fury/pull/1677
+* chore(rust): Make rust clippy happy by @Xuanwo in 
https://github.com/apache/fury/pull/1678
+* chore(doc): add incubating DISCLAIMER by @chaokunyang in 
https://github.com/apache/fury/pull/1681
+* chore(java): Update github URL in IntelliJ vcs.xml by @pjfanning in 
https://github.com/apache/fury/pull/1689
+* ci: fix ci error by @LiangliangSui in 
https://github.com/apache/fury/pull/1691
+* docs: fix badge x by @vesense in https://github.com/apache/fury/pull/1694
+* chore(doc): fix compiler error by @wangjie-fourth in 
https://github.com/apache/fury/pull/1698
+* refactor(java): move latin language checker method from string serializer to 
string util by @anagh07 in https://github.com/apache/fury/pull/1708
+* chore(doc): the more complete readme is in python by @pandalee99 in 
https://github.com/apache/fury/pull/1709
+* build: update scala build by @pjfanning in 
https://github.com/apache/fury/pull/1725
+* build: publish jars for fury-scala by @pjfanning in 
https://github.com/apache/fury/pull/1729
+* chore(java): merge reflect.Types into TypeRef by @chaokunyang in 
https://github.com/apache/fury/pull/1731
+
+## New Contributors
+* @wangjie-fourth made their first contribution in 
https://github.com/apache/fury/pull/1657
+* @lvshaokang made their first contribution in 
https://github.com/apache/fury/pull/1665
+* @waynexia made their first contribution in 
https://github.com/apache/fury/pull/1662
+* @Xuanwo made their first contribution in 
https://github.com/apache/fury/pull/1677
+* @anagh07 made their first contribution in 
https://github.com/apache/fury/pull/1708
+
+**Full Changelog**: https://github.com/apache/fury/compare/v0.5.1...v0.6.0
\ No newline at end of file
diff --git a/docs/guide/scala_guide.md b/docs/guide/scala_guide.md
index 891f1e0..5329f0d 100644
--- a/docs/guide/scala_guide.md
+++ b/docs/guide/scala_guide.md
@@ -16,7 +16,7 @@ Scala 2 and 3 are both supported.
 
 ## Install
 ```sbt
-libraryDependencies += "org.apache.fury" % "fury-core" % "0.5.1"
+libraryDependencies += "org.apache.fury" % "fury-core" % "0.6.0"
 ```
 
 ## Fury creation
diff --git a/docs/start/install.md b/docs/start/install.md
index f7f63e0..c7fd1e7 100644
--- a/docs/start/install.md
+++ b/docs/start/install.md
@@ -15,12 +15,12 @@ To add a dependency on Fury using Maven, use the following:
 <dependency>
   <groupId>org.apache.fury</groupId>
   <artifactId>fury-core</artifactId>
-  <version>0.5.1</version>
+  <version>0.6.0</version>
 </dependency>
 <!-- row/arrow format support -->
 <!-- <dependency>
   <groupId>org.apache.fury</groupId>
   <artifactId>fury-format</artifactId>
-  <version>0.5.1</version>
+  <version>0.6.0</version>
 </dependency> -->
 ```
diff --git a/src/pages/download.md b/src/pages/download.md
index 0305bf1..4273c01 100644
--- a/src/pages/download.md
+++ b/src/pages/download.md
@@ -11,11 +11,11 @@ For binary install, please see Fury 
[install](/docs/start/install/) document.
 
 ## The latest release 
 
-The latest source release is 0.5.1:
+The latest source release is 0.6.0:
 
 | Version | Date | Source | Release Notes |
 |---------|------------|--------|---------------|
-| 0.5.1   |2024-05-28  | 
[apache-fury-0.5.1-incubating-src.tar.gz](https://www.apache.org/dyn/closer.lua/incubator/fury/0.5.1/apache-fury-0.5.1-incubating-src.tar.gz?action=download)
 
([asc](https://downloads.apache.org/incubator/fury/0.5.1/apache-fury-0.5.1-incubating-src.tar.gz.asc),
 
[sha512](https://downloads.apache.org/incubator/fury/0.5.1/apache-fury-0.5.1-incubating-src.tar.gz.sha512))
 | [release notes](https://github.com/apache/fury/releases/tag/v0.5.1) |
+| 0.6.0   |2024-05-28  | 
[apache-fury-0.6.0-incubating-src.tar.gz](https://www.apache.org/dyn/closer.lua/incubator/fury/0.6.0/apache-fury-0.6.0-incubating-src.tar.gz?action=download)
 
([asc](https://downloads.apache.org/incubator/fury/0.6.0/apache-fury-0.6.0-incubating-src.tar.gz.asc),
 
[sha512](https://downloads.apache.org/incubator/fury/0.6.0/apache-fury-0.6.0-incubating-src.tar.gz.sha512))
 | [release notes](https://github.com/apache/fury/releases/tag/v0.6.0) |
 
 
 ## All archived releases
@@ -34,13 +34,13 @@ These files are named after the files they relate to but 
have `.sha512/.asc` ext
 To verify the SHA digests, you need the `.tgz` and its associated 
`.tgz.sha512` file. An example command:
 
 ```bash
-sha512sum --check apache-fury-incubating-0.5.1-src.tar.gz
+sha512sum --check apache-fury-incubating-0.6.0-src.tar.gz
 ```
 
 It should output something like:
 
 ```bash
-apache-fury-incubating-0.5.1-src.tar.gz: OK
+apache-fury-incubating-0.6.0-src.tar.gz: OK
 ```
 
 ### Verifying Signatures
@@ -56,7 +56,7 @@ gpg --import KEYS
 
 Then you can verify signature:
 ```bash
-gpg --verify apache-fury-incubating-0.5.1-src.tar.gz.asc 
apache-fury-incubating-0.5.1-src.tar.gz
+gpg --verify apache-fury-incubating-0.6.0-src.tar.gz.asc 
apache-fury-incubating-0.6.0-src.tar.gz
 ```
 
 If something like the following appears, it means the signature is correct:
diff --git a/static/img/20240723/perf.png b/static/img/20240723/perf.png
new file mode 100644
index 0000000..b248b77
Binary files /dev/null and b/static/img/20240723/perf.png differ
diff --git a/static/img/20240723/size.png b/static/img/20240723/size.png
new file mode 100644
index 0000000..827a0d4
Binary files /dev/null and b/static/img/20240723/size.png differ


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

Reply via email to