Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sdboyer/gta
Gotta test 'em all
https://github.com/sdboyer/gta
Last synced: about 1 month ago
JSON representation
Gotta test 'em all
- Host: GitHub
- URL: https://github.com/sdboyer/gta
- Owner: sdboyer
- License: mit
- Created: 2016-08-26T23:03:52.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-09-09T15:25:52.000Z (over 8 years ago)
- Last Synced: 2024-06-20T01:53:29.800Z (6 months ago)
- Language: Go
- Size: 570 KB
- Stars: 16
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gta
_gotta test 'em all!_
gta is a tool that helps you check your Go project against various versions of
its dependencies. This includes optionally running a command, like `go test`,
against each combination. So it's kinda like
[git-bisect](https://git-scm.com/docs/git-bisect), but for your deps.gta is [gps](https://github.com/sdboyer/gps)-based, and should interoperate with
several different Go package managers (gb, godep, gom, gpm, and glide, though
glide is likely to work best). When available, gta reads the lock file from that
tool, and tries to hold constant all the versions listed there, varying only the
versions of the dependency you name.In general, gta is probably most useful for exploring a semver range you've
already set in a manifest, or for simply exploring _all_ the possible versions
of a particular dependency.In short, if you're not sure what version of a dependency you want to use,
running gta might help you figure it out.## Installation
```
$ go get github.com/sdboyer/gta
```## Usage
```
# For now, gta must be run from a project root
$ cd $GOPATH/src/github.com/me/myproject
# Just look for valid dependency solutions for each version of the dep
$ gta github.com/somedep/tocheckitsversions
# Or, also run "go test" against each version where there's a solution
$ gta -r "go test" github.com/somedep/tocheckitsversions
```See `gta --help` for more information.
## Notes
* This is very alpha - "release early, release often" - and while it has worked
at least once, it will likely break :) Please file issues!
* The output is probably at least a little confusing right now. Issues asking
questions or making suggestions about how it might be improved are
PARTICULARLY welcome!
* The format of gta's `glide.yaml` file is not one your standard version of
glide can read, so don't bother trying (it's based on the [PR to integrate
gps into glide](https://github.com/Masterminds/glide/pull/384))