Skip to content

Tinkerble 1.3.0

Choose a tag to compare

@edwardsanchez edwardsanchez released this 19 Jun 01:14
· 2 commits to main since this release

What's Changed

  • Adds positional display-name APIs for @TinkerbleState, @TinkerbleObservableState, @TinkerbleAction, TinkerLog.value, and Tinkerble.shared.log.
  • Keeps screen and category labeled in the canonical API.
  • Deprecates old name: and category-first spellings with migration messages.
  • Preserves the old @TinkerbleObservableState("Category", name: "Name") behavior so existing category/name call sites do not silently swap meanings.
  • Updates the Tinkerble Demo and README examples to use the latest API.

Migration

Prefer the new required positional display name:

@TinkerbleState("Opacity", category: "Layout")
@TinkerbleObservableState("Badge Count", screen: "Basic", category: "Observable")
@TinkerbleAction("Increment Action Count", screen: "Basic", category: "Observable")
TinkerLog.value("Visible Cards", value: cards.count, screen: "Cards", category: "Deck")

Older name: and category-first forms still compile for now, but they are deprecated and will warn with the suggested replacement.

Validation

  • swift test
  • ./Scripts/verify-macos-companion-package.sh
  • xcodebuild -project "Tinkerble Demo/Tinkerble Demo.xcodeproj" -scheme "Tinkerble Demo" -destination "generic/platform=iOS Simulator" -clonedSourcePackagesDirPath .build-demo-validation build