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/incubator-fury-site.git


The following commit(s) were added to refs/heads/main by this push:
     new cfedbc7  release blog for fury 0.5.0 (#118)
cfedbc7 is described below

commit cfedbc7eb3c211b621a4f4315c99ff4095797913
Author: Shawn Yang <[email protected]>
AuthorDate: Mon May 6 10:25:06 2024 +0800

    release blog for fury 0.5.0 (#118)
    
    
![image](https://github.com/apache/incubator-fury-site/assets/12445254/ef9eb70c-755d-4d36-8ad2-93247ae19e3b)
---
 blog/2024-05-13-fury_0_5_0_release.md | 174 ++++++++++++++++++++++++++++++++++
 1 file changed, 174 insertions(+)

diff --git a/blog/2024-05-13-fury_0_5_0_release.md 
b/blog/2024-05-13-fury_0_5_0_release.md
new file mode 100644
index 0000000..8b48652
--- /dev/null
+++ b/blog/2024-05-13-fury_0_5_0_release.md
@@ -0,0 +1,174 @@
+---
+slug: fury_0_5_0_release
+title: Fury v0.5.0 Released
+authors: [chaokunyang]
+tags: [fury]
+---
+
+We're excited to announce the release of Fury v0.5.0. This release 
incorporates a myriad of improvements, bug fixes, and new features across 
multiple languages including Java, Golang, Python and JavaScript. It further 
refines Fury's performance, compatibility, and developer experience.
+
+## New Features
+
+### Specification
+
+- Introduced fury cross-language serialization specification (#1413, #1508) 
+- Introduced xlang type mapping (#1468)
+- Introduced fury java specification (#1240)
+- Introduced meta string encoding specification (#1565, #1513, #1517)
+
+### Java
+
+- Support for compatible mode with GraalVM (#1586, #1587).
+- Support unexisted array/enum classes and enabled deserializeUnexistedClass 
by default (#1569, #1575).
+- meta string encoding algorithm in java (#1514, #1568, #1516, #1565)
+- Support meta string encoding for classname and package name (#1527)
+- native streaming mode deserialization (#1451, #1551)
+- native channel stream reader (#1483)
+- Support registration in thread safe fury (#1280)
+- Implement fury logger and remove slf4j library (#1485, #1494, #1506, #1492)
+- Support adjust logger level dynamically (#1557)
+- Support jdk proxy serialization for graalvm (#1379)
+- Specify JPMS module names (#1343)
+- Align string array to collection protocol v2 (#1228)
+
+### JavaScript
+
+- Align implementation to new Xlang protocol (#1487) 
+- Implement Xlang map (#1549)
+- Implemented xlang map code generator (#1571)
+- Added magic number feature for better serialization control (#1550).
+- Support oneof (#1348)
+- create zero-copy buffer when convert (#1386)
+- Implement the collection protocol (#1337)
+- Implement Enum (#1321)
+- compress numbers (#1290)
+
+### C++
+
+- Support optional fields/elements in RowEncoder (#1223)
+- Support mapping types for RowEncodeTrait (#1247)
+
+### Golang
+
+- Implemented Fury meta string encoding algorithm (#1566).
+- concat meta string len with flags (#1517)
+
+## Enhancements
+
+### Java
+
+- Improved buffer growth strategy to support larger data sizes for 
serialization (#1582).
+- Performance optimizations for MetaStringDecoder and various serialization 
processes (#1568, #1511, #1493).
+- concat write classname flag with package name (#1523)
+- concat meta string len with flags (#1517)
+- fastpath for read/write small varint in range `[0,127]` (#1503)
+- optimize read float/double for jvm jit inline (#1472)
+- replace Guava's TypeToken with self-made (#1553)
+- Remove basic guava API usage (#1244)
+- optimize fury creation speed (#1511)
+- optimize string serialization by concat coder and length (#1486)
+- carry read objects when deserialization fail for better trouble shooting 
(#1420)
+- implement define_class insteadof using javaassist (#1422)
+- avoid recompilation when gc happens for memory pressure (#1411, #1585)
+- Fix immutable collection ref tracking (#1403)
+- reduce fury caller stack (#1496)
+- Extract BaseFury interface (#1382)
+- refine collection builder util (#1334)
+- disable async compilation for graalvm (#1222)
+- refine endian check code size in buffer (#1501)
+- generate list fori loop instead of iterator loop for list serialization 
(#1493)
+- Reduce unsafeWritePositiveVarLong bytecode size. (#1491)
+- Reduce unsafePutPositiveVarInt bytecode size. (#1490, #1489)
+- optimize read char/short jvm jit inline (#1471)
+- reduce code size of read long to optimize jvm jit inline (#1470)
+- reduce readInt/readVarInt code size for for jvm jit inline (#1469)
+- refactor readVarUint32 algorithm (#1462)
+- rewrite readVarUint64 algorithm (#1463)
+
+### JavaScript
+
+- Make PlatformBuffer available if has Buffer polyfill (#1373)
+- enhance performance 64bits number (#1320)
+- Refactor & Compress Long (#1313)
+- Improve tag write performance (#1241)
+- Add more methods for BinaryReader (#1231)
+- Implements tuple serializer (#1216)
+
+### Python
+
+- concat meta string len with flags (#1517)
+
+### Bug Fix
+
+#### Java
+
+- Fix bytebuffer no such method error (#1580)
+- Prevent exception in ObjectArray.clearObjectArray() (#1573)
+- Fix slf4j on graalvm (#1432)
+- Fix illegal classname caused by negative hash (#1436)
+- Fix BigDecimal serializer (#1431)
+- Fix BigInteger serialization (#1479)
+- Fix type conflict in method split (#1371)
+- Fix CodeGen Name conflicts when omitting java.lang prefix #1363 (#1366)
+- Fix ClassLoader npe in loadOrGenCodecClass (#1346)
+- Fix big buffer trunc (#1402)
+- Make Blacklist detection is also performed when the Class is registered. 
(#1398)
+- avoid big object graph cause buffer take up too much memory (#1397)
+- Fix get static field by unsafe (#1380)
+- Fix javax package for accessor codegen (#1388)
+- Fix nested collection cast for scala/java (#1333)
+- Fix References within InvocationHandler (#1365)
+- Allow partial read of serialized size from `InputStream` (#1391)
+- add potential missing bean class-loader (#1381)
+- Fix polymorphic array serialization (#1324)
+- Fix nested collection num elements (#1306)
+- Fix collection init size typo (#1342)
+- Clear extRegistry.getClassCtx if generate serializer class failed (#1221)
+
+#### Rust
+
+- Fix memory errors caused by casting (#1372)
+- Fix incorrect cast (#1345)
+
+## Miscellaneous
+
+- Numerous code cleanups, refactorings, and internal improvements across all 
supported languages to enhance code quality
+  and maintainability.
+- Moved various utilities into more appropriate packages to improve code 
organization and readability (#1584, #1583,
+  #1578).
+- rename MemoryBuffer read/write/put/getType with read/write/put/getTypeNumber 
 (#1480, #1464, #1505, #1500)
+- extract public Fury methods to BaseFury (#1467)
+- Optimize Class ID allocation. (#1406)
+- refine Collection util data structure (#1287) (#1288)
+- Improve Status by using unique_ptr (#1234)
+- Improve FormatTimePoint by removing sstream (#1233)
+- Drop optional chaining expression (#1338)
+
+## New Contributors
+* @nandakumar131 made their first contribution in 
https://github.com/apache/incubator-fury/pull/1244
+* @vesense made their first contribution in 
https://github.com/apache/incubator-fury/pull/1260
+* @LiangliangSui made their first contribution in 
https://github.com/apache/incubator-fury/pull/1294
+* @liuxiaocs7 made their first contribution in 
https://github.com/apache/incubator-fury/pull/1312
+* @mtf90 made their first contribution in 
https://github.com/apache/incubator-fury/pull/1343
+* @bowin made their first contribution in 
https://github.com/apache/incubator-fury/pull/1353
+* @cn-at-osmit made their first contribution in 
https://github.com/apache/incubator-fury/pull/1366
+* @Maurice-Betzel made their first contribution in 
https://github.com/apache/incubator-fury/pull/1381
+* @phogh made their first contribution in 
https://github.com/apache/incubator-fury/pull/1391
+* @laglangyue made their first contribution in 
https://github.com/apache/incubator-fury/pull/1415
+* @Munoon made their first contribution in 
https://github.com/apache/incubator-fury/pull/1467
+* @pixeeai made their first contribution in 
https://github.com/apache/incubator-fury/pull/1559
+* @huisman6 made their first contribution in 
https://github.com/apache/incubator-fury/pull/1572
+* @tommyettinger made their first contribution in 
https://github.com/apache/incubator-fury/pull/1573
+* @qingoba made their first contribution in 
https://github.com/apache/incubator-fury/pull/1566
+
+## Acknowledgements
+
+Thanks @chaokunyang @theweipeng @PragmaTwice @LiangliangSui @nandakumar131 
@Munoon @qingoba @vesense @liuxiaocs7 @mtf90 @bowin @cn-at-osmit 
@Maurice-Betzel @phogh @laglangyue @tommyettinger @huisman6 @pixeeai
+
+A big thank you to all our contributors who have worked hard on this release. 
Your contributions, whether through code,
+documentation, or issue reporting, are really appreciated.
+
+**Full Changelog**: 
https://github.com/apache/incubator-fury/compare/v0.4.1...v0.5.0
+
+
+


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

Reply via email to