Skip to content

Releases: 9uiLe/swift-scoped-animation

Release list

0.2.0

Choose a tag to compare

@9uiLe 9uiLe released this 05 Jul 07:22
  • Add multi-trigger AnimationScope(name:triggers:) with declaration-order conflict resolution and DEBUG multiTriggerConflict warnings.
  • Document nested scope semantics, composition patterns, static lint recipe, and small-app adoption guidance.
  • Add DEBUG runtime warning when an AnimationScope boundary strips another scope's stamped animation.
  • Add the GitHub social preview asset.
  • Add scripts/release.sh to automate the release flow (checks, tests, changelog rollover, tag, GitHub release).
  • CI: cancel superseded PR runs, cache SwiftPM/DerivedData build artifacts, and disable index-store generation in xcodebuild steps to cut run time.

v0.1.0

Choose a tag to compare

@9uiLe 9uiLe released this 03 Jul 10:43

Initial release: structural boundaries and DEBUG diagnostics for SwiftUI animation.

ScopedAnimation makes animation ownership visible. It blocks incoming animation at explicit boundaries, stamps animation created by AnimationScope, and reports unstamped animation transactions in DEBUG builds. It is blocking + detection, not total containment — see the README for the detection accuracy matrix.

What's included

  • AnimationScope value-driven and proxy-driven APIs.
  • animationBarrier(warnsOnLeaks:) for stripping incoming animation.
  • Transaction stamping and strip-then-restore boundary semantics.
  • DEBUG leak detection with runtime warnings and debounce.
  • DEBUG scope overlay.
  • Transaction spy behavioral tests for core semantics.
  • iOS example app with Before / After, overlay, and List QA screens.
  • DocC documentation, README, CI, MIT license, and contribution guide.

Requirements

Swift 6 language mode. iOS 17+ / macOS 14+ / tvOS 17+ / watchOS 10+ / visionOS 1+. No external dependencies.