Pure Scala Artifact Fetching
APACHE-2.0 License
Bot releases are visible (Hide)
Published by alexarchambault almost 3 years ago
proxyUser
and proxyPassword
in docs by @kpodsiad in https://github.com/coursier/coursier/pull/2278
Full Changelog: https://github.com/coursier/coursier/compare/v2.1.0-M1...v2.1.0-M2
Published by alexarchambault almost 3 years ago
Full Changelog: https://github.com/coursier/coursier/compare/v2.1.0-M1...v2.1.0-M1-1
Published by alexarchambault almost 3 years ago
:bottle unneeded
by @ferrazoli in https://github.com/coursier/coursier/pull/2243
VersionOverride
by @adpi2 in https://github.com/coursier/coursier/pull/2231
bootstrap
help message by @adpi2 in https://github.com/coursier/coursier/pull/2253
Full Changelog: https://github.com/coursier/coursier/compare/v2.0.16...v2.1.0-M1
Published by alexarchambault almost 3 years ago
:bottle unneeded
by @ferrazoli in https://github.com/coursier/coursier/pull/2243
VersionOverride
by @adpi2 in https://github.com/coursier/coursier/pull/2231
Full Changelog: https://github.com/coursier/coursier/compare/v2.0.16...v2.0.16-200-ge888c6dea
Published by alexarchambault about 3 years ago
Published by alexarchambault about 3 years ago
.
Published by alexarchambault over 3 years ago
cs search
commandAdd new cs search
command, that allows to search for install-able applications:
$ cs search meta fmt
metac
metals
metals-emacs
metap
metap-native
scalafmt
Added in #2007, thanks to @rrramiro.
ClassLoader
for URL protocolsIn the API, add new field FileCache.classLoaders
. When looking for URL handler factories for custom protocols, these class loaders are queried first.
Added in #1995, thanks to @MasseGuillaume.
Published by alexarchambault over 3 years ago
directories-jvm
to 24
Published by alexarchambault over 3 years ago
launch
command with Java >= 9, to work around class loader isolation issuesPublished by alexarchambault over 3 years ago
Launchers created by cs bootstrap
and cs install
are now able to read and use credentials when fetching artifacts (#1991, thanks to @greg-a-atkinson)
Use like
$ cs resolve -r apache:snapshots org.apache.spark:spark-sql_2.13:3.2.0-SNAPSHOT
NumberFormatException
s when parsing checksums (#1972, thanks to @chimmi)Published by alexarchambault over 3 years ago
updateClassifiers
once used in sbt.scala-integration
and scala-nightlies
, both mapped to https://scala-ci.typesafe.com/artifactory/scala-integration
(repository where Scala nightlies are published)Published by alexarchambault over 3 years ago
cs launch
, if no JVM is installed, automatically download one in and use it from the coursier JVM cache, so that cs launch
commands work out-of-the-box, even when no JVM is installed.Published by alexarchambault over 3 years ago
!
to -r
, or prefixing a repository with !
, like$ cs resolve -r !central org:name:ver
$ cs resolve -r ! -r central org:name:ver
$ cs resolve -r !,central org:name:ver
--log-changing
option logging every "changing" artifact being checked.$ cs resolve org.scala-lang:scala-library:latest.release
Checking changing artifact file:~/.ivy2/local/org.scala-lang/scala-library/
Checking changing artifact https://repo1.maven.org/maven2/org/scala-lang/scala-library/maven-metadata.xml
org.scala-lang:scala-library:2.13.4:default
pure
cache policy, that forbids "changing" artifacts (snapshots, version listings, …)$ cs resolve org.scala-lang:scala-library:latest.release -m pure
Resolution error: Error downloading org.scala-lang:scala-library:latest.release
changing artifact found: file:~/.ivy2/local/org.scala-lang/scala-library/
changing artifact found: https://repo1.maven.org/maven2/org/scala-lang/scala-library/maven-metadata.xml
$ cs resolve ammonite --channel io.get-coursier:apps:1.0.6
--log-channel-version
option, like$ cs resolve ammonite --log-channel-version
Using io.get-coursier:apps-contrib:1.0.6
Using io.get-coursier:apps:1.0.6
…
!
is passed, like$ cs resolve ammonite --channel '!io.get-coursier:apps:1.0.6'
$ cs java --jvm-index io.get-coursier:jvm-index -version
…
$ cs java --jvm-index io.get-coursier:jvm-index:0.0.1 -version
…
cs
is now an alias for io.get-coursier:jvm-index
(rather than an alias for a GitHub URL)aarch64
architecture in cs install
command (it should now install actual aarch64 binaries, rather than x86_64 ones)Published by alexarchambault almost 4 years ago
charset="UTF-8"
in WWW-Authenticate
headers (fixed in #1948, thanks to @cchepelov). Before these changes, credentials were not sent upon getting a parameter other than realm
, so that credentials were ignored / unused in practice.Published by alexarchambault almost 4 years ago
23
(#1938, thanks to @fthomas)Published by alexarchambault almost 4 years ago
coursier.core.{Dependency, Module, Publication}
are now memo-ized (using weak references). This can lower the amount of duplicate instances of these objects, and lower GC pressure.
Added in #1900, thanks to @jtjeferreira.
When using local repositories with special characters in their paths, such as spaces, escaped characters were not properly handled, which created spurious not-found errors.
Published by alexarchambault almost 4 years ago
Persisted checksums were added in 2.0.5
. These could mistakenly be written outside of the coursier cache, under ~/.ivy2/local
for example. This release fixes that.
Fixed in #1909, thanks to @oyvindberg.
cs get
commandThe cs get
command allows to download things via the coursier cache:
$ cs get https://repo1.maven.org/maven2/io/get-coursier/coursier-cli_2.12/maven-metadata.xml
~/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/io/get-coursier/coursier-cli_2.12/maven-metadata.xml
If a URL it is passed ends with ?changing=true
, cs get
should assume the artifact is changing (and may check for updates if the last check is older than the TTL). This release includes a fix for that. Prior to it, these were not assumed to be changing, so were not checked for updates.
Fixed in #1907, thanks to @martijnhoekstra.
Published by alexarchambault almost 4 years ago
Computed checksums of downloaded files are now written in the cache, and read from there later on. This short-circuits checksum computation for anything already in cache, which can significantly speed up resolutions with large dependency graphs.
Added in #1801, thanks to @oyvindberg.
cs channel
commandThis release adds a new cs channel
command. This command allows to add channels, like
$ cs channel --add my.company:cs-channel
or list them with
$ cs channel --list
This deprecates the --add
option of the cs install
command (which is still available, and prints a deprecation message).
Added in #1899, thanks to @shubhamJay.
It is now possible to specify that prebuilt binaries for applications correspond to particular files in archives, like
"prebuilt": "zip+https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.zip!sbt/bin/sbtn-${platform}"
This example picks the file sbt/bin/sbtn-${platform}
(where ${platform}
is replaced by x86_64-apple-darwin
on macOS, …) from the zip archive at URL https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.zip
(where ${version}
is replaced by 1.4.1
for example).
Published by alexarchambault almost 4 years ago
New commands (java
, java-home
, …) are now proposed as completions, and removed ones (spark-submit
) were dropped. Some removed options were removed from completions too. (Changed in #1897, thanks to @note.)
cs launch --python
changescs launch
has a --python
option, that sets jna.library.path
prior to starting the app, so that it can load libpython.so via JNA. This release also sets jna.nosys
to false
, so that libpython.so can be loaded from the standard locations, most notably PATH
on Windows.
--python
option to cs bootstrap
When generating bootstraps, passing --python
ensures jna.library.path
and jna.nosys
are set prior to starting the app, so that libpython.so can be loaded from JNA.
jna
field in app descriptorsApp descriptors now accept an optional jna
field, whose value must be a list of strings. If this list contains "python"
, jna.library.path
and jna.nosys
are set prior to starting the app, so that libpython.so can be loaded from JNA.