Comments (8)
Hi @chaokunyang , Have you started implementing this feature? If it hasn't been implemented yet, I can take over and implement this.
from incubator-fury.
@LiangliangSui I haven't, feel free to take over it
from incubator-fury.
Okay, I will do this.
from incubator-fury.
@chaokunyang We currently use UTF8 for cross-language serialization, and only Java(not cross-language) uses Latin/UTF16.
public void writeString(MemoryBuffer buffer, String value) {
if (isJava) {
writeJavaString(buffer, value);
} else {
writeUTF8String(buffer, value);
}
}
Will we use UTF16 as the default cross-language String encoding in the future?
I see that the cross-language currently designed in fury_xlang_serialization_spec still uses UTF8 as the default.
from incubator-fury.
Depends on the language and the string. For golang, since the string is utf-8 encoded already. Fury go will encode data as utf8 string by a copy. But java/javascript/python may encode string as latin1 or utf16 and send to furygo. So we need to support utf16 too. And if the peer language, we may configure furygo use latin1/utf16 by default too.
from incubator-fury.
But java/javascript/python may encode string as latin1 or utf16 and send to furygo.
Latin1/UTF16 is only used in Language.JAVA
and will not be sent to furygo.
from incubator-fury.
Okay, I got it.
from incubator-fury.
In the future, java/javascript/python may all encode string as latin1/utf16
and send to furygo.
from incubator-fury.
Related Issues (20)
- NullPointerException when serializing a custom type HOT 11
- Concerning license in the javadoc jar HOT 2
- it's a bit troublesome to install on apple systems. error: externally-managed-environment...... HOT 2
- [java] jit code of collection with abstract class deserialize error HOT 4
- Enum equality does not work across serialization-deserialization HOT 5
- Mac install using “conda install -c conda-forge pyarrow” command is completed, how to set pyarrow of environment variables?
- [Doc] Use a script to update documentation when code is modified
- [Rust] Please publish fury for rust to crates.io HOT 1
- dubbo-serialization-fury allowList/allowListPrefix doesn't take affect
- Fury 0.5.1 is not backward compatible with 0.5.0 HOT 2
- Fury 0.5.1 Deserialize Error HOT 1
- Scala object type field serialization failure
- [Java] Implement zstd based compressor for type metadata HOT 2
- [scala]Can furry support serializing Seq collections and case classes in Scala, and then deserializing the resulting objects into corresponding Java objects in Java? HOT 1
- [JavaScript] Type Forward/Backward compatible object serialization for Fury JavaScript
- [JavaScript] Implement the object metadata compression protocol
- [JavaScript] Support generating deserializers based on the type metadata parsed during deserialization
- [JavaScript] Implement metadatascoped share mode
- [JavaScript] Support encoding field names with varint in type metadata
- [Rust] About Enum Naming HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from incubator-fury.