GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - codeGROOVE-dev/ds9: #Google #DataStore #Go library with zero dependencies

BranchesTags
Open more actions menu

Latest commit

 

History

34 Commits
34 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
auth
auth
 
 
example
example
 
 
integration
integration
 
 
media
media
 
 
pkg
pkg
 
 
.gitignore
.gitignore
 
 
.golangci.yml
.golangci.yml
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
TESTING.md
TESTING.md
 
 
go.mod
go.mod
 
 
go.sum
go.sum
 
 

Repository files navigation

ds9

ds9 logo

Go Reference Go Report Card License: Apache 2.0 Go Version

Zero-dependency Google Cloud Datastore client for Go. Drop-in replacement for cloud.google.com/go/datastore with an in-memory mock implementation.

Why? The official client has 50+ dependencies. ds9 has zero—ideal for lightweight services and minimizing supply chain risk.

Installation

go get github.com/codeGROOVE-dev/ds9

Quick Start

This isn't the API we would choose, but our primary goal was a drop-in replacement, so usage is exactly the same as the cloud.google.com/go/datastore library:

import "github.com/codeGROOVE-dev/ds9/pkg/datastore"

client, _ := datastore.NewClient(ctx, "my-project")
key := datastore.NameKey("Task", "task-1", nil)
client.Put(ctx, key, &task)
client.Get(ctx, key, &task)

Migrating from cloud.google.com/go/datastore

Just switch the import path from cloud.google.com/go/datastore to github.com/codeGROOVE-dev/ds9/pkg/datastore.

Features

Supported Features

  • Basically everything that the upstream datastore library has

Unsupported Features

  • Nested slices, map types, esoteric advanced query features like streaming aggregations

Testing

  • Use datastore.NewMockClient(t) for in-memory testing. Works even if you're still using the official client.
  • See TESTING.md for integration tests.
  • We aim to maintain 85% test coverage - please don't send PRs without tests.

About

#Google #DataStore #Go library with zero dependencies

Resources

Readme
Apache-2.0 license
Activity
Custom properties

Stars

0 stars

Watchers

0 watching

Forks

1 fork
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.