Releases: marceloeatworld/falai-php
Releases · marceloeatworld/falai-php
v2.0.0 - Complete Rewrite
Breaking Changes
This is a complete rewrite of the library. The API is not backward-compatible with v1.
Before (v1)
$falAI = new FalAI('key');
$result = $falAI->generations()->create('fal-ai/flux/schnell', [...]);
$status = $falAI->generations()->checkStatus('model', $result->requestId);After (v2)
$fal = new FalAI('key');
$result = $fal->run('fal-ai/flux/schnell', [...]); // sync
$job = $fal->queue->submit('fal-ai/flux/schnell', [...]); // async
$status = $fal->queue->status('fal-ai/flux/schnell', $job->requestId);What's New
- Sync execution via
fal.run—$fal->run('model', [...]) - Queue workflow via
queue.fal.run—submit,status,result,cancel - Subscribe — submit + auto-poll until completion with status callback
- File upload — upload local files to fal.ai CDN for image-to-image models
- Webhook support — receive results via webhook
- fal.ai headers — timeout, priority, runner hint, no-retry
- Configurable base URLs for all endpoints
Architecture
- Proper Saloon v4 patterns: custom
Authenticator,BaseResource,AlwaysThrowOnErrors,HasTimeout - PHP 8.2
readonlyDTOs and backed enums (Status,Priority) - Separate connectors per domain (
queue.fal.run,fal.run,rest.alpha.fal.ai)
Bug Fixes
- Fix model path truncation (
fal-ai/flux/schnellwas incorrectly cut tofal-ai/flux)
Security
- Upgrade Saloon v3 → v4 (fixes CVE-2026-33942, CVE-2026-33183, CVE-2026-33182)
Requirements
- PHP 8.2+
- saloonphp/saloon ^4.0
- guzzlehttp/guzzle ^7.6
v1.1.0
v1.0.0
Full Changelog: https://github.com/marceloeatworld/falai-php/commits/v1.0.0