{"id":17537670,"url":"https://github.com/zenhack/go.sandstorm","last_synced_at":"2025-10-11T02:43:24.283Z","repository":{"id":54101314,"uuid":"58504430","full_name":"zenhack/go.sandstorm","owner":"zenhack","description":"sandstorm capnp bindings and helpers","archived":false,"fork":false,"pushed_at":"2023-01-11T03:17:56.000Z","size":3998,"stargazers_count":8,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-23T21:07:09.387Z","etag":null,"topics":["golang","sandstorm"],"latest_commit_sha":null,"homepage":null,"language":"Cap'n Proto","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zenhack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-05-11T01:23:58.000Z","updated_at":"2023-08-18T06:04:52.000Z","dependencies_parsed_at":"2023-02-09T00:31:58.564Z","dependency_job_id":null,"html_url":"https://github.com/zenhack/go.sandstorm","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zenhack/go.sandstorm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zenhack%2Fgo.sandstorm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zenhack%2Fgo.sandstorm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zenhack%2Fgo.sandstorm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zenhack%2Fgo.sandstorm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zenhack","download_url":"https://codeload.github.com/zenhack/go.sandstorm/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zenhack%2Fgo.sandstorm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279005967,"owners_count":26084004,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["golang","sandstorm"],"created_at":"2024-10-20T20:42:25.736Z","updated_at":"2025-10-11T02:43:24.264Z","avatar_url":"https://github.com/zenhack.png","language":"Cap'n Proto","readme":"[![Travis CI][travis-img]][travis-ci]\n[![Go Report Card][goreport-img]][goreport]\n\nGo Wrappers for Sandstorm's API\n\nThe `capnp/`, subtree contains generated packages for the sandstorm API\ncapnproto schema. Since the schema names are not all legal package\nnames, the following changes have been made:\n\n* Schema with dashes in their names have had the dashes removed.\n* The schema `package` has been mapped to the package `spk` (since\n  `package` is a go reserved word).\n\nNote that these schema use the `v3` branch of the go-capnproto2 library,\nrather than the stable branch, as its rpc support is more robust.\n\nI try to keep the schema up to date but unfortunately the way the go\ncapnproto code generator works, that means that new methods on an\ninterface are breaking changes at the source level, even though\nthey are compatible at the protocol level. If you upgrade and get\nan error about some type not implementing a capnproto `_Server`\ninterface that it used to, a quick fix is to return an\n\"unimplemented,\" error, which will satisfy the type checker and\nhave the same behavior as before:\n\n```go\nfunc (t *MyType) NewMethod(context.Context, pkg.Interface_newMethod) error {\n    return capnp.Unimplemented(\"TODO: implement\")\n}\n```\n\n...of course, you may alternatively want to implement the new functionality.\n\nThe `exp/` subtree contains experimental helper packages; no promises of API\nstability are made for these.\n\nNote: we use import path checking; you'll need to import things as e.g:\n\n    import \"zenhack.net/go/sandstorm/capnp/grain\"\n\n...rather than directly via the URL for this repository.\n\n# Licensing\n\nApache 2.0, both my stuff and the bits pulled from upstream:\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n      http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n\nA copy of the license is in the file `license.txt`. Individual source\nfiles contain relevant copyright notices.\n\n[travis-ci]: https://travis-ci.org/zenhack/go.sandstorm\n[travis-img]: https://travis-ci.org/zenhack/go.sandstorm.svg?branch=master\n[goreport-img]: https://goreportcard.com/badge/github.com/zenhack/go.sandstorm\n[goreport]: https://goreportcard.com/report/github.com/zenhack/go.sandstorm\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzenhack%2Fgo.sandstorm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzenhack%2Fgo.sandstorm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzenhack%2Fgo.sandstorm/lists"}