Zef распознает и обрабатывает предварительные версии модулей? - PullRequest
0 голосов
/ 27 августа 2018

У меня есть модуль App::Assixt, в который я недавно внес относительно большое изменение.Я, конечно, проверил его на своей локальной системе, но хотел бы провести некоторое полевое тестирование, прежде чем называть его «стабильным выпуском».

Есть ли способ пометить этот выпуск как «альфа»?"или" релиз-кандидат ", так что этот выпуск будет установлен только людьми, которые решили использовать нестабильные / тестируемые выпуски?

1 Ответ

0 голосов
/ 30 августа 2018

zef будет обрабатывать версии так же, как Perl 6:

# true because "1.0.a" < "1.0.0"
$ perl6 -e 'say Version.new("1.0.PREVIEW") < Version.new("1.0")'
True

Если установлен Foo:ver<1.0.PREVIEW>, его можно использовать как Foo:ver<1.0.PREVIEW> или Foo:ver<1.0>. Это означает, что любые системы, на которых установлено Foo:ver<1.0.PREVIEW>, должны будут удалить его для обновления / установки Foo:ver<1.0> в будущем (если не будет использоваться --force-install), но также и то, что авторы могут писать код для окончательной версии без объявления дополнительных .PREVIEW везде.

Это не очень полезно в отношении публикации - zef по умолчанию получит самую новую версию, несмотря на то, что пользователь не выбрал какую-либо используемую схему управления версиями. Поскольку пользователь хочет подписаться на это, есть две опции.


1) Создать, например, нестабильные, тестируемые, стабильные индексы и убеждают людей использовать их

Это можно сделать, скопировав конфигурацию zef в %*ENV<XDG_CONFIG_HOME>/zef/config.json и включив следующее:

"Repository" : [
    {
        "short-name" : "unstable",
        "enabled" : 0,
        "module" : "Zef::Repository::Ecosystems",
        "options" : {
            "name" : "unstable",
            "mirrors" : [ "/path/or/url/to/package/list.json" ]
        }
    }
]

Что позволяет:

zef install Foo::Bar --unstable

2) Дать ссылку на ресурс, не публикуя его

zef install https://github.com/ugexe/Perl6-Text--Table--Simple.git@v0.0.4
zef install https://github.com/ugexe/Perl6-Text--Table--Simple/archive/v0.0.3.zip
...