Code Monkey home page Code Monkey logo

cli's Introduction

Build Status

Goals

Provide developers an easy way to work with exercism.io that doesn't require a Ruby environment.

Installing Go

On Mac OS X

You may get away with brew install go --cross-compile-common unless you have the latest XCode, which does not ship with gcc.

If have the latest XCode, try brew install go --cross-compile-common --without-cgo.

If that throws an error, try brew install go --cross-compile-common --with-llvm.

Development

  1. go get github.com/exercism/cli
  2. cd $GOPATH/src/github.com/exercism/cli
  3. go get
  4. go get github.com/levicook/glitch
  5. go install github.com/levicook/glitch
  6. Make sure $GOPATH/bin is on your path (you may need something like export PATH=$PATH:/projects/goprojects/bin)
  7. Open a separate terminal window to your project directory and run the command glitch
  8. Write a test.
  9. Watch test fail.
  10. Make test pass.
  11. Submit a pull request.

Building

  1. Run bin/build and the binary for your platform will be built into the out directory.
  2. Run bin/build-all and the binaries for OSX, Linux and Windows will be built into the release directory.

Troubleshooting

app.Run(os.Args) used as value

This error is due to a breaking change between the 0.x version of the codegangsta/cli library and the 1.x version of the library.

To fix it update the codegangsta/cli dependency:

$ go get -u github.com/codegangsta/cli

New to go? Missing packages for glitch?

missing assertion library

When you glitch, do you get stymied like this?

# github.com/exercism/cli
api_test.go:7:2: cannot find package "github.com/stretchr/testify/assert" in any of: ...
FAIL	github.com/exercism/cli [setup failed]

You may need to

$ go get github.com/stretchr/testify/assert
$ go install github.com/stretchr/testify/assert
$ glitch

go vet on MacOS

Depending on your brew installation of go you may not yet have the vet command available. You may also need hg (mercurial) to get rolling.

Here's a sample (trimmed) output from a successful installation of vet on MacOSX 10.8.5 with XCode 5.0.2

% brew install go --cross-compile-common

... installation output ...

% go vet
go tool: no such tool "vet"; to install:
	go get code.google.com/p/go.tools/cmd/vet

% go get code.google.com/p/go.tools/cmd/vet
go: missing Mercurial command. See http://golang.org/s/gogetcmd

% brew install hg
% go get code.google.com/p/go.tools/cmd/vet
% go vet

Now you should be able to run glitch.

cli's People

Contributors

adg avatar andrewsardone avatar bunnymatic avatar derekparker avatar dpritchett avatar ebautistabar avatar elimisteve avatar isbadawi avatar jish avatar kytrinyx avatar lcowell avatar legalizeadulthood avatar mend-bolt-for-github[bot] avatar mikegehard avatar simonjefford avatar tonkpils avatar trevorbramble avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.