diffusers-workflow 0.4.0b5__tar.gz → 0.4.0b7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {diffusers_workflow-0.4.0b5/diffusers_workflow.egg-info → diffusers_workflow-0.4.0b7}/PKG-INFO +5 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/README.md +1 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7/diffusers_workflow.egg-info}/PKG-INFO +5 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/SOURCES.txt +63 -21
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/requires.txt +3 -1
- diffusers_workflow-0.4.0b7/dw/adapter_compatibility.py +226 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/arguments.py +9 -2
- diffusers_workflow-0.4.0b7/dw/content_types.py +105 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/MCP.md +56 -26
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/RECIPES_24GB.md +14 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/RELEASING.md +15 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/REMOTE.md +7 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/SERVER.md +131 -34
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/TASKS.md +211 -11
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/WORKFLOW_GUIDE.md +194 -7
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/WORKSPACES.md +23 -12
- diffusers_workflow-0.4.0b7/dw/elision.py +306 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/events.py +86 -2
- diffusers_workflow-0.4.0b7/dw/host_memory_projection.py +175 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/introspection.py +262 -9
- diffusers_workflow-0.4.0b7/dw/kernel_availability.py +208 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/locations.py +10 -4
- diffusers_workflow-0.4.0b7/dw/media_audio.py +217 -0
- diffusers_workflow-0.4.0b7/dw/media_frames.py +340 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/media_info.py +67 -9
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/pipeline_processors/pipeline.py +138 -0
- diffusers_workflow-0.4.0b7/dw/plan.py +853 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/prompt_schema.json +1 -1
- diffusers_workflow-0.4.0b7/dw/reference_names.py +125 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/result.py +468 -12
- diffusers_workflow-0.4.0b7/dw/scalar_result_validation.py +78 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/schema.py +3 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/security.py +83 -5
- diffusers_workflow-0.4.0b7/dw/select_validation.py +115 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/app.py +994 -110
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/catalog_shape.py +85 -5
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/guides.py +34 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/jobs.py +243 -17
- diffusers_workflow-0.4.0b7/dw/server/observed_cost.py +351 -0
- diffusers_workflow-0.4.0b7/dw/server/sysinfo.py +71 -0
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/cssMode-BQ03gENP.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/cssMode-xQCqMuag.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/editor.api-CzvLX8mb.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/editor.api-Bfiq9hmW.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/freemarker2-C8c7lwsP.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/freemarker2-BwDnlSuz.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/handlebars-7APo_5hD.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/handlebars-Beb1we4G.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/html-JgrkBemQ.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/html-Yw-qdTCH.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/htmlMode-BH9VsgGh.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/htmlMode-Dbp7eBPO.js +1 -1
- diffusers_workflow-0.4.0b7/dw/server/ui/assets/index-CsXMC8a8.css +1 -0
- diffusers_workflow-0.4.0b7/dw/server/ui/assets/index-DqbiZNFq.js +43 -0
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/javascript-BrFJ1H6j.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/javascript-BNzP7yQZ.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/jsonMode-C10gRe-2.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/jsonMode-DxIEESAg.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/liquid-CjfGWTAZ.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/liquid-CeQTai1N.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/lspLanguageFeatures-O-lB5SDv.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/lspLanguageFeatures-DKVB_UCB.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/mdx-D7b-hMTY.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/mdx-Bczl_PHr.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/monaco-DBnxML20.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/monaco-Bu2OB6wI.js +4 -4
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/python-NfJjzkPL.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/python-CeTsj82v.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/razor-CgQtwMBj.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/razor-CN7JaWqc.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/tsMode-BuMW6Qar.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/tsMode-CoSEMx-L.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/typescript-Bfmxt754.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/typescript-CcsolRTO.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/workers-BSu9lD5s.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/workers-DLaycdy4.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/xml-BJ2IwGRC.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/xml-QEwuyn1w.js +1 -1
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/yaml-Cq85tEmC.js → diffusers_workflow-0.4.0b7/dw/server/ui/assets/yaml-BB4U5D-R.js +1 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/index.html +2 -2
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/step.py +17 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/step_cache.py +94 -7
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/task_domains.py +60 -14
- diffusers_workflow-0.4.0b7/dw/tasks/audio_transcription.py +88 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/audio_utils.py +787 -55
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/concat_videos.py +19 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/dissolve_videos.py +57 -8
- diffusers_workflow-0.4.0b7/dw/tasks/judge.py +68 -0
- diffusers_workflow-0.4.0b7/dw/tasks/pair_audio.py +189 -0
- diffusers_workflow-0.4.0b7/dw/tasks/select.py +111 -0
- diffusers_workflow-0.4.0b7/dw/tasks/speech_generation.py +228 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/task.py +211 -15
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/video_utils.py +206 -3
- diffusers_workflow-0.4.0b7/dw/variable_constraints.py +444 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/variables.py +27 -0
- diffusers_workflow-0.4.0b7/dw/vram_estimate.py +116 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/worker.py +93 -9
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/workflow.py +243 -5
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/workflow_schema.json +116 -23
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/workspace.py +5 -2
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/assets.py +131 -20
- diffusers_workflow-0.4.0b7/dw_mcp/authoring.py +135 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/catalog.py +52 -13
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/client.py +40 -8
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/diagnose.py +63 -18
- diffusers_workflow-0.4.0b7/dw_mcp/media.py +578 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/prompts.py +15 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/server.py +438 -164
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/workspaces.py +84 -7
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/pyproject.toml +20 -2
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_assets.py +13 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_audio_utils.py +602 -3
- diffusers_workflow-0.4.0b7/tests/test_best_of_n_template.py +66 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_cache_blocks.py +26 -15
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_catalog_shape.py +52 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_catalog_structure.py +90 -8
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_cli.py +1 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_concat_videos.py +82 -1
- diffusers_workflow-0.4.0b7/tests/test_content_types.py +132 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_dissolve_videos.py +43 -2
- diffusers_workflow-0.4.0b7/tests/test_elision.py +499 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_events.py +144 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_examples.py +5 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_for_each.py +15 -2
- diffusers_workflow-0.4.0b7/tests/test_h3_adapters.py +195 -0
- diffusers_workflow-0.4.0b7/tests/test_h3_schedule.py +152 -0
- diffusers_workflow-0.4.0b7/tests/test_host_memory_projection.py +122 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_integration.py +5 -4
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_introspection.py +113 -0
- diffusers_workflow-0.4.0b7/tests/test_job_history_wal.py +14 -0
- diffusers_workflow-0.4.0b7/tests/test_job_warnings.py +46 -0
- diffusers_workflow-0.4.0b7/tests/test_judge.py +105 -0
- diffusers_workflow-0.4.0b7/tests/test_kernel_availability.py +255 -0
- diffusers_workflow-0.4.0b7/tests/test_lora_alpha.py +128 -0
- diffusers_workflow-0.4.0b7/tests/test_ltx2_diffusion_decode.py +97 -0
- diffusers_workflow-0.4.0b7/tests/test_ltx2_ic_loras.py +166 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_ltx_prompt_library.py +52 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_assets.py +78 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_authoring.py +59 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_catalog.py +10 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_client.py +62 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_diagnose.py +126 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_media.py +601 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_prompts.py +45 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_server.py +483 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_workspaces.py +55 -0
- diffusers_workflow-0.4.0b7/tests/test_media_audio.py +343 -0
- diffusers_workflow-0.4.0b7/tests/test_media_frames.py +521 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_media_info.py +20 -4
- diffusers_workflow-0.4.0b7/tests/test_mix_audio.py +152 -0
- diffusers_workflow-0.4.0b7/tests/test_observed_cost.py +719 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_output_references.py +37 -0
- diffusers_workflow-0.4.0b7/tests/test_pair_audio_fit.py +158 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_pipeline_caching.py +207 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_pipeline_components.py +68 -0
- diffusers_workflow-0.4.0b7/tests/test_plan.py +1216 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_plugin_skills.py +102 -21
- diffusers_workflow-0.4.0b7/tests/test_prompt_library.py +71 -0
- diffusers_workflow-0.4.0b7/tests/test_reference_names.py +103 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_result.py +657 -2
- diffusers_workflow-0.4.0b7/tests/test_scalar_result_validation.py +103 -0
- diffusers_workflow-0.4.0b7/tests/test_select.py +119 -0
- diffusers_workflow-0.4.0b7/tests/test_select_validation.py +185 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server.py +1030 -8
- diffusers_workflow-0.4.0b7/tests/test_server_downloads.py +283 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server_exports.py +14 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server_guides.py +39 -3
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server_jobs.py +51 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server_workspaces.py +30 -0
- diffusers_workflow-0.4.0b7/tests/test_speech_generation.py +481 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_step_cache.py +118 -5
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_subfolders.py +4 -4
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_task.py +25 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_task_discovery.py +12 -5
- diffusers_workflow-0.4.0b7/tests/test_task_signature_errors.py +150 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_template_subfolders.py +20 -16
- diffusers_workflow-0.4.0b7/tests/test_transcribe_audio.py +104 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_updater.py +9 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_validate_arguments.py +56 -0
- diffusers_workflow-0.4.0b7/tests/test_variable_constraints.py +566 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_variables.py +73 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_video_utils.py +224 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_worker_execute.py +61 -4
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_workflow.py +48 -1
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_workflow_step_cache.py +6 -0
- diffusers_workflow-0.4.0b5/dw/plan.py +0 -435
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/index-B1DfbIuu.js +0 -37
- diffusers_workflow-0.4.0b5/dw/server/ui/assets/index-CRVAbEJ9.css +0 -1
- diffusers_workflow-0.4.0b5/dw/tasks/pair_audio.py +0 -81
- diffusers_workflow-0.4.0b5/dw/tasks/speech_generation.py +0 -105
- diffusers_workflow-0.4.0b5/dw_mcp/authoring.py +0 -48
- diffusers_workflow-0.4.0b5/dw_mcp/media.py +0 -278
- diffusers_workflow-0.4.0b5/tests/test_mix_audio.py +0 -67
- diffusers_workflow-0.4.0b5/tests/test_plan.py +0 -597
- diffusers_workflow-0.4.0b5/tests/test_server_downloads.py +0 -123
- diffusers_workflow-0.4.0b5/tests/test_speech_generation.py +0 -163
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/LICENSE +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/MANIFEST.in +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/dependency_links.txt +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/entry_points.txt +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/top_level.txt +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/__init__.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/assets.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/cache_blocks.json +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/cache_blocks.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/community_pipelines/pipeline_flux_rf_inversion.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/ACCELERATION.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/AGENT_LOOP.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/DEPENDENCIES.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/IP_ADAPTER.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/LORAS.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/PROMPT_WEIGHTING.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/QUANTIZATION.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/REPL_COMMANDS.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/REPL_WORKER_GUIDE.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/SECURITY.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/SECURITY_QUICKREF.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/docs/TESTING.md +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/for_each.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/host_memory.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/hub_cache.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/log_setup.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/pipeline_processors/chain.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/pipeline_processors/config_objects.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/pipeline_processors/remote.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/previous_results.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/prompt_weighting.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/prompts.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/realize.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/reference_limits.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/repl.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/repl_commands.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/repl_worker.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/run.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/runs.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/serve.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/__init__.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/enhancers.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/exports.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/mcp_mount.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/netinfo.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/abap-08VXUWAP.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/apex-BWPQTe0t.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/azcli-Bc_sGQ0U.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/bat-i0X4ZdIN.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/bicep-B5-_aFwp.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/cameligo-DMUM7wLl.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/clojure-Cm7r79vr.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/codicon-Brq4_Ui5.ttf +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/coffee-Ba7i2nA0.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/cpp-C7h46wYY.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/csharp-BKxtCVv1.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/csp-bTuwJoIa.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/css-DIMkf-bt.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/css.worker-B3ciXF_0.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/cypher-CVaqCwHa.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/dart-onAF5SnQ.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/dockerfile-DZFCIeNp.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/ecl-D05T4iGw.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/editor-jjEx9u7D.css +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/editor.worker-q-txB4vs.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/elixir-6RTg0lbw.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/flow9-C5_-GSwl.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/fsharp-C8Ef5oNN.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/go-C-y9NEjX.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/graphql-fmXr3nnJ.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/hcl-CpzslTdj.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/html.worker-C93Ht9o9.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/ini-sBoK_t0W.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/java-BEtHBSE6.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/json.worker-B2V3pomh.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/julia-Bri6UV-V.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/kotlin-BOotOW0E.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/less-B9JPFI3C.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/lexon-CfSJPG6W.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/lua-CsQS60Ue.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/m3-D-oSqn_W.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/markdown-Cimd5fb3.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/mips-CIPQ_RoX.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/monaco--ixms01u.css +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/msdax-DauUninz.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/mysql-SOo6toE5.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/objective-c-FvmIjYaQ.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/pascal-DrH0SRf2.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/pascaligo-D-ptJ9y-.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/perl-oz_6vUea.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/pgsql-DTj74zXo.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/php-nr791fC2.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/pla-CopQ2nXW.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/postiats-43DmfD33.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/powerquery-D3hlyOfw.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/powershell-DmHpPYUd.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/protobuf-C531GsRP.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/pug-Z5eAx3Zn.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/qsharp-DkqhCAOL.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/r-BwWrilGY.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/redis-ClamHrr6.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/redshift-DT7zqm-g.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/restructuredtext-BYgofb2h.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/ruby-DezsRK8O.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/rust-DdL9SqIa.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/sb-CcwsVR0C.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/scala-DHpiXF5c.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/scheme-BeGwcela.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/scss-gp-XZpBa.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/shell-CC2rA5mh.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/solidity-BEEn4gHE.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/sophia-CRfGWb83.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/sparql-D_Lu-MrJ.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/sql-NEE52Syq.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/st-DbInun42.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/swift-Bxkupp3x.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/systemverilog-Bz4Y3fRF.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/tcl-DISqw1ZD.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/ts.worker-D7T1-Ig5.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/twig-De2hgUGE.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/typespec-B8J7ngcE.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/vb-DV3o63ZY.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/ui/assets/wgsl-DpFanUEy.js +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/server/updater.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/settings.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/subfolders.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/background_remover.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/borders.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/compose_text.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/depth_estimator.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/diffusion_upscale.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/format_messages.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/gather.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/image_to_text.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/image_utils.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/interpolate_frames.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/model_cache.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/qr_code.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/restore_faces.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/rife_model.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/segment.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/stabilize.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/tensor_image.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/text_generation.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/text_sections.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/upscale.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/tasks/zoe_depth.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/teacache.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/teacache_models.json +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/test.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/type_helpers.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/validate.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/workflow_sources.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/workflows/h3_context_ir.json +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw/workflows/test.json +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/__init__.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/__main__.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/exports.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/guides.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/dw_mcp/models.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/setup.cfg +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_argument_updates.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_arguments.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_borders.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_chain.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_component_pruning.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_compose_text.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_config_objects.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_configuration_schema.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_depth_estimator.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_device.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_device_helpers.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_device_portability.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_dialogue_short_voices.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_diffusion_upscale.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_docs_links.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_gather.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_h3_context_ir.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_hf_placement.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_host_memory.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_hub_cache.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_image_to_text.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_image_utils.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_interpolate_frames.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_job_progress.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_jobs_listing.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_jobs_reused.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_library_sources.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_list_images.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_locations.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_exports.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_guides.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_main.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_mcp_models.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_model_cache.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_modular_pipeline.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_modular_progress.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_offload_placement.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_pair_audio.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_phase_events.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_previous_results.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_prompt_parser.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_prompt_references.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_prompt_weighting.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_prompts.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_realize.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_recenter_crop.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_reference_limits.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_repl_commands.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_repl_ergonomics.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_repl_hierarchical.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_repl_reorganization.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_repl_worker.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_rerun_new_seed.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_resize_bucket.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_result_output_naming.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_runs.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_scheduler_config.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_schema.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_security.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_segment.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_serve_main.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server_info.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_server_mcp.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_stabilize.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_step.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_strip_exif_and_watermark.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_task_domains.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_teacache.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_tensor_image.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_text_generation.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_text_sections.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_type_helpers.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_worker.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_workflow_sources.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_workflow_trust.py +0 -0
- {diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/tests/test_workspace.py +0 -0
{diffusers_workflow-0.4.0b5/diffusers_workflow.egg-info → diffusers_workflow-0.4.0b7}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diffusers-workflow
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.0b7
|
|
4
4
|
Summary: Declarative workflow engine and web UI for Hugging Face Diffusers
|
|
5
5
|
Author: dkackman
|
|
6
6
|
License: Apache-2.0
|
|
@@ -19,7 +19,7 @@ License-File: LICENSE
|
|
|
19
19
|
Requires-Dist: torch>=2.13.0
|
|
20
20
|
Requires-Dist: torchvision>=0.28.0
|
|
21
21
|
Requires-Dist: diffusers>=0.40.0
|
|
22
|
-
Requires-Dist: transformers
|
|
22
|
+
Requires-Dist: transformers!=5.17.0,>=5.16.1
|
|
23
23
|
Requires-Dist: accelerate>=1.14.0
|
|
24
24
|
Requires-Dist: peft>=0.20.0
|
|
25
25
|
Requires-Dist: safetensors>=0.8.0
|
|
@@ -36,6 +36,7 @@ Requires-Dist: bitsandbytes>=0.50.2; sys_platform == "linux"
|
|
|
36
36
|
Requires-Dist: controlnet-aux>=0.0.10
|
|
37
37
|
Requires-Dist: opencv-python-headless>=5.0.0.93
|
|
38
38
|
Requires-Dist: kornia>=0.8.3
|
|
39
|
+
Requires-Dist: kernels>=0.17.0
|
|
39
40
|
Requires-Dist: spandrel>=0.4.2
|
|
40
41
|
Requires-Dist: facexlib>=0.3.0
|
|
41
42
|
Requires-Dist: numpy>=2.5.2
|
|
@@ -46,6 +47,7 @@ Requires-Dist: imageio-ffmpeg>=0.6.0
|
|
|
46
47
|
Requires-Dist: av>=18.1.0
|
|
47
48
|
Requires-Dist: soundfile>=0.14.0
|
|
48
49
|
Requires-Dist: matplotlib>=3.11.1
|
|
50
|
+
Requires-Dist: speechbrain>=1.0.3
|
|
49
51
|
Requires-Dist: qrcode>=8.2
|
|
50
52
|
Requires-Dist: requests>=2.34.2
|
|
51
53
|
Requires-Dist: aiohttp>=3.14.3
|
|
@@ -158,7 +160,7 @@ once; without it the run fails partway through with a 401/403 from the Hub.
|
|
|
158
160
|
|
|
159
161
|
## Drive it from an agent
|
|
160
162
|
|
|
161
|
-
Then just ask. The agent has
|
|
163
|
+
Then just ask. The agent has 58 tools covering the whole surface — the
|
|
162
164
|
workflow catalog, the real diffusers pipeline signatures, the job queue, the
|
|
163
165
|
gallery, the model cache:
|
|
164
166
|
|
|
@@ -83,7 +83,7 @@ once; without it the run fails partway through with a 401/403 from the Hub.
|
|
|
83
83
|
|
|
84
84
|
## Drive it from an agent
|
|
85
85
|
|
|
86
|
-
Then just ask. The agent has
|
|
86
|
+
Then just ask. The agent has 58 tools covering the whole surface — the
|
|
87
87
|
workflow catalog, the real diffusers pipeline signatures, the job queue, the
|
|
88
88
|
gallery, the model cache:
|
|
89
89
|
|
{diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7/diffusers_workflow.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diffusers-workflow
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.0b7
|
|
4
4
|
Summary: Declarative workflow engine and web UI for Hugging Face Diffusers
|
|
5
5
|
Author: dkackman
|
|
6
6
|
License: Apache-2.0
|
|
@@ -19,7 +19,7 @@ License-File: LICENSE
|
|
|
19
19
|
Requires-Dist: torch>=2.13.0
|
|
20
20
|
Requires-Dist: torchvision>=0.28.0
|
|
21
21
|
Requires-Dist: diffusers>=0.40.0
|
|
22
|
-
Requires-Dist: transformers
|
|
22
|
+
Requires-Dist: transformers!=5.17.0,>=5.16.1
|
|
23
23
|
Requires-Dist: accelerate>=1.14.0
|
|
24
24
|
Requires-Dist: peft>=0.20.0
|
|
25
25
|
Requires-Dist: safetensors>=0.8.0
|
|
@@ -36,6 +36,7 @@ Requires-Dist: bitsandbytes>=0.50.2; sys_platform == "linux"
|
|
|
36
36
|
Requires-Dist: controlnet-aux>=0.0.10
|
|
37
37
|
Requires-Dist: opencv-python-headless>=5.0.0.93
|
|
38
38
|
Requires-Dist: kornia>=0.8.3
|
|
39
|
+
Requires-Dist: kernels>=0.17.0
|
|
39
40
|
Requires-Dist: spandrel>=0.4.2
|
|
40
41
|
Requires-Dist: facexlib>=0.3.0
|
|
41
42
|
Requires-Dist: numpy>=2.5.2
|
|
@@ -46,6 +47,7 @@ Requires-Dist: imageio-ffmpeg>=0.6.0
|
|
|
46
47
|
Requires-Dist: av>=18.1.0
|
|
47
48
|
Requires-Dist: soundfile>=0.14.0
|
|
48
49
|
Requires-Dist: matplotlib>=3.11.1
|
|
50
|
+
Requires-Dist: speechbrain>=1.0.3
|
|
49
51
|
Requires-Dist: qrcode>=8.2
|
|
50
52
|
Requires-Dist: requests>=2.34.2
|
|
51
53
|
Requires-Dist: aiohttp>=3.14.3
|
|
@@ -158,7 +160,7 @@ once; without it the run fails partway through with a 401/403 from the Hub.
|
|
|
158
160
|
|
|
159
161
|
## Drive it from an agent
|
|
160
162
|
|
|
161
|
-
Then just ask. The agent has
|
|
163
|
+
Then just ask. The agent has 58 tools covering the whole surface — the
|
|
162
164
|
workflow catalog, the real diffusers pipeline signatures, the job queue, the
|
|
163
165
|
gallery, the model cache:
|
|
164
166
|
|
{diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/SOURCES.txt
RENAMED
|
@@ -9,17 +9,24 @@ diffusers_workflow.egg-info/entry_points.txt
|
|
|
9
9
|
diffusers_workflow.egg-info/requires.txt
|
|
10
10
|
diffusers_workflow.egg-info/top_level.txt
|
|
11
11
|
dw/__init__.py
|
|
12
|
+
dw/adapter_compatibility.py
|
|
12
13
|
dw/arguments.py
|
|
13
14
|
dw/assets.py
|
|
14
15
|
dw/cache_blocks.json
|
|
15
16
|
dw/cache_blocks.py
|
|
17
|
+
dw/content_types.py
|
|
18
|
+
dw/elision.py
|
|
16
19
|
dw/events.py
|
|
17
20
|
dw/for_each.py
|
|
18
21
|
dw/host_memory.py
|
|
22
|
+
dw/host_memory_projection.py
|
|
19
23
|
dw/hub_cache.py
|
|
20
24
|
dw/introspection.py
|
|
25
|
+
dw/kernel_availability.py
|
|
21
26
|
dw/locations.py
|
|
22
27
|
dw/log_setup.py
|
|
28
|
+
dw/media_audio.py
|
|
29
|
+
dw/media_frames.py
|
|
23
30
|
dw/media_info.py
|
|
24
31
|
dw/plan.py
|
|
25
32
|
dw/previous_results.py
|
|
@@ -28,14 +35,17 @@ dw/prompt_weighting.py
|
|
|
28
35
|
dw/prompts.py
|
|
29
36
|
dw/realize.py
|
|
30
37
|
dw/reference_limits.py
|
|
38
|
+
dw/reference_names.py
|
|
31
39
|
dw/repl.py
|
|
32
40
|
dw/repl_commands.py
|
|
33
41
|
dw/repl_worker.py
|
|
34
42
|
dw/result.py
|
|
35
43
|
dw/run.py
|
|
36
44
|
dw/runs.py
|
|
45
|
+
dw/scalar_result_validation.py
|
|
37
46
|
dw/schema.py
|
|
38
47
|
dw/security.py
|
|
48
|
+
dw/select_validation.py
|
|
39
49
|
dw/serve.py
|
|
40
50
|
dw/settings.py
|
|
41
51
|
dw/step.py
|
|
@@ -47,7 +57,9 @@ dw/teacache_models.json
|
|
|
47
57
|
dw/test.py
|
|
48
58
|
dw/type_helpers.py
|
|
49
59
|
dw/validate.py
|
|
60
|
+
dw/variable_constraints.py
|
|
50
61
|
dw/variables.py
|
|
62
|
+
dw/vram_estimate.py
|
|
51
63
|
dw/worker.py
|
|
52
64
|
dw/workflow.py
|
|
53
65
|
dw/workflow_schema.json
|
|
@@ -87,6 +99,8 @@ dw/server/guides.py
|
|
|
87
99
|
dw/server/jobs.py
|
|
88
100
|
dw/server/mcp_mount.py
|
|
89
101
|
dw/server/netinfo.py
|
|
102
|
+
dw/server/observed_cost.py
|
|
103
|
+
dw/server/sysinfo.py
|
|
90
104
|
dw/server/updater.py
|
|
91
105
|
dw/server/ui/index.html
|
|
92
106
|
dw/server/ui/assets/abap-08VXUWAP.js
|
|
@@ -103,45 +117,45 @@ dw/server/ui/assets/csharp-BKxtCVv1.js
|
|
|
103
117
|
dw/server/ui/assets/csp-bTuwJoIa.js
|
|
104
118
|
dw/server/ui/assets/css-DIMkf-bt.js
|
|
105
119
|
dw/server/ui/assets/css.worker-B3ciXF_0.js
|
|
106
|
-
dw/server/ui/assets/cssMode-
|
|
120
|
+
dw/server/ui/assets/cssMode-xQCqMuag.js
|
|
107
121
|
dw/server/ui/assets/cypher-CVaqCwHa.js
|
|
108
122
|
dw/server/ui/assets/dart-onAF5SnQ.js
|
|
109
123
|
dw/server/ui/assets/dockerfile-DZFCIeNp.js
|
|
110
124
|
dw/server/ui/assets/ecl-D05T4iGw.js
|
|
111
125
|
dw/server/ui/assets/editor-jjEx9u7D.css
|
|
112
|
-
dw/server/ui/assets/editor.api-
|
|
126
|
+
dw/server/ui/assets/editor.api-Bfiq9hmW.js
|
|
113
127
|
dw/server/ui/assets/editor.worker-q-txB4vs.js
|
|
114
128
|
dw/server/ui/assets/elixir-6RTg0lbw.js
|
|
115
129
|
dw/server/ui/assets/flow9-C5_-GSwl.js
|
|
116
|
-
dw/server/ui/assets/freemarker2-
|
|
130
|
+
dw/server/ui/assets/freemarker2-BwDnlSuz.js
|
|
117
131
|
dw/server/ui/assets/fsharp-C8Ef5oNN.js
|
|
118
132
|
dw/server/ui/assets/go-C-y9NEjX.js
|
|
119
133
|
dw/server/ui/assets/graphql-fmXr3nnJ.js
|
|
120
|
-
dw/server/ui/assets/handlebars-
|
|
134
|
+
dw/server/ui/assets/handlebars-Beb1we4G.js
|
|
121
135
|
dw/server/ui/assets/hcl-CpzslTdj.js
|
|
122
|
-
dw/server/ui/assets/html-
|
|
136
|
+
dw/server/ui/assets/html-Yw-qdTCH.js
|
|
123
137
|
dw/server/ui/assets/html.worker-C93Ht9o9.js
|
|
124
|
-
dw/server/ui/assets/htmlMode-
|
|
125
|
-
dw/server/ui/assets/index-
|
|
126
|
-
dw/server/ui/assets/index-
|
|
138
|
+
dw/server/ui/assets/htmlMode-Dbp7eBPO.js
|
|
139
|
+
dw/server/ui/assets/index-CsXMC8a8.css
|
|
140
|
+
dw/server/ui/assets/index-DqbiZNFq.js
|
|
127
141
|
dw/server/ui/assets/ini-sBoK_t0W.js
|
|
128
142
|
dw/server/ui/assets/java-BEtHBSE6.js
|
|
129
|
-
dw/server/ui/assets/javascript-
|
|
143
|
+
dw/server/ui/assets/javascript-BNzP7yQZ.js
|
|
130
144
|
dw/server/ui/assets/json.worker-B2V3pomh.js
|
|
131
|
-
dw/server/ui/assets/jsonMode-
|
|
145
|
+
dw/server/ui/assets/jsonMode-DxIEESAg.js
|
|
132
146
|
dw/server/ui/assets/julia-Bri6UV-V.js
|
|
133
147
|
dw/server/ui/assets/kotlin-BOotOW0E.js
|
|
134
148
|
dw/server/ui/assets/less-B9JPFI3C.js
|
|
135
149
|
dw/server/ui/assets/lexon-CfSJPG6W.js
|
|
136
|
-
dw/server/ui/assets/liquid-
|
|
137
|
-
dw/server/ui/assets/lspLanguageFeatures-
|
|
150
|
+
dw/server/ui/assets/liquid-CeQTai1N.js
|
|
151
|
+
dw/server/ui/assets/lspLanguageFeatures-DKVB_UCB.js
|
|
138
152
|
dw/server/ui/assets/lua-CsQS60Ue.js
|
|
139
153
|
dw/server/ui/assets/m3-D-oSqn_W.js
|
|
140
154
|
dw/server/ui/assets/markdown-Cimd5fb3.js
|
|
141
|
-
dw/server/ui/assets/mdx-
|
|
155
|
+
dw/server/ui/assets/mdx-Bczl_PHr.js
|
|
142
156
|
dw/server/ui/assets/mips-CIPQ_RoX.js
|
|
143
157
|
dw/server/ui/assets/monaco--ixms01u.css
|
|
144
|
-
dw/server/ui/assets/monaco-
|
|
158
|
+
dw/server/ui/assets/monaco-Bu2OB6wI.js
|
|
145
159
|
dw/server/ui/assets/msdax-DauUninz.js
|
|
146
160
|
dw/server/ui/assets/mysql-SOo6toE5.js
|
|
147
161
|
dw/server/ui/assets/objective-c-FvmIjYaQ.js
|
|
@@ -156,10 +170,10 @@ dw/server/ui/assets/powerquery-D3hlyOfw.js
|
|
|
156
170
|
dw/server/ui/assets/powershell-DmHpPYUd.js
|
|
157
171
|
dw/server/ui/assets/protobuf-C531GsRP.js
|
|
158
172
|
dw/server/ui/assets/pug-Z5eAx3Zn.js
|
|
159
|
-
dw/server/ui/assets/python-
|
|
173
|
+
dw/server/ui/assets/python-CeTsj82v.js
|
|
160
174
|
dw/server/ui/assets/qsharp-DkqhCAOL.js
|
|
161
175
|
dw/server/ui/assets/r-BwWrilGY.js
|
|
162
|
-
dw/server/ui/assets/razor-
|
|
176
|
+
dw/server/ui/assets/razor-CN7JaWqc.js
|
|
163
177
|
dw/server/ui/assets/redis-ClamHrr6.js
|
|
164
178
|
dw/server/ui/assets/redshift-DT7zqm-g.js
|
|
165
179
|
dw/server/ui/assets/restructuredtext-BYgofb2h.js
|
|
@@ -179,15 +193,16 @@ dw/server/ui/assets/swift-Bxkupp3x.js
|
|
|
179
193
|
dw/server/ui/assets/systemverilog-Bz4Y3fRF.js
|
|
180
194
|
dw/server/ui/assets/tcl-DISqw1ZD.js
|
|
181
195
|
dw/server/ui/assets/ts.worker-D7T1-Ig5.js
|
|
182
|
-
dw/server/ui/assets/tsMode-
|
|
196
|
+
dw/server/ui/assets/tsMode-CoSEMx-L.js
|
|
183
197
|
dw/server/ui/assets/twig-De2hgUGE.js
|
|
184
|
-
dw/server/ui/assets/typescript-
|
|
198
|
+
dw/server/ui/assets/typescript-CcsolRTO.js
|
|
185
199
|
dw/server/ui/assets/typespec-B8J7ngcE.js
|
|
186
200
|
dw/server/ui/assets/vb-DV3o63ZY.js
|
|
187
201
|
dw/server/ui/assets/wgsl-DpFanUEy.js
|
|
188
|
-
dw/server/ui/assets/workers-
|
|
189
|
-
dw/server/ui/assets/xml-
|
|
190
|
-
dw/server/ui/assets/yaml-
|
|
202
|
+
dw/server/ui/assets/workers-DLaycdy4.js
|
|
203
|
+
dw/server/ui/assets/xml-QEwuyn1w.js
|
|
204
|
+
dw/server/ui/assets/yaml-BB4U5D-R.js
|
|
205
|
+
dw/tasks/audio_transcription.py
|
|
191
206
|
dw/tasks/audio_utils.py
|
|
192
207
|
dw/tasks/background_remover.py
|
|
193
208
|
dw/tasks/borders.py
|
|
@@ -201,12 +216,14 @@ dw/tasks/gather.py
|
|
|
201
216
|
dw/tasks/image_to_text.py
|
|
202
217
|
dw/tasks/image_utils.py
|
|
203
218
|
dw/tasks/interpolate_frames.py
|
|
219
|
+
dw/tasks/judge.py
|
|
204
220
|
dw/tasks/model_cache.py
|
|
205
221
|
dw/tasks/pair_audio.py
|
|
206
222
|
dw/tasks/qr_code.py
|
|
207
223
|
dw/tasks/restore_faces.py
|
|
208
224
|
dw/tasks/rife_model.py
|
|
209
225
|
dw/tasks/segment.py
|
|
226
|
+
dw/tasks/select.py
|
|
210
227
|
dw/tasks/speech_generation.py
|
|
211
228
|
dw/tasks/stabilize.py
|
|
212
229
|
dw/tasks/task.py
|
|
@@ -236,6 +253,7 @@ tests/test_argument_updates.py
|
|
|
236
253
|
tests/test_arguments.py
|
|
237
254
|
tests/test_assets.py
|
|
238
255
|
tests/test_audio_utils.py
|
|
256
|
+
tests/test_best_of_n_template.py
|
|
239
257
|
tests/test_borders.py
|
|
240
258
|
tests/test_cache_blocks.py
|
|
241
259
|
tests/test_catalog_shape.py
|
|
@@ -247,6 +265,7 @@ tests/test_compose_text.py
|
|
|
247
265
|
tests/test_concat_videos.py
|
|
248
266
|
tests/test_config_objects.py
|
|
249
267
|
tests/test_configuration_schema.py
|
|
268
|
+
tests/test_content_types.py
|
|
250
269
|
tests/test_depth_estimator.py
|
|
251
270
|
tests/test_device.py
|
|
252
271
|
tests/test_device_helpers.py
|
|
@@ -255,25 +274,36 @@ tests/test_dialogue_short_voices.py
|
|
|
255
274
|
tests/test_diffusion_upscale.py
|
|
256
275
|
tests/test_dissolve_videos.py
|
|
257
276
|
tests/test_docs_links.py
|
|
277
|
+
tests/test_elision.py
|
|
258
278
|
tests/test_events.py
|
|
259
279
|
tests/test_examples.py
|
|
260
280
|
tests/test_for_each.py
|
|
261
281
|
tests/test_gather.py
|
|
282
|
+
tests/test_h3_adapters.py
|
|
262
283
|
tests/test_h3_context_ir.py
|
|
284
|
+
tests/test_h3_schedule.py
|
|
263
285
|
tests/test_hf_placement.py
|
|
264
286
|
tests/test_host_memory.py
|
|
287
|
+
tests/test_host_memory_projection.py
|
|
265
288
|
tests/test_hub_cache.py
|
|
266
289
|
tests/test_image_to_text.py
|
|
267
290
|
tests/test_image_utils.py
|
|
268
291
|
tests/test_integration.py
|
|
269
292
|
tests/test_interpolate_frames.py
|
|
270
293
|
tests/test_introspection.py
|
|
294
|
+
tests/test_job_history_wal.py
|
|
271
295
|
tests/test_job_progress.py
|
|
296
|
+
tests/test_job_warnings.py
|
|
272
297
|
tests/test_jobs_listing.py
|
|
273
298
|
tests/test_jobs_reused.py
|
|
299
|
+
tests/test_judge.py
|
|
300
|
+
tests/test_kernel_availability.py
|
|
274
301
|
tests/test_library_sources.py
|
|
275
302
|
tests/test_list_images.py
|
|
276
303
|
tests/test_locations.py
|
|
304
|
+
tests/test_lora_alpha.py
|
|
305
|
+
tests/test_ltx2_diffusion_decode.py
|
|
306
|
+
tests/test_ltx2_ic_loras.py
|
|
277
307
|
tests/test_ltx_prompt_library.py
|
|
278
308
|
tests/test_mcp_assets.py
|
|
279
309
|
tests/test_mcp_authoring.py
|
|
@@ -288,20 +318,25 @@ tests/test_mcp_models.py
|
|
|
288
318
|
tests/test_mcp_prompts.py
|
|
289
319
|
tests/test_mcp_server.py
|
|
290
320
|
tests/test_mcp_workspaces.py
|
|
321
|
+
tests/test_media_audio.py
|
|
322
|
+
tests/test_media_frames.py
|
|
291
323
|
tests/test_media_info.py
|
|
292
324
|
tests/test_mix_audio.py
|
|
293
325
|
tests/test_model_cache.py
|
|
294
326
|
tests/test_modular_pipeline.py
|
|
295
327
|
tests/test_modular_progress.py
|
|
328
|
+
tests/test_observed_cost.py
|
|
296
329
|
tests/test_offload_placement.py
|
|
297
330
|
tests/test_output_references.py
|
|
298
331
|
tests/test_pair_audio.py
|
|
332
|
+
tests/test_pair_audio_fit.py
|
|
299
333
|
tests/test_phase_events.py
|
|
300
334
|
tests/test_pipeline_caching.py
|
|
301
335
|
tests/test_pipeline_components.py
|
|
302
336
|
tests/test_plan.py
|
|
303
337
|
tests/test_plugin_skills.py
|
|
304
338
|
tests/test_previous_results.py
|
|
339
|
+
tests/test_prompt_library.py
|
|
305
340
|
tests/test_prompt_parser.py
|
|
306
341
|
tests/test_prompt_references.py
|
|
307
342
|
tests/test_prompt_weighting.py
|
|
@@ -309,6 +344,7 @@ tests/test_prompts.py
|
|
|
309
344
|
tests/test_realize.py
|
|
310
345
|
tests/test_recenter_crop.py
|
|
311
346
|
tests/test_reference_limits.py
|
|
347
|
+
tests/test_reference_names.py
|
|
312
348
|
tests/test_repl_commands.py
|
|
313
349
|
tests/test_repl_ergonomics.py
|
|
314
350
|
tests/test_repl_hierarchical.py
|
|
@@ -319,10 +355,13 @@ tests/test_resize_bucket.py
|
|
|
319
355
|
tests/test_result.py
|
|
320
356
|
tests/test_result_output_naming.py
|
|
321
357
|
tests/test_runs.py
|
|
358
|
+
tests/test_scalar_result_validation.py
|
|
322
359
|
tests/test_scheduler_config.py
|
|
323
360
|
tests/test_schema.py
|
|
324
361
|
tests/test_security.py
|
|
325
362
|
tests/test_segment.py
|
|
363
|
+
tests/test_select.py
|
|
364
|
+
tests/test_select_validation.py
|
|
326
365
|
tests/test_serve_main.py
|
|
327
366
|
tests/test_server.py
|
|
328
367
|
tests/test_server_downloads.py
|
|
@@ -341,14 +380,17 @@ tests/test_subfolders.py
|
|
|
341
380
|
tests/test_task.py
|
|
342
381
|
tests/test_task_discovery.py
|
|
343
382
|
tests/test_task_domains.py
|
|
383
|
+
tests/test_task_signature_errors.py
|
|
344
384
|
tests/test_teacache.py
|
|
345
385
|
tests/test_template_subfolders.py
|
|
346
386
|
tests/test_tensor_image.py
|
|
347
387
|
tests/test_text_generation.py
|
|
348
388
|
tests/test_text_sections.py
|
|
389
|
+
tests/test_transcribe_audio.py
|
|
349
390
|
tests/test_type_helpers.py
|
|
350
391
|
tests/test_updater.py
|
|
351
392
|
tests/test_validate_arguments.py
|
|
393
|
+
tests/test_variable_constraints.py
|
|
352
394
|
tests/test_variables.py
|
|
353
395
|
tests/test_video_utils.py
|
|
354
396
|
tests/test_worker.py
|
{diffusers_workflow-0.4.0b5 → diffusers_workflow-0.4.0b7}/diffusers_workflow.egg-info/requires.txt
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
torch>=2.13.0
|
|
2
2
|
torchvision>=0.28.0
|
|
3
3
|
diffusers>=0.40.0
|
|
4
|
-
transformers
|
|
4
|
+
transformers!=5.17.0,>=5.16.1
|
|
5
5
|
accelerate>=1.14.0
|
|
6
6
|
peft>=0.20.0
|
|
7
7
|
safetensors>=0.8.0
|
|
@@ -17,6 +17,7 @@ gguf>=0.19.0
|
|
|
17
17
|
controlnet-aux>=0.0.10
|
|
18
18
|
opencv-python-headless>=5.0.0.93
|
|
19
19
|
kornia>=0.8.3
|
|
20
|
+
kernels>=0.17.0
|
|
20
21
|
spandrel>=0.4.2
|
|
21
22
|
facexlib>=0.3.0
|
|
22
23
|
numpy>=2.5.2
|
|
@@ -27,6 +28,7 @@ imageio-ffmpeg>=0.6.0
|
|
|
27
28
|
av>=18.1.0
|
|
28
29
|
soundfile>=0.14.0
|
|
29
30
|
matplotlib>=3.11.1
|
|
31
|
+
speechbrain>=1.0.3
|
|
30
32
|
qrcode>=8.2
|
|
31
33
|
requests>=2.34.2
|
|
32
34
|
aiohttp>=3.14.3
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"""The LoRA a step loads has to be trained for the path that step runs.
|
|
2
|
+
|
|
3
|
+
MiniMax-H3 ships one repository holding two checkpoint partitions -
|
|
4
|
+
`transformer/` for the `t2va` and `fl2va` workflows, `transformer_ref/` for
|
|
5
|
+
`ref2va` - and a separate turbo adapter trained against each. Handing the
|
|
6
|
+
FL2VA adapter to a `ref2va` step is the one H3 misconfiguration that never
|
|
7
|
+
shows up as a failure: a `ref2va` step holds `transformer_ref` alone, so
|
|
8
|
+
diffusers loads whatever it is given straight onto it, the run succeeds, and
|
|
9
|
+
the only symptom is identity retention that quietly is not as good as it
|
|
10
|
+
should be. Four templates carried exactly that mistake and nothing ever
|
|
11
|
+
complained (#149, #155).
|
|
12
|
+
|
|
13
|
+
Everything a pipeline itself would refuse is refused by the pipeline. This
|
|
14
|
+
is the other kind: a request the pipeline accepts and answers wrongly, which
|
|
15
|
+
costs a whole render to discover and cannot be seen in the output. So it is
|
|
16
|
+
checked where it is free - `validation_errors`, so `POST /api/validate` and
|
|
17
|
+
the pre-queue check both refuse it, at the JSON path the value sits at.
|
|
18
|
+
|
|
19
|
+
What is *not* written here: the adapter file names. `lora_weight_name` is a
|
|
20
|
+
free string and a future reference-trained checkpoint cannot be predicted, so
|
|
21
|
+
an unrecognised name is a warning naming the rule rather than a refusal - the
|
|
22
|
+
default inverts from "anything passes" to "the one documented mistake is
|
|
23
|
+
caught", and someone testing `my-new-ref-lora.safetensors` still gets
|
|
24
|
+
through. What *is* written here is a vendor naming convention (`ref2v` /
|
|
25
|
+
`fl2v` in the file name) that no diffusers symbol declares; the workflow
|
|
26
|
+
names and the partition each one denoises against are diffusers' own, and
|
|
27
|
+
`tests/test_h3_adapters.py` pins them to it.
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
import logging
|
|
31
|
+
|
|
32
|
+
from .for_each import MEMBER_SEPARATOR, render_path
|
|
33
|
+
|
|
34
|
+
logger = logging.getLogger("dw")
|
|
35
|
+
|
|
36
|
+
# The `workflow=` values MiniMaxH3Blocks._workflow_map declares, split by the
|
|
37
|
+
# transformer partition each one denoises against - a `ref2va` step loads
|
|
38
|
+
# `transformer_ref` and nothing else, every other H3 workflow loads
|
|
39
|
+
# `transformer`. A workflow name not listed here is not checked
|
|
40
|
+
REFERENCE_WORKFLOWS = frozenset({"ref2va"})
|
|
41
|
+
KEYFRAME_WORKFLOWS = frozenset({"t2va", "fl2va"})
|
|
42
|
+
H3_WORKFLOWS = REFERENCE_WORKFLOWS | KEYFRAME_WORKFLOWS
|
|
43
|
+
|
|
44
|
+
# The token MiniMax puts in an adapter's file name to say which partition it
|
|
45
|
+
# was trained against. `ref2v` first: it is the longer match and a name
|
|
46
|
+
# carrying both is ambiguous rather than a keyframe adapter
|
|
47
|
+
REFERENCE_TOKEN = "ref2v"
|
|
48
|
+
KEYFRAME_TOKEN = "fl2v"
|
|
49
|
+
|
|
50
|
+
LORAS_KEY = "loras"
|
|
51
|
+
WEIGHT_NAME_KEY = "weight_name"
|
|
52
|
+
WORKFLOW_KEY = "workflow"
|
|
53
|
+
FROM_PRETRAINED_KEY = "from_pretrained_arguments"
|
|
54
|
+
VARIABLE_PREFIX = "variable:"
|
|
55
|
+
# Values another pass resolves; one still spelled out here is not this
|
|
56
|
+
# pass's complaint
|
|
57
|
+
_UNRESOLVED_PREFIXES = ("variable:", "item:", "previous_result:", "gather:")
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def _trained_for(weight_name):
|
|
61
|
+
"""Which partition an adapter's file name says it was trained against -
|
|
62
|
+
'reference', 'keyframe', or None when the name says neither."""
|
|
63
|
+
lowered = weight_name.lower()
|
|
64
|
+
if REFERENCE_TOKEN in lowered:
|
|
65
|
+
return "reference"
|
|
66
|
+
if KEYFRAME_TOKEN in lowered:
|
|
67
|
+
return "keyframe"
|
|
68
|
+
return None
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def _problem(workflow, weight_name):
|
|
72
|
+
"""(severity, message) for one adapter on one step, or None when the
|
|
73
|
+
pairing is right."""
|
|
74
|
+
trained = _trained_for(weight_name)
|
|
75
|
+
wants = "reference" if workflow in REFERENCE_WORKFLOWS else "keyframe"
|
|
76
|
+
if trained == wants:
|
|
77
|
+
return None
|
|
78
|
+
if trained is None:
|
|
79
|
+
return (
|
|
80
|
+
"warning",
|
|
81
|
+
f"'{weight_name}' names neither '{REFERENCE_TOKEN}' nor "
|
|
82
|
+
f"'{KEYFRAME_TOKEN}', so it cannot be checked against this "
|
|
83
|
+
f"step's '{workflow}' workflow. A '{workflow}' step denoises "
|
|
84
|
+
f"against the "
|
|
85
|
+
f"'{'transformer_ref' if wants == 'reference' else 'transformer'}' "
|
|
86
|
+
f"partition, and an adapter trained against the other one loads "
|
|
87
|
+
f"onto it without error and only degrades the result",
|
|
88
|
+
)
|
|
89
|
+
return (
|
|
90
|
+
"error",
|
|
91
|
+
f"'{weight_name}' is trained against the "
|
|
92
|
+
f"'{'transformer_ref' if trained == 'reference' else 'transformer'}' "
|
|
93
|
+
f"partition and this step runs the '{workflow}' workflow, which "
|
|
94
|
+
f"denoises against "
|
|
95
|
+
f"'{'transformer_ref' if wants == 'reference' else 'transformer'}'. "
|
|
96
|
+
f"MiniMax-H3 loads it anyway and the run succeeds - the only symptom "
|
|
97
|
+
f"is a worse result - so it is refused here. Use an adapter trained "
|
|
98
|
+
f"for this workflow (its name carries "
|
|
99
|
+
f"'{REFERENCE_TOKEN if wants == 'reference' else KEYFRAME_TOKEN}')",
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def _lora_problems(steps, source_indices, written=None, supplied=()):
|
|
104
|
+
"""Every adapter/workflow mismatch in an expanded step list, as
|
|
105
|
+
(severity, path, message).
|
|
106
|
+
|
|
107
|
+
`written` is the definition as the author wrote it and `supplied` the
|
|
108
|
+
argument names the caller passed: when the value arrived through a
|
|
109
|
+
variable the caller set, the path reported is `arguments.<name>`, where
|
|
110
|
+
they wrote it, rather than the step it landed in.
|
|
111
|
+
"""
|
|
112
|
+
written_steps = (written or {}).get("steps")
|
|
113
|
+
found = []
|
|
114
|
+
for index, step in enumerate(steps):
|
|
115
|
+
if not isinstance(step, dict):
|
|
116
|
+
continue
|
|
117
|
+
pipeline = step.get("pipeline")
|
|
118
|
+
if not isinstance(pipeline, dict):
|
|
119
|
+
continue
|
|
120
|
+
source = (
|
|
121
|
+
source_indices[index]
|
|
122
|
+
if source_indices is not None and index < len(source_indices)
|
|
123
|
+
else index
|
|
124
|
+
)
|
|
125
|
+
from_pretrained = pipeline.get(FROM_PRETRAINED_KEY)
|
|
126
|
+
workflow = (
|
|
127
|
+
from_pretrained.get(WORKFLOW_KEY)
|
|
128
|
+
if isinstance(from_pretrained, dict)
|
|
129
|
+
else None
|
|
130
|
+
)
|
|
131
|
+
if workflow not in H3_WORKFLOWS:
|
|
132
|
+
continue
|
|
133
|
+
loras = pipeline.get(LORAS_KEY)
|
|
134
|
+
if not isinstance(loras, list):
|
|
135
|
+
continue
|
|
136
|
+
name = step.get("name")
|
|
137
|
+
where = (
|
|
138
|
+
f" in member '{name}'"
|
|
139
|
+
if isinstance(name, str) and MEMBER_SEPARATOR in name
|
|
140
|
+
else ""
|
|
141
|
+
)
|
|
142
|
+
for position, lora in enumerate(loras):
|
|
143
|
+
if not isinstance(lora, dict):
|
|
144
|
+
continue
|
|
145
|
+
weight_name = lora.get(WEIGHT_NAME_KEY)
|
|
146
|
+
if not isinstance(weight_name, str) or weight_name.startswith(
|
|
147
|
+
_UNRESOLVED_PREFIXES
|
|
148
|
+
):
|
|
149
|
+
continue
|
|
150
|
+
problem = _problem(workflow, weight_name)
|
|
151
|
+
if problem is None:
|
|
152
|
+
continue
|
|
153
|
+
severity, message = problem
|
|
154
|
+
found.append(
|
|
155
|
+
(
|
|
156
|
+
severity,
|
|
157
|
+
_path_for(written_steps, source, position, supplied)
|
|
158
|
+
or render_path(
|
|
159
|
+
(
|
|
160
|
+
"steps",
|
|
161
|
+
source,
|
|
162
|
+
"pipeline",
|
|
163
|
+
LORAS_KEY,
|
|
164
|
+
position,
|
|
165
|
+
WEIGHT_NAME_KEY,
|
|
166
|
+
)
|
|
167
|
+
),
|
|
168
|
+
message + where,
|
|
169
|
+
)
|
|
170
|
+
)
|
|
171
|
+
return found
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
def _path_for(written_steps, source, position, supplied):
|
|
175
|
+
"""`arguments.<name>` when the adapter came from a variable the caller
|
|
176
|
+
set, else None - the value is reported where it was written."""
|
|
177
|
+
if not isinstance(written_steps, list) or source >= len(written_steps):
|
|
178
|
+
return None
|
|
179
|
+
step = written_steps[source]
|
|
180
|
+
pipeline = step.get("pipeline") if isinstance(step, dict) else None
|
|
181
|
+
loras = pipeline.get(LORAS_KEY) if isinstance(pipeline, dict) else None
|
|
182
|
+
if not isinstance(loras, list) or position >= len(loras):
|
|
183
|
+
return None
|
|
184
|
+
entry = loras[position]
|
|
185
|
+
reference = entry.get(WEIGHT_NAME_KEY) if isinstance(entry, dict) else None
|
|
186
|
+
if not isinstance(reference, str) or not reference.startswith(VARIABLE_PREFIX):
|
|
187
|
+
return None
|
|
188
|
+
variable = reference.removeprefix(VARIABLE_PREFIX)
|
|
189
|
+
return f"arguments.{variable}" if variable in (supplied or ()) else None
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
def adapter_errors(workflow_definition, source_indices=None, written=None, supplied=()):
|
|
193
|
+
"""Every adapter loaded onto the wrong checkpoint partition, as
|
|
194
|
+
[{path, message}]. The definition is the expanded, substituted one, so a
|
|
195
|
+
`for_each` member's own adapter is checked as it will run."""
|
|
196
|
+
return [
|
|
197
|
+
{"path": path, "message": message}
|
|
198
|
+
for severity, path, message in _lora_problems(
|
|
199
|
+
workflow_definition.get("steps") or [], source_indices, written, supplied
|
|
200
|
+
)
|
|
201
|
+
if severity == "error"
|
|
202
|
+
]
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
def adapter_warnings(
|
|
206
|
+
workflow_definition, source_indices=None, written=None, supplied=()
|
|
207
|
+
):
|
|
208
|
+
"""Every adapter whose name says nothing about what it was trained for,
|
|
209
|
+
as messages - valid, and said out loud because nothing at run time will."""
|
|
210
|
+
return [
|
|
211
|
+
f"{path}: {message}"
|
|
212
|
+
for severity, path, message in _lora_problems(
|
|
213
|
+
workflow_definition.get("steps") or [], source_indices, written, supplied
|
|
214
|
+
)
|
|
215
|
+
if severity == "warning"
|
|
216
|
+
]
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
def warn_adapters(workflow_definition):
|
|
220
|
+
"""Say the unrecognised-adapter warning where whoever asked for the run
|
|
221
|
+
can read it - a run started from the CLI or a rerun never passed through
|
|
222
|
+
the validate route."""
|
|
223
|
+
from .events import emit_warning
|
|
224
|
+
|
|
225
|
+
for message in adapter_warnings(workflow_definition):
|
|
226
|
+
emit_warning(message, kind="adapter_unrecognized")
|
|
@@ -116,7 +116,7 @@ def realize_args(arg, base_dir=None):
|
|
|
116
116
|
# library, and does it first: what it stands for is a path, so
|
|
117
117
|
# everything below - the media conventions, an object's
|
|
118
118
|
# 'from_file' - then handles it as the path it always was
|
|
119
|
-
if is_path_reference(v) or isinstance(v, list):
|
|
119
|
+
if is_path_reference(v) or isinstance(v, (list, dict)):
|
|
120
120
|
v = arg[k] = resolve_path_references(v, base_dir)
|
|
121
121
|
# A constant resolves under any argument name, and before the
|
|
122
122
|
# conventions below - what it holds is the value, not a file to load
|
|
@@ -212,7 +212,12 @@ def resolve_path_references(value, base_dir=None):
|
|
|
212
212
|
A list is walked in place, because an 'image' argument may be a list of
|
|
213
213
|
references and the key conventions hand the whole list to the loader at
|
|
214
214
|
once - by then it is too late for a reference to be recognized.
|
|
215
|
-
|
|
215
|
+
A {"location": ...} dict is walked the same way, for the same reason: the
|
|
216
|
+
media conventions hand the whole dict to the loader, which reads the
|
|
217
|
+
location out of it and joins it onto the workflow directory - so
|
|
218
|
+
{"location": "asset:x.png"} passed validation (which sees every string)
|
|
219
|
+
and then failed the run on a path that was never resolved. Other
|
|
220
|
+
dictionaries are left alone: realize_args recurses into those itself,
|
|
216
221
|
and each of their values reaches this on the way through.
|
|
217
222
|
"""
|
|
218
223
|
if is_asset_reference(value):
|
|
@@ -222,6 +227,8 @@ def resolve_path_references(value, base_dir=None):
|
|
|
222
227
|
if isinstance(value, list):
|
|
223
228
|
for index, item in enumerate(value):
|
|
224
229
|
value[index] = resolve_path_references(item, base_dir)
|
|
230
|
+
elif isinstance(value, dict) and is_path_reference(value.get("location")):
|
|
231
|
+
value["location"] = resolve_path_references(value["location"], base_dir)
|
|
225
232
|
return value
|
|
226
233
|
|
|
227
234
|
|