Documentation

Lake.Build.Package

Package Facet Builds #

Build function definitions for a package's builtin facets.

Fetch the package's direct dependencies.

Equations
    Instances For

      The PackageFacetConfig for the builtin depsFacet.

      Equations
        Instances For

          Compute a topological ordering of the package's transitive dependencies.

          Equations
            Instances For

              The PackageFacetConfig for the builtin transDepsFacet.

              Equations
                Instances For

                  The PackageFacetConfig for the builtin optBuildCacheFacet.

                  Equations
                    Instances For

                      Tries to download the package's build cache (if configured).

                      Equations
                        Instances For

                          Tries to download and unpack the package's cached build archive (e.g., from Reservoir or GitHub). Prints a warning on failure.

                          Equations
                            Instances For

                              Build the extraDepTargets for the package. Also, if the package is a dependency, maybe fetch its build cache.

                              Equations
                                Instances For

                                  The PackageFacetConfig for the builtin dynlibFacet.

                                  Equations
                                    Instances For

                                      Compute the package's Reservoir barrel URL.

                                      Equations
                                        Instances For

                                          Compute the package's GitHub release URL.

                                          Equations
                                            Instances For
                                              def Lake.Package.fetchBuildArchive (self : Package) (url : String) (archiveFile : System.FilePath) (headers : Array String := #[]) :

                                              Tries to download and unpack a build archive for the package from a URL.

                                              Equations
                                                Instances For

                                                  The PackageFacetConfig for the builtin buildCacheFacet.

                                                  Equations
                                                    Instances For

                                                      The PackageFacetConfig for the builtin optReservoirBarrelFacet.

                                                      Equations
                                                        Instances For

                                                          The PackageFacetConfig for the builtin reservoirBarrelFacet.

                                                          Equations
                                                            Instances For

                                                              The PackageFacetConfig for the builtin optGitHubReleaseFacet.

                                                              Equations
                                                                Instances For

                                                                  The PackageFacetConfig for the builtin gitHubReleaseFacet.

                                                                  Equations
                                                                    Instances For
                                                                      def Lake.Package.afterBuildCacheAsync {α : Type} (self : Package) (build : JobM (Job α)) :
                                                                      FetchM (Job α)

                                                                      Perform a build job after first checking for an (optional) cached build for the package (e.g., from Reservoir or GitHub).

                                                                      Equations
                                                                        Instances For
                                                                          def Lake.Package.afterBuildCacheSync {α : Type} (self : Package) (build : JobM α) :
                                                                          FetchM (Job α)

                                                                          Perform a build after first checking for an (optional) cached build for the package (e.g., from Reservoir or GitHub).

                                                                          Equations
                                                                            Instances For

                                                                              A name-configuration map for the initial set of Lake package facets (e.g., extraDep).

                                                                              Equations
                                                                                Instances For
                                                                                  @[reducible, inline]

                                                                                  A name-configuration map for the initial set of Lake package facets (e.g., extraDep).

                                                                                  Equations
                                                                                    Instances For