zefchain / serde-reflection

Rust libraries and tools to help with interoperability and testing of serialization formats based on Serde.
Apache License 2.0
138 stars 26 forks source link

Dart utf8 #6

Closed jerel closed 2 years ago

jerel commented 2 years ago

Summary

Initial implementation of the Dart runtime handled string ser/de with [utf-16] code units. This had the appearance of working as long as the given character was < 128. This PR switches to utf-8 encode/decode to fix this bug.

Test Plan

A test is included with Japanese text which causes the current implementation to fail.

ma2bd commented 2 years ago

Thanks for the fix.

Any thoughts about finishing the work on adding Rust-driven tests and support for maps? https://github.com/novifinancial/serde-reflection/issues/120 I believe the standard Rust-driven tests would have caught the issue.

jerel commented 2 years ago

Thanks for the fix.

Any thoughts about finishing the work on adding Rust-driven tests and support for maps? novifinancial/serde-reflection#120 I believe the standard Rust-driven tests would have caught the issue.

Hey thanks for the merge and release.

There's a chance that I'll have time to contribute more tests for the Dart variant but at the moment I'm scheduled full. I'll keep it in mind.

temeddix commented 2 months ago

Does anyone mind sharing the status of Dart support in 2024?