Releases: kotest/kotest
Releases · kotest/kotest
v6.0.1
v6.0.0
v6.0.0.0.M17
Add secondary constructor to `EngineResult` for simplified instantiat…
v6.0.0.M14
What's Changed
- Added IterationSkippedException to skip prop and non prop tests by @sksamuel in #4976
- publishing BOM by @Kantis in #4978
- Add Decoroutinator extension for coroutine stack trace support by @sksamuel in #4977
- prevent android native compilations if native is not enabled by @Kantis in #4979
- Don't use project at runtime in KotestJsTask by @sksamuel in #4981
- Wire XML reports into JVM task by @sksamuel in #4982
- Add test report dir to native by @sksamuel in #4983
- docs: explain proper usage of T.should by @codymikol in #4986
- Add support for -0.0 and 0.0 equality in NumberFormat.Lenient mode by @G0xilla in #4987
- docs: Fix kotest-extensions-spring documentation for 6.0.0M12 by @mkienenb in #4998
- Avoid quoting strings in the diff by @sksamuel in #5000
New Contributors
- @codymikol made their first contribution in #4986
- @G0xilla made their first contribution in #4987
- @mkienenb made their first contribution in #4998
Full Changelog: v6.0.0.M8...v6.0.0.M14
v6.0.0.M8
What's Changed
- Fixing releases for wasmJs targets by @Kantis in #4931
- Dividing the Kotest release flow into multiple runs by @Kantis in #4930
- Kantis/fix android native publishing by @Kantis in #4933
- enabling ksp publication by @Kantis in #4935
- Use kotlin poet for JS generator by @sksamuel in #4939
- updating target-specific release workflows to work with new publications by @Kantis in #4942
- Cleaning up some logging and unnecessary dependency wiring by @Kantis in #4941
- Use kotlin poet for native generation by @sksamuel in #4945
- Support project config detection in JS KSP by @sksamuel in #4946
- Update SpecRef to use FQN from KSP for non-JVM hints by @sksamuel in #4947
- Support project configs in native KSP by @sksamuel in #4948
- Unify all test result creation by @sksamuel in #4949
- Remove unused project config options by @sksamuel in #4950
- Updated gradle plugin for android build paths by @sksamuel in #4956
- Fix navigation to all specs by @sksamuel in #4951
- Update README.md by @sksamuel in #4957
- Updated android plugin to support libraries by @sksamuel in #4958
- Multiplatform JUnit XML Generator by @JesusMcCloud in #4954
- clean up after myself by @JesusMcCloud in #4959
- Wire KSP dependency from the Kotest Gradle Plugin by @sksamuel in #4961
- Implement WASM support by @sksamuel in #4962
- fix watchOS source folder name by @JesusMcCloud in #4963
- Implement WASM support by @sksamuel in #4964
- fix ksp imports by @JesusMcCloud in #4966
- Add nonjvm and remove jsHosted to simplify expect/actual implementations by @sksamuel in #4968
- Move platform and runBlocking into common by @sksamuel in #4969
- Updated matchers to return this by @sksamuel in #4970
- fix wiring of wasi by @JesusMcCloud in #4965
- Centralize all assertion handling into AssertionErrorBuilder. by @sksamuel in #4971
- Update shouldBeEqual to generate diffs by @sksamuel in #4972
- Simplify Print contract by removing unused depth by @sksamuel in #4973
- Update README.md by @sksamuel in #4975
Full Changelog: v6.0.0.M5...v6.0.0.M8
v6.0.0.M5
What's Changed
- Update Kotlin to 2.2.0-Beta2 by @nhajratw in #4868
- Update gens.md - fix misleading statement by @AlexCue987 in #4872
- Fix the compiler plugin to generate correct files by @JesusMcCloud in #4871
- Compiler assertions improvements by @0x746143 in #4874
- Update core.md - add missing word by @AlexCue987 in #4878
- Update dependency gradle to v8.14.1 by @renovate in #4881
- Change 'clues' phrasing to match code example by @davidmrz in #4885
- update kotlin & gradle by @nhajratw in #4902
- add haveContentTypeMatching matcher by @tKe in #4890
- EqualToComparingFields: do-not-cast-null-to-collection by @AlexCue987 in #4867
- update to ktor 3.x, remove TestApplicationResponse assertions by @tKe in #4891
- refactor: avoid requiring
<Nothing>
on container extensions by @tKe in #4877 - Update arrow-kt monorepo to v2.1.2 by @renovate in #4880
- docs: Fix a trivial double-space typo by @sschuberth in #4904
- feat: Add KoinPropTestListener for Property-Based Testing by @belljun3395 in #4899
- docs(schema): Move limitations to a separate section by @sschuberth in #4906
- Support reflective binding of java classes by @Kantis in #4907
- Fixes the WIP version in version selector dropdown in docs by @Kantis in #4908
- Add KSP processor to replace compiler plugin by @sksamuel in #4913
- fix(deps): update dependency io.projectreactor.tools:blockhound to v1.0.13.release by @renovate in #4910
- Removing explicit call to Gradle wrapper wrapper-validation by @Kantis in #4917
- Implement console renderer for native tests; remove TCSM fallback by @sksamuel in #4919
- conditional publication enabled based on runner, to deal with sharded… by @Kantis in #4918
- publishing to new maven central using nmcp plugin by @Kantis in #4915
- updating koin extension docs for 6.0 by @Kantis in #4920
- Updating 6.0 docs with a note about the changed extension groupId by @Kantis in #4921
- Restore instance per leaf and test; simplify spec execution scopes by @sksamuel in #4916
- Update PR.yml by @Kantis in #4926
- bump koin to 4.0 and add wasm publication by @Kantis in #4924
- Simplify test container usage for kotest 6 by @sksamuel in #4925
- Remove IterableEq and check for collections and arrays directly by @sksamuel in #4855
- Remove compiler plugin by @sksamuel in #4927
- Preventing massive CI build queue by @Kantis in #4929
- add inline to
should
andshouldNotBeNull
by @tKe in #4928 - Enable coroutineTestScope on js and wasmJs by @fhilgers in #4813
New Contributors
- @JesusMcCloud made their first contribution in #4871
- @0x746143 made their first contribution in #4874
- @davidmrz made their first contribution in #4885
- @fhilgers made their first contribution in #4813
Full Changelog: v6.0.0.M4...v6.0.0.M5
v6.0.0.M4
What's Changed
- Update README.md by @LeoColman in #4833
- Update dependency org.jetbrains.kotlinx:kotlinx-datetime to v0.6.2 by @renovate in #4834
- Update the beforeSpec method in JdbcDatabaseContainerExtension to not call itself recursively by @scottdfedorov in #4839
- make-eventually-behave-consistently by @AlexCue987 in #4841
- remove-unused-functions-from-MapMatchers.kt by @AlexCue987 in #4837
- Update testcontainers-java monorepo to v1.20.6 by @renovate in #4835
- ISSUE-4627: Update documentation to fix "Incorrect version in documentation" by @metters in #4811
- reintroduce @language annotation from now-mulitplatform org.jetbrains:annotations by @tKe in #4842
- Fixed package names for jvm enabled if conditions by @sksamuel in #4843
- Fix possible race condition in scheduler by @sksamuel in #4844
- Added js support to the gradle plugin by @sksamuel in #4752
- Remove spec delegates by @sksamuel in #4845
- Fixing sidebars by @Kantis in #4846
- Fix
before
andafter
matchers error messages by @felixwiemuth in #4848 - Fix Exhaustive.Companion.azstring by @ej-castillo in #4850
- Remove legacy compiler plugin by @sksamuel in #4851
- Fixed args lookup for listener in launcher by @sksamuel in #4853
- Bump hikari to 6.3.0 by @sksamuel in #4854
- Merged spec executors by @sksamuel in #4852
- fix accidental stackoverflow by @tKe in #4857
- Allow emptyList to be passed to
should[Not]ContainAnyOf
,should[Not]BeOneOf
andshould[Not]BeIn
by @habara-k in #4849 - fix a typo. by @nakamuraraika in #4859
- Update dependency com.github.ajalt.mordant:mordant to v3.0.2 by @renovate in #4863
- Add dependency of libs.kotlinx.coroutines.test to :kotest-assertions:kotest-assertions-core by @habara-k in #4856
- Add version for kotlin-reflect by @andrew-shewring-tr in #4861
- Update arrow-kt monorepo to v2.1.1 by @renovate in #4864
New Contributors
- @tKe made their first contribution in #4842
- @felixwiemuth made their first contribution in #4848
- @ej-castillo made their first contribution in #4850
- @habara-k made their first contribution in #4849
- @nakamuraraika made their first contribution in #4859
- @andrew-shewring-tr made their first contribution in #4861
Full Changelog: v6.0.0.M3...v6.0.0.M4
v6.0.0.M3
What's Changed
- Update genslist.md - fix docs for positive/negative numeric Arbs by @AlexCue987 in #4775
- dont add implicit nulls if an explicit arb is used. fixes #4723 by @Kantis in #4774
- Update TestCase.kt by @Kantis in #4776
- Added test for kotest system properties by @sksamuel in #4770
- Update .gitignore - ignore kotest.log by @AlexCue987 in #4778
- Delete kotest-runner/kotest-runner-junit5/kotest.log by @AlexCue987 in #4777
- Update extra_arbs.md - fix typo by @AlexCue987 in #4779
- Update genslist.md - fix docs for localDate by @AlexCue987 in #4790
- document Arb.localDateTime(minLocalDateTime, maxLocalDateTime) by @AlexCue987 in #4801
- Update dependency io.projectreactor.tools:blockhound to v1.0.11.RELEASE by @renovate in #4798
- add Arb.localTime(startTime, endTime) by @AlexCue987 in #4792
- Update dependency io.mockk:mockk to v1.13.17 by @renovate in #4797
- add Arb.slice (#4794) by @AlexCue987 in #4795
- add Arb.plusEdgecases by @AlexCue987 in #4803
- Fix typo in matchers.md by @lucapette in #4805
- Update data_driven_testing.md by @FyiurAmron in #4806
- make-shouldNotThrowExactlyUnit-compatible-with-assertSoftly (#4808) by @AlexCue987 in #4809
- Fix system properties for project config lookup by @sksamuel in #4823
- Add hash code matchers documentation by @LeoColman in #4819
- Additional info about future failure cause in shouldNotBeCompletedExceptionally by @Reversean in #4815
- Replace deprecated todayAt with todayIn by @metters in #4820
- Enabling tests on macOS, unless we are running CI by @Kantis in #4818
- Nullable receivers for Boolean matchers by @JordanLongstaff in #4807
- Add assertion error message by @belljun3395 in #4810
- Make extensions usage more explicit by @sksamuel in #4825
- Move test containers into top level repo by @sksamuel in #4773
- Only run test containers tests on linux in github actions by @sksamuel in #4826
- Improve documentation in TypeMatchers.kt by @LeoColman in #4824
- update kotlin to 2.1.20 by @nhajratw in #4816
- Provide spec level scope for launching coroutines by @sksamuel in #4830
- Use manual durations for team city outputs by @sksamuel in #4831
- Added disabledIf by @sksamuel in #4829
- Some launcher cleanup by @sksamuel in #4832
New Contributors
- @lucapette made their first contribution in #4805
- @FyiurAmron made their first contribution in #4806
- @metters made their first contribution in #4820
- @belljun3395 made their first contribution in #4810
- @nhajratw made their first contribution in #4816
Full Changelog: V6.0.0.M2...v6.0.0.M3
V6.0.0.M2: Move wiremock to top level (#4737)
<!-- If this PR updates documentation, please update all relevant versions of the docs, see: https://github.com/kotest/kotest/tree/master/documentation/versioned_docs The documentation at https://github.com/kotest/kotest/tree/master/documentation/docs is the documentation for the next minor or major version _TO BE RELEASED_ -->
v6.0.0.M1
What's Changed
- Build Config update & enable Configuration Cache by @aSemy in #4062
- Report config-cache errors as warnings by @aSemy in #4068
- remove
@ExperimentalCoroutinesApi
opt-in from no-longer-experimental code by @aSemy in #4070 - Update propagated coroutine annotations by @aSemy in #4071
- Refactor KMP POM rewriting by @aSemy in #4072
- update actions/upload-artifact to v4 by @aSemy in #4083
- remove
@OptIn(ExperimentalStdlibApi::class)
fromstartWith()
by @aSemy in #4082 - Apply publishing conventions to kotest-bom by @aSemy in #4073
- Tidy Range matchers by @aSemy in #4081
- Tidy kotest-common logger by @aSemy in #4080
- Update plugins used to build Kotest Gradle Plugin by @aSemy in #4079
- Disable coroutineTestScope for WasmJs by @osipxd in #4078
- Bump Kotlin to 1.9.24 by @aSemy in #4086
- Suppressing usage of deprecated Kotest functionality by @Kantis in #4087
- add Kotest icon to IDEA config by @aSemy in #4088
- Update GitHub release workflows by @aSemy in #4076
- Remove the non-existent parameter includeEmpty in KDoc of Arb.Companion.map() by @acanda in #4090
- Remove
@ExperimentalStdlibApi
annotation from testCoroutineScheduler by @osipxd in #4075 - multiplatform-plugin-gradle: Fix Gradle invocation on Windows by @OliverO2 in #4096
- Suppressing more internal deprecations by @Kantis in #4093
- Make TestCaseSourceRefTest more stable by @aSemy in #4097
- Workflow: update build reports upload by @aSemy in #4098
- Open up java.base/java.lang to use withEnvironment() with JDK17+ by @OliverO2 in #4100
- Suppress opt-in warnings for experimental KGP features by @aSemy in #4099
- Refactor retry, and retry tests by @aSemy in #4101
- Add
@Deprecated
to overrides ofPrint#print
by @aSemy in #4104 - Test discovery: Make classpath scanning fallback configurable by @OliverO2 in #4017
- Fix testing on GitHub Windows runners by @OliverO2 in #4102
- Use centralized repositories for build by @aSemy in #4110
- Remove TimeMarkCompat / MonotonicTimeSourceCompat / timeInMillis by @aSemy in #4105
- note on Gradle Settings by @bliessens in #4095
- Use test TimeSource in continually tests by @aSemy in #4109
- Fix kotest-framework-multiplatform-plugin-gradle build by @OliverO2 in #4117
- use
measureTimedValue {}
to measure operation durations in Discovery by @aSemy in #4122 - CI: Harmonize master and PR tests by @OliverO2 in #4121
- remove unnecessary inline by @aSemy in #4106
- suppress deprecation warnings in InspectingTest by @aSemy in #4126
- Fix warnings in kotest-assertions-shared by @aSemy in #4127
- suppress deprecation warnings for deprecated
io.kotest.assertions.until.*
utils by @aSemy in #4125 - Document
kotest.framework.discovery.jar.scan.disable
by @sschuberth in #4129 - Stabilize tests on slow runners by @OliverO2 in #4132
- Configure JVM test tasks with same args as main build by @OliverO2 in #4119
- Stabilize GlobalTimeoutTest and EngineTimeoutTest by @aSemy in #4124
- Enable concurrency cancellation in PR test GitHub Action by @aSemy in #4139
- Use test TimeSource in eventually tests by @aSemy in #4114
- Json path array match take3 (#74) by @AlexCue987 in #4118
- Fix flaky tests ContinuallySpec, EventuallySpec by @OliverO2 in #4142
- CI: run Gradle check on all OSes in parallel by @aSemy in #4143
- Making helper classes internal instead, so we don't accidentally miss… by @Kantis in #4140
- CI: Enable Configuration Cache re-use by @aSemy in #4146
- shouldContainJsonKey-partial-match by @AlexCue987 in #4158
- Opt in for K/N workers in test by @aSemy in #4128
- Publish Kotest KMP Gradle Plugin to Maven Central by @aSemy in #4136
- Fix typo in documentation by @G-Basak in #4168
- Suppress deprecated usage of StableIdentifiers by @aSemy in #4169
- Enable remote Gradle Build Cache by @aSemy in #4141
- Add missing annotation to actual declarations by @aSemy in #4165
- suppress deprecation warnings in MatchTest by @aSemy in #4134
- Deprecate implementations of deprecated
SpecExtension.intercept()
by @aSemy in #4166 - Use available virtual time automatically, harmonize time measurement by @OliverO2 in #4149
- Opt in for expect-actual classes by @aSemy in #4164
- commonize shouldCompleteWithin/shouldCompleteBetween/shouldTimeout by @aSemy in #4115
- test_factories.md: include is only supported at the top level of a spec by @jlous in #4150
- Update plugin com.gradle.develocity to v3.17.5 by @renovate in #4156
- Rename 'Test' to 'MultiConfigTest' by @aSemy in #4180
- Add seed to arb test, to avoid flakiness on CI by @aSemy in #4167
- Optimize Kotest framework discovery in Kotest's own tests by @aSemy in #4148
- Optimise parallel test launching test by @aSemy in #4182
- Fix Kotest Gradle Plugin publishing by @aSemy in #4184
- fix-verifier-in-containsExactlyInAnyOrder-take2 (#80) by @AlexCue987 in #4160
- add-similarity-to-contain (#53) by @AlexCue987 in #3939
- Tidy building 'Property test failed for inputs' message by @aSemy in #4185
- Adapt assertion extensions for Collections and Iterables to use bounded types by @hanszt in #3961
- Should be equal to comparing fields should support generics by @AlexCue987 in #4157
- Cleaning stacktraces later by @Kantis in #4051
- add more specific reason to
beEmptyDirectory()
failure message by @aSemy in #4186 - GHA - Cache the Kotest user dir by @aSemy in #4187
- haveElementAt-more-detail-take3 by @AlexCue987 in #4159
- Fix Gradle signing/publish task dependency by @aSemy in #4188
- fix edge case for isStable - when property and function have same name by @AlexCue987 in #4173
- eventually fixed by @mirageoasis in #4018
- Add similarity to haveKeys and haveKey (#47) by @AlexCue987 in #3930
- Optimise PBT seed files by @aSemy in #4183
- Fix contain exactly verifier by @AlexCue987 in #3977
- Move some framework only commons into engine module by @sksamuel in #4189
--continue
publishing by @aSemy in #4191- Create BuildService for collecting dependencies for kotest-bom by @aSemy in #4074
- Avoid use of test types in junit listener by @sksamuel in #3789
- Move some framework only commons into engine module part 2 by @sksamuel in #4192
- Suffix Kotest Gradle Plugin snapshot versions with
-SNAPSHOT
by @aSemy in #4194 - use Dev Publish plugin to test Kotest plugin by @aSemy in #4174
- Removed long deprecated scope names by @sksamuel in #4198
- Move more commons out to the projects that need it by @sksamuel in #4197
- Remove deprecated/relocated Arb reflection utils by @aSemy in h...