Tags

Tags give the ability to mark specific points in history as being important
  • 2.0.0

    Arrow 2, Ktor 3, Java 11, random and context cleanup
    
    ## Breaking changes
    
    ### The CoroutineContext becomes part of the test configuration
    
    Replace:
    ```kotlin
    test("Foo", yourCoroutineContext) {
        // your test
    }
    ```
    by:
    ```kotlin
    test("Foo", Context(yourCoroutineContext)) {
        // your test
    }
    ```
    
    ### Random generation
    
    All random generation methods have been moved from package `opensavvy.prepared.suite` to `opensavvy.prepared.suite.random`.
    Users will need to update all imports to these functions, but they are otherwise unchanged (#48, !113).
    
    ## Other changes
    
    ### Runners
    
    - First prototype of the Kotlin Test Initiative runner (!114)
    
    ### Compatibility modules
    
    - Supports Ktor 3 (!109)
    
    ### Documentation
    
    - Fixed documentation of the Truthish library (!111)
    - The documentation website now contains the API reference (!119)
    - The documentation website now contains the News section
    
    ### Dependencies
    
    - Downgraded minimal JDK requirement from 21 to 11 (!123, thanks Dave A.!)
    - Kotlin 2.1.10
    - KotlinX.Coroutines 1.10.1
    - Ktor 3.0.3
    - Arrow 2.0.0
    
  • 2.0.0-rc.1

    First release candidate for Prepared 2.0
    
    ### Deployment
    
    - Support Java 11 in all modules (previously Java 21—thanks Dave A.!) (!123)
    
    ### Documentation
    
    - Added the project changelog to the documentation website (73ad1089)
    
    ### Dependencies
    
    - Kotlin 2.1.10 (143f6dd3)
    - KotlinX.Coroutines 1.10.1 (79f5e763, !122)
    - Ktor 3.0.3 (c1f2cd02, !122)
    - Arrow 2.0.0 (c1b3ebb6, !122)
    
  • 2.0.0-alpha.2

    Test context configuration, documentation improvements
    
    ### Breaking changes
    
    Replace:
    ```kotlin
    test("Foo", yourCoroutineContext) {
        // your test
    }
    ```
    by
    ```kotlin
    test("Foo", Context(yourCoroutineContext)) {
        // your test
    }
    ```
    
    ### Suite
    
    - Removed the 'context' parameter to 'test' and added the Context configuration (#75, !115)
    
    ### Documentation
    
    - Removed the empty 'Best practices' section (!118)
    - The documentation website now contains the reference (!119)
    
    ### Dependencies
    
    - Kotlin 2.1.0
    
  • 2.0.0-alpha.1

    Ktor 3, random in its own package
    
    ### Breaking
    
    - All random management methods have been moved to another package. Other than that, they are unchanged (#48, !113)
    - Ktor 3 support
    
    ### Kotlin Test Initiative
    
    - First prototype of the KTI runner (!114)
    
    ### Documentation
    
    - Fixed documentation of the Truthish library (!111)
    
    ### Dependencies
    
    - Ktor 3.0.1 (!109)
    - KotlinX.Coroutines 1.9.0 (!109)
    
  • 1.5.2

    Dependency upgrades
    
    ### Dependencies
    
    - Kotlin 2.0.20
    - KotlinX.Datetime 0.6.1
    - Parameterize 0.3.3
    - Gradle TestKit 8.10.1
    
  • 1.5.1

    Minor documentation improvements
    
    ### Documentation website
    
    - Fix typos (!103)
    - Add missing links (!103)
    
  • 1.5.0

    Support for Native tier 1 and 2 platforms, enhanced documentation
    
    All tier 1 and 2 Kotlin/Native platforms are now supported for most modules, as well as mingwX64 (tier 3) - (!101).
    
    ### Compat Arrow
    
    - Added a documentation page to the website (7bdf92e5, #47, !102)
    - Simplify the tracing error message on KJS (a398b5fe, !102)
    
    ### Compat filesystem
    
    - Added a documentation page to the website (b6f2beb9, #70, !102)
    
    ### Compat Ktor
    
    - Added a documentation page to the website (7e65ba09, #47, !102)
    - Fixed incoherent sentences in module header (e2dc95d7, !102)
    
    ### Compat Gradle
    
    - Added a documentation page to the website (8cd8283d, #47, !102)
    
  • 1.5.0-rc.1

    Support for Native tier 1 and 2 platforms, enhanced documentation
    
    All tier 1 and 2 Kotlin/Native platforms are now supported for most modules, as well as mingwX64 (tier 3) - (!101).
    
    ### Compat Arrow
    
    - Added a documentation page to the website (7bdf92e5, #47, !102)
    - Simplify the tracing error message on KJS (a398b5fe, !102)
    
    ### Compat filesystem
    
    - Added a documentation page to the website (b6f2beb9, #70, !102)
    
    ### Compat Ktor
    
    - Added a documentation page to the website (7e65ba09, #47, !102)
    - Fixed incoherent sentences in module header (e2dc95d7, !102)
    
    ### Compat Gradle
    
    - Added a documentation page to the website (8cd8283d, #47, !102)
    
  • 1.4.1

    Parameterized tests documentation
    
    ### Parameterize compat
    
    - Parameterize 0.3.2 (!99)
    - Add a website page on parameterized testing (!99)
    
    ### Documentation
    
    - Reorganize the features page (857cde84, !99)
    
  • 1.4.0

    Customize the way prepared and shared values are logged
    
    ### Suite
    
    - Allow providing a custom display to prepared and shared values (#67, !96)
    
    ### Documentation
    
    - Clarify that time control also works for dates (#71, !95)
    
  • 1.3.3

    Experimental resource loading helpers, temporary files documentation
    
    ### Suite
    
    - Simplify the documentation on why SharedProvider is not recommended (!87)
    
    ### Filesystems utilities
    
    - Experimental resource loading helpers (#66, #68, !64)
    - Added a website page on temporary files (#47, !98)
    
    ### Documentation
    
    - Fix broken sentence in the Shared Values page (#65, !97)
    - Fix broken link in the getting started page (4c62b66d, !98)
    - Fix broken link in the features overview page (5f5fccf7, !98)
    - Rewrote the features overview page (ddf30247, !98)
    
  • 1.3.2

    Documentation improvements related to time management, future-proofing of delay-skipping
    
    ### Suite
    
    - Notify that advanceTimeBy, runCurrent and advanceTimeUntilIdle may be removed in the future (#51, 7d123ad6, !91)
    - Improve the documentation of time.nowMillis (3844abc0, !91)
    - Improve the documentation of time.scheduler (684fdc1c, !91)
    
    ### Java.time compatibility
    
    - time.set now has the same behavior as time.delayUntil (#51, f12a05c7, !91)
    
    ### KotlinX.Datetime compatibility
    
    - time.set now has the same behavior as time.delayUntil (#51, e5c399d3, !91)
    
    ### Documentation
    
    - Add a documentation page on time control (49df6931, !91)
    - Add a documentation page on the Suite DSL (60511f68, !91)
    - GDPR-related improvements for the documentation website (#29, !32)
    - Clarifications related to Truthish (!90)
    - Rename the Features Overview page (b5aad64c, !91)
    - Readability improvements for async operations (13740aa3, !91)
    
  • 1.3.1

    Kotest fixes and assertion library documentation improvements
    
    ### Kotest runner
    
    - Support Focus and Bang (#62, !88)
    - Stop crashing on KJS (#59, !89)
    - Document which Kotest features are configured by Prepared (d87da612, !88)
    
    ### Documentation
    
    - Remove the warning about Strikt being inactive (#68, f5bf7532, !86)
    - Mention the Truthish assertion library (#61, 8df3e8f2, !86)
    - Mention Power Asser (41961dff, !86)
    - Link the documentation website in the main README (!87)
    
    ### Dependency upgrades
    
    - Kotest 5.9.1
    
  • 1.3.0

    WASM/JS support
    
    ### Suite
    
    - Added WASM/JS support (!79)
    
    ### Kotest runner
    
    - Added WASM/JS support (!79)
    - Document the requirement to use the Kotest plugin (#49, !80)
    
    ### Kotlinx-datetime
    
    - Added WASM/JS support (!79)
    
  • 1.2.2

    Randomness control documentation improvements
    
    ### Suite
    
    - Improve the informational message about randomness control and setting the seed (a68792c1, !77)
    
    ### Documentation
    
    - Wrote a page about randomness control (cd3f41a2, !77)
    - Mention Power Assert on the main page of the website (f1a0a46f, !77)
    - Fix the link to the Runners website page (6a623774, !77)
    
  • 1.2.1

    Foreground and background tasks usability and documentation improvements
    
    ### Suite
    
    - Foreground and background tasks now have a custom CoroutineName to ease debugging (0bcd76e2, !76)
    
    ### Kotest runner
    
    - Prepared doesn't set the deprecated testCoroutineDispatcher parameter anymore (a8777179, !76)
    
    ### Documentation
    
    - Improved documentation of foreground and background tasks
    - Added a website page on foreground and background tasks
    
  • 1.2.0

    Randomness fixes, documentation website, Kotlin 2.0.0
    
    ### Suite
    
    - Fixed `randomBoolean()` which returned an `Int` (1a324a04, !74)
    - Fixed all `randomXXX()` functions, which ignored the configured seed (bd9348d0, !74)
    - Fixed the random seed being displayed as 'null' in the standard output even when set (c1bc163d, !74)
    - Fixed low-risk race condition in which prepared values where instantiated more than once (21004559, !74)
    
    ### Kotest runner
    
    - Add a dependency on kotest-assertions (!70)
    
    ### Documentation
    
    - Create the Prepared website (#47, !72)
    
    ### Dependencies
    
    - Kotlin 2.0.0 (55a01666, !70)
    - Kotest 5.9.0 (cf54b569, !73)
    - Arrow 1.2.4 (d7ef0952, !73)
    - KotlinX.Coroutines 1.8.1 (3eeec971, !73)
    - Ktor 2.3.11 (de087573, !73)
    
  • 1.0.1

    Arrow tracing improvements, documentation fixes
    
    ### Arrow compatibility
    
    - Hide the scary warning about catching raise.Traced (!61)
    
    ### Documentation
    
    - Update all links after the move to OpenSavvy Playground (e58175af, !62)
    
  • 1.0.0

    Stabilization
    
    ### Suite
    
    - More concise Shared.toString() and Prepared.toString() (a524c5ac, !47)
    
    ### Parameterize compatibility
    
    - Parameterize 0.3.0 (#30, !47)
    - Easily declared Prepared instances from parameterize variables (#30, !47)
    
    ### Arrow compatibility
    
    - Arrow 1.2.3 (d06b80ac, !18)
    - Enable the experimental Arrow tracing for failOnRaise (b7bcccde, #16, !18)
    
    ### Gradle compatibility
    
    - Stop injecting Kotlin and Groovy in inline build scripts (4b1be0fa, !59)
    - Automatically create project directories when build scripts are created (70a6c855, !43)
    
    ### Kotest runner
    
    - Kotest 5.8.1 (72a9b8fe, !37)
    - Reuse Kotest's coroutine scope to avoid JS tests never finishing (#12, !37)
    
    Warning: at this point, it is unclear whether JS tests run or not. Please visit #44 for more information.
    
  • 1.0.0-rc.2

    Dependency upgrades
    
    ### Suite
    
    - KotlinX.Coroutines 1.8.0
    - KotlinX.Datetime 0.5.0
    
    ### Kotest runner
    
    - Kotest 5.8.0
    
    ### Ktor compatibility
    
    - Ktor 2.3.8
    
    ### Gradle compatibility
    
    - Gradle 8.6