Skip to content
This repository has been archived by the owner on Sep 9, 2020. It is now read-only.

Commit

Permalink
Merge pull request #739 from ibrasho-forks/update-FAQ
Browse files Browse the repository at this point in the history
Update the FAQ to use constraint instead of dependencies (reflect #538)
  • Loading branch information
sdboyer authored Jun 12, 2017
2 parents d252483 + f0b6d09 commit 32ace93
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Summarize the question and quote the reply, linking back to the original comment
## When should I use `constraint`, `override`, `required`, or `ignored` in `Gopkg.toml`?

* Use `constraint` to constrain a [direct dependency](#what-is-a-direct-or-transitive-dependency) to a specific branch, version range, revision, or specify an alternate source such as a fork.
* Use `override` to constrain a [transitive dependency](#what-is-a-direct-or-transitive-dependency). See [How do I constrain a transitive dependency's version?](#how-do-i-constrain-a-transitive-dependencys-version) for more details on how overrides differ from dependencies. Overrides should be used cautiously, sparingly, and temporarily.
* Use `override` to constrain a [transitive dependency](#what-is-a-direct-or-transitive-dependency). See [How do I constrain a transitive dependency's version?](#how-do-i-constrain-a-transitive-dependencys-version) for more details on how overrides differ from constraints. Overrides should be used cautiously, sparingly, and temporarily.
* Use `required` to explicitly add a dependency that is not imported directly or transitively, for example a development package used for code generation.
* Use `ignored` to ignore a package and any of that package's unique dependencies.

Expand Down Expand Up @@ -88,7 +88,7 @@ Here are some suggestions for when you could use `dep` or `go get`:
Only your project's directly imported dependencies are affected by a `constraint` entry
in the manifest. Transitive dependencies are unaffected.

Use an `overrides` entry for transitive dependencies.
Use an `override` entry for transitive dependencies.

By default, when you specify a version without an operator, such as `~` or `=`,
`dep` automatically adds a caret operator, `^`. The caret operator pins the
Expand Down Expand Up @@ -122,10 +122,10 @@ dependency, you have a couple of options:
2. Use an override.

Overrides are a sledgehammer, and should only be used as a last resort. While
dependencies and overrides are declared in the same way in `Gopkg.toml`, they
constraints and overrides are declared in the same way in `Gopkg.toml`, they
behave differently:

* Dependencies:
* Constraints:
1. Can be declared by any project's manifest, yours or a dependency
2. Apply only to direct dependencies of the project declaring the constraint
3. Must not conflict with the `constraint` entries declared in any other project's manifest
Expand Down

0 comments on commit 32ace93

Please sign in to comment.