Releases: fluttersdk/magic
Releases · fluttersdk/magic
1.0.0-alpha.6
✨ Features
- Http Faking:
Http.fake()— Laravel-style HTTP faking for testing with URL pattern stubs, callback stubs, and assertion methods (#18) - Facade Faking:
Auth.fake(),Cache.fake(),Vault.fake(),Log.fake()— in-memory fakes with assertion helpers (#19) - Fetch Helpers:
fetchList()/fetchOne()onMagicStateMixin— auto state management with defensive type guards (#20) - MagicTest:
MagicTest.init()/MagicTest.boot()+package:magic/testing.dartbarrel (#21)
🐛 Bug Fixes
- Log.channel(): Returns
LoggerDriverinstead ofLogManager(#27) - Http.response() null data: Sentinel pattern for null vs omitted distinction (#26)
- URL pattern escaping:
RegExp.escape()for stub patterns (#26) - fetchList/fetchOne defensive guards: Type-check response data, filter non-Map elements (#28)
- Publish fix: Move
flutter_testto dependencies for pub.dev validation (#30)
Full Changelog: 1.0.0-alpha.5...1.0.0-alpha.6
v1.0.0-alpha.5
🐛 Bug Fixes
- Route Back Navigation:
MagicRoute.back()now works aftergo()-based navigation (cross-shell). Maintains lightweight history stack with automatic fallback. Optionalfallbackparameter for explicit control. (#11)
Full Changelog: 1.0.0-alpha.4...1.0.0-alpha.5
v1.0.0-alpha.4
🔧 Improvements
- Localization Hot Restart: Translation JSON changes now reflect on hot restart during development. Uses fetch with cache-busting on web and best-effort disk reads on desktop, bypassing Flutter's asset bundle cache. Zero impact on release builds.
Full Changelog: 1.0.0-alpha.3...1.0.0-alpha.4
v1.0.0-alpha.3
🐛 Bug Fixes
- Logo on pub.dev: Use absolute URL for logo image so it renders correctly on pub.dev
🔧 Improvements
- TDD Development Flow: Added strict TDD rules and verification cycle to CLAUDE.md
Full Changelog: 1.0.0-alpha.2...1.0.0-alpha.3
v1.0.0-alpha.2
⚠️ Breaking Changes
- Pub.dev Migration: Replaced git submodule path dependencies with pub.dev hosted packages (
fluttersdk_wind: ^1.0.0-alpha.4,magic_cli: ^0.0.1-alpha.3). Removedplugins/directory entirely. - SDK Bump: Dart
>=3.11.0 <4.0.0, Flutter>=3.41.0(previously Dart >=3.4.0, Flutter >=3.22.0)
✨ New Features
- Launch Facade: URL, email, phone, and SMS launching via
url_launcher - Form Processing:
process(),isProcessing, andprocessingListenableonMagicFormData - Reactive Auth State:
stateNotifieron Guard contract and BaseGuard - Query Parameters:
Request.query(),Request.queryAll,MagicRouter.queryParameter() - Localization Interceptor: Automatic
Accept-LanguageandX-Timezoneheaders on HTTP requests - Theme Persistence: Auto-persist dark/light theme preference via Vault
- Validation Helpers:
clearErrors()andclearFieldError()onValidatesRequests - Route Names: Route name registration on
RouteDefinition
🐛 Bug Fixes
- Auth default config now properly wrapped under
'auth'key - Session restore guards against missing
userFactory FileStoreexported from barrel file- Renamed internal references from
fluttersdk_magictomagic
🔧 Improvements
- Dependency upgrades: go_router ^17.1.0, sqlite3 ^3.2.0, share_plus ^12.0.1, file_picker ^10.3.10, flutter_lints ^6.0.0
- Rewrote Magic CLI documentation with all 16 commands
- Wind UI docs moved to wind.fluttersdk.com
- Example app rebuilt with fresh
flutter createandmagic install - CI pipeline: upgraded GitHub Actions, added validate gate to publish workflow
- Claude Code: path-scoped
.claude/rules/for 8 domains, auto-format/analyze hooks
Full Changelog: v1.0.0-alpha.1...1.0.0-alpha.2