Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(2247)

Issue 197110043: allow updating dependencies from multiple files

Can't Edit
Can't Publish+Mail
Start Review
Created:
9 years, 2 months ago by rog
Modified:
9 years, 2 months ago
Reviewers:
sinzui.is, mp+247684, mattyw
Visibility:
Public.

Description

allow updating dependencies from multiple files When there's a conflict, it prints a warning and tries to choose the dependency from the earliest-specified file or latest revision depending on command line flags. Also changed the behaviour of the -n flag so that it does not overlap so much with -x and so that we don't see so much noise when experimenting with godeps -u commands. https://code.launchpad.net/~rogpeppe/godeps/002-multi-dependency-update/+merge/247684 (do not edit description out of merge proposal)

Patch Set 1 #

Total comments: 4

Patch Set 2 : allow updating dependencies from multiple files #

Patch Set 3 : allow updating dependencies from multiple files #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+136 lines, -14 lines) Patch
A [revision details] View 1 chunk +2 lines, -0 lines 0 comments Download
M godeps.go View 11 chunks +134 lines, -14 lines 2 comments Download

Messages

Total messages: 6
rog
Please take a look.
9 years, 2 months ago (2015-01-27 10:36:57 UTC) #1
mattyw
Some small comments from me https://codereview.appspot.com/197110043/diff/1/godeps.go File godeps.go (right): https://codereview.appspot.com/197110043/diff/1/godeps.go#newcode43 godeps.go:43: godeps -U [flags] file... ...
9 years, 2 months ago (2015-01-27 10:51:26 UTC) #2
rog
Please take a look.
9 years, 2 months ago (2015-01-27 17:43:00 UTC) #3
rog
Please take a look. https://codereview.appspot.com/197110043/diff/1/godeps.go File godeps.go (right): https://codereview.appspot.com/197110043/diff/1/godeps.go#newcode43 godeps.go:43: godeps -U [flags] file... On ...
9 years, 2 months ago (2015-01-27 17:59:56 UTC) #4
mattyw
two small nitpicks - otherwise LGTM https://codereview.appspot.com/197110043/diff/40001/godeps.go File godeps.go (right): https://codereview.appspot.com/197110043/diff/40001/godeps.go#newcode65 godeps.go:65: a warning will ...
9 years, 2 months ago (2015-01-27 18:36:52 UTC) #5
sinzui.is
9 years, 2 months ago (2015-01-27 18:37:17 UTC) #6
Thank you for adding multi-file support and confict resolution.

Juju QA is writing a script that does much of this. Our use case is to do
integration testing of to juju and another go-based project. We also choose to
pass multiple dependencies.tsv files and use the order as the order or
precedence. The script warns when there is conflict with a higher precedence
dep. We don't want an error since one or both code bases are changing in this
case.

I am inclined to wait a for this feature to merge and abandon the QA script. We
run with godeps tip so we will get the goodness when it is merged.

There is a second case that Juju QA needs to solve for release testing. We care
about specific versions when we test packaging. For example. when we know the
exact version of Juju to be released, and the other project does not specify the
juju version in its deps (possibly a bug in the other project), we include the
juju rev we require at the command line. In this case, we treat conflicts as
errors. Even if the other project specifies the exact version of Juju, we
override it from the command line arg to verify there are no conflicts (and warn
that the juju version was overridden by our command).

I know some projects assume there is a juju in the gopath. I would prefer they
include juju in the dependencies.tsv to be clear about the version of juju they
expect to work with. I am thinking of a case where project foo requires juju at
rev abc, and godeps discovers juju has a dependencies.tsv so uses it. In this
case the foo project is the base deps and warning are raised if juju conflicts.
I expect the developers of foo to change their deps, possibly the juju rev, or
contact juju developers to change their deps.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b