diff --git a/docs/the-solver.md b/docs/the-solver.md index 43f173d3..25854dbd 100644 --- a/docs/the-solver.md +++ b/docs/the-solver.md @@ -69,7 +69,9 @@ will result in an error, as `C` imports a package that will necessarily result i Go 1.4 introduced [import comments](https://golang.org/cmd/go/#hdr-Import_path_checking), which allow a package to specify the import path that must be used when addressing it. For example, `import "github.com/golang/net/dict"` would point to a valid package, but because [it uses an import comment](https://github.com/golang/net/blob/42fe2e1c20de1054d3d30f82cc9fb5b41e2e3767/dict/dict.go#L7) to enforce that it must be imported as `golang.org/x/net/dict`, dep would reject any project attempting to import it directly through its github address. -Because most projects are consistent about their import comment use over time, this issue typically only occurs when adding a new dependency or attempting to revive an older project. +Because most projects are consistent about their import comment use over time, this issue typically only occurs when adding a new dependency or attempting to revive an older project. + +> Note: dep does not currently enforce this rule, but [it needs to](https://github.com/golang/dep/issues/902). **Remediation:** change the code by fixing the offending import paths. If the offending import paths are not in the current project and you don't directly control the dependency, you'll have to fork and fix it yourself, then use `source` to point to your fork. diff --git a/website/blog/2018-01-23-announce-v0.4.0.md b/website/blog/2018-01-23-announce-v0.4.0.md index 55528512..ad94a092 100644 --- a/website/blog/2018-01-23-announce-v0.4.0.md +++ b/website/blog/2018-01-23-announce-v0.4.0.md @@ -4,4 +4,36 @@ author: sam boyer authorURL: http://twitter.com/sdboyer --- -This blog post will test file name parsing issues when periods are present. +v0.4.0 of dep [has been released](https://github.com/golang/dep/releases/tag/v0.4.0) - and along with it, this site for documentation and announcements about dep! And, being that it's been nearly six months since [the last dep status update](https://sdboyer.io/dep-status/2017-08-17/) (which are now officially discontinued, in favor of this blog), and the roadmap hasn't been substantially updated in even longer, we'll use this release as an excuse to bring a bunch of things up to speed. + +### A new dep release! + +After three months of work, the next version of dep is stable and ready for public use. The big headline changes are: + +* `dep prune` no longer exists as a separate command. It has been absorbed into `dep ensure`, and its behavior can now be more granularly controlled by [directives in `Gopkg.toml`](https://golang.github.io/dep/docs/Gopkg.toml.html#prune). Calls to `dep prune` will not fail now, but will in future versions, so update your scripts! +* Support for govendor and glock have been added; `dep init` can now read their metadata files and attempt to automatically convert projects managed by those tools. + +Additional information is available in [the release notes](https://github.com/golang/dep/releases/tag/v0.4.0). The other major addition is this documentation site! + +### Docs docs docs + +Dep has had a documentation problem for a while. Having a single-command interface helped us get by with having only an FAQ, but as time wore on, it became increasingly clear that we needed a comprehensive set of documentation if people were to really feel comfortable with the tool. + +This site, which is automatically generated from the [docs directory](https://github.com/golang/dep/tree/master/docs) within the dep repository by [docusaurus](http://docusaurus.io/), is now that comprehensive source of docs. More so than any individual bit of information, it provides some broader benefits: + +* New user guides - reference documentation is not what folks need when starting with a new tool. Step-by-step instructions are. Now [we have that](https://golang.github.io/dep/docs/introduction.html), and it caters to users who are not only new to dep, but also to Go in general. +* Thematic organization of content - up until now, we were somewhat haphazardly flinging information into the FAQ. The body of documentation here is organized from the ground up, which will hopefully make it both more useful and easier to maintain. +* Versioning - all of the docs are snapshotted on each release, and users can [select the version of the docs](https://golang.github.io/dep/versions.html) they want to view. Ideally, everyone should always be able to use the latest version, but this at least means you're not penalized if that's not feasible for you/your organization. +* A blog - you're reading it! This is great, as it provides us a canonical place to circulate information about what's happening with the project. + +At the same time, the docs aren't quite comprehensive _yet_. There's more reference material and guides to be written. For example, we're still missing a guide for project maintainers on how to make releases that align well with dep's happy path. + +Also, now that we have this whole docs apparatus, it would be particularly awesome if someone were to step up to help as a [docs maintainer](https://github.com/golang/dep/issues/629#issuecomment-359922251)! Also also, the CSS on this site is terrible, and + +### The future + +Right now, there's two aspects to the future of dep. One is the roadmap of changes and features that make sense for dep as it exists today, in this standalone context. The other is the roadmap for moving dep into the toolchain. + +For the former, we have a fair bit of work underway that, now that this release is out the door, we can move on quickly. That includes major performance improvements, solver improvements to pick a sane version more of the time with less manual intervention, allowing the `source` field to work the way [most people expect it to](https://github.com/golang/dep/issues/860), and others. The goal is also to move dep towards a more regular release schedule. + +With respect to dep's movement towards the toolchain, discussions have already been ongoing between dep folks and the Go team for months. Movement into the toolchain is not a simple process. Some rules that dep, as a standalone tool, had to accept as law, become negotiable (for example, the semantics of vendor directories). There's also the question of how to best fit dep's commands themselves into the `go` tool. These present both interesting design opportunities and considerable risk. More information and opportunities for comment will be coming as we move into the Go 1.10 cycle. As has always been the plan, though, dep will continue to exist as a standalone tool until the toolchain has evolved sufficiently to supplant it. \ No newline at end of file diff --git a/website/pages/en/versions.js b/website/pages/en/versions.js deleted file mode 100644 index 192d3ac3..00000000 --- a/website/pages/en/versions.js +++ /dev/null @@ -1,88 +0,0 @@ -const React = require('react'); - -const CompLibrary = require('../../core/CompLibrary'); -const Container = CompLibrary.Container; -const GridBlock = CompLibrary.GridBlock; - -const CWD = process.cwd(); - -const siteConfig = require(CWD + '/siteConfig.js'); -const versions = require(CWD + '/versions.json'); - -class Versions extends React.Component { - render() { - const latestVersion = versions[0]; - return ( -
- -
-
-

{siteConfig.title + ' Versions'}

-
-

New versions of dep are released regularly.

- -

Current version (Stable)

- - - - - - - - -
{latestVersion} - Documentation - - Release Notes -
-

- This is the version that is configured automatically when you - first install this project. -

-
-

Development versions

- - - - - - - - -
master - Documentation - - Release Notes -
-

Other text describing this section.

-
-

Past Versions

- - - {versions.map( - version => - version !== latestVersion && ( - - - - - - ) - )} - -
{version} - Documentation - - Release Notes -
-

- A full list of past releases can be found on GitHub. -

-
-
-
- ); - } -} - -module.exports = Versions; diff --git a/website/static/css/custom.css b/website/static/css/custom.css index 03809dde..097e466a 100644 --- a/website/static/css/custom.css +++ b/website/static/css/custom.css @@ -1,44 +1,45 @@ /* your custom css */ +.homeContainer { + flex: 1 0 auto; + padding-bottom: 1em; +} + +.docMainWrapper { + flex: 1 0 auto; + padding-bottom: 1em; +} + +.homeContainer .homeWrapper .projectLogo { + justify-content: center; + position: relative; + padding: 2em; +} + +.homeContainer .homeWrapper .projectLogo img { + max-height: 360px; +} + +body { + display: flex; + flex-direction: column; +} + +div.navPusher { + display: flex; + flex-direction: column; +} + +.footer-logo { + padding-top: 1em; + display: flex; + justify-content: center; +} + @media only screen and (min-device-width: 360px) and (max-device-width: 736px) { } @media only screen and (min-width: 1024px) { - .homeContainer { - flex: 1 0 auto; - padding-bottom: 1em; - } - - .docMainWrapper { - flex: 1 0 auto; - padding-bottom: 1em; - } - - .homeContainer .homeWrapper .projectLogo { - justify-content: center; - position: relative; - padding: 2em; - } - - .homeContainer .homeWrapper .projectLogo img { - max-height: 360px; - } - - body { - display: flex; - flex-direction: column; - } - - div.navPusher { - display: flex; - flex-direction: column; - } - - .footer-logo { - padding-top: 1em; - display: flex; - justify-content: center; - } } @media only screen and (max-width: 1023px) {