Liking cljdoc? Tell your friends :D

This project uses Break Versioning.


v2.0.0 (2025-02-27)

This is a major rewrite of Truss that expands the library's scope, and modernises its implementation. There are breaking changes to the ex-data produced by the 4x assertion macros (have, have?, have!, have!?) in Truss and Encore.

This is a non-breaking update for folks not using assertion ex-data.

Apologies for any inconvenience! - Peter Taoussanis 🙏

CHANGES since v1.x

Deprecated assertion API

Changes to assertion ex-data

The ex-data included in assertion failures has changed!

Old ex-data:

:pred ------ (Unchanged) Predicate form
:arg ------- (Unchanged) {:keys [form value type]}

:dt -------- `js/Error` or `java.util.Date`
:loc ------- {:keys [ns line column]}
:data ------ {:keys [arg dynamic]}

:env ------- {:keys [elidable? *assert*]}
:msg ------- String
:err ------- Error thrown during pred check

New ex-data:

:pred ------ (Unchanged) Predicate form
:arg ------- (Unchanged) {:keys [form value type]}

:inst ------ `js/Error` or `java.time.Instant`
:ns -------- Namespace string
:coords ---- [line column]
:data ------ Optional `:data` value (replaces :data/arg)
:truss/ctx - `truss/*ctx*` value (replaces :data/dynamic)

:msg ------- REMOVED (use `ex-message` instead)
:error ----- REMOVED (use `ex-cause`   instead)
  • You can customise ex-data by modifying *failed-assertion-handler*.
  • You can keep the old ex-data by setting the taoensso.truss.legacy-assertion-ex-data JVM property to true.

New since v1.x


v1.12.0 (2024-09-07)

📦 Available on Clojars, uses Break Versioning.

This is a non-breaking minor maintenance release that improves some docstrings and updates some internal code. Thank you!

- Peter Taoussanis


v1.11.0 (2023-07-31)

📦 Available on Clojars

This is a maintenance + feature release, and should be a non-breaking upgrade.

New since v1.10.1 (2023-07-15)

  • f42b81b [mod] Improve invariant violation output
  • 02c027e [new] Add cljdoc.edn config (improve cljdoc output)

Other improvements since v1.10.1 (2023-07-15)

  • 9ff9d55 [nop] More reliable predicate parsing

v1.10.1 (2023-07-15)

📦 Available on Clojars

This is a hotfix release, please upgrade if you're using v1.10.0.

Fixes since v1.10.0 (2023-07-07)

  • 46b2f69 [fix] Prevent get-source from throwing for JAR resources

v1.10.0 (2023-07-07)

📦 Available on Clojars

This is a minor feature release, and should be a non-breaking upgrade.

New since v1.9.0 (2023-03-15)

  • 9855aa9 [new] Add :column and :file to :loc data for invariant violations
  • 042eb78 [nop] Add tests for GraalVM compatibility

v1.9.0 (2023-03-15)

[com.taoensso/truss "1.9.0"]

This is a feature release. Should be non-breaking. See here for a tip re: general recommended steps when updating any Clojure/Script dependencies.

Since v1.8.0 (2022-12-13)

  • 4bbab6b [new] Add unevaluated arg :form info to invariant violations
  • 9a572b1 [new] Add :instance?, :satisfies? special predicate forms
  • e644631 [new] Experimental alternative workaround for CLJ-865

Earlier releases

See here for earlier releases.

Can you improve this documentation?Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close