Skip to content

An implementation of Avro for Rust.

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

jminer/rust-avro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Avro for Rust

An implementation of Avro for Rust.

[dependencies]
avro = { git = "https://github.com/jminer/rust-avro" }

Documentation

Status

My motivation for this project is decoding binary log messages sent from a C application. Rather than invent a new format, I started a general Avro library. Therefore, there isn't yet support for reading JSON protocol (.avpr) files or encoding Avro data. Features:

  • Partial IDL protocol file (.avdl) parsing (notably lacking is messages or reference types)
  • Partial decoding support (lacking reference types, like the IDL file parsing)

I'd like to see support for more Avro features in the future.

Compatibility tests

This library has some tests that it is compatible with the Java Avro implementation (which I think is the reference implementation). The tests require that Java is installed. For this reason, they are disabled by default; running cargo test will not run them. To run them, you must run cargo test --feature java-compat. The first time one of the tests is run, it will download the compiled Java implementation of Avro.

About

An implementation of Avro for Rust.

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published