Skip to content

Releases: Masterminds/glide

Release 0.8.1

15 Dec 15:24
Compare
Choose a tag to compare
  • Fixed #163: Was detecting std lib packages when the GOROOT was different at
    runtime than compile time.
  • Fixed #165: glide update panics with --no-recursive option.
  • Added back zip build option to build scripts. This is useful for some
    environments.

Release 0.8.0

11 Dec 02:16
Compare
Choose a tag to compare

The 0.8.0 release of Glide brings with it some new major features. The most important of these is the glide.lock file, generated when running glide update. The glide.lock file contains the complete dependency tree and the commit id each package is pinned with. Where the glide.yaml file contains the dependencies of a project the glide.lock file, which is generated automatically, contains all the dependencies.

Instead of using glide update (or glide up) to install dependencies you should use the glide install command. This will install the dependencies and versions listed in the glide.lock file. This command is quite fast as it doesn't need to determine the dependency tree and does some actions concurrently to speed up performance. glide up should be used to update the pinned versions. When no glide.lock file is present the glide install command will perform an update.

We recommend you check the glide.lock file into your version control system.

In addition to locking by default, Glide 0.8.0 detects dependencies in dependencies not managed by a package manager (Glide, GPM, Godep, GB) and properly pins them.

This is a major step forward for Glide as you can now easily have reproducible builds while maintaining semantic version range support and usage.

  • Issues #156 and #85: Added lockfile support (glide.lock). This file records
    commit id pinned versions of the entire dependency tree. The glide install
    command installs the pinned dependencies from the glide.lock file while
    glide update updates the tree and lockfile. Most people should use glide install unless they want to intentionally updated the pinned dependencies.
    glide install is able to use concurrency to more quickly install update.
  • Issues #33 and #159: Glide notifies if a dependency checkout has uncomitted
    changes.
  • Issue #146: Glide scans projects not managed by a dependency manager, fetches
    their dependencies, and pins them in the glide.lock file.
  • Issue #99: Glide get pins dependencies by default and allows a version to
    be passed in. For example, glide get github.com/Masterminds/convert#^1.0.0
    will fetch github.com/Masterminds/convert with a version of ^1.0.0.
  • Issue #155: Copying packages from the GOPATH is now opt-in.
  • Removed the pin command as it's not longer needed now that there are lockfiles.

0.7.2

16 Nov 14:32
Compare
Choose a tag to compare
  • Fixed #139: glide.yaml file imports being reordered when file written.
  • Fixed #140: packages in glide.yaml were no longer being deduped.

0.7.1

10 Nov 16:31
Compare
Choose a tag to compare
  • Fixed #136: Fixed infinite recursion in list and tree commands.
  • Fixed issue where glide guess listed a null parent.
  • Fixed #135: Hard failure when home directory not found for cache.
  • Fixed #137: Some messages not ending in "\n".
  • Fixed #132 and #133: Build from source directions incorrect (thanks hyPiRion).

0.7.0

02 Nov 15:13
Compare
Choose a tag to compare
  • Fixed #110: Distribution as .tag.gz instead of .zip.
  • Issue #126: Added --no-color option to remove color for systems that do not
    work well with color codes (thanks albrow).
  • Added caching functionality (some opt-in).
  • Added global debug flag.
  • Moved yaml parsing and writing to gopkg.in/yaml.v2 and separated
    config handling into separate package.
  • Better godep import handling.
  • Fixed #98: Godep command name fix (thanks jonboulle).
  • #52 and #114: Add semantic version (SemVer) support.
  • #108: Flatten the dependency tree by default.
  • Fixed #107: Allow glide get to retrieve insecure packages with --insecure
    flag.
  • #105: Import commands accept a filename with the -f flag.
  • Fixed #97: Fixed misspellings (thanks jonboulle).
  • #96: Allow multiple packages in glide get.
  • #92: Added support to glide update to only update a specific package.
  • #91: glide list now displays if a pkg is in vendor, GOPATH, or missing.
  • Issue #89: More robust GOPATH handling (thanks gcmt).
  • Fixed #65: Hg commands were not checking out the codebase on the first update.
  • Fixed #95: Added more detail for errors previously reporting "Oops! exit
    status 128".
  • Fixed #86 and #71: Imported package names including a sub-package were checked
    out to the wrong location. They are not checked out to the right place and
    multiple instances of the top level repo are merged with error checking.

0.6.1

21 Sep 13:32
Compare
Choose a tag to compare
  • Fixed #82: C was not recognized as an internal package.
  • Fixed #84: novendor (nv) command returned directories with no Go code.

0.6.0

16 Sep 16:23
Compare
Choose a tag to compare
  • #53: Add support for gb-vendor manifest files.
  • Added glide tree command to inspect the code and see the imported packages.
  • Added glide list to see an alphabetized list of imported projects.
  • Added flatten feature to flatten the vendor tree (thanks interlock).
  • Fixed #74: Glide guess using the wrong GOROOT locations in some environments
    (thanks janeczku).
  • Fixed #76: Glide tree doesn't exclude core libraries with the GOROOT is
    incorrect (thanks janeczku).
  • Fixed #81: rebuild command did not look in vendor/ directory.
  • Fixed #77: update failed when a commit id was set for the ref.

0.5.1

31 Aug 14:09
Compare
Choose a tag to compare

This is a bug fix release. The largest of which is that now Glide works properly with vendored packages and can properly update them.

  • Fixed #58: Guess command not working.
  • Fixed #56: Unable to use glide get on golang.org/x/[name]/[subpackage]
  • Fixed #61: The wrong version of a dependency can be pinned when packages are vendored (no VCS repo associated with them).
  • Fixed #67: Unable to work go-get redirects.
  • Fixed #66: 'glide up' now has an --update-vendored (-u) flag to update vendored directories.
  • Fixed #68: Handling the base where the GOPATH has multiple separated directories.

0.5.0

19 Aug 20:34
Compare
Choose a tag to compare

Glide 0.5 is a major update breaking some backwards compatibility with
previous releases to support the new vendor setup in Go 1.5. Glide 0.5
does not work on versions of Go prior to 1.5.

  • Migrated to using the vendor/ directory and the go tools for vendor
    package management. To leverage this you'll need to set the
    environment variable GO15VENDOREXPERIMENT=1 and use Go 1.5.
  • glide up is now recursive and walks installed packages if there is
    no vendor directory. Use the --no-recursive flag to skip this.
  • Removed GOPATH management. This was needed for vendor package
    management that's not built into the go toolchain.
  • Switched to github.com/Masterminds/vcs for VCS integration.
  • When updating packages are now deleted if the --delete flag is set.
    This feature is now opt-in.
  • Fixed #32: Detects VCS type and endpoint changes along with a --force flag
    to replace the checkout if desired.

0.5.0-beta1

18 Aug 13:20
Compare
Choose a tag to compare
0.5.0-beta1 Pre-release
Pre-release

Glide .5 is a major update breaking some backwards compatibility with
previous releases.

  • Migrated to using the vendor/ directory and the go tools for vendor
    package management. To leverage this you'll need to set the
    environment variable GO15VENDOREXPERIMENT=1 and use Go 1.5.
  • glide up is now recursive and walks installed packages if there is
    no vendor directory. Use the --no-recursive flag to skip this.
  • Removed GOPATH management. This was needed for vendor package
    management that's not built into the go toolchain.
  • Switched to github.com/Masterminds/vcs for VCS integration.
  • When updating packages are now deleted if the --delete flag is set.
    This feature is now opt-in.