go.uber.org/yarpc@v1.72.1/README.md (about) 1 # yarpc [![GoDoc][doc-img]][doc] [![GitHub release][release-img]][release] [![Mit License][mit-img]][mit] [![Build Status][ci-img]][ci] [![Coverage Status][cov-img]][cov] 2 3 A message passing platform for Go that lets you: 4 5 * Write servers and clients with various encodings, including [JSON](http://www.json.org/), [Thrift](https://thrift.apache.org/), and [Protobuf](https://developers.google.com/protocol-buffers/). 6 * Expose servers over many transports simultaneously, including [HTTP/1.1](https://www.w3.org/Protocols/rfc2616/rfc2616.html), [gRPC](https://grpc.io/), and [TChannel](https://github.com/uber/tchannel). 7 * Migrate outbound calls between transports without any code changes using config. 8 9 ## Installation 10 11 We recommend locking to [SemVer](http://semver.org/) range `^1` using [Glide](https://github.com/Masterminds/glide): 12 13 ``` 14 glide get 'go.uber.org/yarpc#^1' 15 ``` 16 17 ## Stability 18 19 This library is `v1` and follows [SemVer](http://semver.org/) strictly. 20 21 No breaking changes will be made to exported APIs before `v2.0.0` with the 22 **exception of experimental packages**. 23 24 Experimental packages reside within packages named `x`, and are *not stable*. This means their 25 APIs can break at any time. The intention here is to validate these APIs and iterate on them 26 by working closely with internal customers. Once stable, their contents will be moved out of 27 the containing `x` package and their APIs will be locked. 28 29 [doc-img]: http://img.shields.io/badge/GoDoc-Reference-blue.svg 30 [doc]: https://godoc.org/go.uber.org/yarpc 31 32 [release-img]: https://img.shields.io/github/release/yarpc/yarpc-go.svg 33 [release]: https://github.com/yarpc/yarpc-go/releases 34 35 [mit-img]: http://img.shields.io/badge/License-MIT-blue.svg 36 [mit]: https://github.com/yarpc/yarpc-go/blob/master/LICENSE 37 38 [ci-img]: https://badge.buildkite.com/f7d8e675c4d5ee4f5c4e4c2e33ca03c5be9bde22b186750538.svg?branch=master 39 [ci]: https://buildkite.com/uberopensource/yarpc-go 40 41 [cov-img]: https://codecov.io/gh/yarpc/yarpc-go/branch/master/graph/badge.svg 42 [cov]: https://codecov.io/gh/yarpc/yarpc-go/branch/master 43 44 ## Development 45 46 ### Setup 47 48 To start developing with yarpc-go, run the following command to setup your environment: 49 50 ``` 51 cd $GOPATH/src 52 git clone https://github.com/yarpc/yarpc-go.git go.uber.org/yarpc 53 make 54 ``` 55 56 ### Running Tests 57 58 To run tests into a pre-configured docker container, run the following command: 59 ``` 60 make test 61 ``` 62 63 To run tests locally, run the following command: 64 ``` 65 SUPPRESS_DOCKER=1 make test 66 ``` 67 68 Happy development!