Documentation

Lake.Config.Dependency

inductive Lake.InputVer :

A version targeted by a dependency (e.g., in a require).

  • none : InputVer

    No version was specified.

  • git (rev : GitRev) : InputVer

    A Git revision to resolve to a commit hash.

    This is specified by an @ git <rev> clause in Lean or rev = <rev> field in TOML.

  • ver (ver : VerRange) : InputVer

    A semantic version range of acceptable versions.

    This is specified by an @ <ver> clause in Lean or version = <ver> field in TOML.

Instances For
    @[instance_reducible]
    @[instance_reducible]

    The source of a Dependency. That is, where Lake should look to materialize the dependency.

    Instances For
      @[instance_reducible]

      A Dependency of a package. It specifies a package which another package depends on. This encodes the information contained in the require DSL syntax.

      • name : Lean.Name

        The package name of the dependency. This name must match the one declared in its configuration file, as that name is used to index its target data types. For this reason, the package name must also be unique across packages in the dependency graph.

      • scope : String

        An additional qualifier used to distinguish packages of the same name in a Lake registry. On Reservoir, this is the package owner.

      • version : InputVer

        The target version of the dependency.

      • The source of a dependency. If none, looks up the dependency in the default registry (e.g., Reservoir). See the documentation of DependencySrc for supported sources.

      • Arguments to pass to the dependency's package configuration.

      Instances For
        @[instance_reducible]
        @[inline]

        Returns the directory name used for storing the materialized dependency.

        Instances For
          @[inline]

          Returns the name of the dependency formatted for printing.

          Instances For
            @[inline]

            Returns the name of the dependency formatted for lookup on Reservoir.

            Instances For
              @[inline]

              Returns the full name of the dependency (i.e., <scope>/<name>) formatted for printing.

              Instances For
                @[inline]

                Returns a printable string which uniquely identifies this dependency for the resolver.

                Instances For