Граф коммитов

3187 Коммитов

Автор SHA1 Сообщение Дата
sam boyer 812b8c103f dep: Linting fixes 2018-07-04 01:40:34 -04:00
sam boyer 08a43497b3 dep: Fix linting issues, update CHANGELOG 2018-07-04 01:13:40 -04:00
sam boyer 3c60abcd2f dep: Make DeltaWriter sensitive to -vendor-only
Also a bunch of docs for the verify package.
2018-07-03 23:37:29 -04:00
sam boyer 9d4eca8e3e gps: Collapse LockWithImports into Lock
There was no real need to delineate between Lock and LockWithImports.
The old Lock had the InputsDigest concept, which was even less feasible
for theoretical implementations of Lock to have, so this can't possibly
be more harmful.
2018-07-03 20:31:50 -04:00
sam boyer f00e82813f dep: Update scads of tests
Tests are now almost completely working, after updating all the outputs
to the new lock format. There is also an assortment of other fixes in
here, mostly related to fixing nil pointer panics, that were uncovered
by fixing up these tests.
2018-07-03 19:14:30 -04:00
sam boyer 6b47f58a62 dep: Tell the user why we're solving
Add output to all of the information we assemble when checking if the
Lock satisfies the current input set.

Also some refactoring of the ctx.LoadProject() process to have fewer
partial states.
2018-07-03 01:41:47 -04:00
sam boyer 13ec2118d2 gps: Diff->Delta, and bitfield for change checking
Also convert the SafeWriter to use LockDelta.
2018-07-03 01:41:47 -04:00
sam boyer df2c26b777 dep: Get DeltaWriter into a working state
This encompasses the first pass at the new, more abstracted diffing
system, and the DeltaWriter implementation on top of it. Tests are
needed, but cursory testing indicates that we successfully capture all
types of diffs and regenerate only the subset of projects that actually
need to be touched.
2018-07-03 01:41:47 -04:00
sam boyer 0b2482d688 verify: Relocate lock diffing and tree hashing
Both of these subsystems make more sense in the verification package
than in gps itself.
2018-07-03 01:41:47 -04:00
sam boyer bce4a363ac gps: Remove all reference to InputsDigest
We're now relying entirely on real validation - no more hash digest
comparisons and meaningless conflicts!
2018-07-03 01:41:47 -04:00
sam boyer 4cb57f57c3 dep: Make DeltaWriter use temp sibling vendor dir 2018-07-03 01:41:47 -04:00
sam boyer 485c74eec6 dep: Add foundation for verified, pruned vendor
THis includes changes across both dep and gps towards transparently
working with vendor trees that are both configurably pruned and
verifiable.
2018-07-03 01:41:47 -04:00
sam boyer 81b3a3d3d1 gps: Introduce verify subpackage
This is a start at isolating verification logic into a discrete package.
Not sure how far we'll be able to make this go without creating some
import loops.
2018-07-03 01:41:47 -04:00
sam boyer f23ef5161a gps: Convert LockedProject to an interface
This is the first step towards being able to a more expansive type - one
that carries the pruning and digest information - directly within the
existing Lock interface.
2018-07-03 01:41:47 -04:00
sam boyer db8b66b307 dep: Introduce lock verification logic
This mostly supplants the hash comparison-based checking, though it's
still in rough form.
2018-07-03 01:41:47 -04:00
sam boyer c7e220da4e Remove InputsDigest, add InputImports
First steps towards a better in-sync checking system that does not rely
on a merge-conflict-prone explicit hash digest.
2018-07-03 01:41:47 -04:00
sam boyer a437df46ab
Merge pull request #1868 from sigma/pr/fix-rebase-exec
test: unset GIT_DIR for git operations in integration tests
2018-07-02 21:43:54 -04:00
sam boyer f26ae76f9f
Merge pull request #1917 from sdboyer/licenseok-test
ci: Ignore main file in licenseok
2018-07-02 21:27:49 -04:00
sam boyer 1af6f85ada ci: Ignore main file in licenseok
This should fix test failures that were being caused by golang/go#24570,
which caused test binaries to be built even when there are no test
files. The poor interaction there arose from the setting of flags in our
init() function, it seems.
2018-07-02 20:55:06 -04:00
sam boyer 494b5dc28b
Merge pull request #1911 from fbidu/patch-1
Adding more emphasis to the need of create a go file before running ensure
2018-07-01 23:45:01 -04:00
sam boyer 6211c75ddb
Merge pull request #1884 from sdboyer/discard-version-unifier
gps: Remove versionTypeUnion
2018-07-01 23:37:24 -04:00
sam boyer 684854dd20
Merge pull request #1781 from akutz/feature/status-details
Support additional details with status command
2018-07-01 23:36:41 -04:00
sam boyer a545e3a9ce
Merge pull request #1639 from sigma/pr/fix-legal-sources
prune: Fix handling of "legal" source files
2018-07-01 23:25:57 -04:00
sam boyer bacd8dc5ba
Merge pull request #1883 from sdboyer/explicit-root
dep: Allow explicitly setting the project root via an env var
2018-07-01 23:24:43 -04:00
sam boyer c2af7718aa
Merge pull request #1866 from sigma/pr/hg-ext
gps: prevent hg extensions from interfering
2018-07-01 23:12:03 -04:00
sam boyer 87f9973853
Merge pull request #1860 from sigma/pr/fix-makefile
Makefile: use simple variables
2018-07-01 23:11:27 -04:00
sam boyer d6fc849993 Update CHANGELOG 2018-07-01 23:08:46 -04:00
sam boyer 1cfcdf765d
Merge pull request #1872 from sigma/pr/fix-rebase-exec-2
gps: unset some GIT_* variables for git operations
2018-07-01 23:06:31 -04:00
sam boyer c9551eaba2 gps: Modify tests dependent on version unifier 2018-07-01 23:03:48 -04:00
sam boyer 231ce51d33 dep: Update harness tests relying on unification
All of these results were quite incidental, a product of using test
repositories with dense placement of tags/branches on the same revisions
in a way that is highly unrealistic.
2018-07-01 23:02:41 -04:00
sam boyer a474b08285 gps: Remove versionTypeUnion
This was a bunch of added complexity for basically zero benefit, and
actually a fair bit of harm - any time it DID work, it was really
confusing.
2018-07-01 23:02:41 -04:00
sam boyer 35598cc569 gps: Remove test dependent on version unifier 2018-07-01 23:02:08 -04:00
sam boyer 36bbac056d gps: Fix Wrapf warnings 2018-07-01 22:43:15 -04:00
Felipe Rodrigues d7c2809137
Adding more emphasis to the need of create a go file before running ensure 2018-06-26 23:24:25 -03:00
Sunny 1550da37d8
Merge pull request #1869 from tinnefeld/issue-1452-collect-constraints-from-root-project
CollectConstraints from root project as well
2018-06-11 22:18:10 +05:30
sam boyer 902d09c4da prune: Hide command from help output
This was always the intent, but it got unintentionally reverted in the
v0.4.1 shuffle.
2018-06-04 23:39:07 -04:00
sam boyer 5e1f5d4ddd dep: Change DEP_PROJECT_ROOT to DEPPROJECTROOT 2018-06-04 23:33:20 -04:00
sam boyer 8e01b93f40 dep: Add DEPPROJECTROOT CHANGELOG entry and docs 2018-06-04 23:33:20 -04:00
sam boyer e7525a43b4 dep: Allow explicitly setting the project root
This is potentially useful when working on projects that aren't compiled
by the standard toolchain (e.g., by Bazel), and thus don't need to live
within a GOPATH.

It also comports with the upcoming changes to do away with GOPATH.
2018-06-04 23:33:01 -04:00
sam boyer a6b1e89bb0
Merge pull request #1711 from jmank88/cache
gps: source cache: enable opt-in persistent caching via DEPCACHEAGE env var
2018-06-04 22:22:44 -04:00
Jordan Krage 3a48552b6d
Merge branch 'master' into cache 2018-06-04 13:04:06 -07:00
Christian Tinnefeld 88d9067857 CollectConstraints from root project as well
The collectConstraints() function in status.go incorporates
constraints from the root projects manifest. Issue #1452.
2018-06-03 17:28:55 -07:00
Yann Hodique 82c576a133 gps: unset some GIT_* variables for git operations
This fixes 2 classes of bugs:
- running unit tests as part of a git rebase invocation
- running dep from a repository that has a separate GIT_DIR/GIT_WORK_TREE
2018-05-22 13:59:04 -07:00
Christian Tinnefeld f9d76b4cff CollectConstraints from root project as well
The collectConstraints() function in status.go incorporates effective
constraints from the root projects manifest. Issue #1452.
2018-05-19 17:46:47 -07:00
Yann Hodique afa687f9e3 test: unset GIT_DIR for git operations in integration tests
This allows integration tests to run during git rebase operations.
Without this, GIT_DIR points to the dep repo itself, which makes git checkout
operations fail miserably.
2018-05-18 13:03:15 -07:00
Carolyn Van Slyck 3e697f6afb
Merge pull request #1832 from rousan/issue-1749-multiple-dir-in-gopath
Add support for multiple directories in GOPATH environment variable in install.sh
2018-05-18 14:55:36 -05:00
Yann Hodique 8cd30baff3 gps: prevent hg extensions from interfering
Fix the way hg is invoked so that user extensions don't get to modify command
output in such a way that the rest of the code doesn't recognize it.
2018-05-17 12:41:10 -07:00
Rousan Ali 567200c5c8
Resolve PR merge conflicts 2018-05-17 13:17:50 +05:30
Yann Hodique 5a2d42f813 Makefile: use simple variables
There is no reason to run go env at variable expansion time, run it at
initialization time instead.
Also remove extra quoting for SHELL, as those are kept verbatim in the $(shell)
calls, which can lead to the attempted execution of a "/bin/bash" process
depending on the system, leading to errors like:

  make: "/bin/bash": Command not found
2018-05-16 11:17:45 -07:00
Carolyn Van Slyck 7d50595713
Merge pull request #1850 from miknie/patch-1
Clarify initial setup steps in new-project.md
2018-05-14 22:16:32 -05:00