v0.27.0
BREAKING CHANGES
- PerfEvents:
- Remove
FrameworkLogEvents. EVENT_CREATE_LAYOUT
,FrameworkLogEvents. EVENT_CSS_LAYOUT
, andFrameworkLogEvents. EVENT_COLLECT_RESULTS
: these are replaced by the sub-spans"start_create_layout"
/"end_create_layout"
,"start_measure"
/"end_measure"
, and"start_collect_results"
/"end_collect_results"
under the existing top-levelEVENT_CALCULATE_LAYOUT_STATE
event. ThePerfEvent#markerPoint
API can be used to log these sub-spans (b859605) - Remove
FrameworkLogEvents.PREPARE_MOUNT
without replacement: this didn't provide much value (4917370) - Remove
FrameworkLogEvents.DRAW
without replacement: this was not free to maintain and didn't provide much value (9e548cb)
- Remove
- Default Range Ratio: The default range ratio for Sections/
RecyclerBinder
is changed from 4 screens worth of content in either direction to 2. This should improve resource usage with minimal effects on scroll performance. (9b4fe95) ComponentsSystrace.provide
:ComponentsSystrace
now assumes an implementation will be provided before any other litho operations occur (457a20f)
Improvements
ComponentsLogger
implementations can now return null for event types they don't care about (4075eb7)- Add
RecyclerCollectionEventsController#requestScrollBy
(0146857) - Preliminary Robolectric v4 support (4c2f657, etc.)
- More efficient code generation for state updates in Components and Sections (8c5c7e3, etc.)
Bugfixes
- Remove usage of API 19+
Objects
class in cached value API (aabb24a) - Unset Components scope when creating a new
ComponentContext
inComponentTree
(05f11a7) - Fix perf logging for dirty mounts (3ad8bfb)
- Fix crash when
@OnCalculateCachedValue
takes no args (2a0f524) - Reduce number of systrace markers in
collectResults
: these were skewing they perceived size ofcollectResults
in production and weren't actionable (3107467)
See all changes here: v0.26.0...v0.27.0