Skip to content

Changelog - Amalia

Amalia 0.9.0

2020-06-10

Library changes:
  • Removed coroutine scope package, it's now integrated in the core package.
  • Added ephemeral state support, can be used to push non-retained states.

Package removal

amalia-coroutine-scopes gradle module is no longer available.

mainScope and other extension methods are still available as extension functions on BasePresenter


Amalia 0.8.0

2020-05-30

Library changes:
  • Added sticky header support to recycler views. See docs under RecyclerView Delegate for more info.

Amalia 0.8.0

2020-06-10

Library changes:
  • Added Sticky header support

Amalia 0.7.2

2020-05-30

Library

Crash with Navigation Fragment Components

Caused by: java.lang.ClassNotFoundException: Didn't find class androidx.lifecycle.AbstractSavedStateVMFactory

This occured when including navigation fragment components. The problem is due to multiple versions of the savedState library. At some point the naming convention changed. To fix we update to saved state 2.2.0+ where the class is consistently AbstractSavedStateViewModelFactory

Coroutine scope package change

Changed package of scopes to com.vicidroid.amalia.coroutine_scopes

This fixes a clash with viewmodel libraries that contain the same class name CloseableCoroutineScope

Dependencies

Dependency updates

Added androidx.fragment:fragment:1.2.4 (ensures Fragment implements interface SavedStateRegistryOwner)

Updated: androidx.core:core-ktx:1.3.0

Updated: androidx.lifecycle:lifecycle-viewmodel-savedstate:2.2.0

Updated: androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0

Updated: androidx.lifecycle:lifecycle-livedata-ktx:2.2.0


Amalia 0.7.1

2020-05-29

Library changes:
  • Added Main.immediate coroutine scope extension to presenters
Dependency updates:

Update: Gradle wrapper to gradle-6.5-milestone-1-all.zip

Update: Gradle plugin to 4.1.0-alpha10


Amalia 0.7.0

2020-05-28

Library changes:
  • Replace JavaPresenterProvider with variant that requires casting and update documentation for possible issues
  • Remove @Parcelable annotation on ListViewState - can cause crash depending on item passed in

Amalia 0.6.9

2020-04-29

Library changes:
  • Rename RecyclerViewEvent to AmaliaCommonEvent

Amalia 0.6.8

2020-04-29

Library changes:

Amalia 0.6.7

2020-04-09

Library changes:
  • Remove state and event type signature from ListViewDelegate

Amalia 0.6.1

2020-04-08

Library changes:
  • Fixed crash when leveraging PresenterProvider for multiple presenters from Java
  • Ensure presenter tells view delegate it has has been bound via onBindViewDelegate()
  • Reduced restriction on ViewState for RecyclerViewDelegate
  • Allow tracking of recycler view items via event propagation
  • Remove type signatures from presenters and view delegates to allow for better generic reuse
Dependency updates:
  • See commit for details:
    • gradle plugin, gradle wrapper
    • junit, kotlin, lifecycle
    • appcompat, corektx, constraintlayout, recyclerview, savedstate
    • mockito, roboelectric, coroutines
    • material, retrofit, moshi, glide, leak canary

Amalia 0.4.1

2019-10-18

Library changes:
  • ViewDelegates can now intercept view events to easily apply lateinit fields residing in some BaseEvent

Amalia 0.4.0

2019-10-02

New module:
  • RecyclerView support
    • Can support numerous presenters that rely on different recycler items
Library changes:
  • Add feature logging capability for presenters and recyclerviews, see Logging.kt
  • Allow child presenter provider to leverage hooks for applying common fields to base presenters
  • View delegates now post onViewAttached() on next event loop
  • bindViewLifecycleOwner() has been renamed to regular bind(). There are now 3 bind methods to choose from, check documentation for more info.
  • presenterLifeCycleOwner field has been removed
  • onPresenterDestroyed() was previously not invoked on child presenters
  • onCleared has been made final, rely on #onPresenterDestroyed instead
Dependency updates:
  • Updated Coroutine library to 1.3.0 for scope support
  • Updated Kotlin to 1.3.50
  • Updated Build tools to 29.0.2

Amalia 0.3.7

2019-08-14

Library changes:
  • Fix dependency issues with samples

Amalia 0.3.6

2019-07-06

Library changes:
  • Name space for library changed after adding second gradle module, docs reflect proper names.

Amalia 0.3.5

2019-07-06

Library changes:
  • Ensure coroutine scopes is present as separate android artifact

Amalia 0.3.4

2019-06-26

Library changes:

Amalia 0.3.3

2019-06-15

Library changes:

Amalia 0.3.2

2019-06-11

Library changes:

Amalia 0.3.1

2019-06-10

Library changes:

Amalia 0.3.0

2019-06-09

Note: This version will rely on android x saved state library to be included in your app.

Library changes:
Dependency updates:
  • com.android.tools.build:gradle:3.5.0-beta05
  • androidx.constraintlayout:constraintlayout:2.0.0-beta2
  • androidx.core:core-ktx:1.2.0-alpha02'
  • androidx.test.espresso:espresso-core:3.3.0-alpha01
  • androidx.test🏃1.3.0-alpha01

Amalia 0.2.0

2019-06-04