Артефакты
Страница в процессе перевода. |
Начиная с Julia 1.6 поддержка артефактов перенесена из Pkg.jl
в Julia. Поскольку соответствующая документация пока не добавлена, более подробно с артефактами вы можете ознакомиться в руководстве по Pkg.jl
по адресу https://julialang.github.io/Pkg.jl/v1/artifacts/.
Совместимость: Julia 1.6
Для API артефактов Julia требуется версия не ниже Julia 1.6. В Julia версий 1.3—1.5 можно использовать |
#
Artifacts.artifact_meta
— Function
artifact_meta(name::String, artifacts_toml::String;
platform::AbstractPlatform = HostPlatform(),
pkg_uuid::Union{Base.UUID,Nothing}=nothing)
Возвращает метаданные указанного артефакта (идентифицируемого по имени), хранящиеся в заданном файле (Julia)Artifacts.toml
. Если артефакт привязан к конкретной платформе, используйте platform
, чтобы выбрать наиболее подходящее сопоставление. Если метаданные не найдены, возвращает nothing
.
Совместимость: Julia 1.3
Для этой функции требуется версия Julia не ниже 1.3. |
#
Artifacts.artifact_hash
— Function
artifact_hash(name::String, artifacts_toml::String;
platform::AbstractPlatform = HostPlatform())
Тонкая оболочка вокруг artifact_meta()
для возврата хэша указанного артефакта, свернутого на платформе. Если сопоставление не найдено, возвращает nothing
.
Совместимость: Julia 1.3
Для этой функции требуется версия Julia не ниже 1.3. |
#
Artifacts.find_artifacts_toml
— Function
find_artifacts_toml(path::String)
По заданному пути к файлу .jl
(например, возвращаемому __source__.file
в контексте макроса) находит файл (Julia)Artifacts.toml
в содержащем его проекте (если он существует), в противном случае возвращает nothing
.
Совместимость: Julia 1.3
Для этой функции требуется версия Julia не ниже 1.3. |
#
Artifacts.@artifact_str
— Macro
macro artifact_str(name)
Возвращает путь к артефакту на диске. Автоматически ищет артефакт по имени в файле (Julia)Artifacts.toml
проекта. Если запрошенный артефакт отсутствует, выдает ошибку. При выполнении в REPL ищет файл TOML, начиная с текущего каталога; дополнительные сведения см. в описании find_artifacts_toml()
.
Если артефакт помечен как «отложенный» и в пакете определено using LazyArtifacts
, артефакт будет скачан по запросу с Pkg
в первый раз, когда макрос попытается вычислить путь. Файлы останутся установленными локально для дальнейшего использования.
Если name
содержит прямой или обратный слеш, все элементы после первого слеша будут восприниматься как имена путей, индексирующие артефакт, что позволяет легко получить доступ к одному файлу или каталогу внутри артефакта одной строкой. Пример:
ffmpeg_path = @artifact"FFMPEG/bin/ffmpeg"
Совместимость: Julia 1.3
Для этого макроса требуется версия Julia не ниже 1.3. |
Совместимость: Julia 1.6
Для индексирования с помощью слешей требуется версия Julia не ниже 1.6. |
#
Artifacts.artifact_exists
— Function
artifact_exists(hash::SHA1; honor_overrides::Bool=true)
Возвращает информацию о том, существует ли на диске заданный артефакт (идентифицируемый по хэшу дерева git SHA1). Имейте в виду, что артефакт может существовать в нескольких местах (например, в нескольких хранилищах).
Совместимость: Julia 1.3
Для этой функции требуется версия Julia не ниже 1.3. |
#
Artifacts.artifact_path
— Function
artifact_path(hash::SHA1; honor_overrides::Bool=true)
Для данного артефакта (идентифицируемого по хэшу дерева git SHA1) возвращает путь его установки. Если артефакт не существует, возвращает место, куда он будет установлен.
Совместимость: Julia 1.3
Для этой функции требуется версия Julia не ниже 1.3. |
#
Artifacts.select_downloadable_artifacts
— Function
select_downloadable_artifacts(artifacts_toml::String;
platform = HostPlatform,
include_lazy = false,
pkg_uuid = nothing)
Возвращает словарь, каждый элемент которого является артефактом из указанного файла Artifacts.toml
, подлежащий скачиванию для запрошенной платформы. Отложенные артефакты включаются, если задан аргумент include_lazy
.