printHexBinary for Java 11 support #702nrepl/nrepl) and a new namespace prefix (clojure.tools.nrepl. ->
nrepl.). While the nREPL protocol is 100% compatible with that of
the 0.2.x series you'll have to make sure that any middleware you're
using has been updated to target 0.4.x. You can find more details
here and
here. #703sift made with #680 has been reverted because it had unexpected drawbacks. We will discuss how to proceed on #704.If you happen to receive "Tried to use insecure HTTP repository without TLS",
it means your project was configured to download dependencies from a repository
that does not use TLS encryption.
This is NOT suppored anymore because it exposes you to trivially-executed
man-in-the-middle attacks.
In the rare event that you don't care about the security of the machines
running your project, you can enable support for unprotected repositories by
explicitely set a custom wagon-factory:
;; never do this
(require 'cemerick.pomegranate.aether)
(cemerick.pomegranate.aether/register-wagon-factory!
"http "#(org.apache.maven.wagon.providers.http.HttpWagon.))
It's also possible you have a dependency which includes a reference to an
insecure repository for retrieving its own dependencies. If this happens it is
strongly recommended to add an :exclusion and report a bug with the
dependency which does this.
Kudos to the folks working on
the related pomegranate PR
and technomancy for the above explanation.
sources and javadoc artifacts are on the fileset and :classifier is correctly set.true as a truthy value beside 1 and yes #6311.0.0. #612java.io.File instead String path of jar at sift-action :add-jar method #678fileset-diff correctly handles nested data structures #566boot.tmpdir/cp #502(sift :move) create resources. #680boot/worker has been updated to fix compatibility with s3-wagon-private #679set-env! works even if the user has set *print-level* or *print-length* to non-nil in their $BOOT_HOME/profile.boot. #587 #586tmpfile "Commit: adding..." messages now only appear with -vv which eases debugging tasks with -v #557make #567file-filter (called by all by-* functions) throws an error if no criteria are specified. #555:boot.util/omit-stacktrace?,
escape % in message to prevent errors about bad string formatting, and
ensure that message ends in a newline.transfer-listener #565 #558load-string, rather than read-string #547notify task #551socket-server task for starting a Clojure 1.8.0+ socket server. #549call task to execute arbitrary code as part of the pipeline, either via an existing function symbol or by providing a form. Similar to lein run, call can be used, for example, to start a component system.bare-repl task for starting a simple interactive REPL session (a la clojure.main/repl) without launching a nREPL server. #582boot.util/dosh-timed. It works like boot.util/dosh except it takes timeout-ms as the first argument, and throws an exception when the shell command takes more than timeout-ms milliseconds to execute. #561-m, --mode option to the target task — specifies the file
mode for written files — should only be used when default rw-------
is not enough. #537boot.core/add-cached-{asset,source,resource} fns.boot.core/patch! fn #497.:dependencies) that is different from the implicitly loaded version
specified by BOOT_CLOJURE_VERSION #230, #469.boot.pod/canonical-coord.deftask argument vector isn't a vector #487.:boot.util/omit-stracktrace? ex-data property #486, #532.boot.util/map-as-dep would flatten collections like
:exclusions in the dependency vector #479.say on OSX #476.notify task that prevented OSX from finding the
terminal-notifier program #478.notify task that caused exceptions on OSX #491.add-resource,
add-source, etc.boot.class.path and fake.class.path system properties
with correct, platform-specific paths #488.boot.core/deftask macro #490.
d- Create bootscript tmpfile with mode 0600 instead of 0664.with-cp task — use java -cp style classpath strings
instead of Maven dependencies.pom task now adds :project metadata to the created pom.xml and
pom.properties TmpFiles in the fileset. This metadata is used by eg. the
jar task to select the "real" pom from multiple poms that might be in the
fileset from the uber task, etc. #451watch task now accepts --include and --exclude options to restrict
the set of paths that will trigger a rebuild #312.watch task now accepts --debounce option to adjust how long it will
wait for all filesystem events to have fired before a rebuild is triggered.notify task now prints an error
message instead of throwing an exception #523boot.pod/make-pod-cp — creates a new pod from a given classpath.boot.pod/canonical-id — returns the canonical form of a maven
dependency id symbol.boot.pod/full-id — returns the fully-qualified form of a maven
dependency id symbol.:meta option to boot.core/add-{asset,source,resource} fns (and their
add-cached-{asset,source,resource} variants — merges a map of metadata
into all TmpFiles added to the fileset.[ and ] characters can now be used to group tasks with their options
and, more importantly, positional parameters. In the task body the positional
parameters are bound to *args* #374.-E, --exclusions — adds symbol to env :exclusions #472.-f, --file — evaluates the contents of a file just like with
the shebang script, but easier to use on platforms like Windows that don't
have great shebang support #465.-i, --init — evaluates a form after evaluating the profile.boot
forms but before the main script or build.boot forms #465.-x, --exclude-clojure — adds org.clojure/clojure as a global
exclusion (useful in combination with --dependencies when you don't have a
build.boot file, as most dependencies will depend on some random version of
clojure and you'll get a warning about it) #230, #469.-t, --target-path and -T, --no-target #475.-p, --project option to the jar task — specifies the project
id when there are multiple pom.xml files — should only be needed in the
case where the jar will contain multiple poms and either the desired pom was
not created via the pom task or there are multiple poms created by the pom
task in the fileset #451.-C, --no-color option to the repl task — disables ANSI color
codes in REPL client output.:target-path #475.speak task, replaced by notify.Java 9 is slated for release sometime next year. It introduces breaking changes, and Boot might need to be continually updated to ensure that we're compatible with Java 9 once it's released.
show --fileset output.:update :always in aether when resolving Boot's own dependencies
unless Boot is being updated.:source-paths or :resource-paths are set to
the empty set (#{}).boot.pod/this-pod — a WeakReference to the current podboot.pod/with-invoke-in — low-level invocation, no serializationboot.pod/with-invoke-worker — as above but invokes in the worker podboot.pod/pod-name — get/set the name of a podboot.pod/coord->map — dependency vector to map helper functionboot.pod/map->coord — map to dependency vector helper functionboot.pod/resource-last-modified — returns last modified time of a classpath resourceboot.core/get-checkouts — returns a map of info about loaded checkout dependenciesboot.util/dbug* — like boot.util/dbug but a macro (doesn't eval its
arguments unless the verbosity level is DEBUG or above)-c, --checkouts boot option / :checkouts env key — deeper
integration for checkout dependencies-o, --offline boot option — disable downloading Maven dependencies
from remote repositories (doesn't apply to Boot's own dependencies)-U, --update-snapshot boot option — updates boot to latest snapshot
version-u, --update — sets global default boot version-v, --verify-deps option to show task — verify jar signatures and
show deps tree [#375][375]:schemes key — specify the handler
classes for the wagon when the wagon jar has no leiningen/wagons.clj entry.BOOT_CERTIFICATES — specify file paths for SSL certificates.BOOT_CLOJARS_REPO — specify Maven repo url for clojars.BOOT_CLOJARS_MIRROR — specify Maven mirror url for clojars.BOOT_MAVEN_CENTRAL_REPO — specify Maven repo url for maven-central.BOOT_MAVEN_CENTRAL_MIRROR — specify Maven mirror url for maven-central.checkout task, replaced by the --checkouts boot optiontarget task falls back to copying when hardlinks aren't possible
#373.ByteArrayInputStream instead of a StringBufferInputStream when
parsing pom.xml strings.--as-jars option to uber task that was accidentally removed.pom.xml if there are none in the fileset.clifn and throw on unknown options #346.--verbose boot option is specified #315.--as-jars option to uber #290..bootignore file #348.BOOT_EMIT_TARGET #356.--repo-map option for push task #358.MANIFEST.MF in uberjar #360.target task would do nothing when no --dir option given.--no-clean option to disable cleaning of destination in target task.deftask argument specs are invalid; warn instead.gpg binary is now used instead of bouncycastle for signing
jars and reading encrypted credentials files. There may be different
behavior when resolving default keys, etc.target task and BOOT_EMIT_TARGET env var #305.--developers and --dependencies options to pom task #233.send! function to work around issues passing large
collections to pods via with-eval-in #339.add-cached-{asset,source,resource} core functions.launch-nrepl core function for starting repl servers in pods from
the repl.gpg-decrypt core function to decrypt gpg encrypted files.configure-repositories! core function to configure maven repos
dynamically (as a callback to add credentials, etc) #274, #311.push task can now be provided with --repo-map option to set the
deployment repository. This is useful for example in case a repository
needs different settings for downloading dependencies and deploying,
like additional credentials #274, #311.install and push tasks now accept a --pom option which can be
used to specify which pom.xml file to use #112, #278.repl task now accepts a --pod option which can be used to start
a repl in a specific pod.show task now accepts a --list-pods option to show the names of
all active pods.uber task performance #94.sift task performance.mv source doesn't exist #325.push task #328.*compile-path* in nREPL server environment #294.tools.nrepl version to support evaluating forms with reader
conditionals in the repl #343.pom.{xml,properties} #278.--file option that contain multiple pom.xml
files are now named project.jar instead of named for coordinates derived
from an arbitrarily selected pom #278.--pom option that contains more
than one pom.xml now results in an exception instead of installing to
coordinates derived from an arbitrarily selected pom #278.Stream Closed exceptions when multiple pod pools are used #270push task option --gpg-keyring.Fix issues with 2.4.0 release 61c948f
Need to delete files in the fileset dirs before writing to them because the underlying blob files are immutable.
Remove BOOT_CLOJURE_NAME dependency before adding jars to the classpath--this is a workaround for a really weird issue:
clojure.lang.ExceptionInfo: loader constraint violation:
loader (instance of java/net/URLClassLoader) previously initiated
loading for a different type with name "clojure/lang/Compiler$Expr"
META-INF/services/.*.BOOT_LOCAL_REPO environment variable on Windows (fixes #243).BOOT_CLOJURE_NAME
environment variable, which defaults to org.clojure/clojure.Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |