Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to create or update lock file for project when project directory is missing from cache #578

Closed
jrick opened this issue Aug 24, 2016 · 16 comments
Labels
Milestone

Comments

@jrick
Copy link
Contributor

jrick commented Aug 24, 2016

I'm seeing an issue trying to update dependencies for github.com/decred/dcrd when glide update is run from bitrig (an openbsd fork):

Script started on Wed Aug 24 12:08:23 2016
$ 
�[0J$ pwd

/home/jrick/src/go/src/github.com/decred/dcrd
$ 
�[0J$ glide --no-color update

[INFO]  Downloading dependencies. Please wait...
[INFO]  --> Fetching updates for github.com/btcsuite/btclog.
[INFO]  --> Fetching updates for github.com/btcsuite/fastsha256.
[INFO]  --> Fetching updates for github.com/btcsuite/websocket.
[INFO]  --> Fetching updates for github.com/btcsuite/go-socks.
[INFO]  --> Fetching updates for github.com/btcsuite/winsvc.
[INFO]  --> Fetching updates for github.com/btcsuite/seelog.
[INFO]  --> Fetching updates for github.com/btcsuite/goleveldb.
[INFO]  --> Fetching updates for github.com/btcsuite/golangcrypto.
[INFO]  --> Fetching updates for github.com/davecgh/go-spew.
[INFO]  --> Fetching updates for github.com/decred/bitset.
[INFO]  --> Fetching updates for github.com/decred/blake256.
[INFO]  --> Fetching updates for github.com/decred/dcrrpcclient.
[INFO]  --> Fetching updates for github.com/decred/dcrutil.
[INFO]  --> Fetching updates for github.com/decred/ed25519.
[INFO]  --> Fetching updates for golang.org/x/crypto.
[INFO]  --> Fetching updates for github.com/btcsuite/go-flags.
[INFO]  --> Setting version for github.com/btcsuite/seelog to v2.1.
[INFO]  Resolving imports
[ERROR] Error scanning github.com/decred/dcrd/chaincfg/chainhash: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg/chainhash: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/wire: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/wire: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[INFO]  --> Fetching updates for github.com/btcsuite/snappy-go.
[ERROR] Error scanning github.com/decred/dcrd/chaincfg: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/chaincfg/chainec: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg/chainec: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/blockchain: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/blockchain: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/txscript: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/txscript: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/dcrjson: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/dcrjson: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Failed to retrieve a list of dependencies: Error resolving imports
$ 
�[0J$ exit


Script done on Wed Aug 24 12:09:29 2016

It also seems impossible to update even when an entirely new glide.yaml is created from glide init:

Script started on Wed Aug 24 12:15:33 2016
$ 
�[0J$ rm glide.yaml glide.lock

$ 
�[0J$ glide --no-color init

[INFO]  Generating a YAML configuration file and guessing the dependencies
[INFO]  Attempting to import from other package managers (use --skip-import to skip)
[INFO]  Scanning code to look for dependencies
[INFO]  --> Found reference to github.com/btcsuite/btclog
[INFO]  --> Found reference to github.com/btcsuite/fastsha256
[INFO]  --> Found reference to github.com/btcsuite/go-flags
[INFO]  --> Found reference to github.com/btcsuite/go-socks/socks
[INFO]  --> Found reference to github.com/btcsuite/golangcrypto/ripemd160
[INFO]  --> Found reference to github.com/btcsuite/goleveldb/leveldb
[INFO]  --> Adding sub-package leveldb/comparer to github.com/btcsuite/goleveldb
[INFO]  --> Adding sub-package leveldb/errors to github.com/btcsuite/goleveldb
[INFO]  --> Adding sub-package leveldb/filter to github.com/btcsuite/goleveldb
[INFO]  --> Adding sub-package leveldb/iterator to github.com/btcsuite/goleveldb
[INFO]  --> Adding sub-package leveldb/opt to github.com/btcsuite/goleveldb
[INFO]  --> Adding sub-package leveldb/util to github.com/btcsuite/goleveldb
[INFO]  --> Found reference to github.com/btcsuite/seelog
[INFO]  --> Found reference to github.com/btcsuite/websocket
[INFO]  --> Found reference to github.com/btcsuite/winsvc/eventlog
[INFO]  --> Adding sub-package mgr to github.com/btcsuite/winsvc
[INFO]  --> Adding sub-package svc to github.com/btcsuite/winsvc
[INFO]  --> Found reference to github.com/davecgh/go-spew/spew
[INFO]  --> Found reference to github.com/decred/bitset
[INFO]  --> Found reference to github.com/decred/blake256
[INFO]  --> Found reference to github.com/decred/dcrrpcclient
[INFO]  --> Found reference to github.com/decred/dcrutil
[INFO]  --> Adding sub-package bloom to github.com/decred/dcrutil
[INFO]  --> Found reference to github.com/decred/ed25519
[INFO]  --> Adding sub-package edwards25519 to github.com/decred/ed25519
[INFO]  --> Found reference to golang.org/x/crypto/ssh/terminal
[INFO]  --> Found test reference to github.com/stretchr/testify/assert
[INFO]  Writing configuration file (glide.yaml)
[INFO]  Would you like Glide to help you find ways to improve your glide.yaml configuration?
[INFO]  If you want to revisit this step you can use the config-wizard command at any time.
[INFO]  Yes (Y) or No (N)?
n
[INFO]  You can now edit the glide.yaml file. Consider:
[INFO]  --> Using versions and ranges. See https://glide.sh/docs/versions/
[INFO]  --> Adding additional metadata. See https://glide.sh/docs/glide.yaml/
[INFO]  --> Running the config-wizard command to improve the versions in your configuration
$ 
�[0J$ glide --no-color update

[INFO]  Downloading dependencies. Please wait...
[INFO]  --> Fetching updates for github.com/btcsuite/go-flags.
[INFO]  --> Fetching updates for github.com/davecgh/go-spew.
[INFO]  --> Fetching updates for github.com/btcsuite/winsvc.
[INFO]  --> Fetching updates for github.com/decred/blake256.
[INFO]  --> Fetching updates for github.com/btcsuite/goleveldb.
[INFO]  --> Fetching updates for github.com/btcsuite/golangcrypto.
[INFO]  --> Fetching updates for github.com/btcsuite/go-socks.
[INFO]  --> Fetching updates for github.com/decred/bitset.
[INFO]  --> Fetching updates for github.com/btcsuite/seelog.
[INFO]  --> Fetching updates for github.com/btcsuite/websocket.
[INFO]  --> Fetching updates for github.com/decred/ed25519.
[INFO]  --> Fetching updates for github.com/decred/dcrrpcclient.
[INFO]  --> Fetching updates for github.com/btcsuite/fastsha256.
[INFO]  --> Fetching updates for github.com/btcsuite/btclog.
[INFO]  --> Fetching updates for github.com/decred/dcrutil.
[INFO]  --> Fetching updates for golang.org/x/crypto.
[INFO]  --> Fetching updates for github.com/stretchr/testify.
[INFO]  Resolving imports
[ERROR] Error scanning github.com/decred/dcrd/chaincfg/chainhash: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg/chainhash: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/wire: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/wire: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[INFO]  --> Fetching updates for github.com/btcsuite/snappy-go.
[ERROR] Error scanning github.com/decred/dcrd/chaincfg: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/chaincfg/chainec: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg/chainec: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/blockchain: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/blockchain: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/txscript: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/txscript: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Error scanning github.com/decred/dcrd/dcrjson: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/dcrjson: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.
[ERROR] Failed to retrieve a list of dependencies: Error resolving imports
$ 
�[0J$ exit


Script done on Wed Aug 24 12:16:13 2016

The same project can be successfully updated on Windows, and produces the following lockfile:

hash: 4648b5e89ce577ac30492bc77edc33a1176f4cbbb021495b1cb522c2588a5e90
updated: 2016-08-24T11:50:28.3908857-04:00
imports:
- name: github.com/btcsuite/btclog
  version: 73889fb79bd687870312b6e40effcecffbd57d30
- name: github.com/btcsuite/fastsha256
  version: 637e656429416087660c84436a2a035d69d54e2e
- name: github.com/btcsuite/go-flags
  version: 6c288d648c1cc1befcb90cb5511dcacf64ae8e61
- name: github.com/btcsuite/go-socks
  version: cfe8b59e565c1a5bd4e2005d77cd9aa8b2e14524
  subpackages:
  - socks
- name: github.com/btcsuite/golangcrypto
  version: 53f62d9b43e87a6c56975cf862af7edf33a8d0df
  subpackages:
  - ripemd160
- name: github.com/btcsuite/goleveldb
  version: 7834afc9e8cd15233b6c3d97e12674a31ca24602
  subpackages:
  - leveldb
  - leveldb/cache
  - leveldb/comparer
  - leveldb/errors
  - leveldb/filter
  - leveldb/iterator
  - leveldb/journal
  - leveldb/memdb
  - leveldb/opt
  - leveldb/storage
  - leveldb/table
  - leveldb/util
- name: github.com/btcsuite/seelog
  version: ae8891d029dd3c269dcfd6f261ad23e761acd99f
- name: github.com/btcsuite/snappy-go
  version: 0bdef8d067237991ddaa1bb6072a740bc40601ba
- name: github.com/btcsuite/websocket
  version: 31079b6807923eb23992c421b114992b95131b55
- name: github.com/btcsuite/winsvc
  version: f8fb11f83f7e860e3769a08e6811d1b399a43722
  subpackages:
  - eventlog
  - mgr
  - registry
  - svc
  - winapi
- name: github.com/davecgh/go-spew
  version: 6cf5744a041a0022271cefed95ba843f6d87fd51
  subpackages:
  - spew
- name: github.com/decred/bitset
  version: 484b833245d5f9046e2893a6bd2e54b1df3a53a4
- name: github.com/decred/blake256
  version: a840e32d7c31fe2e0218607334cb120a683951a4
- name: github.com/decred/dcrd
  version: 1c9d038acd64494435abe59fc5a2b136c1793354
  subpackages:
  - addrmgr
  - blockchain
  - blockchain/dbnamespace
  - blockchain/indexers
  - blockchain/stake
  - chaincfg
  - chaincfg/chainec
  - chaincfg/chainhash
  - database
  - database/ffldb
  - database/internal/treap
  - dcrec/edwards
  - dcrec/secp256k1
  - dcrec/secp256k1/schnorr
  - dcrjson
  - limits
  - mining
  - peer
  - txscript
  - wire
- name: github.com/decred/dcrrpcclient
  version: 103ed11be3a7035554d3925fbfaa67742641510f
- name: github.com/decred/dcrutil
  version: 4fc91a08eea88e74539d42d6301fd298b9bd8230
  subpackages:
  - base58
  - bloom
- name: github.com/decred/ed25519
  version: b0909d3f798b97a03c9e77023f97a5301a2a7900
  subpackages:
  - edwards25519
- name: golang.org/x/crypto
  version: 986d3313588aa5c68f1df95eac956f79cf3b2c01
  subpackages:
  - ssh/terminal
testImports:
- name: github.com/pmezard/go-difflib
  version: 792786c7400a136282c1664665ae0a8db921c6c2
  subpackages:
  - difflib
- name: github.com/stretchr/testify
  version: d77da356e56a7428ad25149ca77381849a6a5232
  subpackages:
  - assert

(Sidenote: Why did it list the project itself in the lockfile?)

I've gone through all dependencies in the vendor directory on Windows where the update succeeded, and did not find any other projects that included a glide.yaml, so those error messages about unsatisified version requirements don't make much sense in this case.

@jrick
Copy link
Contributor Author

jrick commented Aug 24, 2016

This was done using 0.12.0 release on both machines.

@jrick
Copy link
Contributor Author

jrick commented Aug 24, 2016

Oh, and since more changes have gone to master since opening this issue, to help reproducibility, all of this was done with dcrd checked out to commit 1c9d038acd64494435abe59fc5a2b136c1793354.

@kujenga
Copy link

kujenga commented Aug 24, 2016

I'm seeing this same issue with updating dependencies with glide up for an internal repository where I work. When running glide up it fails when trying to find one of it's own packages within the cache directory, e.g. updating deps from within github.com/kujenga/myrepo would result in the message:

[ERROR] Error scanning github.com/kujenga/myrepo/mypkg: open /Users/ataylor/.glide/cache/src/https-github.com-kujenga-myrepo/mypkg: no such file or directory

When I looked in the ~/.glide folder on my local machine, the repository in question wasn't there at all.

@jrick
Copy link
Contributor Author

jrick commented Aug 24, 2016

@kujenga I'm seeing the same, no https-github.com-decred-dcrd directory in my case (and it is there on Windows). What OS?

@kujenga
Copy link

kujenga commented Aug 24, 2016

I'm on Mac OS X 10.11.6

I just found that I was able to resolve the issue by running glide install for another repository that used the first one as a dependency. That would fill the cache in ~/.glide and this avoid the error. Functional as a workaround, but definitely seems like there's an underlying bug here that can be fixed.

@jrick
Copy link
Contributor Author

jrick commented Aug 24, 2016

I do the majority of my development on Windows and am working on another project which imports this one, so that would make sense why it worked there. After doing a glide install on that project from the bitrig box, I do now see the directory in cache, and glide update works again.

@jrick jrick changed the title Unable to create lock file for project from bitrig Unable to create or update lock file for project when project directory is missing from cache Aug 24, 2016
@mischief
Copy link

running into this too. i'm baffled why glide thinks that it needs to put the package itself into glide.lock.....

@kujenga
Copy link

kujenga commented Aug 25, 2016

I'm seeing some additional strange behavior that seems related to this. Here are the steps I'm going through.

Let's say I'm in repo github.com/kujenga/foo, and one of foo's dependencies is github.com/kujenga/bar. Additionally, bar imports the package github.com/kujenga/foo/baz from the current repository, so there is a dependency cycle between the repositories themselves (but not the packages within them).

Run from within github.com/kujenga/foo:

  • run rm -rf glide.lock vendor/ to have a fresh start
  • run glide up
  • The glide.lock file that was created lists the package github.com/kujenga/foo (referencing itself) with baz as a subpackage. Additionally, github.com/kujenga/foo is present in the vendor/ folder. This causes go install -v $(glide nv) to fail with error messages of the following form, related to the use of "internal" packages. I'm assuming this is because the code in the repository itself is trying to compile against the packages within vendor/
package github.com/kujenga/foo/app
    imports github.com/kujenga/foo/internal/db: use of internal package not allowed

From this point, there are two options I tried. The first was just running glide up again. This resulted in all the packages within github.com/kujenga/foo, the current repository, being added to the glide.lock file. The current foo package was still in the vendor/ directory, and it still wouldn't compile because of the internal options.

The next thing I tried, which got me up and running, was directly after the initial glide up, running rm -rf vendor/, followed by glide install. The install command does not put the duplicate github.com/kujenga/foo package within vendor/ this time, and the compilation succeeds.

@mattfarina
Copy link
Member

Hey folks, sorry for the slow response. I was at a conference with limited connectivity and then traveling with no connectivity over the weekend.

I understand the frustration at this issue.

I have a feeling there are a couple things going on here.

First, an element in the cache may be corrupt. You can clear the cache with glide cc and try again. I only ran into a corrupt entry in the cache once in all my testing. If this is the case I'd love more detail. I think we need to try some automated cache handling for an error or better instructions.

Second, and error like:

[ERROR] Error scanning github.com/decred/dcrd/txscript: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/txscript: no such file or directory
[ERROR] This error means the referenced package was not found.
[ERROR] Missing file or directory errors usually occur when multiple packages
[ERROR] share a common dependency and the first reference encountered by the scanner
[ERROR] sets the version to one that does not contain a subpackage needed required
[ERROR] by another package that uses the shared dependency. Try setting a
[ERROR] version in your glide.yaml that works for all packages that share this
[ERROR] dependency.

Usually means the version for the repo has been set to one that doesn't have a subpackage. That there are incompatible changes that occurred. I didn't imagine this coming along with a corrupt cache.

@mattfarina
Copy link
Member

@mischief Glide has trouble with putting the package itself into the glide.lock when the top package in the glide.yaml file isn't the real location in the GOPATH. It should warn you when that happens. Did that happen?

@jrick
Copy link
Contributor Author

jrick commented Aug 29, 2016

$ pwd
/home/jrick
$ go env GOROOT
/home/jrick/go
$ go env GOPATH
/home/jrick/src/go
$ glide cc
[INFO]    Glide cache has been cleared.
$ cd src/go/src/github.com/decred/dcrd
$ glide update
[INFO]    Downloading dependencies. Please wait...
[INFO]    --> Fetching github.com/btcsuite/go-socks.
[INFO]    --> Fetching github.com/btcsuite/winsvc.
[INFO]    --> Fetching github.com/btcsuite/btclog.
[INFO]    --> Fetching github.com/decred/blake256.
[INFO]    --> Fetching github.com/btcsuite/go-flags.
[INFO]    --> Fetching github.com/btcsuite/websocket.
[INFO]    --> Fetching github.com/btcsuite/seelog.
[INFO]    --> Fetching github.com/btcsuite/golangcrypto.
[INFO]    --> Fetching github.com/decred/ed25519.
[INFO]    --> Fetching github.com/decred/dcrutil.
[INFO]    --> Fetching github.com/decred/dcrrpcclient.
[INFO]    --> Fetching golang.org/x/crypto.
[INFO]    --> Fetching github.com/davecgh/go-spew.
[INFO]    --> Fetching github.com/decred/bitset.
[INFO]    --> Fetching github.com/btcsuite/goleveldb.
[INFO]    --> Setting version for github.com/btcsuite/seelog to v2.1.
[INFO]    Resolving imports
[ERROR]   Error scanning github.com/decred/dcrd/addrmgr: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/addrmgr: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/blockchain: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/blockchain: no such file or director
y
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/blockchain/stake: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/blockchain/stake: no such file
 or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/chaincfg: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/chaincfg/chainec: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg/chainec: no such file
 or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/chaincfg/chainhash: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/chaincfg/chainhash: no such
file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/database: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/database: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/dcrjson: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/dcrjson: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/limits: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/limits: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/mining: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/mining: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/peer: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/peer: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/txscript: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/txscript: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/wire: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/wire: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/dcrec/edwards: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/dcrec/edwards: no such file or di
rectory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/dcrec/secp256k1: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/dcrec/secp256k1: no such file o
r directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[ERROR]   Error scanning github.com/decred/dcrd/dcrec/secp256k1/schnorr: open /home/jrick/.glide/cache/src/https-github.com-decred-dcrd/dcrec/secp256k1/schnorr
: no such file or directory
[ERROR]   This error means the referenced package was not found.
[ERROR]   Missing file or directory errors usually occur when multiple packages
[ERROR]   share a common dependency and the first reference encountered by the scanner
[ERROR]   sets the version to one that does not contain a subpackage needed required
[ERROR]   by another package that uses the shared dependency. Try setting a
[ERROR]   version in your glide.yaml that works for all packages that share this
[ERROR]   dependency.
[INFO]    --> Fetching github.com/btcsuite/snappy-go.
[ERROR]   Failed to retrieve a list of dependencies: Error resolving imports
$

@kujenga
Copy link

kujenga commented Aug 29, 2016

Thanks @mattfarina for the response! I'm seeing the same behavior that @jrick just posted after following those steps. My feeling is that there isn't any corruption of elements in the cache here, the actual error thats printed is a result of not handling the case where an element in the cache is totally missing, when it's looking for something from the current repo in the cache. Still, I think this is the manifestation of the problem rather than the root of it.

In the example posted by @jrick above, do you have a sense of why it's even looking in the cache for packages that are within the current repo? Shouldn't it just let the local ones be used? My impression was that this is occurring when a dependency of the current repo depends on the current repo, something like A -> B -> A. In my mind, the expected behavior would be for the current repository to never be vendored within itself.

@mattfarina
Copy link
Member

Oh, Oh, Oh, PR coming.

@mattfarina mattfarina added the bug label Aug 29, 2016
@mattfarina mattfarina added this to the 0.12.1 milestone Aug 29, 2016
@mattfarina
Copy link
Member

Can y'all please test the PR at #588? I think this fixes it.

mattfarina added a commit that referenced this issue Aug 30, 2016
Fixed #578: Not resolving parent project packages in some cases
@stayfoo
Copy link

stayfoo commented Jan 2, 2019

glide install
[INFO] Loading mirrors from mirrors.yaml file
[INFO] Lock file (glide.lock) does not exist. Performing update.
[INFO] Loading mirrors from mirrors.yaml file
[INFO] Downloading dependencies. Please wait...
[INFO] --> Fetching updates for github.com/go-sql-driver/mysql
[INFO] --> Fetching updates for github.com/astaxie/beego
[INFO] --> Fetching updates for github.com/aliyun/aliyun-oss-go-sdk
[INFO] --> Fetching updates for github.com/smartystreets/goconvey
[INFO] --> Detected semantic version. Setting version for github.com/aliyun/aliyun-oss-go-sdk to 1.9.2
[INFO] --> Detected semantic version. Setting version for github.com/smartystreets/goconvey to 1.6.3
[INFO] --> Detected semantic version. Setting version for github.com/astaxie/beego to v1.11.1
[INFO] --> Detected semantic version. Setting version for github.com/go-sql-driver/mysql to v1.4.1
[INFO] Resolving imports
[INFO] --> Fetching golang.org/x/crypto/acme/autocert
[WARN] Unable to checkout golang.org/x/crypto/acme/autocert
[INFO] --> Fetching updates for gopkg.in/yaml.v2
[INFO] --> Fetching google.golang.org/appengine/cloudsql
[WARN] Unable to checkout google.golang.org/appengine/cloudsql
[ERROR] Error looking for google.golang.org/appengine/cloudsql: Cannot detect VCS
[ERROR] Failed to retrieve a list of dependencies: Error resolving imports

@viveksinghggits
Copy link

viveksinghggits commented Jun 15, 2019

Can y'all please test the PR at #588? I think this fixes it.

Hi @mattfarina,
So, I have the latest version of glide on my ubuntu 18.04 machine, but still facing the same error. Any suggestions.?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants