Deep-diff2 2.10.211 (2023-07-24 / 4d92566)
Hiccup 0.0.25 (2023-06-16 / 7c4925e)
- Convert multi-word attributes to match Reagent + React's behaviour.
data-, aria-, and hx- attributes remain kebab-case. html and svg attributes that are kebab-case in those specs, are converted to kebab-case
BREAKING in some cases:
Previously:
:tab-index -> "tab-index"
"fontStyle" -> "fontStyle"
:fontStyle -> "fontStyle"
Now:
:tab-index -> "tabIndex"
"fontStyle" -> "font-style"
:fontStyle -> "font-style"
Deep-diff2 2.9.202 (2023-06-09 / 35494a0)
- Add documentation for using a custom color scheme using custom data printers.
- Simplified internals when diffing maps for improved performance on many datasets. (Thanks @latacora-paul!)
Kaocha 1.84.1335 (2023-05-22 / 33735a1)
- Get rid of extra space in output when using the
:print-invocations
plugin - Prevent
ClassCastException
when using Ctrl-C (SIGINT) after enabling--watch
- Bump tools.cli to 1.0.219
Kaocha-cucumber 0.11.100 (2023-05-08 / 5c7009a)
- Release again to both
lambdaisland
andcom.lambdaisland
Kaocha 1.83.1314 (2023-05-05 / 1438ce7)
- The watcher now prints the output from plugins, eg.
bin/kaocha --watch --plugin kaocha.plugin/profiling
Plenish 0.4.50 (2023-04-24 / 1d5eca9)
- Convenience function
sync-to-latest
- Fixed issue where multiple cardinality-many attributes would lead to clashing constraint names
Kaocha-cljs 1.5.154 (2023-04-17 / f969eae)
- Add documentation of common issue when trying to run tests that reference the DOM in a context without a DOM (e.g., Node.js).
- Add documentation for using Kaocha-cljs with Node.js dependencies.
- Fix integration test Windows error when setting POSIX file permissions
Ornament 0.9.87 (2023-04-15 / dac82f4)
- Added a
:tw-version
flag for the preflight, similar toset-tokens!
- Document how to opt-in to Tailwind v3
Embedkit 0.0.56 (2023-04-14 / fd0bc4a)
- [breaking] Support only metabase version >=
0.46.1
- Change the API call parameters on
/api/dashboard/:id/cards
Kaocha-cucumber 0.1.84 (2023-04-14 / e6dfb3d)
-
- Added documentation for working with step definitions in the REPL.
-
- Added documentation about Gherkin tag support.
Kaocha-cucumber 0.2.90 (2023-04-14 / 5f3a70f)
-
- Updated Kaocha dependency.
Kaocha-cucumber 0.10.94 (2023-04-14 / 7048235)
Kaocha-doctest 0.1.15 (2023-03-30 / d0e946b)
Deep-diff2 2.8.190 (2023-03-30 / 34d5e17)
- Enable print tests in babashka
- Add a
lambdaisland.deep-diff2/minimize
function, which removes any items that haven't changed from the diff.
Uri 1.15.125 (2023-03-30 / 5550226)
- Adds
:into
option to define customclojure.lang.IPersistentMap
target data structure forlambdaisland.uri/query-string->map
Kaocha 1.81.1290 (2023-03-30 / b548866)
- Smoke tests for babashka on CI
- The
-load
and-run
multimethods now use Kaocha's own hierarchy, rather than the global one. (Needed to support the new doctests type)
Kaocha 1.82.1306 (2023-03-30 / 40698c5)
- Expose
:print-config true
and:print-test-plan true
to Clojure CLI -X invocations.
Funnel-client 0.0.28 (2023-03-27 / 334474f)
- Support a new system property "lambdaisland.funnel-client.ssl-context" to specify a function name which when being called will inject the ssl context into the funnel-client.
Chui 1.2.205 (2023-03-27 / 42b0572)
Fetch 1.3.74 (2023-03-27 / ce3b211)
- Add documentation for :query-params. (thanks @opqdonut)
- Bump uri library to address security issue.
Uri 1.14.120 (2023-03-27 / a1da1b7)
- Treat a backslash in the authority section as a delimiter which starts the path section (CVE-2023-28628, with thanks to @luigigubello for the report)
Glogi 1.3.169 (2023-03-27 / 109b82e)
- Modified an internal function so that code emitted by logging macros can be DCE'd when the user disables logging.
Hiccup 0.0.15 (2023-03-20 / c0a2d53)
- Correctly handle boolean attributes (false values are removed rather than being set to "false")
Launchpad 0.16.88-alpha (2023-03-08 / 67de06e)
- Bump dependencies
Cljbox2d 0.7.43 (2023-03-01 / 7c1ad72)
- Added two-arity version of
apply-impulse!
, defaults towake? false
- Implement
joints
for body instances. This returnsnil
, since joints are part of the world, but it allows code to recurse safely by callingbodies
andjoints
on various entities - Make return type tags in protocols fully qualified, Clojure seems to like that better
- Fix PrismaticJointDef creation, some vector fields are final, we can only mutate the existing instance
- Wrap
destroy
in a mutex, to allow for rendering of a consistent world view - Prevent exceptions in the Clojure2D renderer when the world is being changed underneath it
- Fix 2-arity circle shape constructor
- When adding bodies/joints that have an
:id
, remove any bodies/joints with the same:id
. This is to ensure uniqueness, but also makes for a nicer REPL experience - When converting to edn (IValue), include :joints for world, and omit default values for body
Cljbox2d 0.8.46 (2023-03-01 / ef4c8e8)
- Add a null-implementation for
joints
toContact
, sofind-by
works onContact
instances
Kaocha 1.80.1274 (2023-03-01 / df82a2f)
- Fix regression in the notifier plugin
Ornament 0.8.84 (2023-02-28 / 8d54daa)
- Implement inheritance for fn-tails
Kaocha 1.79.1270 (2023-02-28 / 47a7b61)
- Kaocha is now compatible with Babashka. Running under Babashka is most useful for validating your Clojure code runs correctly on Babashka, but it may also be faster for some test suites because of reduced start up time.
Kaocha 1.78.1249 (2023-02-22 / 85de28d)
- Fix issue with
--watch
and Neovim by bumping Beholder to1.0.2
Kaocha 1.77.1236 (2023-02-01 / 510f450)
- Fix bug causing namepaces to not be loaded if an alias was already created for them using
:as-alias
Kaocha 1.76.1230 (2023-01-25 / 2b9d9df)
kaocha.repl/config
accepts a:profile
key when specifying extra options.- Configuration errors and circular dependencies are reported as warnings, rather than causing the entire watcher to crash. (thanks @frenchy64)
- Fix bug added in #384: assertions in the tail position of an each fixture would return the result of the assertion instead of the testable object with the merged report data. (thanks @NoahTheDuke)
Launchpad 0.15.79-alpha (2023-01-20 / 2b06d8e)
- Allow setting nrepl port/bind from CLI
- Provide a warning when connecting to emacs fails, rather than exiting
- Dependency version bumps
Kaocha 1.74.1181 (2023-01-20 / d823c74)
- Dependency version bumps
Kaocha 1.75.1190 (2023-01-20 / 29f98cc)
kaocha.plugin.capture-output/bypass
macro, for temporarily bypassing output capturing- Circular dependencies in watch mode no longer kills the process. (thanks @frenchy64)
Embedkit 0.0.50 (2023-01-19 / 8e058ff)
- Let (setup/init-metabase! config) support first-name, last-name, site-name.
Kaocha 1.73.1175 (2023-01-16 / 664b83a)
- Ensure reloading errors are printed in watch mode when the first test suite is disabled.
- Using a try-catch (without rethrowing) in an
:each
fixture could swallow thrown exceptions, resulting in a test being treated as passing when it should have been reported as an error. Fixed by changing how:each
fixtures wrap the test function in execution. (thanks @NoahTheDuke) - Fix crash on Windows when using
--watch
with the default Beholder watcher.
Kaocha 1.72.1136 (2023-01-09 / d9f0728)
- Documentation fixes and improvements
Plenish 0.3.45 (2022-12-23 / b87cb3a)
- Added a
find-max-t
helper function, for picking up work where it was left off - Throw when trying to reprocess an earlier transaction
Facai 0.8.68-alpha (2022-12-16 / 1f31590)
- Fix two-arity version of build-all
- When unifying, don't recurse down the stored lvar value when reusing it
- Remove three-arity version of build-all
Launchpad 0.14.72-alpha (2022-12-12 / 06eed64)
- Add support for top-level shadow-cljs config/builds, not only sub-project builds
- Better handle
:paths
indeps.local.edn
, ensure they are picked up at boot, not only at first classpath reload
Webbing 0.4.20-alpha (2022-12-04 / 656964e)
- Make sure cli-args are checked even if no setting lookups happened
Launchpad 0.13.67-alpha (2022-11-25 / 07ac499)
- Support setting :lauchpad/main-opts in .clojure/deps.edn
Ornament 0.7.77 (2022-11-25 / a1f8d65)
- Add Clerk garden setup
- improved way to handle girouette v2 and v3 tokens
Deep-diff2 2.6.166 (2022-11-25 / 06fec7e)
- Babashka compatibility
Deep-diff2 2.7.169 (2022-11-25 / 343811e)
- Fix printing of mismatch/deletion/insertion on Babashka
Glogi 1.2.164 (2022-11-25 / 9a89583)
- Add support for logging multiple forms with
spy
. - Release under
com.lambdaisland
as well aslambdaisland
, see #9 - Version bumps
Embedkit 0.0.45 (2022-11-24 / f6273b8)
- Add fetch-users API
- [breaking] Support only metabase version >=
0.40.0
- Support the pagination feature of
/api/user
Ref
Deep-diff2 2.5.151 (2022-11-21 / 92232a1)
- [breaking] Fall back to the system printer when no deep-diff2 specific print handler is available for a given type. See the README for details.
Fetch 1.2.69 (2022-11-14 / 6e9a82f)
- Support for a
:signal
key, to hook up anAbortController
Embedkit 0.0.24 (2022-11-13 / 23678d6)
- Add setup automation
Kaocha-cljs2 0.1.58 (2022-11-11 / 98fdc42)
- Upgrade Chui, fixes a glogi dependency incompatibility with current version of Clojurescript
- Upgrade Kaocha to 1.70.1086
Kaocha-cloverage 1.1.89 (2022-11-09 / c2b2dbf)
- Bumped Cloverage dependency to
1.2.4
.
Kaocha-junit-xml 1.17.101 (2022-11-09 / 95067b2)
-
- Fix Cljdoc build.
Launchpad 0.12.64-alpha (2022-10-26 / a4fdb16)
- Write the current classpath to
.cpcache/launchpad.cp
, for integrating third parties like clojure-lsp. (configurecat .cpache/launchpad.cp
as your:classpath-cmd
) - Call
(user/go)
in atry/catch
- Start the watcher on a separate thread, it can take a long time to boot, and meanwhile we shouldn't block REPL startup.
- Pick up any
:deps
fromdeps.local.edn
at startup, not at the first classpath reload - Disable directory-watcher file hashing, it gets prohibitively slow
Kaocha 1.71.1119 (2022-10-24 / 4317878)
- Configure a timeout for notifications with
--notification-timeout
or:kaocha.plugin.notifier/timeout
. Note that this feature doesn't work for terminal-notifier on macOS, with Java's built-in TrayIcon, or with notify-send on certain Linux desktop environments and distributions. - Fix configuration parsing when using
--watch
. Previously, profiles would be respected on the initial load, but not after watch reloaded the configuration. - Notifier now reports errors in your notification command instead of silently failing.
- Fixed
java.lang.IllegalArgumentException: No matching clause: []
exception when:kaocha.spec.test.check/syms
is a collection.
Launchpad 0.11.59-alpha (2022-10-21 / 8454771)
- Fixes cljdoc build. There should be no changes to launchpad users.
Dotenv 0.2.5 (2022-10-17 / 13be4ef)
- Fix whitespace handling for unquoted values (leading and trailing whitespace is trimmed)
- Handle trailing comments that themselves contain quotes
Launchpad 0.9.49-alpha (2022-10-12 / d0123fe)
- Couple the lifetime of the Clojure process to the lifetime of launchpad, exit launchpad when the process dies, and kill the process when launchpad exits
Ornament 0.6.69 (2022-10-11 / a629407)
- Fixed an issue withe direct invocation of components with a render function (tail-fn)
Launchpad 0.8.46-alpha (2022-10-07 / 4c68918)
--go
flag, automatically call(user/go)
- Fixed some of the watching behavior
- Watch files even if they don't yet exist (pick up when they get created)
- Better deal with
:aliases {...}
indeps.local.edn
- Clean up output
Webbing 0.2.13-alpha (2022-09-29 / 255da0b)
Webbing 0.3.17-alpha (2022-09-29 / 94baf91)
Launchpad 0.4.29-alpha (2022-09-22 / 3ce3eb7)
- Make sure
--cider-nrepl
works, even whenemacsclient
is not available, e.g. for Calva
Launchpad 0.5.33-alpha (2022-09-22 / c37380a)
- Handle missing
deps.local.edn
Launchpad 0.6.36-alpha (2022-09-22 / 1755f62)
- Handle missing
.env
or.env.local
Launchpad 0.7.39-alpha (2022-09-22 / 1ec66df)
- Fixed previous botched release
Launchpad 0.3.26-alpha (2022-09-20 / 79a8d9a)
- Watch .env / .env.local
- Improve shadow-cljs support
Ornament 0.5.65 (2022-09-20 / 94cbebe)
- Support attributes when using a top-level fragment in a rendering function
Fetch 1.1.60 (2022-09-19 / 8d42e83)
- Passed in query-params now get merged into query parameters on the URL, rather than replacing them.
Kaocha-cljs 1.3.127 (2022-09-19 / 3c9983e)
- Change to deep-diff2, since that's what Kaocha uses now
Kaocha-cljs 1.4.130 (2022-09-19 / 69599a1)
- Release under
com.lambdaisland
as welllambdaisland
, see #9
Kaocha 1.70.1086 (2022-09-19 / f8d8ad5)
- Add specs for kaocha.plugin/profiling data (#302).
- Fix issue where diffing
(is (= ...))
assertions sometimes fails when comparing records. - Fix the
--no-notifications
flag in the Notifier plugin - Some error codes were duplicated. This is a breaking change if you rely on error codes.
- When a test suite configuration value is not a collection or symbol, the error code is now 250 instead of 252. The error code 252 is still used when the configuration file fails to load.
- When registering a plugin fails due to being unable to load a namespace, the error code is now 249 instead of 254. When registering a plugin fails for other reasons, the error code is now 248 instead of 254. When resolving a reporter var fails, the error code is still 254. You can test for error codes between 240 and 249 to check for plugin errors regardless of cause.
- When a test suite configuration value is not a collection or symbol, the error code is now 250 instead of 252. The error code 252 is still used when the configuration file fails to load.
- When registering a plugin fails due to being unable to load a namespace, the error code is now 249 instead of 254. When registering a plugin fails for other reasons, the error code is now 248 instead of 254. When resolving a reporter var fails, the error code is still 254. You can test for error codes between 240 and 249 to check for plugin errors regardless of cause.
- Upgraded
lambdaisland/deep-diff
tolambdaisland/deep-diff2
Nrepl-proxy 0.1.4-alpha (2022-09-16 / 5f5dd40)
- Initial release
Nrepl-proxy 0.2.8-alpha (2022-09-16 / f94c556)
- rerelease, 0.1.4 was botched
Launchpad 0.2.20-alpha (2022-09-15 / d95503f)
- Add nrepl/nrepl as an extra dependency by default (#1)
Plenish 0.2.37 (2022-09-14 / 5b770a2)
Launchpad 0.1.14-alpha (2022-09-09 / 6796c21)
- Load and watch deps.edn and deps.local.edn
- lambdaisland.classpath integration
- Support for cider-nrepl, refactor-nrepl
- Basic support for shadow-cljs cljs nREPL-base REPL
- Auto-connect for Emacs
Classpath 0.3.40 (2022-09-08 / 73c9529)
- [watcher] Support for custom basis-fn
- [watcher] Check for aliases in
:extra
deps file - [watcher] Fix watcher stop! function
Classpath 0.4.44 (2022-09-08 / 0c66dda)
- [watcher] Add a
:watch-paths
option, to watch additional files. Presumable in combination with a custom:basis-fn
Facai 0.7.59-alpha (2022-09-02 / 161a3b7)
- Introduced
with
andwith-opts
as a public API for creating deferreds. This may not stick, we may decide to always return a deferred when calling a factory directly instead. - Add a new key
:facai.build/factory
to the context when calling {before,after}-create-factory hooks, so that hooks don't have to deal with unppwrapping deferreds - Fix selector matching on a single segment wildcard selector:
[:*]
Deep-diff2 2.4.138 (2022-09-01 / 6196130)
- Fix issue (Fails with records with deleted keys)[lambdaisland/deep-diff2#29]
Classpath 0.2.37 (2022-08-26 / 34be62f)
- Upgrade directory-watcher to the latest version
- Prefix output from watch-deps with
[watch-deps]
- Print a message when the watcher triggers, but no classpath changes are made
Classpath 0.1.33 (2022-08-25 / fd51db4)
- Support watching multiple
deps.edn
files referenced via:local/root
Dotenv 0.1.1 (2022-08-17 / a9437f5)
- Initial implementation
Kaocha-junit-xml 1.15.95 (2022-07-26 / de6d134)
- Added a flag to include file location metadata as attributes on testcases, à la pytest.
Kaocha-junit-xml 1.16.98 (2022-07-26 / d50528d)
- Fix
--junit-xml-add-location-metadata
command line flag
Kaocha 1.69.1069 (2022-07-26 / 07574ec)
- Fix a regression where in direct usage of
kaocha.api
a reporter is specified as a function
Plenish 0.1.23 (2022-07-25 / cf784ed)
Facai 0.6.52-alpha (2022-07-12 / 509ba20)
- Add XTDB support
- Rework persistence and hooks
Deep-diff2 2.3.127 (2022-07-01 / a8186a5)
-
- Remove "test" directory from the main paths in
deps.edn
to fix Cljdoc builds. This change also makes the artifact (very slightly) smaller, reducing the JAR's size by 3KB, or about 15 percent.
- Remove "test" directory from the main paths in
Kaocha 1.68.1059 (2022-06-20 / 4425558)
- Fix issue in
gc-profiling
, which was caused by a prior fix from 1.67.1055.
Witchcraft 0.37.324 (2022-06-19 / 106a06e)
- Bumped our version of XSeries, which makes us now compatible with Minecraft 1.19
Kaocha 1.67.1055 (2022-06-16 / 1682c7e)
- Fix misleading error message when all tests are filtered out. Previously, it
would misleadingly suggest you correct the
test-paths
andns-patterns
configuration keys. - Fix overflow with the
gc-profiling
plugin when there's too many bytes.
Witchcraft 0.35.314 (2022-06-08 / 4f9afaf)
- fix
empty-inventory
andshapes/line
Witchcraft 0.36.317 (2022-06-08 / 41ab5a5)
- Add
world-seed
Witchcraft 0.34.310 (2022-06-07 / a7af9c7)
- Fix chicken-shape example
- Optimize wc/loc for maps and vectors
- Augment launcher code to deal with spaces in paths
Witchcraft 0.33.307 (2022-06-05 / 4ae4713)
- Add
set-game-mode
Facai 0.5.41-alpha (2022-06-04 / c95169c)
- Support for rules
- Support for unification
Witchcraft 0.31.300 (2022-06-01 / dbda30c)
- Add
lambdaisland.witchcraft.shapes/arch
- Add
lambdaisland.witchcraft.matrix/extrude
- Fix
lambdaisland.witchcraft.matrix/rotation-matrix
Witchcraft 0.32.303 (2022-06-01 / 0cdeed9)
- Add matrix/translate
- Fine tune gradient-gen, tube
Witchcraft 0.30.297 (2022-05-24 / a3d3a74)
- Add
lambdaisland.witchcraft.matrix/cross-product
- Allow passing
:material
toset-blocks
as a default - make the step size for
lambdaisland.witchcraft.shapes/line
configurable - return
nil
when asking for the material of a vector that doesn't have one, instead of erroring out - handle
item-meta
more generally (read-only currently) - return an ordered sequence from
lambdaisland.witchcraft.shapes/line
in the order of the line, instead of a set - Improvements to
lambdaisland.witchcraft.shapes/line
Witchcraft 0.29.292 (2022-05-17 / ad428d6)
- Locally cache results to
satisfies?
calls inlambdaisland.witchcraft
, leading to a big speedup for a lot of operations
Deep-diff2 2.2.124 (2022-05-16 / 5a94bec)
- Bump clj-diff, to bring back compatibility with earlier java versions
Deep-diff2 2.1.121 (2022-05-13 / bb0dd63)
- Bump clj-diff, which fixes an issue where the diffing would not terminate in specific cases
- Bump all dependencies to the latest version
Dom-types 0.5.37 (2022-05-11 / 63d0f6c)
- Bump dependencies
Facai 0.3.27-alpha (2022-05-04 / 8ab563a)
- Make
lambdaisland.facai.helpers
ClojureScript compatible (convert to cljc) - Allow
helpers/numbered
to accept strings
Facai 0.4.32-alpha (2022-05-04 / 33d976f)
- Added
after-build
hooks on the factory and trait level - Added
lambdaisland.factory/update-result
for use in hooks - Breaking: traits now need an extra wrapping map, similar to the options map, with
:with
and optionally:after-build
Witchcraft 0.27.283 (2022-05-03 / 48a23fa)
- Added
lambdaisland.witchcraft.adventure.text
, which contains a conversion from Hiccup-like markup (a lalambdaisland.witchcraft.markup
) to a Adventure Component - When setting a display-name, if supported by the server, render to a Component instead of to a string. This fixes item-stack equality/isSimilar checks on Paper.
- Make inventory functions (add-inventory, contents, etc) take more types of objects, so you can call them directly on a block or itemstack that has an inventory.
- Added
into-inventory
as a convenience function - Added
despawn
- Added
create-explosion
Witchcraft 0.28.286 (2022-05-03 / 1cabce3)
- Added different arities for set-game-rule/set-game-rules/difficulty/set-difficulty, making the world argument optional
- Fix
map->Location
for vectors that contain material/direction info - Optimize
loc
for blocks - Make
set-block
accept vectors for consistency
Kaocha 1.66.1034 (2022-04-26 / 7a5824a)
- Extend
kaocha.config/load-config
to also work on resources
Witchcraft 0.26.277 (2022-04-17 / eebe741)
- Make sure we use the right Glowstone artifact, in an attempt to appease cljdoc
- Add CitizensNPCs are optional dep, in an attempt to appease cljdoc
- Remove reference to non-API class from Citizens, in an attempt to appease cljdoc
- Remove second reference to non-API class from Citizens, in an attempt to appease cljdoc
- Put gallery code inside a function, in an attempt to appease cljdoc
- Put more gallery code inside a function, in an attempt to appease cljdoc
- Include launcher-api/progrock as optional deps in the pom, in an attempt to appease cljdoc
- Include paper-api as optional dep in the pom, in an attempt to appease cljdoc
- Remove paper-api as optional dep again, it requires JDK 17
- Remove reference to org.bukkit.block.data.BlockData, in an attempt to appease cljdoc
- Check for org.bukkit.block.data.Directional with
util/when-class-exists
, in an attempt to appease cljdoc
Witchcraft 0.15.242 (2022-04-15 / 2a76029)
- More interop wrappers!
-block
,-block-state
,-set/get-custom-name
,-player
- Handle more input types in
player
,display-name
,set-display-name
,get-block
- Add
locv
as an alias toxyz
- Add
listen-raw!
for when you want to skip thebean
call and get the raw bukkit event - Add
e/cancel!
for convenient cancelling of events - Add
private-chest
to the gallery, a mini-mod for when there's too much stealing on the server
Witchcraft 0.16.246 (2022-04-15 / 73f9b24)
- Reduce usage of lambdaisland.classpath (and thus tools.deps), to make AOT easier
Witchcraft 0.14.239 (2022-04-14 / 855da06)
- Fix a regression that caused a load error on servers that support BlockData (1.13+)
- Bump Clojure2D, XSeries
Facai 0.2.23-alpha (2022-04-12 / 97f1b62)
- Convert to cljc (clojure+clojurescript support)
- Drop "rules" support, will likely come back in some other form in the future
- Version bumps
Kaocha 1.65.1029 (2022-04-11 / a60db27)
- Fix issue with
gc-profiling
plugin when there's a syntax error. - Ensure that modifications that are done by deleting and recreating the file
are picked up by using
--watch
with Beholder.
Witchcraft 0.12.232 (2022-03-30 / 7350cc8)
- Added functions to access entities, get/set difficulty, work with enchantments
- Overhaul and expand the support for working with inventories
- Add wrapper API for launcher-api
- Fixed Glowstone 1.12 compat
- General version bumps
Witchcraft 0.13.235 (2022-03-30 / 922aeda)
- Rename
launch!
to the more accuratelaunch-cmd
Faker 0.1.4 (2022-03-28 / 631867c)
- First release, implement main lookup logic, convert original YAMLs to Transit, and port a subset of the custom logic.
Faker 0.2.8 (2022-03-28 / 45c1a7b)
- Fix botched release: load error
Facai 0.1.18 (2022-03-28 / d5b5461)
- Initial implementation
Kaocha 1.64.1010 (2022-03-17 / e203099)
- Ignore test suites that are already excluded through CLI arguments when running the filter plugin. This gets rid of false warnings regarding missing metadata
Cljbox2d 0.6.31 (2022-03-14 / 8d5ff0e)
- Clojure2d support
math/vec-mul
, and shorter math aliases (v+
,v*
,m*
, etc)- Breaking! Return maps from
raycast-seq
, rather than fixtures, allow setting raycast-callback return value to set filtering behavior.
Cljbox2d 0.1.9 (2022-03-11 / 9627741)
- First release, with jBox2D (clj) and Planck.js (cljs) support
Cljbox2d 0.4.19 (2022-03-11 / 48f72c2)
- Fix cljdoc build
- Fix platformer demo, load images from resources (jar) instead of filesystem
- Switch to Quil 4 snapshot
Cljbox2d 0.5.23 (2022-03-11 / 7b55d21)
- Rewrite to a single :require form to appease cljdoc
Chui 1.1.192 (2022-03-11 / f44d3c1)
- Upgrade Glögi
- Upgrade Reagent
Kaocha-cljs 1.2.123 (2022-02-28 / 019e6ef)
- Get rid of warnings from humane-test-ouput
Kaocha-cljs 1.1.118 (2022-02-21 / 63a9ef4)
- General version bumps, so we don't pull in old versions of ClojureScript or Glögi.
Kaocha 1.63.998 (2022-02-15 / ae54f2b)
- Catch an exception in the notifier plugin which can occur in headless (CI) setups
- Version bumps of spec, expound, test.check
Kaocha 1.62.993 (2022-02-04 / 083f69e)
- Added configuration
:kaocha.watch/type
which takes either:beholder
or:hawk
as values. Defaulting to:beholder
as the new fs watcher. - Add
--no-fail-fast
CLI option - Changed default watcher to Beholder which supports OSX/m1 machines natively. Hawk is now deprecated and will be removed in a future release.
Uri 1.13.95 (2022-01-28 / a9cbeff)
- Fix a stack overflow in
normalize/char-seq
for really large query parameter values
Ornament 0.3.30 (2022-01-25 / d37c5e4)
- Improve ClojureScript support, in particular referencing components in other components style rules
- Support vectors with multiple selectors, plus alternative syntax with sets
Ornament 0.4.34 (2022-01-25 / df056c8)
- Fix cljdoc build
Reitit-jaatya 0.0.24 (2022-01-13 / e6c3f62)
- inbuilt support for sitemap generation
- build-dir can be customised (default is
_site
) - trailing slash bug
Witchcraft 0.11.216 (2022-01-03 / 13ea02d)
- Add
HasXYZ
,HasPitchYaw
,HasEntity
, andCanSpawn
protocol - Make
x
/y
/z
/pitch
/yaw
use the newer protocol + reflected implementation generation approach - Make
spawn
work with anything thatCanSpawn
, including Citizens NPCs
Witchcraft 0.10.213 (2022-01-02 / 1a44b44)
- Added reflection and event support for the Citizens API
- Improvements to
cursor/block-facing
Witchcraft-plugin 0.7.35 (2022-01-02 / 210b6a4)
- Softdepend on Citizens
Kaocha 1.60.977 (2022-01-01 / 4a6ed21)
- Add support for
:watch?
when usingexec-fn
Witchcraft 0.8.201 (2021-12-31 / 05608cb)
- Added a
:palette
option toset-blocks
, similar to how the palette works with cursors - Introduce a new
:block-facing
option in the cursor, to force the direction blocks face regardless of cursor direction. - Added convenience functions in
lambdaisland.witchcraft.cursor
:blocks
andfacing-direction?
. - Improve
material-name
/mat
andxmaterial
to handle keywords and vectors consistently - Set block direction after setting block-data, because block-data will otherwise overrule the direction.
- Improve material-handling in cursor, material can also be a two element vector (material+block-data).
Witchcraft 0.8.205 (2021-12-31 / 637ef2a)
- Fix compatiblity issue on Paper 1.17
Funnel 1.4.71 (2021-12-16 / 6ae91b0)
Kaocha 1.60.972 (2021-12-16 / af118c8)
- Fixed an issue where the combination of a load error and using
--focus
would result in "no tests found", shadowing the actual error
Glogi 1.1.144 (2021-12-14 / 6f83c7d)
- Fix Closure compatibility issue
Witchcraft 0.8.186 (2021-12-09 / 69954ed)
- Bugfix: Pre-declare
item-stack
Witchcraft 0.8.189 (2021-12-09 / 14cbbd6)
- Be more conservative when recursing in
display-name
, returnnil
if the type of object passed in does not provide a display-name
Witchcraft 0.8.183 (2021-12-08 / 3a5471c)
break-naturally
blockv
Witchcraft 0.8.178 (2021-12-07 / f93ce7b)
- Fix compile erros
- Make
wc/location
check forHasLocation
- Bring back coercion from Vector to Location
- In extend-signatures only extend the minimal set, so exclude descendant types
- Wrap the name normalization in megachop9000 in a delay so it can't cause load errors
Witchcraft 0.7.175 (2021-12-06 / 8b3190d)
- The
fill
API can now take a set of:materials
instead of a:pred
- Pas direction of a block in
set-blocks
when using vectors - Accept both
:start
and:anchor
inset-blocks
- Improved interop calls
inventory
now returns a sequence of maps, useget-inventory
if you want the bukkit object.
Witchcraft 0.6.172 (2021-12-04 / 6d3ded1)
- API additions:
target-block
: find the block you are looking atblock-data
: get info about block properties as a map (post-flattening only)set-block-data
: complimentary setter, set block data as mapcursor/rotation
: helper for a previously hidden flag to add an extra rotatio n to every block- Rework
material
andmaterial-name
to be more polymorphic set-blocks!
andcursor/build!
now both optionally take an:start
, to make the pattern easier of having location-independent structure generators- Significant docstring improvements
- support for block data in
set-block
,set-blocks
,cursor/material
- Add
shapes/rectube
, handy for houses and lot of other stuff. - Reflection-based protocol implementations: skip private classes
Witchcraft 0.6.160 (2021-12-03 / 1857689)
- lambdaisland.witchcraft.fill API
- gallery item: MegaChop 9000
- more docstrings
- normalize-text
set-lore
andset-display-name
now implicitly render markup
Witchcraft 0.6.163 (2021-12-03 / 493bdc7)
- Bugfix release
Witchcraft 0.6.167 (2021-12-03 / 8b5d891)
- Fixed megachop 9000
Reitit-jaatya 0.0.9 (2021-12-03 / 47c95a0)
Witchcraft 0.6.154 (2021-12-02 / dfda8b7)
- Fixed reflection warnings
Witchcraft 0.6.142 (2021-12-01 / 787e7c1)
- Support for Paper 1.18
- Issues with Paper's new classloader behavior
- Fixed cljdoc builds, finally browsable docs!
Ornament 0.2.19 (2021-11-29 / 6c8e226)
- Fix issue where girouette tokens were not being applied to child elements. See Github Issue
- Bump Girouette to 0.0.6
Uri 1.12.89 (2021-11-29 / 2118a75)
- Support
toString
on Babashka (requires recentbb
)
Data-printers 0.7.40 (2021-11-15 / a73fc95)
- Drop the dependency of
cider-puget
onlambdaisland.classpath
, rely on the lower-level and lighter-weightclojure.java.classpath
instead.
Data-printers 0.7.47 (2021-11-15 / 7f65723)
- cljs compat in cider-puget namespace
Data-printers 0.5.33 (2021-11-12 / 69d27c6)
- Set
*print-readably*
for pprint
Data-printers 0.6.36 (2021-11-12 / 6c49e0a)
lambdaisland.data-printers.cider-puget
, for dealing with CIDER's inlined Puget. Bit of a hack, use with caution.
Hiccup 0.0.4 (2021-10-28 / 8c0198a)
- Initial implementation
- fragment support
- component support (fn? in first vector position)
- unsafe-html support
Embedkit 0.0.12 (2021-10-28 / 756d3d1)
- First release
Uri 1.11.86 (2021-10-28 / 22c27af)
- Fixed an issue in
lambdaisland.uri.normalize/normalize-query
which did not take into account utf-16 encoding.
Ornament 0.1.12 (2021-10-25 / d0a739b)
- Bump Girouette to 0.0.5
Kaocha 1.60.945 (2021-10-24 / 7ed5dd8)
- Apply
:kaocha/bindings
higher in the stack, so they are visible tomain
andpost-summary
plugin hooks - Fix an issue when the history track reporter gets invoked outside of the scope where the history tracking atom is bound
- Fixed issue in
gc-profiling
that caused itermittentNullPointerException
s
Kaocha 1.0.937 (2021-10-20 / 8ccaba7)
kaocha.runner/exec
for use with Clojure CLI's -X feature- Added
gc-profiling
plugin for measuring the memory usage of tests. - Breaking! Unqualified plugin names containing dots are no longer
normalized to contain the
kaocha.plugin
-namespace in front.
Witchcraft 0.5.98 (2021-10-17 / 55eabf3)
- Fix Glowstone's optimized set-blocks implementation, it used a way to get a
default world which has been superceded by
(wc/default-world)
Witchcraft 0.3.90 (2021-10-13 / aec52ea)
- Support for PaperMC, see
start-paper!
andlambdaisland.witchcraft.paper
. This means you have now the option to use Witchcraft with a fully up-to-date 1.17.1 version of Minecraft - A cross-server/cross-version plugin for easier getting started, see https://github.com/lambdaisland/witchcraft-plugin
- Support for flattened blocks/materials, using XSeries
loc
, likelocation
, but returns a Clojure map instead of a bukkitLocation
xmaterial
to coerce to an XSeriesXMaterial
instance- added a printer implementation for
bukkit/Block
- Palette/gradient helpers (see
lambdaisland.witchcraft.palette
- nREPL middleware to dispatch evaluations on the main server thread
- Much improved cross-server and cross-version support
- Detect event types dynamically
- Post-flattening material names, even on 1.12 (e.g.
:red-wool
instead of[:wool 14]
,:crafting-table
instead of:workbench
) - The Glowstone dependency is now BYO (bring your own), since you can alternatively use Paper
start!
is gone, usestart-glowstone!
orstart-paper!
players
is now calledonline-players
set-block-direction
is now calledset-direction
set-block
no longer takes a vector of[material data]
, since this is going away post-flattening. Variants can be specified with their flattened name directly, direction can be provided in the map as a:direction
keyword.direction
now returns a direction keyword rather than a Vector. The former is now calleddirection-vec
Witchcraft 0.4.94 (2021-10-13 / ebf25c2)
- Fix support for Glowstone 1.12, which doesn't yet have the GameRule class
Regal 0.0.143 (2021-10-12 / 2f33f10)
- Support for Google RE2
- Lazy qualifiers:
:*?
,:+?
,:??
, and:lazy-repeat
- Some strings were misidentified as single characters, causing wrong quantification
Uri 1.10.79 (2021-10-12 / d90c6a8)
lambdaisland.uri.normalize/normalize
now also normalizes the fragment.
Classpath 0.0.27 (2021-10-06 / 719c1f5)
- Watch-deps now triggers on Mac
- Support both
main
andmaster
as branch names ingit-pull-lib
- Speed up resource lookups in priority classloader
- Several extra convenience functions for working with classloaders
Dom-types 0.4.34 (2021-10-04 / 6582cc6)
- Add printers for Blob and File.
Tools.namespace 0.1.247 (2021-10-01 / 4acc7a7)
- Add support for
:as-alias
- Bump all dependencies to the latest version
Ornament 0.0.7 (2021-10-01 / 52aa304)
- Initial implementation
Glogi 1.0.136 (2021-10-01 / 40a1dbc)
- Set a default level of
:info
for the root logger
Kaocha 1.0.902 (2021-10-01 / 3100c8b)
- Added support for code using
:as-alias
- Fix only considering public vars when building up the test plan
Dom-types 0.0.26 (2021-09-14 / f0e4984)
- Fixed printing DOM elements without a tag name.
Garden-watcher 1.0.45 (2021-09-13 / aba992d)
- Support for
hawk
options - Make
new-garden-watcher
function accept optional argument withhawk
options. Example of usinghawk
options can be found in Polling Watches.
Fetch 1.0.41 (2021-09-07 / 6696b7a)
- Added support for all options that
js/fetch
understands. Option values can be supplied as keyword or string.:headers
is expected to be a Clojure map from string to string::headers
,:redirect
,:mode
,:cache
,:credentials
,:referrer-policy
- There is now encoding implemented for
:content-type :form-encoded
- Supplying a body as a string will not encode it, but use the string unchanged as the body
Kaocha-cljs 1.0.113 (2021-09-07 / 2680b20)
- Bump ClojureScript, Glogi, Transit, Matcher-combinators
- This version was accidentally released under the
lambdaisland
group ad 1.0.107. The canonical version going forward is undercom.lambdaisland
.
Uri 1.4.74 (2021-09-06 / e07f9fd)
uri-str
as an explicitlambdaisland.uri.URI
to string conversion- Fixed compatibility with Babashka/SCI. Note that on babashka we can't
implement IFn or toString, so converting a
URI
back to a string needs to be done explicitly withuri-str
, and it is not possible to use a URI as a function. ((:path uri)
is ok,(uri :path)
is not).
Kaocha 1.0.887 (2021-09-01 / 38470aa)
- Fix load-error handling in
kaocha.watch
- Fix
could not resolve symbol require
error that occured sporadically when requiring certain kaocha namespaces. - Fix printing of boolean options in the print-invocations plugin
- Fix Java reflection warning in the Notifier plugin
- [BREAKING] Remove the Orchestra dependency, and no longer auto-instrument.
You'll have to list Orchestra in your own
deps.edn
/project.clj
if you want to use the Orchestra plugin. - Version bumps of Clojure, tools.cli, spec.alpha, expound
Dom-types 0.0.19 (2021-08-09 / 293e461)
- Fixed printing of
js/Text
- Fine-tune event type printing
Glogi 1.0.128 (2021-07-19 / 576ceba)
- Fix macro resolve in
ns
, which caused cljs logs to fail
Regal 0.0.123 (2021-07-14 / af6f5bb)
lambdaisland.regal.generator/sample
andlambdaisland.regal.generator/generate
now can take an optional size and (forgenerate
) seed- regal/malli integration didn't work with recent versions of Malli due to breaking changes in the malli API.
- Make sure the
:any
generator does not generate\return
or\newline
normalize
should understand[:not :whitespace]
Witchcraft 0.0.28 (2021-07-07 / a28e463)
Witchcraft 0.0.17 (2021-07-05 / b32fdef)
Fetch 1.0.33 (2021-06-02 / cfb45a8)
- Added optional EDN support. Require the
lambdaisland.fetch.edn
namespace, this will register the necessary multimethods.
Uri 1.4.70 (2021-05-31 / 76999dc)
- Add
uri?
predicate.
Dom-types 0.0.11 (2021-05-21 / 72aceee)
- First release
Kaocha 1.0.861 (2021-05-21 / dbfd6e8)
- Formatting of failed test results using deep-diff can be disabled with
--diff-style :none
on the command line or:diff-style :none
intests.edn
. - Fix at least some cases of syntax errors being suppressed by the "no tests found" message.
Glogi 1.0.116 (2021-04-26 / e1dbcb3)
- Fixed an issue with advanced compilation when calling
level-value
, which is used by the console handler
Daedalus 0.0.35 (2021-04-24 / 3ee44c0)
next?
predicate
Funnel-client 0.0.18 (2021-04-21 / 9afe32b)
- Bump lambdaisland/glogi to 1.0.106
Glogi 1.0.112 (2021-04-21 / a104211)
- Artifact name changed to
com.lambdaisland/glogi
in line with Clojars policy
Kaocha-cljs 1.0.93 (2021-04-21 / b6a7aa1)
- Clearly alert the user that ClojureScript versions before 1.10 aren't supported, rather than failing on whatever 1.10 functionality happens to be invoked first.
- Show the file/line of the deftest in case cljs.test is not able to provide a reasonable file/line number.
- Bump com.lambdaisland/glogi to 1.0.112
- Release under com.lambdaisland/kaocha-cljs in line with Clojars policy
- Bump all dependencies
Regal 0.0.94 (2021-04-20 / e087c28)
- Added support for
[:repeat form num]
(so fixed number of repeats, instead of min/max) to the generator
Regal 0.0.97 (2021-04-20 / 6f5f1cc)
- Add
lambdaisland.regal.generator/generate
as a shorthand for generating a single value from a regal expression
Glogi 1.0.106 (2021-04-20 / 1128462)
- Prevent single-arg
logger
from erasing the log level
Chui 1.0.179 (2021-04-19 / 7332d1e)
- Upgrade glogi dependency
Glogi 1.0.100 (2021-04-15 / 8a8ccf0)
- More fixes to deal with upstream changes in Google Closure Library
Daedalus 0.0.31 (2021-04-05 / d48b47e)
- Two-arity version of debug draw functions
- Add debug-draw to path-handler
- Add ILookup support to path-handler
Daedalus 0.0.28 (2021-04-03 / 6df687c)
- Added combined "path-handler" for a more convenient and encapsulated API
Daedalus 0.0.25 (2021-03-28 / ce0c699)
- Added
reset
for path-iterators - Added
polygon
function
Glogi 1.0.80 (2021-03-09 / 9c5ea2b)
- Maintain compatibility with newer versions of the Google Closure library, which introduced breaking changes in v20210302
Glogi 1.0.83 (2021-03-09 / d0f76e8)
- With
lambdaisland.glogc
there is now an official way to use the Glogi/Pedestal-log combo in a consistent cross-platform way
Kaocha 1.0.829 (2021-03-08 / a88ebda)
- Kaocha watch can now add ignores from
.gitignore
and.ignore
. To enable this feature, set:kaocha.watch/use-ignore-file
to true in your deps.edn. - Kaocha now falls back to the notifications provided by Java's AWT when it can't
find
notify-send
orterminal-notifier
. - Clearly alert the user that Clojure versions before 1.9 aren't supported, rather than failing on whatever 1.9 functionality happens to be invoked first.
- Fixed an issue with the definition of spec
:kaocha.test-plan/load-error
that caused a ClassCastException whenever a generator was created for it. - Errors when loading plugins are more specific, specifying which namespaces, if any, failed to load.
- Warn when running Kaocha without a configuration file. This is fine for experimenting, but for long-term use, we recommend creating a configuration file to avoid changes in behavior between releases.
- Provide a warning when no tests are found.
- Fix exception when running Kaocha on Windows with the built-in notification plugin enabled.
Daedalus 0.0.14 (2021-02-28 / 83a1146)
- Initial release
Data-printers 0.0.22 (2021-02-28 / f763641)
- Remove unnecessary type-name call
Chui 1.0.173 (2021-02-26 / 1e3ed0b)
- Added text wrapping support for test reports
- Added basic column resizing via
resize: horizontal
CSS support - Change default in UI to show passing tests
Data-printers 0.0.19 (2021-02-25 / 68f6e4e)
- Improve ClojureScript handling
Data-printers 0.0.8 (2021-02-24 / 0aa1553)
lambdaisland.data-printers/register-print
lambdaisland.data-printers/register-pprint
lambdaisland.data-printers.puget/register-puget
lambdaisland.data-printers.deep-diff/register-deep-diff
lambdaisland.data-printers.deep-diff2/register-deep-diff2
lambdaisland.data-printers.transit/register-write-handler
Data-printers 0.0.11 (2021-02-24 / c94fdcc)
- Include optional dependencies in the pom, marked as optional
Garden-watcher 1.0.33 (2021-01-14 / 777c23b)
- Support for *.cljc files
- Make namespace to file path conversion (and vice versa) more robust
Garden-watcher 1.0.36 (2021-01-14 / 4628d5b)
- Update dependencies
- com.stuartsierra/component {:mvn/version "0.4.0"} -> {:mvn/version "1.0.0"}
- org.clojure/java.classpath {:mvn/version "0.3.0"} -> {:mvn/version "1.0.0"}
- garden {:mvn/version "1.3.9"} -> {:mvn/version "1.3.10"}
- com.stuartsierra/component {:mvn/version "0.4.0"} -> {:mvn/version "1.0.0"}
- org.clojure/java.classpath {:mvn/version "0.3.0"} -> {:mvn/version "1.0.0"}
- garden {:mvn/version "1.3.9"} -> {:mvn/version "1.3.10"}
Fetch 0.0.23 (2021-01-04 / b8a521a)
- Fix query-params encoding issue and path/query-params normalization (@den1k)
- Dependency version bumps: lambdaisland/uri, js-interop, transit-cljs
- Remove direct dependency on Clojure/ClojureScript, people will generally bring them themselves
Fetch 0.0.16 (2020-12-01 / d5f92bd)
-
- Replaced
kitchen-async
dependency withmhuebert/kitchen-async
, which is the same lib with a fixed version on Clojars
- Replaced
Kaocha 1.0.732 (2020-11-26 / b418350)
- Fixed an issue with the optional
clojure.test.check
dependency (follow-up)
Kaocha 1.0.726 (2020-11-24 / faa6ef6)
If the value of a configuration key is not a collection or symbol, a more helpful error message is output. Fixes #124
kaocha.type.spec.test.check
now correctly builds fdef testables with configuration options from their enclosing test suites.kaocha.plugin.alpha.spec-test-check
now honors command line arguments based upon all of the configured STC suites rather than the static:generative-fdef-checks
selector.- Fix an issue where
clojure.test.check
would be required for Kaocha to work, rather than being an optional dependency - Breaking! Test configuration (
tests.edn
) is now validated with spec, meaning existing configs may fail. In most cases you should be able to update your config so it is valid, but please do report any issues. kaocha.plugin.alpha.spec-test-check
now respects a priority of supplied configuration. CLI options always take precedence, followed by options specified in individual test suites, followed by global options.- Improved spec definitions and generative fdef coverage
Kaocha-cloverage 1.0.72 (2020-11-20 / 20ea1aa)
- handle correctly test-ns-regex, converting strings into regexes and
adding cli support for the option as
--cov-test-ns-regex
Kaocha-cloverage 1.0.75 (2020-11-20 / 4c85364)
- Fix cljdoc build
Garden-watcher 1.0.27 (2020-10-30 / 634bccc)
- Make classpath detection more robust
Kaocha-cljs2 0.0.35 (2020-10-02 / 3a506bd)
- Fix fixtures :once :after hook
Kaocha 1.0.700 (2020-09-18 / 552b977)
- Fix documentation table of contents
- Make Ctrl-C (SIGINT) handling more reliable, so you can always short-circuit Kaocha to see your failing tests.
- Make spec-test-check plugin honor commond line arguments, so you can run only the generated test suite.
- Don't run group tests (e.g. namespace) when there are no tests inside it that would run (empty or all tests skipped)
Kaocha 1.0.690 (2020-09-14 / 8a12b69)
- fdef/spec based tests via plugin: honor
:clojure.spec.test.check/instrument?
and:clojure.spec.test.check/check-asserts?
fromtests.edn
Kaocha 1.0.681 (2020-09-10 / 5031360)
- Added
:kaocha.plugin/debug
for easy introspection of Kaocha's machinery - Added docstrings and markdown docs for the Orchestra and Preloads plugins
- In the filter plugin's pre-load early filtering of test suites, check flags
provided directly in the config, instead of only checking command line
arguments. This fixes kaocha.repl invocations like
(kaocha.repl/run {:kaocha.filter/skip [:unit]})
Edn-lines 1.0.10 (2020-08-27 / 73502c2)
- Honor tagged reader functions from
clojure.core/*data-readers*
Kaocha-cljs2 0.0.28 (2020-08-27 / 9ed88aa)
- Make the timeout configurable with
:kaocha.cljs2/timeout
in miliseconds. If no Funnel message has been received for this amount of time then we assume the client has gotten stuck or gone away and we time out - Upgrade Chui, this fixes handling of
:once
fixtures
Funnel 0.1.42 (2020-08-26 / 4c14cec)
- Added a
--daemonize
flag so Funnel can background itself (experimental) - Added a
--logfile FILE
option to redirect output - Added a
--ws-port PORT
options - Added a
--wss-port PORT
option - Added a
--version
flag - Correctly format log messages that contain parameters (like jdk.event.security)
- No longer include a default certificate
- Only start WSS server when a certificate is provided
- Changed the default
--keystore-password
from"funnel"
to"password"
(same as bhauman/certifiable)
Chui 0.0.156 (2020-08-26 / 460519c)
- Fix :once fixtures when running via chui-remote
Glogi 1.0.74 (2020-08-26 / acf8c48)
- Export lambdaisland.glogi.set-levels so you can use it from the browser console (pass in an array of two-element arrays of strings)
Kaocha 1.0.672 (2020-08-26 / ff68cf5)
- Prevent loading of test suites that are excluded from the run
Kaocha-cloverage 1.0.63 (2020-08-21 / 83f3706)
- Bump Cloverage to 1.2.0
Funnel-client 0.0.13 (2020-08-19 / 0eb52ad)
- Bump lambdaisland/glogi to 1.0.70
Chui 0.0.141 (2020-08-19 / 7d1865b)
- Source mapped stack trace in UI and remote
- Make sure terminate callback is always called, this prevents Shadow's reloading from hanging indefinitely
- Better exception reporting
Chui 0.0.146 (2020-08-19 / 6e324e2)
- Upgrade dependencies, glogi, funnel-client, deep-diff2
Chui 0.0.149 (2020-08-19 / adf2c24)
- Fail more gracefully when a test definition happens to be not available at runtime due to a load error
Deep-diff2 2.0.108 (2020-08-19 / e006fc5)
- Switch to using lambdaisland/clj-diff, a fork of an upstream fork
Glogi 1.0.70 (2020-08-19 / df34f1a)
- We no longer pull in a specific Clojure/ClojureScript version, assuming that client consumers will already have specific versions declared for their project.
Kaocha-cljs2 0.0.15 (2020-08-19 / d6f3fd1)
Kaocha-cljs2 0.0.18 (2020-08-19 / 239b9b8)
- Add chui-ui dependency
Kaocha-cljs2 0.0.21 (2020-08-19 / d4de44c)
- Remove debug call
- Version bumps
Kaocha 1.0.669 (2020-08-19 / 13abc37)
- Added internal diagnostics
Funnel-client 0.0.9 (2020-08-17 / 445658b)
Chui 0.0.133 (2020-08-17 / af3a0d3)
- First release of chui-remote, based on Funnel-client
Kaocha 1.0.658 (2020-08-17 / 22ef88c)
- Add two new hooks,
:kaocha.hooks/pre-load-test
,:kaocha.hooks/post-load-test
- Extend the hooks plugin to allow for
:kaocha.hooks/pre-load-test
,:kaocha.hooks/pre-test
/:kaocha.hooks/post-test
and:kaocha.hooks/post-load-test
hooks to be defined on the testable (i.e. on the test suite) - The
:post-summary
hook can now be used through the hooks plugin (before it was only available to plugins) - Allow test type implementations to add
:kaocha.testable/aliases
to testables, these can be used when focusing/skipping :kaocha.hooks/before
/:kaocha.hooks/after
now get converted to:kaocha.hooks/pre-test
/:kaocha.hooks/post-test
hooks. The former are considered deprecated but will continue to work.- the
post-summary
hook will also be called when invoked viakaocha.repl
kaocha.testable/test-seq
only returns actual testables, not a top level config/test-plan map- Bumped Orchestra and Expound, this pulled in a breaking change in Orchestra where it no longer includes the explained spec error in the exception message. To accomodate for this the Orchestra plugin has been updated so the explanation appears in the reported output.
- Only instrument lambdaisland/kaocha namespaces with Orchestra. For
instrumentation of your own code or third party libraries use the
:orchestra
plugin.
Kaocha 1.0.663 (2020-08-17 / 2a815a3)
- Fix
post-summary
when used from hooks plugin
Kaocha-cloverage 1.0.56 (2020-08-13 / 304162e)
- Switch back to vanilla Cloverage, and bump it to 1.1.3. This version no longer contains an aot-compiled tools.reader.
Kaocha-junit-xml 0.0.76 (2020-07-21 / 397a3c1)
- Added a flag to omit
system-out
from the generated junit.xml file, (thanks @ondrs)
Regal 0.0.89 (2020-07-20 / f46699b)
- Java flavor: parse
\s
and\S
to to semantically equivalent forms, instead of incorrectly parsing to:whitespace
/:non-whitespace
- All flavors: parse unkown escape codes to their respective characters
- Use the Malli error protocol so we get error messages automatically (thanks @ikitommi)
- Generators:
:any
should not generate newlines (now also for cljs)
Regal 0.0.80 (2020-07-17 / 3976988)
[:char ...]
for code point literal[:ctrl ...]
for control character literals:line-break
,:alert
,:escape
,:vertical-whitespace
,:vertical-tab
[:(negative-)lookahead ... ]
positve/negative lookahead[:(negative-)lookbehind ...]
positive/negative lookbehind[:atomic ...]
atomic groups (prevent backtracking)- Parsing of
\w \W \d \D \s \S
- Parsing of suffixed expressions
+ * ? {1,2}
lambdaisland.regal.normalize
for getting a canonicalized version of a regal form- Make
:whitespace
behave consistently across platforms - Drop the use of
java.runtime.version
(GraalVM compat) - Make instaparse grammar work on ClojureScript
- Generator fixes
- Correctly parse a single
&
inside a bracketed character class - Drop
[:range from to]
, instead use[:class [from to]]
- Using
:whitespace
inside[:class ...]
or[:not ...]
will throw an AssertionError, since we can't support it across platforms - The parser returns canonical forms, meaning single-character strings instead of characters
Kaocha 1.0.641 (2020-07-09 / ec75d9c)
- The hooks plugin now understands two new hooks at the test suite level,
:kaocha.hooks/before
and:kaocha.hooks/after
- Make the Hawk filesystem watcher configurable with
:kaocha.watch/hawk-opts
Uri 1.4.54 (2020-06-16 / 05a8a19)
- Make query decoding handle
+
as space, so the conversion between maps and query strings correctly round trips. - Handle percent encoding of control characters (codepoints < 16)
- make
lambdaisland.uri.platform/string->byte-seq
return unsigned bytes on both plaforms (clj/cljs)
Uri 1.4.49 (2020-06-11 / ee48e58)
- Make
assoc-query
/query-encode
encode spaces as "+" rather than "%20", which brings it in line to how most languages/libraries do it.
Funnel 0.1.16 (2020-05-26 / 81b2e61)
- First prerelease version, implements
:funnel/whoami
,:funnel/subscribe
,:funnel/unsubscribe
,:funnel/broadcast
,:funnel/query
. - Selectors:
true
, vector, map.
Chui 0.0.117 (2020-05-19 / 039e492)
- Work around an issue that cropped up due to Shadow's monkey patching of cljs.test.
Chui 0.0.103 (2020-05-13 / 70c2df1)
- Don't wait on next tick in between interceptor steps, so as not to unduly slow things down
- UI improvements
Chui 0.0.106 (2020-05-13 / cafb56e)
- chui-ui: include compiled styles.clj in jar, not garden-based styles.clj
Chui 0.0.111 (2020-05-13 / 7ce25e2)
- Added a warning when synchronous fixtures are used, these are not supported
- Make the whole namespace name and surrounding block a click target for toggle
- Show original form in failing assertion
- Change select behaviour in column 3 to be more intuitive
- Sort namespaces by name and vars by line number
- Don't delegate to the original cljs.test/report, no need for all that noise in the console
- Only show expected/actual sections when the assertion contains the relevant keys
Kaocha 1.0.632 (2020-05-13 / 149d913)
- Added a
:kaocha.testable/skip-add-classpath?
flag on the test suite to prevent Kaocha from modifying the classpath
Chui 0.0.91 (2020-05-12 / 0a80a97)
- Improve release process
- Colorize progress bar / top bar based on run result
Chui 0.0.94 (2020-05-12 / e9fc96b)
- Don't call capture-test-data at the top level, this may fix issues when our code is included in a doo project
Chui 0.0.73 (2020-05-11 / a151fae)
Glogi 1.0.63 (2020-05-05 / bcafca0)
- the Closure constant
lambdaisland.glogi.console.colorize
can now take four possible values,"true"
(useconsole.log
CSS formatting),"false"
(log plain text),"raw"
, log objects directly (good for cljs-devtools), or"auto"
(detect most suitable option)
Kaocha 1.0.629 (2020-05-02 / 6275298)
- An Orchestra plugin
:kaocha.plugin/orchestra
for instrumenting functions specs with Orchestra - A Preloads plugin
:kaocha.plugin/preloads
for requiring namespaces before Kaocha loads test suites. This is useful for requiring spec namespaces or other side-effecting namespaces that are not required by test code. - Fixed an issue where plugin names where not correctly normalized before deduplication, leading to potentially having a plugin twice in the stack
- Added
:kaocha.report/printed-expression
to thedebug
reporter, for debugging reporting issues with kaocha-cljs
Uri 1.3.45 (2020-05-01 / a04368b)
- Added function for dealing with query strings as maps:
query-string->map
,map->query-string
,query-map
,query-encode
,assoc-query
,assoc-query*
. - Fix query string normalization, for delimiter characters like
=
and+
there is a semantic difference between the encoded and decoded form, when they are encoded in the input normalization should not decode them and vice versa
Deep-diff2 2.0.0-93 (2020-04-20 / 6ff9209)
- Fix unsupported cljs lookbehind regex in code inherited from Puget (Thanks @JarrodCTaylor!)
Glogi 1.0-60 (2020-04-15 / 71bea10)
- For for when goog.log.ENABLED is false (for use in prod builds)
Glogi 1.0-55 (2020-04-07 / 592208d)
- Fix incorrect variable reference in
logger
- Honor goog.log.ENABLED, important for release builds
Edn-lines 0.0-5 (2020-04-03 / b4300af)
- First public API:
slurp
,spit
,reader-seq
,append
,with-append
Glogi 1.0-44 (2020-04-02 / 5a377e7)
- Added colored printing of objects and arrays
- Fixed colored printing of seqs and vectors
- Better mapping of log levels to log methods and colors.
:trace
is now an alias for:finer
,:debug
for:fine
(before:trace
=:fine
,:debug
=:config
)
Glogi 1.0-47 (2020-04-02 / 35d7fff)
- Print support for cljs.core.PersistentQueue
Deep-diff2 2.0.0-84 (2020-04-01 / 9c2af83)
- Typos in deep_diff2.cljs resulting from naming changes
Glogi 1.0-41 (2020-03-31 / ab9f97f)
- Added colorization of Clojure data structures, for places where devtools is not available
- Added the
config
macro, which logs to the corresponding log level
Glogi 0.0-36 (2020-03-30 / e2606fb)
- Added
spy
macro, logs the expression and its return value, returns the value - Added logging macros corresponding with goog.log log levels:
shout
,severe
,fine
,finer
,finest
- Use the correct console log method (log, error, warn, info) based on the log level
Kaocha-cloverage 1.0-45 (2020-03-29 / 8642129)
- Get rid of clojure.tools.reader warnings, by switching to a Cloverage version that does not include an AOT compiled clojure.tools.reader.
Kaocha 1.0-612 (2020-03-29 / 06293c8)
- Kaocha's own plugins can now use a simple keyword in
tests.edn
, e.g.:notifier
instead of:kaocha.plugin/notifier
, similar to what we do on the command line. - Bumped several dependencies: org.clojure/spec.alpha, org.clojure/tools.cli, and aero
Deep-diff2 2.0.0-72 (2020-03-27 / 2862182)
- Added support for ClojureScript (ported to CLJC)
- Changed namespace and artifact (jar) names to include a "2" suffix, because of breaking changes.
Glogi 0.0-29 (2020-03-25 / 991866f)
- Got rid of the
LogBuffer/CAPACITY
hack, to prevent issues with advanced compilation
Glogi 0.0-33 (2020-03-25 / cd9df6b)
- Added the ability to use keywords or symbols to look up a logger, or the
special
:glogi/root
to find the root logger. - Fixed
set-levels
to match its docstring. Takes a map.
Tools.namespace 0.0-237 (2020-03-11 / 45b51b6)
ctn-find/find-namespaces-in-dir
no longer swallows exceptions when the ns form can't be read, instead it returns a triplet of [::ctn-find/reader-exception io-file exception]
Kaocha 0.0-601 (2020-03-11 / 6b88d96)
- Namespaces where the ns form can not be read by tools.readers are now reported as a test failure, rather than being quietly ignored.
Kaocha 0.0-597 (2020-03-10 / 746943b)
- Added support in the reporter for the
=?
macro as used in Expectations (thanks @dharrigan 🎉)
Regal 0.0.0 (2020-02-28 / 9a40397ba)
Kaocha-cljs 0.0-71 (2020-02-24 / 773860f)
- Depend on an actual version of Glogi, instead or "RELEASE"
Uri 1.2.1 (2020-02-23 / a992787)
- Remove dependencies on ClojureScript and data.json.
Uri 1.2.0 (2020-02-17 / c0e1f1a)
lambdaisland.uri.normalize/normalize
, for normalizing URI instances.- Added type hints to avoid reflection (thanks @totakke!)
Kaocha 0.0-590 (2020-02-05 / 70d314f)
- Fix support for dynamic bindings with
set!
in watch mode. (thanks @frenchy64) - Fixes support for
:config
hooks in the hooks plugin.
Kaocha-boot 0.0-20 (2020-01-23 / 7e209fb)
- Inherit dependencies in Boot pod without modification (thanks @jffry)
Kaocha 0.0-581 (2020-01-22 / be2bd38)
- Breaking change! Focus/skip options are now applied in two passes, once for
options in
tests.edn
, once for command-line/REPL options. The result is that command line options can only narrow the set of tests to be run. (thanks @otwieracz)
Kaocha 0.0-573 (2020-01-13 / 156d084)
- Added
#meta-merge
reader literal fortests.edn
. (thanks @RickyMoynihan)
Kaocha-cljs 0.0-68 (2019-12-25 / 71c2d86)
- Wait for websocket client namespace to load before attempting to connect. This should help in particular with reliability when running against a browser environment.
- Pick a free port for websockets automatically instead of using a hard-coded port
Kaocha 0.0-565 (2019-12-10 / 72be8ec)
- Fix an issue with the Kaocha keyword hierarchy where two keys had an ancestor
via two different paths, causing problems when trying to
underive
. - Make the version-filter plugin work with non-numeric version segments, as in
"1.8.0_212-20190523183340.buildslave.jdk8u"
Kaocha-cucumber 0.0-53 (2019-11-04 / 281b7b5)
- Fixed reflection warnings
- Updated Clojure and Kaocha to latest versions
Kaocha 0.0-549 (2019-10-01 / aff529c)
- Added the
--profile
command line flag, which gets passed to Aero's#profile {}
tagged literal reader. Defaults to:ci
whenCI=true
. - Output a warning when
--focus TESTABLE-ID
does not match any tests.
Kaocha 0.0-554 (2019-10-01 / fc5d93a)
- Fix regression, only show the
--focus
warning when applicable
Kaocha-cloverage 0.0-41 (2019-09-25 / 0f12673)
- Support code using tagged literals (#6)
Kaocha-cljs 0.0-59 (2019-09-12 / 9159233)
- Added support for matcher-combinators
- When using the nodejs repl type, automatically set the CLJS compile target to :nodejs
Kaocha-cljs 0.0-51 (2019-09-11 / 4b6a751)
- Added compatibility with Figwheel REPL
- Make the CLJS-side logging configurable with
:closure-defines
- Use the same compiler env for the load and run stages
- isomorphic-ws is no longer needed on Node (ws still is)
- rework the websocket connection to be more reliable
Kaocha 0.0-541 (2019-09-11 / c97a2cb)
- The
kaocha.report.progress/progress
progress bar reporter now allows the appropriate exception to be reported when there is a syntax error in Clojure source code. Was formerly throwing NullPointerException. - Consolidate
kaocha.hierarchy
, so it can be used for kaocha-cljs
Kaocha 0.0-529 (2019-07-04 / 975bbc6)
- Be smarter about loading namespaces and resolving vars for dynamic bindings
set in
tests.edn
Kaocha-cljs 0.0-40 (2019-07-02 / d0324dd)
- Correctly pass custom compiler-options to the prepl
- Instead of using the ClojureScript PREPL we now use a queue based solution that bypasses the need for a Reader. This should hopefully lead to better reliability.
Glogi 0.0-25 (2019-06-25 / 0e226a8)
- Added
set-level
for convenience - Fix assertion in
set-level
Kaocha 0.0-521 (2019-06-19 / b652f99)
- Type hints to eliminate reflection warnings.
- Fix
--watch
when invoked without a[:kaocha/cli-options :config-file]
, either becausetests.edn
doesn't exist, or the config originated elsewhere. - Make
kaocha.repl/config
set[:kaocha/cli-options :config-file]
if applicable. - Handle exceptions in
--watch
higher up, to prevent certain errors from being silently ignored. - When providing dynamic var bindings in
tests.edn
, we now try to load the given namespaces before setting the bindings.
Glogi 0.0-18 (2019-06-11 / a27f7fc)
lambdaisland.glogi.console
provides an alternative togoog.debug.Console
, with the main benefit that it will log full data structures, thus playing nicely with cljs-devtools- Added an
info
macro for compat with pedestal. - The default formatter is now
identity
instead ofpr-str
. This way we preserve full data structures until the last minute. Note that goog.debug.Logger will stringify the message, unless care is taken for it not to.
Glogi 0.0-22 (2019-06-11 / 0d56b02)
- Fix glogi.console when devtools isn't available
Glogi 0.0-13 (2019-06-10 / 0668ebe)
Kaocha-cljs 0.0-32 (2019-04-23 / 3d46a25)
- Honor
:kaocha.testable/wrap
, and thus:kaocha.hooks/wrap-run
, which fixes support for output capturing. This work is funded by Nextjournal.
Kaocha-cljs 0.0-29 (2019-04-16 / 56f47ff)
- The
kaocha.type.cljs/*debug*
var can be set to see what kaocha-cljs is doing (use:bindings {kaocha.type.cljs/*debug* true}
intests.edn
) - Proper support
cljs.test/use-fixtures
. It still only supports the map version, i.e.(use-fixtures :once {:before ... :after ...})
, but should run both:once
, and:each
fixtures, honoring uses ofasync
in the fixture functions. This work is funded by Nextjournal. - Improved error handling and cleanup, to prevent cases where Kaocha would fail to exit after an exception.
Deep-diff2 0.0-47 (2019-04-11 / 27cf55c)
- Print
#uuid
and#inst
similarly to how the Clojure printer handles them. This handlesjava.util.Date
,java.util.GregorianCalendar
,java.sql.Timestamp
,java.util.UUID
. (by Nate Smith) - mvxcvi/puget {:mvn/version "1.1.1"} -> {:mvn/version "1.1.2"}
Kaocha 0.0-418 (2019-04-11 / d445b44)
- Make sure "no tests found" warning only shows up when it really needs to.
- lambdaisland/deep-diff {:mvn/version "0.0-29"} -> {:mvn/version "0.0-47"}
- nubank/matcher-combinators {:mvn/version "0.8.1"} -> {:mvn/version "0.9.0"}
Kaocha-cljs 0.0-24 (2019-04-09 / 248e33c)
- Added support for
cljs.test/async
. - Added initial support for
cljs.test/use-fixtures
. Currently both:each
and:once
fixtures are treated as:each
fixtures, so they run before/after each test var.
Deep-diff2 0.0-35 (2019-03-31 / 3b2ad04)
- Added type hints to prevent reflective calls
Kaocha-junit-xml 0.0-70 (2019-03-30 / 0377e39)
<
and>
are now escaped in XML attributes
Kaocha 0.0-413 (2019-03-30 / 9477eaf)
- Added a check to make sure org.clojure/tools.cli is up to date.
Deep-diff2 0.0-29 (2019-03-19 / 3fb9abc)
- Fix issue diff hangs on nil (see upstream issue)
- mvxcvi/puget {:mvn/version "1.0.3"} -> {:mvn/version "1.1.1"}
- fipp {:mvn/version "0.6.14"} -> {:mvn/version "0.6.17"}
- org.clojure/core.rrb-vector {:mvn/version "0.0.13"} -> {:mvn/version "0.0.14"}
- tech.droit/clj-diff {:mvn/version "1.0.0"} -> {:mvn/version "1.0.1"}
- mvxcvi/arrangement {:mvn/version "1.1.1"} -> {:mvn/version "1.2.0"}
Kaocha-cloverage 0.0-32 (2019-03-19 / 8da7e96)
- Allow passing excluded calls to Cloverage, see also Cloverage#242
- Upgrade Cloverage to version 1.1.1
Kaocha 0.0-409 (2019-03-19 / 8f177ea)
- Built in plugins in the
kaocha.plugin
can now be specified as simple (rather than namespaced) keywords. - The binding plugin has been removed, instead its functionality is now built-in, which allowed us to address several issues.
- Load errors now end in an immediate failure of the test run, instead of a warning. They are reported as an error so plugins like the notifier and junit.xml can display them.
- dependency upgrades, this fixes an upstream issue with clj-diff
- lambdaisland/deep-diff {:mvn/version "0.0-25"} -> {:mvn/version "0.0-29"}
- orchestra {:mvn/version "2018.12.06-2"} -> {:mvn/version "2019.02.06-1"}
Kaocha-cucumber 0.0-46 (2019-02-28 / a6dccb4)
- Fixed compatiblity with latest cucumber-jvm
Kaocha-cljs 0.0-21 (2019-02-28 / 1be9c73)
- Add ClojureScript implicit options during analysis, fixes issues with CLJSJS, among others.
Kaocha-junit-xml 0.0-57 (2019-02-15 / 3804cb7)
- Addressed a warning.
Kaocha-junit-xml 0.0-63 (2019-02-15 / 5243781)
- Fix potential NullPointerException
Kaocha 0.0-389 (2019-01-29 / 152db39)
- Added a
pre-report
hook. This allows plugins to inspect and change test events just before they are passed to the reporter. - Added a
:kaocha.plugin/notifier
plugin that pops up desktop notifications when a test run passes or fails. - Add the
wrap-run
hook to the hooks plugin. - Watch mode: re-run all tests by pressing "enter"
- Watch mode: watch
tests.edn
for changes - Watch mode: ignore certain files with
:kaocha.watch/ignore [".*" ,,,]
- To disable output capturing you can now use
:capture-output? false
, instead of:kaocha.plugin.capture-output/capture-output? false
. Since this is a built-in plugin that's enabled by default it makes sense to provide a shorthand for this. - Added a
:kaocha.plugin/bindings
plugin that allows setting dynamic var bindings fromtests.edn
- Preserve changes to the config made in a
pre-load
hook - Watch mode: if a namespace fails to load then report it clearly and fail the test run, skipping any remaining tests.
- Ignore
--focus-meta
when none of the tests have this particular metadata. - Print a nicer message when a plugin can't be loaded (Daniel Compton)
- Only print random seed when test run failsg
Kaocha-junit-xml 0.0-53 (2019-01-28 / 69d2e2f)
- Render non-leaf test types (e.g. clojure.test / ns) if they contain failures or errors (e.g. load errors).
Kaocha 0.0-367 (2019-01-16 / 514765b)
- Added a "version-filter" plugin, which will skip tests if their metadata indicates they are not compatible with the Clojure or Java version being used.
Kaocha 0.0-359 (2019-01-15 / 53d06ab)
- Mark tests with
^:kaocha/pending
metadata to skip over them, and report them as "pending" - Added a "hooks" plugin (
:kaocha.plugin/hooks
), that allows hooking into various parts of Kaocha's process using simple functions. This provides a more lightweight alternative to end users for full fledged plugins. - The
pre-test
hook now runs earlier, so that:kaocha.testable/skip
or:kaocha.testable/pending
can be set from the hook and still be recognized.
Kaocha-boot 0.0-14 (2019-01-14 / 4c7053e)
- Dynamically add test paths to classpath
Kaocha-boot 0.0-5 (2018-12-31 / 3962fb0)
Kaocha-cljs 0.0-16 (2018-12-31 / 214b14e)
- Capture exception type and message so it can be reported
Kaocha 0.0-343 (2018-12-31 / c38d94f)
- [internal] Extracted
kaocha.runner/run
, to be used by alternative command line runners like boot.
Kaocha-junit-xml 0.0-50 (2018-12-28 / d44f155)
- Fixed an issue in the code that strips out ANSI escape sequences, to prevent it from eating up some of the input.
- The rendering of errors and failures has been made more in line with what consumers expect, with a one-line message attribute, and with full multiline output as a text element.
- Each failure and error is now output as a separate XML element, rather than being grouped into a single element for each type.
- Rendering of errors (exceptions) will look for a
:kaocha.report/error-message
and:kaocha.report/error-type
, before falling back to calling.getMessage
/.getClass
on the Exception. This is for cases like ClojureScript where the error is originating and captured outside the JVM.
Kaocha 0.0-333 (2018-12-28 / 89b4c13)
- Added a TAP reporter (
kaocha.report/tap
) - Added a new
--print-env
flag to the:kaocha.plugin.alpha/info
plugin, which outputs the Clojure and Java version before each run. - Filter out
jdk.internal.reflect
stack frames when detecting source file (Java 9+) - Prefer a stackframe-based file/line detection over taking the file/line of the test definition, this way the reported location is that of the assertion, rather than that of the test.
- The
print-invocations
plugin no longer prints out the--config-file
flag when it hasn't changed from its default value (tests.edn
)
Kaocha-cljs 0.0-11 (2018-12-12 / 53fe73a)
- Initial implementation
Kaocha 0.0-319 (2018-12-12 / 012b4ef)
- [internal] Test types can signal that any remaining sibling tests should be skipped. This is used by the ClojureScript test type: if a test times out then we can no longer rely on the JavaScript environment being responsive. Instead fail the test (signal a timeout) and skip any remaining tests in the same suite.
- Removed debug prn calls
Kaocha-cloverage 0.0-22 (2018-12-10 / ee13a86)
- Don't rely on Cloverage to find namespaces, this fixes compatibility with Cucumber.
Kaocha-cucumber 0.0-36 (2018-12-10 / ddb341a)
- Ignore dangling symlinks for features (similar to fix in 0.0-25, but that one was for glue).
- Prevent glue files from being reloaded for every single scenario, providing a good speedup.
- Report file/line of pending scenarios because of missing snippets
- Honor tags on features as metadata
- Auto-require transformer namespace of custom types
- Don't emit a
:pass
event after every scenario, it inflates the assertion count - Make sure the test result contains result counts, for things like junit-xml
- In case of failure the output now contains the file name, line, scenario, and step that was currently executing.
- No longer add the scenario as a
*testing-contexts*
, to prevent the docs formatter from printing it twice. - Give tests nicer ids, based on the filename and scenario description
Kaocha 0.0-313 (2018-12-10 / b45ccd1)
- A new work-in-progress information plugin,
:kaocha.plugin.alpha/info
, currently only prints the list of all test ids. - In watch mode: Scan test-dirs/source-dirs, rather than letting tools.namespace derive the list of paths from the classpath
- When specifying test suites defaults are always provided, so it's no longer
necessary to provide
:src-paths
,:test-paths
, etc. if they don't deviate from the defaults. This also means all test suites get the default:kaocha.filter/skip-meta [:kaocha/skip]
.
Kaocha-junit-xml 0.0-47 (2018-12-07 / db418fa)
- Detect "leaf" test types through Kaocha's hierarchy functions, this fixes
compatibility with
kaocha-cucumber
Kaocha 0.0-305 (2018-12-07 / 8b51576)
- Consider
(is (= ))
assertions with only a single argument as failures, as these are most likely typos, they always evaluate to true. - Honor the
capture-output?
flag when provided intests.edn
- Print captured output when a test fails because it doesn't contain assertions
- Make file/line in failures more accurate
- Kaocha now also considers the global hierarchy when determining event types. This makes it possible for third-party clojure.test reporters to be Kaocha-aware without having to depend on Kaocha.
- lambdaisland/kaocha-cloverage is now its own project, make sure to include it in your deps/project files.
Tools.namespace 0.0-234 (2018-12-05 / 039c9b8)
- Bumped dependencies of java.classpath and tools.reader
Kaocha-cloverage 0.0-18 (2018-12-05 / 9c8c629)
- Allow configuring ns-regex and ns-exclude-regex from tests.edn (#2)
Kaocha-cucumber 0.0-25 (2018-12-05 / dc68f6e)
- Don't try to load dangling symlinks, this prevents issues with emacs tmp files
Kaocha-cucumber 0.0-28 (2018-12-05 / 39c6c82)
- Add Kaocha as a dependency, so that cljdoc can analyze kaocha-cucumber
Kaocha-junit-xml 0.0-39 (2018-12-05 / 1507bab)
- Automatically create parent directory of output file if it doesn't exist
- Encode single quote as the more widely understood
'
rather than
Kaocha-junit-xml 0.0-43 (2018-12-05 / 311587e)
- Address cljdoc analysis error preventing the docs to build
Kaocha-cucumber 0.0-20 (2018-11-23 / bf77871)
- Report syntax errors as failures, rather than crashing the process
Kaocha-junit-xml 0.0-31 (2018-11-20 / 060108f)
- Make XML output strictly conform to the JUnit XML schema (#2)
- Strip escape characters in text node, they are not valid XML
- Strip ANSI color codes
- Number of skipped tests and number of assertions are no longer reported. While some sources seem to suggest they are part of the JUnit XML format, they are not part of the schema, and so hinder validation.
Kaocha-junit-xml 0.0-27 (2018-11-17 / a7f8432)
- Fix entity escaping of text nodes and attribute values in output XML (#1)
Kaocha-cloverage 0.0-3 (2018-11-15 / 80c323a)
- Initial release
Kaocha-cloverage 0.0-6 (2018-11-15 / 8308b88)
- Correctly specify Cloverage as a dependency
Kaocha-cucumber 0.0-15 (2018-11-14 / e6f43af)
- Initial implementation
Deep-diff2 0.0-25 (2018-11-10 / 2fab8b1)
- Fix support for records with inserts #4
- Version upgrades:
- mvxcvi/puget {:mvn/version "1.0.2"} -> {:mvn/version "1.0.3"}
- fipp {:mvn/version "0.6.13"} -> {:mvn/version "0.6.14"}
- lambdaisland/kaocha {:mvn/version "0.0-239"} -> {:mvn/version "0.0-266"}
- lambdaisland/kaocha-junit-xml {:sha "fb06678e9f947cd7ff0deff456e8e6afae687afe"} -> {:sha "a35398d4bf553bdb09b8ef07f4bf8bd3bd40bc61"}
Kaocha 0.0-266 (2018-11-08 / 0e9d0ee)
- Cucumber support, see lambdaisland/kaocha-cucumber
- Function specs are now checked with orchestra + expound
- Plugins in the
kaocha.plugin
namespace can now be specified on the command line with their short name kaocha.assertions
namespace with customclojure.test
assertions. Currently for internal use but might evolve into its own library.- Added Cloverage integration, currently still included in the main
lambdaisland/kaocha
artifact. - Added support for "pending" tests (skipped but still reported). Currently only used by Cucumber.
- Speeded up startup by avoiding loading kaocha.watch, core.async, fipp, puget #14
- This release contains several internal changes to support disparate test suite types.
- The test summary now reads "x tests, y assertions, z failures", rather than "test vars", to be more test type agnostic.
Kaocha-junit-xml 0.0-18 (2018-11-05 / 83a953b)
- error elements now contain the full stack trace as a child element, and only the short message as a message attribute
Kaocha-junit-xml 0.0-13 (2018-11-01 / a22889b)
- Make target file configurable in tests.edn
Kaocha 0.0-248 (2018-11-01 / d6edc4f)
- De-dupe plugins, for cases where a plugin is added to
tests.edn
and on the CLI
Deep-diff2 0.0-15 (2018-10-31 / 63d30b5)
- Fix support for Clojure records. Currently they are considered in the same equality partition as maps. (by @ikitommi, #1)
- Pin explicitly to the latest version of Fipp and rrb-vector, to prevent issues on Java 11, see CRRBV-18
Kaocha-junit-xml 0.0-7 (2018-10-31 / 163d219)
Kaocha 0.0-239 (2018-10-31 / f1b9a61)
- Skip tests marked as
^:kaocha/skip
by default - Junit.xml output, see lambdaisland/kaocha-junit-xml
- Fix Java 11 compatiblity
- deep-diff functionality has been extracted into its own library
Kaocha 0.0-243 (2018-10-31 / 55bb5c1)
- Fix matcher-combinator support
Deep-diff2 0.0-4 (2018-10-30 / 3d82596)
- Extracted from Kaocha, and added a top-level namespace.
Deep-diff2 0.0-8 (2018-10-30 / 6bd7918)
lambdaisland.deep-diff.printer/print-*
are now public, as they can be used in custom print handlers.
Kaocha 0.0-217 (2018-10-22 / 642cff8)
- Looking up of print-handler fails for nil
Kaocha 0.0-206 (2018-10-21 / 4654f45)
kaocha.plugin.alpha/xfail
, mark failing tests with^:kaocha/xfail
to make them pass, and vice versa. (#2)(is (= ,,,))
assertions are now deep diffed and pretty printed.- Plugins now take a "docstring" (added under the
:description
key). (For future use.) --fail-fast
mode is incompatible with the check which fails tests when they don't contain any assertions. (#10)kaocha.repl
does not correctly merge in extra config keys- Reported line number in case of failures points to the failed assertion, not to the failed var.
- Passing extra config to
kaocha.repl/run
will still by default run the current*ns*
, rather than all tests. - Honor
*print-length*
when set. (defaults to 100) - Make sure
kaocha.testable/*current-testable*
is bound when plugin'swrap-run
result executes. - Config merging (defaults + tests.edn + repl values) now uses
meta-merge
for flexible append/prepend/replace. - Print the testable-id in failure messages rather than just the var name, so it can be passed straight on to
--focus
Kaocha 0.0-211 (2018-10-21 / fd7e623)
- Fix regression in
kaocha.report.progress
Kaocha 0.0-185 (2018-09-28 / 15081ed)
- BREAKING:
kaocha.repl/run-tests
andkaocha.repl/run-all-tests
have been renamed torun
andrun-all
, so a(use 'kaocha.repl)
doesn't clash withclojure.test
. - Skip reloading namespaces during load if they are already defined. In watch
mode they still get reloaded through tools.namespace when necessary. This
change is done to make REPL usage more intuitive. When running
kaocha.repl/run-tests
it will refrain from doing a(require ... :reload)
, instead accepting whatever state your REPL process is in.
Kaocha 0.0-189 (2018-09-28 / 087b78b)
- Fixed
kaocha.repl/run-all
Kaocha 0.0-181 (2018-09-27 / 472f63f)
- Documentation updates
Kaocha 0.0-176 (2018-09-23 / 7fd6c80)
- Make Kaocha's reporters more easily extendable through keyword hierarchies
- Load errors in
--watch
mode no longer cause the process to exit. Instead you get a warning and the loading is retried on next change. - Made
kaocha.repl
a lot more useful, making it easy to do a full or partial test run from a REPL or buffer.
Tools.namespace 0.0-228 (2018-09-22 / 88d4488)
- Forked from
clojure.tools.namespace
aslambdaisland.tools.namespace
- Track load errors instead of bailing out
Kaocha 0.0-162 (2018-09-20 / dc503f4)
- Reporters in the
kaocha.report
namespace now can be specified on the command line with just their short name, e.g.--reporter dots
- Improved matcher-combinators support, now failure summary is only shown at the end (for dots or docs reporter), and output is correctly captured and displayed.
- Compatibility with newer matcher-combinators.
Kaocha-midje 0.0-5 (2018-09-19 / 2cb6b39)
- Initial release
Kaocha 0.0-147 (2018-09-19 / 351429d)
- Use tools.namespace.track for tracking/reloading namespaces in watch mode. This should make this a lot more reliable.
- Change the
add-classpath
classloader hack so it doesn't mess up the thread binding stack. - Make dots reporter compatible with newer versions of matcher-combinators.
Kaocha 0.0-153 (2018-09-19 / 25a68bd)
- BREAKING: Instead of
#kaocha
use#kaocha/v1
as a reader literal that normalizes configuration. The old version is still supported for now but generates a warning.
Kaocha 0.0-138 (2018-09-17 / 9bc74e4)
- Due a limitation of Aero
:ns-patterns
must be strings, and not regex literals. Clarified this in the docs.
Kaocha 0.0-134 (2018-09-16 / d0da4e2)
- filter keys (skip/skip-meta/focus/focus-meta) can now be used without namespace when using the
#kaocha
reader literal for configuration. Before::kaocha.filter/focus
, after::focus
. - Added a
:kaocha.hooks/pre-load
hook to complement:kaocha.hooks/post-load
.
Kaocha 0.0-122 (2018-09-12 / 735aa75)
- BREAKING:
:kaocha.type/suite
is now called:kaocha.type/clojure.test
Kaocha 0.0-118 (2018-09-09 / cc55d42)
--version
command line flag (only works when running from a JAR)--help
as alternative to--test-help
, for environments where--help
isn't shadowed- Make code base analysable by cljdoc.xyz
- Make sure clojars.org links to correct
Kaocha 0.0-97 (2018-09-08 / 734df37)
kaocha.repl/run-tests
/kaocha.repl/run-all-tests
(since renamed torun
andrun-all
)- Dynamically adding test directories to the classpath should be more robust now.
:kaocha.suite/ns-patterns
,:kaocha.suite/source-paths
and:kaocha.suite/test-paths
have been renamed to just use the:kaocha
namespace.
Kaocha b0a70dc267a (2018-07-29)
- Capture output, this is enabled by default. Only output of failing tests is
printed. This also introduced a new plugin hook,
wrap-run
, which allows you to decoraterun-testables
for doing things like adding bindings. - Reporters now always get the current testable in their clojure.test reporting event.
- Added a progress bar reporter
- Documentation reporter: show in the documentation output which tests fail.
- The randomize plugin could cause an exception because the sort-by-random-number-generator wasn't stable (it violated the contract of a comparator). Instead assign each testable a sort key first, then sort by those. This does mean seeds from before this change will no longer produce the same result.
- When specifying an invalid reporter var, error before trying to load tests.
- Correctly count matcher-combinator mismatch failures when exiting early (Ctrl-C).
Kaocha 7b79fad92d (2018-06-16)
- The profiling plugin can now be configured on the command line and from
tests.edn, with
--[no-]profiling
,--profiling-count
,:kaocha.plugin.profiling/profiling?
,:kaocha.plugin.profiling/count
- Don't count filtered tests in profiling results.
--focus
and--focus-meta
override config-level:focus
/:focus-meta
, rather than append. This is more intuitive, when focusing from the command line you don't want extra tests to show up.- Don't run the
post-summary
hook when using the API, this prevents noise from plugins in the--print-test-plan
/--print-result
output.
Kaocha 3319ed6f81 (2018-06-13)
- Added the
kaocha.plugin/defplugin
macro, making plugins look more like a deftype.
Kaocha 9a920204bc (2018-06-13)
- Make the test-plan available in
pre-test
andpost-test
plugin hooks, so that they have access to top level configuration items.
Kaocha 8eeff5b340 (2018-06-13)
- Testable now has an optional
:kaocha.var/wrap
key, which can contain a seq of functions that will be used to "wrap" the actual test function, useful e.g. for providing bindings. clojure.test style :each fixtures are also handled through this key, so plugins can choose to add wrapping functions at the start or the end of this seq to wrap "inside" or "around" the fixtures.
Kaocha 9a6fa32592 (2018-06-02)
- The configuration format has changed, you should now start with the
#kaocha {}
tagged reader literal intests.edn
to provide defaults. If you want more control then overwritetests.edn
with the output of--print-config
and tweak.
Uri 1.1.0 (2017-04-25)
- Predicate functions
absolute?
andrelative?
Uri 1.0.0 (2017-02-23)
- Initial release, public vars:
uri
,join
,coerce
,parse
,edn-readers