こんにちは@ conda-incubator / setup-miniconda-team、
デフォルトでcondaforgeを直接処理するための便利さとして、 https://github.com/conda-incubator/setup-miniforgeを作成しました。
私の計画は、このリポジトリに従うように、更新が必要な部分をスクリプトで更新し、スクリプトを時々実行して、更新を維持することでした。
たぶん、これを行うためのより良い方法があります。
考え?
変更は次のようになります。
そうだとすれば、小さなスクリプトで簡単に保守できると思います。 私は、MinicondaよりもMiniforgeの方が好きです。
もう1つのオプションは、 installer-url
とminiconda-version
を非推奨にし、それらをconda-distribution
などの単一のキーにマージすることです。 このキーを使用すると、「miniconda」、「miniforge」、「anaconda」などの_magicキーワード_が許可されます。これらのキーワードは、デフォルトでこれらのインストーラーの最新のURLになりますが、URLを直接受け入れることもできます(たとえば、ユーザーがカスタムconstructor
を使用する場合)。
こんにちは@jaimergp
だからあなたのリストから:
代わりにMiniforgeリリースを指すようにデフォルトのMinicondaインストーラーを変更する
もちろんですが、それ以降、ユーザーが新しいminiconda / miniforgeをインストールしていない場合は、実際にはデフォルトのデフォルトを削除(または更新)できると思います。 私は通常、バンドルされているものを使用しました(これは、condaを更新しても高速になる傾向があります)。
デフォルトのチャネル構成としてconda-forge + defaultsをハードコーディングする
うん、それはできる
他に何か?
うーん、スクリプトがreadmeの正しいものを置き換えることを確認し、タグを再作成する必要がないように、V1、V2(メジャー)バージョンを維持するだけかもしれません。
これまで見てきたように、バックコンパットを壊さないことが重要だと感じています。 名前ではないにしても、v2の行はミニコンダのデフォルトのままにする必要がありますが、v3はデフォルトを変更しても問題ありません。 いずれにせよ、 miniforge-*
やminiconda-*
ように、プレフィックスを付けるだけでまったく問題ないと思います。 さらに、miniforgeはminicondaとはわずかに異なるURLスキーム(例:pypy)を使用するため、スムーズに感じるようにすべてのスペックビットを処理する必要があります。
#98で開始された作業では、「インストーラーを取得する」ゲームを強化する必要があることが指摘されました。おそらく、戦略ごとにファイルを含む別のフォルダーに移動します。
download/
base.ts
file.ts
custom.ts
miniforge.ts
miniconda.ts
私たちのアーキテクチャなどがばらばらになるので。
そのためには、解析されたアクション入力の高レベルで適切に型指定されたオブジェクトも必要になるため、文字列の処理をそれほど多く行わないようにします...パラメータの巨大なリストは面倒になり、悪化するだけです。 。 私の一部はそれをすべてチャックして、d.ts-> JSONスキーマのことをしたいのですが、(有用な)行番号を取得できないため、値の一部が減少します。
入力していただきありがとうございます@bollwyvl
#98で開始された作業では、「インストーラーを取得する」ゲームを強化する必要があることが指摘されました。おそらく、戦略ごとにファイルを含む別のフォルダーに移動します。
私はこれが好きです、間違いなく何かすることです!
#126が着陸した後、これは間違いなく前進する可能性があります。 作業は次のようになります。
action.yml
スキーム、たとえばminiforge-version
などを決定します。input.ts
に新しい小切手を追加するかもしれません。only one of miniforge-version and miniconda-version
が提供される場合がありますdownload-miniforge.ts
installer/index.ts
providers
に追加かつては素晴らしいことでした。miniforgeの最新の30リリースを入手するのはとても簡単です。
https://api.github.com/repos/conda-forge/miniforge/releases
URLスクレイピングを行う必要はありません。 やったー!
別のキーも必要になると思います。たとえば、次のようになります。
use:
miniforge-version: *
miniforge-flavor: Mambaforge-pypy3 # `Miniforge3` default
flavor
代わりに、 variant
またはbuild
、さらにはconstruct
ます。
上記のWIPは次のとおりです(ドキュメントなどが必要です)。
https://github.com/bollwyvl/setup-miniconda/pull/2
これにより、 mamba
以前/もっと使用する際の問題のいくつかに対処し始めます... Mambaforgeをインストールするかのように、 mamba
を_使用したいと思いますか? ええ、まあ、JOKE'S ON YOU、 init
ような私たちが使用する多くのものをサポート(または透過的に委任)していません。 したがって、 condaCommand
は、使用する適切なコマンドを選択するときにそれを考慮に入れる必要があります。つまり、 conda
を用意する必要があります。
テストケースでは速度の違いはごくわずかに見えますが、それでも追求する価値はあります...そしてmicromamba
の不足している機能をどのように処理するかはわかりません...
PRアップ(より多くのテストとドキュメントを含む): https :