Packages

framer-motion

14.7.1 · 27 Oct 2026MIT45.3M / weekRepositoryHomepagenpmAtom feed

Upgrading framer-motion from 12.7.0 to 12.43.0

135 releases in betweenevery note read

Other targets from 12.7.0Latest14.7.1

Before you upgrade

Tick each one off as you go
  • breaking12.23.19
  • breaking12.8.0
  • deprecated12.22.0

Release by release

  1. 12.43.0

    28 Jul 20262 new · 2 fixes
    • new

      Hardware acceleration for backgroundColor in supported browsers.

    • new

      Hardware acceleration for SVG elements.

    • fixed

      AnimatePresence: Exiting children no longer interleave with entering children, which could reorder and remount children present in both renders.

    • fixed

      motion: Throw error when passing a custom motion component an incorrect ref type.

  2. 12.42.2

    30 Jun 20261 fix
    • fixed

      animateView: Cropped group layers now animate border-radius from the old to new radius.

  3. 12.42.1

    30 Jun 20261 fix
    • fixed

      animateView: Old layer fade out now cancelled when defining .new().

  4. 12.42.0

    25 Jun 20262 fixes
    • fixed

      animateView: Auto-crop is now aspect-ratio aware, disabling crops for matching aspect-ratios.

    • fixed

      animateView: Disabled automatic border-radius animation.

  5. 12.41.0

    23 Jun 20266 new · 4 fixes
    • new

      animateView: Moves from Motion+ Early Access and alpha to main library.

    • new

      animateView: .add() resolves a CSS selector or Element to automatically generate, apply and remove view-transition-name.

    • new

      animateView: .new() and .old() configures values to animate on new and old layers.

    • new

      animateView: .layout() can set a custom transition on the size/position animation of the currently selected elements.

  6. 12.40.0

    21 May 20262 new
    • new

      path option to transition.

    • new

      arc() for motion along an arc.

  7. 12.39.0

    18 May 20261 new · 11 fixes
    • new

      Support for repeatType and repeatDelay in animation sequences.

    • fixed

      Variants: Re-run keyframe animations when switching between variant labels even when they share identical keyframe arrays.

    • fixed

      Drag: Preserve in-flight motion value animations across React 19 reorder unmount/remount so dragSnapToOrigin no longer leaves the drag transform stranded after a layout swap.

    • fixed

      LazyMotion: Share React contexts between the framer-motion and framer-motion/m (and therefore motion/react and motion/react-m) CJS bundles so that <m.div> from the /m subpath picks up features loaded by <LazyMotion> from the main entry point.

  8. 12.38.0

    17 Mar 20261 new · 3 fixes
    • new

      Added layoutAnchor prop to configure custom anchor point for resolving relative projection boxes.

    • fixed

      Reorder: Fix axis switching after window resize.

    • fixed

      Reorder: Fix with virtualised lists.

    • fixed

      AnimatePresence: Ensure children are removed when exit animation matches current values.

16 other lines we could not sort, mostly version bumps
  • animateView: Layers are automatically grouped to match their DOM-hierarchy. New .group(false) method opts-out.

    12.42.0
  • animateView: .enter() and .exit() now refer specifically to new and old layers where there are no matching old or new layers.

    12.41.0
  • animateView: Interrupted transition setups now return resolved animation rather than throwing.

    12.41.0
  • Stopped tracking yarn cache in the repo.

    12.23.13
  • Removing redundant renderRequest MotionValue lifecycle.

    12.23.9
  • Refactored motion component creation to remove indirection.

    12.23.6
  • useScroll: Re-attempt to initialise scroll animation within a useEffect if refs weren't hydrated during the useLayoutEffect. Throw if refs are still not hydrated during the useEffect.

    12.23.3
  • Improved error messages. Some error messages will now link through to detailed documentation and solutions.

    12.23.1
  • Refactored MotionProps into vanilla MotionNodeOptions type within "motion-dom" package.

    12.17.3
  • useWillChange now only adds transform to will-change to prevent issues with prematurely flattened preserve-3d.

    12.11.3

1 internal line (docs, tests, tooling) left out.