A blazingly fast multi-language serialization framework powered by JIT and zero-copy.
APACHE-2.0 License
Bot releases are hidden (Show)
Published by chaokunyang about 1 month ago
Full Changelog: https://github.com/apache/fury/compare/v0.7.0...v0.7.1
Implement fast object deep copy framework for java:
Fury fury = Fury.builder().withRefCopy(true).build();
fury.register(SomeClass.class);
SomeClass a = xxx;
SomeClass copied = fury.copy(a);
Benchmark result:
Benchmark | objectType | Score | Error | Units |
---|---|---|---|---|
fury_copy | MEDIA_CONTENT | 1243297.690 | ± 451828.452 | ops/s |
fury_copy | SAMPLE | 2670545.816 | ± 1378536.021 | ops/s |
fury_copy | STRUCT | 2673356.422 | ± 202288.322 | ops/s |
fury_copy | STRUCT2 | 1943587.774 | ± 392513.707 | ops/s |
fury_copy_int_map | int map | 1470264.733 | ± 1021875.257 | ops/s |
fury_copy_list | List | 3556892.276 | ± 127410.724 | ops/s |
fury_copy_object_array | array | 4430589.112 | ± 25366.893 | ops/s |
fury_copy_string_map | string map | 1736145.327 | ± 377806.877 | ops/s |
kryo_copy | MEDIA_CONTENT | 804208.092 | ± 27429.069 | ops/s |
kryo_copy | SAMPLE | 717669.608 | ± 71093.370 | ops/s |
kryo_copy | STRUCT | 1076048.642 | ± 223194.146 | ops/s |
kryo_copy | STRUCT2 | 141374.767 | ± 14150.535 | ops/s |
kryo_copy_int_map | int map | 546203.187 | ± 54669.173 | ops/s |
kryo_copy_list | List | 843643.496 | ± 312306.921 | ops/s |
kryo_copy_object_array | object array | 1593267.344 | ± 1721824.436 | ops/s |
kryo_copy_string_map | string map | 574809.875 | ± 47316.340 | ops/s |
StructSerializer.xread()
caused by re-pushing instead of popping GenericType
. by @komamitsu in https://github.com/apache/fury/pull/1768
Full Changelog: https://github.com/apache/fury/compare/v0.6.0...v0.7.0
Published by chaokunyang 3 months ago
StructSerializer.xread()
caused by re-pushing instead of popping GenericType
. by @komamitsu in https://github.com/apache/fury/pull/1768
Full Changelog: https://github.com/apache/fury/compare/v0.6.0...v0.7.0-rc1
Published by chaokunyang 3 months ago
The Apache Fury team is pleased to announce the 0.6.0 release. This is a major release that includes 35 PR from 12 distinct contributors. See the Install Page to learn how to get the libraries for your platform.
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.
Full Changelog: https://github.com/apache/fury/compare/v0.5.1...v0.6.0
Published by chaokunyang 3 months ago
Full Changelog: https://github.com/apache/fury/compare/v0.5.1...v0.6.0-rc1
Published by chaokunyang 5 months ago
We're excited to announce the release of Apache Fury v0.5.1. This release includes some fix for Apache Fury v0.5.0. We suggest all users of Apache Fury v0.5.0 upgrade to this version.
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.5.0...v0.5.1
Published by chaokunyang 5 months ago
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.5.0...v0.5.1-rc2
Published by chaokunyang 5 months ago
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.5.0...v0.5.1-rc1
Published by chaokunyang 6 months ago
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.
[0,127]
(#1503)InputStream
(#1391)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
Published by chaokunyang 6 months ago
InputStream
by @phogh in https://github.com/apache/incubator-fury/pull/1391
Platform.BYTE_ARRAY_OFFSET
replace MemoryBuffer.BYTE_ARRAY_BASE_OFFSET
by @LiangliangSui in https://github.com/apache/incubator-fury/pull/1414
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.4.1...v0.5.0-rc4
Published by chaokunyang 6 months ago
InputStream
by @phogh in https://github.com/apache/incubator-fury/pull/1391
Platform.BYTE_ARRAY_OFFSET
replace MemoryBuffer.BYTE_ARRAY_BASE_OFFSET
by @LiangliangSui in https://github.com/apache/incubator-fury/pull/1414
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.4.1...v0.5.0-rc3
Published by chaokunyang 7 months ago
InputStream
by @phogh in https://github.com/apache/incubator-fury/pull/1391
Platform.BYTE_ARRAY_OFFSET
replace MemoryBuffer.BYTE_ARRAY_BASE_OFFSET
by @LiangliangSui in https://github.com/apache/incubator-fury/pull/1414
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.4.1...0.5.0-rc2
Published by chaokunyang 7 months ago
InputStream
by @phogh in https://github.com/apache/incubator-fury/pull/1391
Platform.BYTE_ARRAY_OFFSET
replace MemoryBuffer.BYTE_ARRAY_BASE_OFFSET
by @LiangliangSui in https://github.com/apache/incubator-fury/pull/1414
Full Changelog: https://github.com/apache/incubator-fury/compare/v0.4.1...v0.5.0-rc1
Published by chaokunyang 11 months ago
Full Changelog: https://github.com/alipay/fury/compare/v0.4.0...v0.4.1
Published by chaokunyang 11 months ago
FURY_FIELD_INFO
macro by @PragmaTwice in https://github.com/alipay/fury/pull/1151
Full Changelog: https://github.com/alipay/fury/compare/v0.3.1...v0.4.0
Published by chaokunyang 11 months ago
IsOneOf
by @PragmaTwice in https://github.com/alipay/fury/pull/1096
Full Changelog: https://github.com/alipay/fury/compare/v0.3.0...v0.3.1
Published by chaokunyang 12 months ago
case/object/tuple/string/collection/enum/basic
all supportedjava.io.Externalizable
compatible with Java writeReplace/readResolve
APIInputStream
not reading entire lengthReflectionUtils.getCtrHandle()
for non-public constructor in ExternalizableSerializer
InputStream
not reading entire length by @knutwannheden in https://github.com/alipay/fury/pull/1034
ReflectionUtils.getCtrHandle()
in ExternalizableSerializer
by @knutwannheden in https://github.com/alipay/fury/pull/1044
Full Changelog: https://github.com/alipay/fury/compare/v0.2.1...v0.3.0
Published by chaokunyang about 1 year ago
Full Changelog: https://github.com/alipay/fury/compare/v0.2.0...v0.2.1
Published by chaokunyang about 1 year ago
toString
in annotation invocation handler readObject
by @chaokunyang in https://github.com/alipay/fury/pull/922
config
package by @chaokunyang in https://github.com/alipay/fury/pull/940
Full Changelog: https://github.com/alipay/fury/compare/v0.1.0...v0.2.0
Published by chaokunyang about 1 year ago
toString
in annotation invocation handler readObject
by @chaokunyang in https://github.com/alipay/fury/pull/922
config
package by @chaokunyang in https://github.com/alipay/fury/pull/940
Full Changelog: https://github.com/alipay/fury/commits/v0.2.0.alpha1