Artifacts

Ab Julia 1.6 wurde die Unterstützung für Artefakte von Pkg.jl in Julia selbst verschoben. Bis eine ordnungsgemäße Dokumentation hier hinzugefügt werden kann, können Sie mehr über Artefakte im Pkg.jl-Handbuch unter https://julialang.github.io/Pkg.jl/v1/artifacts/ erfahren.

Julia 1.6

Julias Artefakte-API erfordert mindestens Julia 1.6. In den Julia-Versionen 1.3 bis 1.5 können Sie stattdessen Pkg.Artifacts verwenden.

Artifacts.artifact_metaFunction
artifact_meta(name::String, artifacts_toml::String;
              platform::AbstractPlatform = HostPlatform(),
              pkg_uuid::Union{Base.UUID,Nothing}=nothing)

Holen Sie sich Metadaten über ein gegebenes Artefakt (identifiziert durch den Namen), das in der gegebenen (Julia)Artifacts.toml-Datei gespeichert ist. Wenn das Artefakt plattformspezifisch ist, verwenden Sie platform, um die am besten geeignete Zuordnung auszuwählen. Wenn keine gefunden wird, geben Sie nothing zurück.

Julia 1.3

Diese Funktion erfordert mindestens Julia 1.3.

source
Artifacts.artifact_hashFunction
artifact_hash(name::String, artifacts_toml::String;
              platform::AbstractPlatform = HostPlatform())

Dünne Wrapper um artifact_meta(), um den Hash des angegebenen, plattform-kollabierten Artefakts zurückzugeben. Gibt nothing zurück, wenn keine Zuordnung gefunden werden kann.

Julia 1.3

Diese Funktion erfordert mindestens Julia 1.3.

source
Artifacts.find_artifacts_tomlFunction
find_artifacts_toml(pfad::String)

Gegeben den Pfad zu einer .jl-Datei (wie der, die von __source__.file im Kontext eines Makros zurückgegeben wird), finde die (Julia)Artifacts.toml, die im übergeordneten Projekt enthalten ist (sofern vorhanden), andernfalls gib nichts zurück.

Julia 1.3

Diese Funktion erfordert mindestens Julia 1.3.

source
Artifacts.@artifact_strMacro
macro artifact_str(name)

Gibt den Pfad auf der Festplatte zu einem Artefakt zurück. Sucht automatisch das Artefakt anhand des Namens in der (Julia)Artifacts.toml-Datei des Projekts. Wirft einen Fehler, wenn das angeforderte Artefakt nicht vorhanden ist. Wenn es im REPL ausgeführt wird, sucht es nach der toml-Datei, beginnend im aktuellen Verzeichnis, siehe find_artifacts_toml() für mehr.

Wenn das Artefakt als "lazy" markiert ist und das Paket using LazyArtifacts definiert hat, wird das Artefakt bei Bedarf mit Pkg heruntergeladen, wenn dieses Makro zum ersten Mal versucht, den Pfad zu berechnen. Die Dateien werden dann lokal installiert gelassen für später.

Wenn name einen Vorwärts- oder Rückwärtsschrägstrich enthält, werden alle Elemente nach dem ersten Schrägstrich als Pfadnamen betrachtet, die in das Artefakt indizieren, was eine einfache Einzeiler-Zugriffsweise auf eine einzelne Datei/ein Verzeichnis innerhalb eines Artefakts ermöglicht. Beispiel:

ffmpeg_path = @artifact"FFMPEG/bin/ffmpeg"
Julia 1.3

Dieses Makro erfordert mindestens Julia 1.3.

Julia 1.6

Das Slash-Indexing erfordert mindestens Julia 1.6.

source
Artifacts.artifact_existsFunction
artifact_exists(hash::SHA1; honor_overrides::Bool=true)

Gibt zurück, ob das angegebene Artefakt (identifiziert durch seinen sha1 git tree hash) auf der Festplatte existiert. Beachten Sie, dass es möglich ist, dass das angegebene Artefakt an mehreren Orten existiert (z. B. in mehreren Depots).

Julia 1.3

Diese Funktion erfordert mindestens Julia 1.3.

source
Artifacts.artifact_pathFunction
artifact_path(hash::SHA1; honor_overrides::Bool=true)

Gibt den Installationspfad eines Artefakts (identifiziert durch den SHA1-Git-Baum-Hash) zurück. Wenn das Artefakt nicht existiert, wird der Ort zurückgegeben, an dem es installiert werden würde.

Julia 1.3

Diese Funktion erfordert mindestens Julia 1.3.

source
Artifacts.select_downloadable_artifactsFunction
select_downloadable_artifacts(artifacts_toml::String;
                              platform = HostPlatform,
                              include_lazy = false,
                              pkg_uuid = nothing)

Gibt ein Wörterbuch zurück, in dem jeder Eintrag ein Artefakt aus der angegebenen Artifacts.toml ist, das für die angeforderte Plattform heruntergeladen werden soll. Lazy-Artefakte werden einbezogen, wenn include_lazy auf true gesetzt ist.

source