Skip to content

Instantly share code, notes, and snippets.

@rsc

rsc/roadmap.md Secret

Created June 13, 2018 01:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rsc/c4472e4e296c4fba658003a1919635df to your computer and use it in GitHub Desktop.
Save rsc/c4472e4e296c4fba658003a1919635df to your computer and use it in GitHub Desktop.
dep roadmap wiki page 2017-03-07

dep roadmap

The goal with dep is to be merged into the go toolchain. That's the path we're on, but that outcome is not guaranteed. It's going to be up to the Go community - you! - to see it through.

Timeline

The roadmap has three basic phases:

  • First, we need to get dep in shape so that it's ready to be merged into the toolchain. Ideally, this would happen at the very beginning of a Go development cycle, to provide the most time for acclimation and tire-kicking.
  • Second, once it's merged, we need to finish just the essential features, update other parts of the toolchain accordingly, and generally ensure it's solid and polished by the time of the next Go release.
  • The third, "future" phase is all about changes (e.g. fixing GOPATH) we can make once the tool is well-established in the ecosystem.

Our goal is that phase 1 will be wrapped by the end of the 1.9 cycle, and dep will be merged into the toolchain when 1.10 development begins.

We've created a bunch of epic issues that we believe capture the work that needs doing for each phase:

Please remember that finishing these issues does not guarantee dep will be merged. No external code of this size or significance has ever been pulled into the Go toolchain before, so everyone's kind of playing it by ear.

We plan to keep this roadmap updated as things evolve.

What we need

A lot of work lies ahead, but the momentum since we opened up dep has been tremendous - there's every reason to believe we can pull it off! Right now, we NEED PEOPLE to help shoulder the workload of writing docs, writing code, clarifying some design issues, and kicking the tires. Also, if anyone's interested in helping out with some project management, that would be huge 😄

If you're interested in contributing, here's some ways to go about finding your way in:

  • Install dep (go get -u github.com/golang/dep/cmd/dep), try it out on one of your projects, and get a feel for it.
  • Look through the epic issues linked above, and follow them down into the issues they link to.
  • Join #vendor channel in the Gophers slack to ask questions. We're nice, and there are no stupid questions!
  • If it seems like something's missing from our plan, open an issue!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment