Releases: mirego/trikot
Releases · mirego/trikot
5.4.0
What's Changed
- Fix memory alloc bug when using trikot-graphql by @sdetilly in #215
- Update Kingfisher to 7.10.1 by @alarochelle in #214
- Datasource: Add typealias StateData by @hugolefrancois in #216
- [DataSource.Flow] ExpiringExecutableFlowDataSource open by @npresseault in #217
- Fix VMDTextField parameter not used in the implementation by @Vincent-Ribou in #218
- Update ReachabilitySwift to 5.2 by @alarochelle in #219
- change init of Strings dictionary in iOS in TrikotHttpResponse by @ChristopheTremblay in #220
- FileSystemDataSource ++ by @hugolefrancois in #221
- [Android] Allow the VMDTextStyleProvider to use Composable functions by @amartellino in #222
- Update to Kotlin 2.0.0 by @npresseault in #223
New Contributors
- @Vincent-Ribou made their first contribution in #218
Full Changelog: 5.3.0...5.4.0
5.3.0
What's Changed
- Update various dependencies to latest by @Boubalou in #198
- Prevent color name clash between swiftui and trikot.viewmodel by @marclefrancois in #199 and #200
- Fix crashing previews in xcode 15 by @marclefrancois in #201
- Compose android tv bindings by @js-bonin in #202
- Add custom prompt support on VMDTextField by @dominic-plouffe in #203
- Compose Material Design 3 buttons views by @mathieularue in #204
- Add generic open datasources @sdetilly in #205
- Bump coil to 2.5.0 by @npresseault in #207
- [Kword] Introduce new kword-remote-update module and add I18N debug mode by @ma-meza in #208
- [Kword] Add supervisorScope to prevent cancellation of parallel http requests by @ma-meza in #209
- Fix name clash when using Kotlin 1.9.21 by @etienneasselin in #211
- Set Compose modifier as first optional parameter by @nicolashaan in #210
- Remove deprecated Foundation.Date in internal modules by @MathieuLegault1 in #212
- Fix memory leak caused by long lived CancellableManagerProvider by @marclefrancois in #213
New Contributors
- @ma-meza made their first contribution in #208
- @nicolashaan made their first contribution in #210
Full Changelog: 5.2.0...5.3.0
5.2.0
What's Changed
- Implement Kotlin Binary Compatibility Validator by @Toumouz in #190
- [Kword] Fix ios sample after kotlinx-couroutines signature change by @npresseault in #194
- Fix CD/Release workflow by @npresseault in #195
- [VMD] Add contentDescription to image buttons by @npresseault in #193
- [VMD-Flow] VMDHtmlTextViewModel / VMDHtmlText by @npresseault in #196
- Compose material 3 bindings by @js-bonin in #197
New Contributors
Full Changelog: 5.1.0...5.2.0
v5.1.0
v5.0.0
What's Changed
- iOS: Make
VMDForEach
conform toDynamicViewContent
by @laurentboileau in #169 - [VMD-Flow] Test identifiers by @npresseault in #170
- [VMD-Flow Android] Add toggleable to VMDCheckbox and VMDSwitch by @npresseault in #171
- Bind VMDPickerViewModel to Picker swiftUI by @etienneasselin in #172
- [Kword-plugin] Update kotlin poet to latest + fix code generation by @npresseault in #175
- Add link to the compiler documentation by @marclefrancois in #166
- [trikot-viewmodels-declarative-flow] Fix crash in FlowExtensions wrap method by @frobert11 in #178
- Dispatch Android Lifecycle addObserver and removeObserver on main thread by @alarochelle in #179
- Build files rework + add targets by @npresseault in #177
- [ViewModels] Fix binary compatibility with viewmodels by @npresseault in #180
- [streams-interop] Bump kotlinx.coroutines to 1.7.3 by @npresseault in #181
- VMDFlow declaration change and optional values handling on iOS by @laurentboileau in #182
- Bump deps: Kotlin 1.9.10, Gradle 8, Java 17, Compose 1.5 by @npresseault in #183
- [VMD] VMDButton button role on Android by @npresseault in #184
- VMDViewModel Flow: Fix Swift isHidden binding by @hugolefrancois in #185
- Replace Introspect for SwiftUIIntrospect by @etienneasselin in #186
- [iOS VMD Flow] Change how we handle image error by @hugolefrancois in #187
New Contributors
- @marclefrancois made their first contribution in #166
- @frobert11 made their first contribution in #178
Full Changelog: 4.5.0...5.0.0
v4.4.0
What's Changed
- [VMD] Fix image sampling on android by @npresseault in #151
- WIP: Rich Text Support to VMDTextViewModel by @laurentboileau in #149
- [VMD] Fix binary compatiblity with Text Component Factory by @npresseault in #154
- [VMD] Bind VMDImage with coil AsyncImage when complex placeholder is not required by @npresseault in #155
- Trikot VMD iOS: Update Kingfisher required version to 7.6.2 by @laurentboileau in #156
- [VMD-Compose] Fixed observe of a single field of a ViewModel without specifying an initial value explicitly. by @gbourassa in #158
- [VMD-Compiler] When all fields of a viewmodel are annotated with @published, the generated base class won't be abstract by @gbourassa in #157
- Lowering Android min SDK to 21 by @gbourassa in #159
- [VMD] Fix observeAsState for instance properties by @npresseault in #161
- Deprecate com.mirego.trikot.foundation.date in favor of kotlinx-datetime by @thermech in #162
- Rename ImageResource to TrikotImageResource by @CharlesMcD in #163
- Fix Android visual transformation offset mapping by @smatte in #164
- [TrikotHttp] cachePolicy and followRedirects values were lost in HttpRequestPublisher by @hugolefrancois in #165
- Bump node version by @npresseault in #167
v4.3.0
Updates
- Make ContentDescription nullable on android by @sdetilly in #137
- [VMD-Flow] Compose: added optional support for XML Drawables and 9-patch by @gbourassa in #134
- Disable sample modules via property disable_samples by @npresseault in #138
- Vectorial SwiftUI images can now be scaled by @hugolefrancois in #139
- iOS: Add VMDForEach and externalActionHandler on VMDButton by @hugolefrancois in #140
- Specify content description in common by @sdetilly in #141
- [VMD-swift] Prefixed Animation usage to avoid name clash by @gbourassa in #143
- Fix SwiftUI VMDTextField initial text by @dominic-plouffe in #142
- Fix SharedProcessor interop with Flow by @EtienneStPierre in #144
- Apply the text transofrm also in the initial value by @hugolefrancois in #145
- Call the right super method in viewDidDisappear by @hugolefrancois in #146
- Update to kotlin 1.8.10 and remove support for old memory model by @npresseault in #147
- Compose update + add missing component parameters by @npresseault in #148
v4.1.0
v4.0.0
Breaking Changes
- iOS/tvOS minimum deployment target is now
12.0
- [datasources] Moved Trikot.Datasources to Trikot.Datasources.streams
To migrate:- Update
com.mirego.trikot:datasources:$trikot_version
forcom.mirego.trikot:datasources-streams:$trikot_version
- Add
export("com.mirego.trikot:datasources-core:$trikot_version")
- Update
- [datasources-flow] New implementation that supports flows and coroutines
- [VMD] Removed Modifier.fillMaxWidth in VMDLabeledComponent
- UI using
VMDCheckbox
andVMDSwitch
should add fillMaxWidth to the modifier
- UI using
- [VMD-flow] Removed Modifier.fillMaxWidth in VMDLabeledComponent
- UI using
VMDCheckbox
andVMDSwitch
should add fillMaxWidth to the modifier
- UI using
- [viewmodels] UIView extensions properties are now prefixed with "trikot" on iOS and tvOS
UIButton.buttonViewModel
is nowtrikotButtonViewModel
UIImage.imageViewModel
is nowtrikotImageViewModel
UILabel.labelViewModel
is nowtrikotLabelViewModel
UIPicker.pickerViewModel
is nowtrikotPickerViewModel
UISlider.sliderViewModel
is nowtrikotSliderViewModel
UISwitch.toggleSwitchViewModel
is nowtrikotToggleSwitchViewModel
UITextField.inputTextViewModel
is nowtrikotInputTextViewModel
UITextView.labelViewModel
is nowtrikotLabelViewModel
UIView.viewModel
is nowtrikotViewModel
UIView.trikotViewModel()
is nowgetTrikotViewModel()
Updates
- [VMD/VMD-flow] Add a DSL in order to ease view model creation
- [VMD/VMD-flow] Snackbar component
- [VMD/VMD-flow] Add Picker component
- [VMD/VMD-flow] Add callback to RemoteImage in VMDImage to know when the resource is loaded on Android
- [VMD-flow] Provide a BasicTextField binding for android
- [VMD-flow] Add support for use of FlowI18N in VMDComponents factory
- [VMD-flow] Backport and fix some functionalities
[VMD-flow] Improved handling of lifecycle on both android and iOS - [VMD-compiler] New Gradle plugin to generate declarative Viewmodels boilerplate code
- [analytics] Add distinctAppId to the AnalyticsService
- [datasources] Improvement to BaseHotDataSource
- [datasources] Re-implement with flows and coroutines
- [datasources-flow] Fix pending state while refreshing
- [kword] Add support for dynamic framework resource lookup fallback
Fixes
- [VMD] Fix Jetpack Compose progress views configuration propagation
- [VMD/VMD-flow] Prevent crashing on too large bitmap in VMDImage on Android
- [VMD-flow] Fix ButtonViewModel setAction staying subscribed
- [VMD-flow] willChange and didChange need to be synchronous to work with the VMDAnimationContext.animationStack
- [viewmodels] Add missing transformation on Android drawable
- [bluetooth] Update Bluetooth permission requirements for Android depending on OS version
- [bluetooth] Make toList conversion thread safe by cloning map before converting its values to list
- [datasources-flow] Change delete/clear cache cancellation behavior