• Stars
    star
    2,644
  • Rank 16,596 (Top 0.4 %)
  • Language
    Rust
  • License
    MIT License
  • Created almost 11 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rust implementation of Google protocol buffers

rust-protobuf

crates.io version docs.rs GitHub Workflow Status License

Protobuf implementation in Rust.

  • Written in pure rust
  • Generates rust code
  • Has runtime library support for generated code (Coded{Input|Output}Stream impl)
  • Supports both Protobuf versions 2 and 3
  • and more

Where is documentation

Documentation is hosted on docs.rs.

Versions and branches

Version 3

Version 3 is current stable version. Compared to version 2 it implements:

  • runtime reflection
  • JSON and text format parsing and printing
  • dynamic messages (messages which can be created from .proto file on the fly without code generation)

Version 2

Version 2 is previous stable version. Only most critical bugfixes will be applied to 2.x version, otherwise it won't be maintained.

Help

The crate needs help:

  • a new maintainer, but also
  • testing
  • documentation
  • examples to be used as documentation
  • feedback on API design
  • feedback on implementation
  • pull requests

Changelog

See CHANGELOG.md for a list of changes and compatility issues between versions.

Related projects

  • prost โ€” another protobuf implementation in Rust, also has gRPC implementation
  • quick-protobuf โ€” alternative protobuf implementation in Rust
  • grpc-rs โ€” another gRPC implementation for Rust
  • grpc-rust โ€” incomplete implementation of gRPC based on this library

More Repositories

1

grpc-rust

Rust implementation of gRPC
Rust
1,372
star
2

rust-http2

HTTP/2 implementation in Rust/tokio
Rust
208
star
3

rust-tls-api

TLS API for Rust, and API implementations over native-tls and openssl in separate crates
Rust
49
star
4

learn-idris-pub

Public data for https://learn-idris.net/
Idris
9
star
5

no-mutex-c

C
9
star
6

absh

Benchmarking with proper statistically significant output
Rust
9
star
7

rust-protoc-bin-vendored

Rust
8
star
8

netty-td

Java
8
star
9

protobuf-to-json

Java
7
star
10

blog

My blog (kind of)
5
star
11

no-mutex

ะ”ะตะผะพ ะดะปั ัั‚ะฐั‚ัŒะธ "Concurrency without mutexes"
Java
5
star
12

rust-log-ndc

log crate extension with NDC-like functionality
Rust
5
star
13

mh-lang

DSL for constructing MethodHandles
Java
4
star
14

rust-ide-rust

Patches for rust-ide
Rust
3
star
15

idris-sort

Idris
3
star
16

update-version

Update multiple crate versions (do not use)
Rust
2
star
17

rust-test-cert-gen

Utility to generate certificates for tests (for TLS)
Rust
2
star
18

junk

1
star
19

httpd-test-task

C++
1
star
20

rust-unused-not-removed

Repro
Rust
1
star
21

cargo-should-not-delete-bin

Rust
1
star
22

cargo-build-rs-twice

Rust
1
star
23

clay-json

json implementation for clay
1
star
24

perftest-rust

Rust
1
star
25

repr-1

Rust
1
star
26

textarea-autosize-blink

TypeScript
1
star
27

cargo-bug-tmp-1

Rust
1
star
28

clay-curl

curl binding for clay
Shell
1
star
29

ignore-cached

Bug repro
Rust
1
star
30

rust-hashmap-like-cpp

Rust
1
star
31

fsevent-dump

Rust
1
star
32

random-pg

Rust
1
star
33

gh-actions-gen

Generate GitHub actions
Rust
1
star
34

around-zero

Rust
1
star
35

exact-versions

Rust
1
star
36

rust-cannot-infer-type

Rust
1
star
37

h2-hang

Rust
1
star