Skip to content

Releases: copper-leaf/ballast

2.0.1

06 Sep 22:08
Compare
Choose a tag to compare
  • Updates to Kotlin 1.7.10
  • Updates Ktor to 2.1.0
  • Updates other dependencies to latest versions
  • Removes Debugger UI from IntelliJ plugin, so the that plugin can be republished without the Compose dependency, allowing the templating feature in the latest IntelliJ versions, at least

New/Updated Features

  • Adds BootstrapInterceptor for sending an Input when the ViewModel is created, instead of making the UI send the initial Input
  • InputStrategy is now typed with the same type paramters as everything else in the DefaultViewModelConfiguration
  • Some configuration DSL methods are deprecated:
    • builder.forViewModel() should be replaced with builder.withViewModel().build()
    • BallastRepository now takes BallastViewModelConfiguration in its primary constructor instead of BallastViewModelConfiguration.Builder. Use builder.withRepository().build() instead of the old constructor.
  • Adds a configuration callback to BallastSavedStateInterceptor to allow user-specified buffering/filtering on the States as they are sent to be saved

2.0.0

02 Sep 20:35
Compare
Choose a tag to compare
  • Updates to Kotlin 1.7.10
  • Updates Ktor to 2.1.0
  • Updates other dependencies to latest versions
  • Removes Debugger UI from IntelliJ plugin, so the that plugin can be republished without the Compose dependency, allowing the templating feature in the latest IntelliJ versions, at least

New/Updated Features

  • Adds BootstrapInterceptor for sending an Input when the ViewModel is created, instead of making the UI send the initial Input
  • InputStrategy is now typed with the same type paramters as everything else in the DefaultViewModelConfiguration
  • Some configuration DSL methods are deprecated:
    • builder.forViewModel() should be replaced with builder.withViewModel().build()
    • BallastRepository now takes BallastViewModelConfiguration in its primary constructor instead of BallastViewModelConfiguration.Builder. Use builder.withRepository().build() instead of the old constructor.
  • Adds a configuration callback to BallastSavedStateInterceptor to allow user-specified buffering/filtering on the States as they are sent to be saved

1.3.0

16 Aug 22:00
Compare
Choose a tag to compare
  • Update IntelliJ Plugin to support 2022.1.4. It still cannot support 2022.2 or higher because it's blocked by the Compose plugin that it depends on, which does not support 2022.2 yet.

1.2.1

03 Jun 18:20
Compare
Choose a tag to compare
  • Don't check for cleared in trySend (fixes #25)
  • Improved KDoc documentation for all classes/functions in core module

1.2.0

18 May 18:26
Compare
Choose a tag to compare
  • Improvements to AndroidViewModel
    • Adds attachEventHandler() override which runs on a CoroutineScope rather than a Lifecycle, which is better-suited for Compose EventHandlers
    • Adds attachEventHandlerOnLifecycle() to be more explicit about when the eventHandler is running on a Lifecycle
    • Original attachEventHandler() is now marked as deprecated, and should be replaced with attachEventHandlerOnLifecycle()
    • Adds observeStatesOnLifecycle() method for more easily collecting states in XML-based Views

1.1.0

29 Apr 20:46
Compare
Choose a tag to compare
  • Many improvements to the Intellij plugin
    • Allow Debugger to work with all 1.x.x client versions
    • The Debugger's port can now be changed in the Preferences dialog
    • File templates are now provided to quickly generate components from the Right-click > New menu
    • The values and errors show for inputs, events, states, and sideJobs in the debugger are now more nicely formatted

1.0.0

21 Apr 14:39
Compare
Choose a tag to compare
  • Ballast is now considered stable with its first 1.0.0 release!
  • Adds Repository fetchWithCache function to observe a Flow rather than emit a one-shot data source
  • Adopt Flow/Coroutine adapters from KaMPKit instead of using home-grown ones

0.15.1

08 Apr 19:18
Compare
Choose a tag to compare
  • Fix bug in IntelliJ plugin where settings were not being saved
  • Removes "sample" from IntelliJ plugin, as that example and several more are available from the documentation site

0.15.0

06 Apr 19:53
Compare
Choose a tag to compare
  • Fix several bugs in Debugger UI
    • Kotlin coroutines versions were in conflict and crashing the debugger
    • Timestamps not correctly reported once ViewModel was refreshed
    • Connection Ballast Version not reported correctly once refreshed
  • Adds new ballast-saved-state module
  • Adds ballast-test API for isolating a single input
  • Reverts Coroutines version back to 1.5.2. To use Ballast on iOS with the new memory model, manually include the 1.6.0 dependency

0.14.0

28 Mar 20:43
Compare
Choose a tag to compare
  • Attempts to get iOS support working and documented, with M1 Simulator support