Litho (By Facebook) v0.32.0 Release Notes

  • 2019-11-15

    • Breaking: Make ctors of Component/ComponentLifecycle that take an explicit type id package private.
    • Breaking: Add categoryKey param for ComponentsReporter.emitMessage() API to distribute errors into different buckets.
    • Breaking: Remove ComponentsLogger.emitMessage() API as it was fully replaced by ComponentsReporter.emitMessage().
    • Breaking: Remove YogaNode parameter from YogaLogger.log().
    • Breaking: Remove error reporting from ComponentsLogger.
    • Breaking: Limit scope of Component/ComponentLifecycle constructors that take explicit type param.
    • New: Add requestSmoothScrollBy() and requestScrollToPositionWithSnap() APIs for RecyclerCollectionEventsController.
    • New: Add ability to provide custom ComponentsLogger per ComponentRenderInfo.
    • New: Add new counters (calculateLayout, section state update, section changeset calculation) to LithoStats global counter.
    • New: Allow custom StaggeredGridLayoutInfo when using StaggeredGridRecyclerConfiguration.
    • New: Add support for more textAlignment values for TextSpec.
    • New: Add ComponentWarmer API to allow calculating layout ahead of time.
    • New: Add ThreadPoolDynamicPriorityLayoutHandler to enable changing priority of threads calculating layouts.
    • New: Add varArgs to the generated Component.
    • New: Add snap support for GridRecyclerConfiguration.
    • New: Add support for custom fling offset for StartSnapHelper.
    • New: Allow disabling top or bottom shadow in TransparencyEnabledCardSpec.
    • New: Add Handle API for Litho Tooltips via LithoTooltipController.showTooltipOnHandle() that replaces previous way of anchoring tooltip with concatenated keys.
    • New: Track component hierarchy using DebugHierarchy after mount time.
    • Fix: Add generics support to @OnCalculateCachedValue methods.
    • Fix: Move setting ItemAnimator from onBind/onUnbind to onMount/onUnmount in RecyclerSpec.
    • Fix: Stop and clean running transitions that do not exist and not declared in the new layout.
    • Fix: Fix concurrent modification on finishing undeclared transitions.
    • Fix: Allow TreeProps to be used in @OnCreateInitialState of Sections.
    • Fix: Define default color for spannable link in TextSpec.
    • Fix: Postpone ComponentTree.mountComponent() for reentrant mounts, then mount new LayoutState afterwards.
    • Fix: Enable automatic RTL support in sample apps.

    👀 For more details, see the full diff.