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

Support importing glide config during dep init #380

Closed
@carolynvs

Description

@carolynvs
  • dep init checks for existing Glide configuration files (glide.yaml/glide.lock) and uses them to populate the manifest and lock.
  • Specify -skip-tools to skip importing existing dependency management config from other tools.

This is part of the epic #186.

Behaviors

  • We only look for glide.yaml at the root of the project. ❓
  • If a project is discovered by dep init that was not configured in glide.yaml, it is still included in the manifest. Note: Fixing manifest.json is empty after dep init #149 is out of scope for this issue.
  • When version/branch is specified in glide.yaml, use that value in the manifest.
  • When repo is specified in glide.yaml, use that value as the source in the manifest.
  • When a list of subpackages are specified in the glide.yaml, ignore them since dep will generate that list using static analysis. ❓
  • When an ignore list is specified in glide.yaml, use those values in the manifest.
  • Packages in testImports are included in the manifest as regular [[dependencies]], i.e. no distinction is made between imports and test imports. ❓
  • When excludeDirs, import.os or import.arch is specified in glide.yaml, warn that it isn't supported. ❓
  • Ignore homepage, license or owners is specified in glide.yaml.
  • Lock to the same revision that is specified in glide.lock.
  • When the revisions from the glide configuration do not meet the constraints, what should we do?
    1. Prompt the user to either create an override or use some revision suggested by dep?
    2. Create an override?
    3. Is there another option?
  • When configuration files from multiple dependency managers is found (e.g. glide AND godep), what is the expected behavior. Not a problem for this PR, but it is helpful to know ahead of time.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions