Clojureコマンドラインツールは、Clojure REPLの起動、ClojureおよびJavaライブラリの使用、Clojureプログラムの起動に使用できます。
最近の公式リリースについては、ここに記載されています。プレリリース版と旧バージョンは、リポジトリの変更ログにあります。
デフォルトのClojureバージョンを1.11.2に更新
基礎を作成するClojure -X:depsプログラムは、使用するディレクトリコンテキストに` :dir`オプションを取るようになりました。
tools.deps、tools.deps.cliを最新版に更新
CLIリリースは、https://github.com/clojure/brew-installの下にGitHubで公開されるようになりました。
ダウンロードアーカイブはまだ使用できますが、ミラーとして扱われます(brewでもそのように設定されます)。
-Xまたは-Tを使用する場合、残りの引数を標準入力から読み取るために末尾に` -`を受け入れます。
Windowsインストーラーで、ダウンロード時のプログレスバーを非表示にします。
TDEPS-247 - ファンアウトが大きいdepsでのStackOverflowを修正
TDEPS-249 - dep展開中にスレッドバインディングを適切にプッシュ/ポップします。
TDEPS-227 - resolve-depsの最後にdep展開スレッドをシャットダウンします。
TDEPS-248 - オフラインの場合、`tags`が既知のタグを返すようにします。
tools.deps 0.18.1354を使用
-Spomの回帰を修正
-Spomではなく-X:deps mvn-pomを含めるようにヘルプを更新しました(最終的には削除されます)。
tools.deps 0.18.1335を使用
TDEPS-245 - 正準化されていないlib名を使用した-X:deps find-versionsのエラーを修正
tools.deps 0.18.1331を使用
パスに基づいてローカルdepsバージョンを比較可能にします。
tools.deps 0.18.1317を使用
tools.deps 0.18.1308を使用
basis `:argmap`を介したexec引数の渡しに切り替え
-X/-Tに対する関数実行プロトコルサポート
tools.deps 0.17.1297を使用
httpリポジトリを一時的に許可するために設定できる環境変数CLOJURE_CLI_ALLOW_HTTP_REPOを追加
-Rと-Cの非推奨のサポートを削除
REPLがinit-optsをサポートする周りのヘルプテキストを整理
tools.deps 0.16.1285を使用
TDEPS-234 - デフォルトで常に-XX:-OmitStackTraceInFastThrowを含めます。
tools.deps 0.16.1264を使用
`:mvn/repos`マップでリリースとスナップショットのポリシーを設定するためのサポートを追加しました。
TDEPS-101 -Spomおよび-X:deps mvn-pomでリポジトリポリシーを出力
tools.deps.alpha 0.15.1254を使用
TDEPS-233 古いjarチェックの変更からのbashスクリプトの修正
ヘルプとマニュアルページにいくつかの項目を追加しました。
TDEPS-70 - クラスパスに欠けているjarを検出し、自動的にダウンロードします。
TDEPS-232 - ジェネリックなposixインストーラーを追加
TDEPS-200 - デフォルトのユーザーdeps.ednをクリーンアップ
TDEPS-219 `-X:deps find-versions`が文字で始まるMavenバージョンを見つけられないのを修正
`-X:deps find-versions`に`:n`オプションを追加し、デフォルトを8に設定
`-X:deps prep`の間、存在する場合は準備中のエイリアスの`:exec-args`を使用します。
`-X:deps prep`の間、必要に応じて現在のプロジェクトも準備します。現在のプロジェクトの準備に`:current`フラグを追加し、デフォルトをfalseに設定します。
clojure.tools.cli.api/prepでdeps/prep-libs!の不正な呼び出しを修正
ローカルdepディレクトリが見つからない場合のエラーメッセージを改善
下流のツールのために、最新の安定したツールリリースを検索するための新しい既知の場所を追加しました。
tools.deps.alpha 0.15.1244を使用
TDEPS-165 内部クラスパスの構築プロセスにJVMプロパティを渡すために環境変数CLJ_JVM_OPTSを使用します。
一般的なJAVA_OPTS環境変数をユーザープログラムの実行でJVMプロパティとして含めるためのサポートを追加
TDEPS-228 自動的に推論されたSourcehut git URLのサポートを追加
aws-api、Mavenなどのdepバージョンの更新
tools.deps.alpha 0.14.1222を使用
`clj -Ttools install-latest` - バージョンのフィルタリング、ソート、最新の選択方法を改良
tools.tools v0.2.8に更新
tools.deps.alpha 0.14.1212を使用
`clj -Ttools install-latest` API関数、例を追加
ツールのインストール:`clj -Ttools install-latest :lib io.github.clojure/tools.deps.graph :as graph`
ツールの更新:`clj -Ttools install-latest :tool graph`
1.11.1.1119からの`clj -X:deps find-versions`の回帰を修正
`clj -X:deps find-versions`からの出力は、`:git/tag`と`:git/sha`を提供するようになりました。
tools.tools v0.2.6に更新
tools.deps.alpha 0.14.1205を使用
推移的なローカルdepsを使用した`-X:deps prep`のディレクトリコンテキストを修正
tools.deps.alpha 0.14.1194を使用
TDEPS-213の変更のバグを修正
tools.deps.alpha 0.14.1189を使用
TDEPS-213 - 使用可能なエイリアスをリストする`-X:deps aliases`を追加
TDEPS-226 - s3ダウンロードのよりニュアンスのあるエラー処理
git URLを推論できない場合のエラーメッセージを改善
tools.deps.alpha 0.14.1185を使用
TDEPS-153 - 同時Mavenダウンロード中のエラーに対するさらなる修正
tools.deps.alpha 0.14.1178を使用
Clojureバージョンが指定されていない場合は、デフォルトでClojure 1.11.0を使用
TDEPS-153 Mavenアーティファクトダウンロードの同時実行性の問題を修正
git URLが欠落しているか、推論できない場合のエラーメッセージを修正
-Scpを使用する場合でも、-X/-Tに`:exec-fn`と`:exec-args`を渡します。
TDEPS-222 pomのClojure依存関係を、providedではなくcompile依存関係にします。
TDEPS-203 `-X:deps prep` - エイリアスを含むbasis設定を受け入れるようになりました。
TDEPS-197 `-X:deps git-resolve-tags` - `:git/tag`と`:git/sha`に解決されるようになりました。
`-X:deps tree` - basis設定を受け入れるようになりました。
`-X:deps mvn-pom` - basis設定を受け入れるようになりました。
`-X:deps list` - ライセンス略語リストをリソースに入れ、オンデマンドでロードします。
tools.deps.alpha 0.12.1158を使用
TDEPS-216 - 組み込みの`:deps`エイリアスは、クラスパスからプロジェクトパスを削除する必要があります。
GitリポジトリにGit SHAが見つからない場合のエラーメッセージを改善
推移的な依存関係の準備関数が解決できない場合の準備エラーを改善
AWS依存関係を最新バージョンに更新
tools.deps.alpha 0.12.1135 を使用
いくつかのCVEに対処するため、いくつかのMaven推移的依存関係を更新
tools.tools を v0.2.5 に更新
複数のexec関数の呼び出し時にエラーをチェックする処理を追加
tools.deps.alpha 0.12.1120 を使用
TDEPS-207 バージョン範囲の解決におけるデッドロックを修正
TDEPS-215 S3トランスポーターの並列読み込み中の競合状態を修正
依存関係プロジェクトにdeps.ednマニフェストがない場合、ローカルのdeps.ednマニフェストをキャッシュのために追跡しない
maven-coreを3.8.4に、AWSライブラリ、tools.build、tools.toolsを最新バージョンに更新
tools.deps.alpha 0.12.1109 を使用
推移的な依存関係全体のセットとそのライセンス情報を一覧表示するためのclj -X:deps list
を追加 - 詳細はドキュメントを参照
-T
または-X:deps find-versions
で不明なツールに関するエラー処理を改善
tools.deps.alpha 0.12.1084 を使用
TDEPS-212 Git依存関係URLの有効範囲を大幅に拡大し、GitファイルURLもサポート
tools.deps.alpha 0.12.1071 を使用
TDEPS-83 ローカル依存関係マニフェストが変更された場合にクラスパスキャッシュを無効化する
クラスパス上の完全なライブラリセットを一覧表示する新しいclj -X:deps list
プログラムを追加。詳細はAPIドキュメントを参照
aws-api、jetty-clientなど、依存関係をより新しいバージョンに更新
-X/-Tの例外処理をクリーンアップ
tools.deps.alpha 0.12.1067 を使用
brew formulaからbottle :unneeded
を削除(不要になったため)
TDEPS-209 Mavenアーティファクトのクラスパスにjarファイルのみを含める
tools.toolsをv0.2.1に更新(clj -Ttools list
のマイナーな改善)
tools.deps.alpha 0.12.1058 を使用
ローカルpomモデル構築のネストされたセッションキャッシュ計算を修正
tools.deps.alpha 0.12.1048 を使用
最新のAWS APIライブラリに更新
Mavenリゾルバーライブラリをダウングレードして、Mavenコアライブラリとより適切に一致させる
tools.deps.alpha 0.12.1041 を使用
名前空間が見つからない場合と名前空間内の関数が見つからない場合のexec例外を明確化
Mavenベースのビルドプロセスをtools.buildに置き換え
クラスパスの構築に使用されるtools.depsのエントリポイントをコンパイルしてパフォーマンスを向上
tools.deps.alpha 0.12.1036 を使用
TDEPS-199 S3トランスポーターでデフォルトのhttpクライアントを使用
リポジトリのS3トランスポーターをキャッシュ
スレッド/バインディングスタック間で正しく動作するようにセッションキャッシュを修正し、パフォーマンスを向上
リポジトリメタデータのルックアップを削減するために、特定のMavenバージョン範囲リクエストを範囲外のリクエストに置き換え
パフォーマンス向上のため、Maven設定を一度読み込んでキャッシュ
パフォーマンス向上のため、バージョン範囲の解決結果をキャッシュ
tools.deps.alpha 0.12.1019 を使用
deps.edn
Gitライブラリ名がリポジトリの命名規則に従っている場合、:git/url
を推測できるようになりました(:git/url
は明示的に指定することもでき、優先されます)
完全なSHAの代わりに、:git/tag
とプレフィックス:git/sha
を指定できるようになりました。両方とも同じコミットを指している必要があります。
:sha
は:git/sha
に名前変更されましたが、後方互換性のために元の名前もサポートされています。
:deps/prep-lib
- ソースライブラリをクラスパスに追加する前に準備する方法を指定するために使用できる新しいトップレベルキー。このキーの値は、:alias
、:fn
、:ensures
を含むマップです。詳細は準備に関するドキュメントを参照してください。
:tools/usage
- ツールの:ns-default
および:ns-aliases
コンテキストを提供するために使用できる新しいトップレベルキー
ツール - ローカル名でインストールできるGitベースのプログラム。ツールはdeps.ednで独自の使用方法コンテキストを提供できます。
新しい-T
オプションは-X
(関数を実行)に似ていますが、プロジェクトのクラスパスを使用せず、ツールのクラスパスを使用します(デフォルトで:paths ["."]
を追加)。-T:aliases
はそれ以外は-X
と同じです。-Ttoolname
は名前で指定されたツールを解決し、そのツールのライブラリを使用します。
TDEPS-198 - futures/agentsが使用されている場合、-Xと-Tは終了を待たない
TDEPS-182 - 非推奨メッセージをより正確にする
TDEPS-183 - Windowsで有効なEDNになるように-Sdescribeの出力を修正
TDEPS-179 - :classpath-overrides
がパスを削除する場合のクラスパスを修正
ローカルリポジトリパスの計算を遅延させる(ロード時に計算しない)
tools.deps.alpha 0.12.1003 を使用
新しい-X:depsプログラム
find-versions
- MavenまたはGitライブラリまたはツールのバージョンを検索
help/dir
- ツール名前空間で使用可能な関数を一覧表示
help/doc
- ツール名前空間または関数のドキュメントを一覧表示
ソースライブラリとビルドで詳細を確認してください。
-X呼び出しでkvsの後続マップをサポート(Clojure 1.11の後続マップから可変長引数呼び出しと同様)
これらのセキュリティ上の懸念に対処するため、すべてのMaven依存関係を最新バージョンに更新(maven-resolver 1.7.0、maven core 1.8.3)
CVE-2020-13956 - Mavenで使用されるApache HttpClientの依存関係を更新
CVE-2021-26291 - Mavenリポジトリに関する潜在的なセキュリティ問題
MITM(中間者)攻撃の可能性があるため、httpリポジトリへのアクセスはデフォルトでブロックされるようになりました。tools.deps/Clojure CLIはデフォルトのリポジトリリスト(centralとclojars)で常にhttpsリポジトリを使用していたため、これはdeps.ednで明示的に定義されているhttpリポジトリに主に影響します。
推移的なpom依存関係(またはそれらのスーパーpom)によってリポジトリURLがハイジャックされ、悪意のあるリポジトリからアーティファクトがダウンロードされる可能性に関する懸念。Mavenはこの点で変更を加えなかったが、このページでリポジトリがどのように解決されるかを明確にした。depsの観点からは、トップレベルのdeps.ednで宣言されたリポジトリのみを使用します(推移的な依存関係がカスタムリポジトリを必要とする場合、トップレベルにも追加する必要があります)。pom依存関係のtools.depsの使用については、トップdeps.ednファイルのリポジトリを提供し(Maven CentralとClojarsを常に最初に配置する必要があります)、残りはMavenに委任します。
tools.deps.alpha 0.11.922 を使用
TDEPS-177 - 名前ではなくIDで検索するようにMavenミラーを修正
古いGitバージョンが動作するように、Git依存関係の取得時のフラグを削除
いくつかの警告メッセージを調整
変数の置換を簡素化するためにスクリプトをクリーンアップ
tools.deps.alpha 0.11.918 を使用
Git依存関係:jgitの使用からgitへのシェルアウトに切り替え(git >= 2.5が必要)
制御のための新しい環境変数
GITLIBS_COMMAND
- gitにシェルアウトする際に呼び出すコマンド、デフォルト = git
GITLIBS_DEBUG
- gitコマンドと出力をstderrに出力するにはtrue
に設定、デフォルト = false
パフォーマンスを向上させるために、SHAが解決できない場合にのみgit fetchを行うように変更
tools.cliとaws apiの依存関係バージョンを最新に更新
tools.deps.alpha 0.11.905 を使用
clj -X:deps git-resolve-tags
がタグに一致するようにSHAを更新するように修正
pom.xmlを使用するGitまたはローカル依存関係のパフォーマンス向上
tools.deps.alpha 0.9.884 を使用
-versionと--versionオプションを追加
TDEPS-56 - スペースでのmain-optsとjvm-optsの単語分割を修正
TDEPS-125 - 設定されている場合はJAVA_CMDを使用(Gregor Middellさんありがとうございます!)
:paths
または:extra-paths
がプロジェクトルート外のディレクトリを参照している場合に警告を追加(将来はエラーになります)
tools.deps.alpha 0.9.871 を使用
Git依存関係のバージョン関係を決定できない場合のエラーメッセージを改善
デフォルトのClojureバージョンを1.10.2に切り替え
tools.deps.alpha 0.9.863 を使用
-X ex-info エラーの終了コードを設定
エイリアスのヘルプにおけるcli構文の同期
tools.deps.alpha 0.9.857を使用
clj -Stree
/ clj -X:deps tree
の新しい、より情報量の多いツリー形式
clj -X:deps tree
で使用するオプションを追加
tools.deps.alpha 0.9.857を使用
pomファイルを持つローカル依存関係でのjdkプロファイルアクティベーションの使用を修正
-Xのエラー処理を修正して、二重スローを回避
エイリアスなしで使用される-Aに対するエラー処理を追加
tools.deps.alpha 0.9.840を使用
clj -X:deps tree
がtools.deps.alphaをツリーに追加する問題を修正
clj -X:deps mvn-pom
がtools.deps.alphaをpom依存関係に追加する問題を修正
clj -X:deps git-resolve-tags
が動作しない問題を修正
TDEPS-169 - jarへのclj -X:deps mvn-install
が埋め込まれたpomもインストールするように修正
clj -Spom
が-Aからの依存関係の変更を尊重しない問題(回帰)を修正
tools.deps.alpha 0.9.833を使用
不明なタグ付きリテラルに対して許容的なedn読み取りを行う
maven-resolverとaws-apiの最新依存関係に更新
tools.deps.alpha 0.9.821を使用
依存関係の展開で依存関係の新しいバージョンが見つかった場合の推移的依存関係の処理に関する修正
TDEPS-168 - -Xエラーメッセージ処理の改善
tools.deps.alpha 0.9.816を使用
実行モード (-X)を追加
準備モード (-P)を追加
メイン実行 (-M)を拡張して、すべてのargmap引数をサポート
名前空間解決のための新しいargmap属性を追加
:ns-aliasesと:ns-default
-X:depsエイリアスを介して利用可能な新しいclojure.tools.cli.apiを追加
clj -X:deps git-resolve-tags
clj -X:deps mvn-install
clj -X:deps mvn-pom
clj -X:deps tree
-R、-Cを非推奨化(-X、-M、または-Aを使用してください)
deps.edn内の修飾されていないライブラリ名を非推奨化(完全修飾ライブラリ名を使用してください)
エイリアスツール引数:depsと:pathsを非推奨化(:replace-depsと:replace-pathsを使用してください)
-Oを削除(-X、-M、または-Aを使用してください)
-Sresolve-tagsを削除(-X:deps git-resolve-tagsを使用してください)
TDEPS-152 - srcDirectoryを使用した-Spom生成の修正
TDEPS-155 - 不正な座標に対するエラー処理の改善
TDEPS-167 - pom依存関係における絶対リソースパスの処理
tools.deps.alpha 0.9.810を使用
同じlib/バージョンで除外セットが異なる場合の除外処理の改良
tools.deps.alpha 0.8.709を使用
(Windows) -Spathをホストではなく出力に書き込む
TDEPS-152 - pom生成におけるsrcDirectoryの不正な追加を修正
TDEPS-155 - 欠落している:mvn/versionに対するエラーチェックを追加
tools.deps.alpha 0.8.695を使用
TDEPS-150 - -Scpフラグのサポートにおける回帰を修正(依存関係の解決を回避)
TDEPS-148 - deps.ednがないgit/ローカル依存関係のパス解決の不正確さを修正
tools.deps.alpha 0.8.677を使用