- Durable Job Inbox: every async submit is journaled to the shared sqlite store and survives ComfyUI restarts; the Fal Job Inbox node lists pending/collected jobs and outputs the newest pending request_id/endpoint for one-wire recovery via Result by Request ID. - Provenance: Fal Save Media from URL writes a <file>.fal.json sidecar and embeds a fal_provenance PNG text chunk (preserving existing text chunks and ICC profiles), returning the request_id as a second output; new Fal Provenance from File node reads saved files back into endpoint_id + request_id for free re-materialization. - First web extension (web/ + /fal_api server routes): per-node cost pills rendered above every priced fal node (live estimates on free-typed endpoint fields), a fal sidebar tab with session spend, account balance and a job list with copy/cancel, and in-canvas endpoint search with price labels. All features degrade silently on older frontends; routes are exception-guarded and cached. Review fixes: PNG provenance embed preserves source text chunks and ICC profile; jobs route limit clamped. 15 new tests (91 total).
34 lines
906 B
TOML
34 lines
906 B
TOML
[project]
|
|
name = "fal-api"
|
|
description = "Custom nodes for using fal API with auto-generated full-catalog coverage of fal.ai models. Video generation with Kling, Runway, Luma. Image generation with Flux. LLMs and VLMs OpenAI, Claude, Llama and Gemini."
|
|
version = "2.3.0"
|
|
license = {file = "LICENSE"}
|
|
requires-python = ">=3.9"
|
|
dependencies = [
|
|
"fal-client>=1.0,<2",
|
|
"torch",
|
|
"opencv-python",
|
|
"numpy",
|
|
"pillow",
|
|
"requests",
|
|
]
|
|
|
|
[project.urls]
|
|
Repository = "https://github.com/gokayfem/ComfyUI-fal-API"
|
|
# Used by Comfy Registry https://comfyregistry.org
|
|
|
|
[tool.comfy]
|
|
PublisherId = "gokayfem"
|
|
DisplayName = "ComfyUI-fal-API"
|
|
Icon = ""
|
|
|
|
[tool.ruff]
|
|
target-version = "py39"
|
|
line-length = 120
|
|
exclude = ["example_workflows"]
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "W", "I", "B", "UP"]
|
|
# E501: legacy long lines throughout the codebase; revisit once files are refactored.
|
|
ignore = ["E501"]
|