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

Explain useage of manifest and lock in the FAQ #516

Merged
merged 4 commits into from
May 11, 2017

Conversation

carolynvs
Copy link
Collaborator

No description provided.

FAQ.md Outdated
@@ -16,6 +18,20 @@ Summarize the question and quote the reply, linking back to the original comment
* [Can I put the manifest and lock in the vendor directory?](#can-i-put-the-manifest-and-lock-in-the-vendor-directory)
* [Why did dep use a different revision for package X instead of the revision in the lock file?](#why-did-dep-use-a-different-revision-for-package-x-instead-of-the-revision-in-the-lock-file)

## What is the difference between the manifest and lock?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's revise to

"What is the difference between Gopkg.toml (the "manifest") and Gopkg.lock (the "lock")?"

That way we don't assume people are familiar with the abstract terminology of manifest/lock

@carolynvs
Copy link
Collaborator Author

I've updated the question to include the manifest and lock filenames. Looks like the Travis build needs to be restarted though.

@carolynvs
Copy link
Collaborator Author

@sdboyer Is there anything else left that I need to do before this can be merged?

Copy link
Member

@sdboyer sdboyer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

couple little nits

FAQ.md Outdated
## When should I use dependencies, overrides, required, or ignored in the manifest?

* Use `dependencies` 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 `overrides` 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 when each section applies.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's add a note here that overrides should be used cautiously, sparingly and temporarily.

FAQ.md Outdated

> The manifest describes user intent, and the lock describes computed outputs. There's flexibility in manifests that isn't present in locks..., as the "branch": "master" constraint will match whatever revision master HAPPENS to be at right now, whereas the lock is nailed down to a specific revision.
>
> This flexibility is important because it allows us to provide easy commands (e.g. dep ensure -update) that can manage an update process for you, within the constraints you specify, AND because it allows your project, when imported by someone else, to collaboratively specify the constraints for your own dependencies.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

backticks around dep ensure -update

@sdboyer
Copy link
Member

sdboyer commented May 10, 2017

sorry, too many plates 😄

@sdboyer
Copy link
Member

sdboyer commented May 11, 2017

totes brills 💇‍♂️

@sdboyer sdboyer merged commit 837bea1 into golang:master May 11, 2017
@carolynvs carolynvs deleted the manifest-definitions branch May 11, 2017 13:01
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants