# Functions
CheckIfBasePackage checks whether the package should be treated as a base R package (included in every R installation) or if it should be treated as a dependency to be downloaded from a package repository.
CheckIfSkipDependency checks if processing of the package (dependency) should be skipped.
CheckIfVersionSufficient checks if availableVersionValue fulfills the requirement expressed by versionOperator ('>=' or '>') and requiredVersionValue.
CleanDescriptionOrPackagesEntry processes a multiline string representing information about one package from PACKAGES file (if isDescription is false), or the whole contents of DESCRIPTION file (if isDescription is true).
ConstructOutputPackageList generates a list of all packages and their dependencies which should be included in the output renv.lock file, based on the list of package descriptions, and information contained in the PACKAGES files.
DownloadDescriptionFiles downloads DESCRIPTION files from packageDescriptionList.
DownloadPackagesFiles downloads PACKAGES files from repository URLs specified in the repositoryList.
DownloadTextFile returns number of bytes in downloaded content, the downloaded content itself as a string, and error if any occurred.
No description provided by the author
GenerateRenvLock generates renv.lock file structure which can be then saved as a JSON file.
GetDefaultBranchSha clones the git repository located at repoURL to gitDirectory, using Personal Access Tokens from LOCKSMITH_GITLABTOKEN or LOCKSMITH_GITHUBTOKEN environment variables.
GetGitHubSha retrieves SHA of the remoteRef from the remoteUsername/remoteRepo GitHub repository.
GetGitLabProjectAndSha retrieves information about GitLab repository (project path, repository name and commit SHA) from projectURL GitLab API endpoint.
GetGitRepositoryURL reads the PackageDescription struct corresponding to a single package in the renv.lock and returns the git repository URL from which the package should be cloned.
GetLatestPackageVersionFromAnyRepository searches for the latest version of soughtPackageName in packagesFiles.
GetPackageRegex processes the comma-separated expression with wildcards indicating which packages should be updated and returns a real regex.
GetPackagesFileContent downloads the PACKAGES file from the repositoryURL using the downloadFileFunction and returns the contents, or empty string in case of error.
GetPackagesFiles downloads PACKAGES files from repositories defined in the renv.lock header.
GetPackageVersionFromDescription reads the DESCRIPTION file located in descriptionFilePath and returns the package version.
GetRepositoryKeyByValue searches for repository URL in repositoryMap and returns the name (alias) of that repository which will then be used in output renv.lock file.
ParseDescriptionFileList iterates through package DESCRIPTION files.
ParseInput parses CLI input parameters, and returns: list of package DESCRIPTION URLs, list of package repository URLs (in descending priority order), a map from package repository alias (name) to the package repository URL, and a list of allowed types of missing dependencies.
ParsePackagesFiles iterates through package repository PACKAGES files.
ProcessDependencyFields processes a map containing a YAML-like object representing dependencies of a package.
ProcessDescription reads a string containing DESCRIPTION file and returns a structure with those fields/properties that are required for further processing.
ProcessDescriptionURL gets information about the git repository in which the package is stored based on the provided descriptionURL to the package DESCRIPTION file.
ProcessMissingPackage saves information about missing packages (dependencies) and their versions.
ProcessPackagesFile reads a string containing PACKAGES file, and returns a structure with those fields/properties that are required for further processing.
ResolveDependenciesRecursively checks dependencies of the package, and their required versions.
UpdateGitPackages iterates through the packages in renv.lock and updates the entries corresponding to packages stored in git repositories.
UpdateRenvLock reads the renv.lock from inputFileName.
UpdateRepositoryPackages iterates through the packages in renv.lock and updates the entries corresponding to packages downloaded from CRAN-like repositories.
# Structs
No description provided by the author
No description provided by the author
DescriptionFile represents the input package DESCRIPTION file together with related information about the git repository where the package is stored.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
PackageDescription represents an R package.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author