Skip to content

A Rust client for Google Datastore with support for automatic entity serialization

License

Notifications You must be signed in to change notification settings

tazjin/datastore.rs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cloud Datastore Rust Client

datastore.rs is a hand-rolled Rust client for Google Cloud Datastore.

It uses the v1 API defined here and exposes both a low-level API mapping to the REST-API operations and some slightly higher-level convenience functions.

Not all operations and types are implemented yet.

Serialisation to and from entities is performed via serde.

Rationale

Several half-finished Datastore clients already exist for Rust, however they seem to have been generated from either the Google API description service and not work at all or from outdated gRPC definitions.

In order to provide a nicely usable client and integration with the Rust ecosystem, e.g. Serde, hand-rolling a client seemed like the better option. Plus it's fun!

Authentication

Ideally this would support all forms of authentication that the Google Cloud SDK in other languages supports, but I"m not sure if there is a Rust library that has implemented that already.

Required for now are:

  • local application-default credentials
  • token via [metadata endpoint][]

Completeness overview

Types

Methods on entities

Methods on operations

About

A Rust client for Google Datastore with support for automatic entity serialization

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%