horde-engine 7.2.0__tar.gz → 7.2.2__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.
Files changed (284) hide show
  1. {horde_engine-7.2.0 → horde_engine-7.2.2}/PKG-INFO +6 -6
  2. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/_version.py +2 -2
  3. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/installation/installer.py +65 -2
  4. {horde_engine-7.2.0 → horde_engine-7.2.2}/pyproject.toml +5 -5
  5. {horde_engine-7.2.0 → horde_engine-7.2.2}/.gitignore +0 -0
  6. {horde_engine-7.2.0 → horde_engine-7.2.2}/LICENSE +0 -0
  7. {horde_engine-7.2.0 → horde_engine-7.2.2}/README.md +0 -0
  8. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/__init__.py +0 -0
  9. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/__pyinstaller.py +0 -0
  10. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/api.py +0 -0
  11. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/benchmark.py +0 -0
  12. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/beta_models.py +0 -0
  13. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/comfy_horde.py +0 -0
  14. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/config_path.py +0 -0
  15. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/consts.py +0 -0
  16. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/exceptions.py +0 -0
  17. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/__init__.py +0 -0
  18. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/adaptive_sampler_bound.py +0 -0
  19. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/comfy_events.py +0 -0
  20. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/comfy_patches.py +0 -0
  21. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/component_cache.py +0 -0
  22. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/component_materialize.py +0 -0
  23. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/component_restore.py +0 -0
  24. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/component_stability_probe.py +0 -0
  25. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/cpu_weight_retention.py +0 -0
  26. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/graph_utils.py +0 -0
  27. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/in_process.py +0 -0
  28. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/interface.py +0 -0
  29. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/model_dirs.py +0 -0
  30. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/phase_timing.py +0 -0
  31. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/progress_hook.py +0 -0
  32. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/results.py +0 -0
  33. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/sampler_options.py +0 -0
  34. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/sampling_lease.py +0 -0
  35. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/server_shim.py +0 -0
  36. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/shared_components.py +0 -0
  37. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/sigma_schedules.py +0 -0
  38. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/stage_graph.py +0 -0
  39. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/stage_payloads.py +0 -0
  40. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/standalone_vae.py +0 -0
  41. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/weight_prefetch.py +0 -0
  42. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/execution/zero_copy_load.py +0 -0
  43. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/feature_impact.py +0 -0
  44. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/feature_requirements.py +0 -0
  45. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/horde.py +0 -0
  46. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/initialisation.py +0 -0
  47. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/installation/__init__.py +0 -0
  48. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/installation/__main__.py +0 -0
  49. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/installation/manifest.json +0 -0
  50. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/installation/manifest.py +0 -0
  51. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/integrations/__init__.py +0 -0
  52. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/integrations/logfire_comfy_internals.py +0 -0
  53. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/integrations/logfire_setup.py +0 -0
  54. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/metrics.py +0 -0
  55. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_database/db_dep.json +0 -0
  56. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_database/db_embeds.json +0 -0
  57. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_database/diffusers.json +0 -0
  58. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_database/med_config.json +0 -0
  59. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/__init__.py +0 -0
  60. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/annotator_provider.py +0 -0
  61. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/base.py +0 -0
  62. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/civitai_adhoc.py +0 -0
  63. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/civitai_provider.py +0 -0
  64. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/civitai_records.py +0 -0
  65. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/codeformer.py +0 -0
  66. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/compvis.py +0 -0
  67. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/controlnet.py +0 -0
  68. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/controlnet_annotator.py +0 -0
  69. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/diffusers.py +0 -0
  70. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/esrgan.py +0 -0
  71. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/gfpgan.py +0 -0
  72. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/hyper.py +0 -0
  73. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/lora.py +0 -0
  74. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/miscellaneous.py +0 -0
  75. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/safety_checker.py +0 -0
  76. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/model_manager/ti.py +0 -0
  77. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/__init__.py +0 -0
  78. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/LICENSE +0 -0
  79. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/README.md +0 -0
  80. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/__init__.py +0 -0
  81. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_example.json +0 -0
  82. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_fg_all.json +0 -0
  83. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_joint_bg.json +0 -0
  84. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_cond_joint_fg.json +0 -0
  85. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_diff_bg.json +0 -0
  86. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_diff_bg_stop_at.json +0 -0
  87. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_diff_fg.json +0 -0
  88. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_fg_example.json +0 -0
  89. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_fg_example_rgba.json +0 -0
  90. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/examples/layer_diffusion_joint.json +0 -0
  91. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/layered_diffusion.py +0 -0
  92. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/__init__.py +0 -0
  93. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/attention_sharing.py +0 -0
  94. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/enums.py +0 -0
  95. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/models.py +0 -0
  96. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/lib_layerdiffusion/utils.py +0 -0
  97. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/pyproject.toml +0 -0
  98. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/comfyui_layerdiffuse/requirements.txt +0 -0
  99. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/LICENSE +0 -0
  100. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/README.md +0 -0
  101. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/__init__.py +0 -0
  102. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/VERSION +0 -0
  103. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/__init__.py +0 -0
  104. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/__init__.py +0 -0
  105. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/arcface_arch.py +0 -0
  106. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/arch_util.py +0 -0
  107. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/codeformer_arch.py +0 -0
  108. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/rrdbnet_arch.py +0 -0
  109. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/vgg_arch.py +0 -0
  110. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/archs/vqgan_arch.py +0 -0
  111. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/data/__init__.py +0 -0
  112. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/data/data_sampler.py +0 -0
  113. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/data/data_util.py +0 -0
  114. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/data/prefetch_dataloader.py +0 -0
  115. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/data/transforms.py +0 -0
  116. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/losses/__init__.py +0 -0
  117. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/losses/loss_util.py +0 -0
  118. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/losses/losses.py +0 -0
  119. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/metrics/__init__.py +0 -0
  120. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/metrics/metric_util.py +0 -0
  121. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/metrics/psnr_ssim.py +0 -0
  122. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/models/__init__.py +0 -0
  123. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/__init__.py +0 -0
  124. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/__init__.py +0 -0
  125. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/deform_conv.py +0 -0
  126. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/src/deform_conv_cuda.cpp +0 -0
  127. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/src/deform_conv_cuda_kernel.cu +0 -0
  128. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/dcn/src/deform_conv_ext.cpp +0 -0
  129. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/__init__.py +0 -0
  130. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/fused_act.py +0 -0
  131. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/src/fused_bias_act.cpp +0 -0
  132. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/fused_act/src/fused_bias_act_kernel.cu +0 -0
  133. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/__init__.py +0 -0
  134. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/src/upfirdn2d.cpp +0 -0
  135. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/src/upfirdn2d_kernel.cu +0 -0
  136. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/ops/upfirdn2d/upfirdn2d.py +0 -0
  137. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/setup.py +0 -0
  138. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/train.py +0 -0
  139. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/__init__.py +0 -0
  140. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/dist_util.py +0 -0
  141. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/download_util.py +0 -0
  142. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/file_client.py +0 -0
  143. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/img_util.py +0 -0
  144. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/lmdb_util.py +0 -0
  145. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/logger.py +0 -0
  146. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/matlab_functions.py +0 -0
  147. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/misc.py +0 -0
  148. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/options.py +0 -0
  149. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/realesrgan_utils.py +0 -0
  150. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/utils/registry.py +0 -0
  151. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/basicsr/version.py +0 -0
  152. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/__init__.py +0 -0
  153. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/__init__.py +0 -0
  154. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/align_trans.py +0 -0
  155. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/matlab_cp2tform.py +0 -0
  156. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/retinaface/retinaface.py +0 -0
  157. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/retinaface/retinaface_net.py +0 -0
  158. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/retinaface/retinaface_utils.py +0 -0
  159. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/__init__.py +0 -0
  160. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/face_detector.py +0 -0
  161. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/__init__.py +0 -0
  162. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/common.py +0 -0
  163. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/experimental.py +0 -0
  164. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/yolo.py +0 -0
  165. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/yolov5l.yaml +0 -0
  166. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/models/yolov5n.yaml +0 -0
  167. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/__init__.py +0 -0
  168. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/autoanchor.py +0 -0
  169. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/datasets.py +0 -0
  170. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/extract_ckpt.py +0 -0
  171. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/general.py +0 -0
  172. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/detection/yolov5face/utils/torch_utils.py +0 -0
  173. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/parsing/__init__.py +0 -0
  174. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/parsing/bisenet.py +0 -0
  175. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/parsing/parsenet.py +0 -0
  176. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/parsing/resnet.py +0 -0
  177. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/utils/__init__.py +0 -0
  178. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/utils/face_restoration_helper.py +0 -0
  179. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/utils/face_utils.py +0 -0
  180. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/facelib/utils/misc.py +0 -0
  181. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/r_chainner/README.md +0 -0
  182. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/r_chainner/__init__.py +0 -0
  183. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/r_chainner/gfpganv1_clean_arch.py +0 -0
  184. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/r_chainner/model_loading.py +0 -0
  185. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/r_chainner/stylegan2_clean_arch.py +0 -0
  186. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/facerestore_cf/r_chainner/types.py +0 -0
  187. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_controlnet_model_loader.py +0 -0
  188. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_image_loader.py +0 -0
  189. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_image_output.py +0 -0
  190. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_lora_loader.py +0 -0
  191. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_model_loader.py +0 -0
  192. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_stage_io.py +0 -0
  193. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_upscale_model_loader.py +0 -0
  194. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/nodes/node_v3_canary.py +0 -0
  195. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/__init__.py +0 -0
  196. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/comfy_node_inputs.json +0 -0
  197. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/constants.py +0 -0
  198. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/context.py +0 -0
  199. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/definition.py +0 -0
  200. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/__init__.py +0 -0
  201. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image.py +0 -0
  202. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/__init__.py +0 -0
  203. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/baselines.py +0 -0
  204. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/bindings.py +0 -0
  205. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/cascade.py +0 -0
  206. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/controlnet.py +0 -0
  207. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/creative_upscale.py +0 -0
  208. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/features.py +0 -0
  209. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/flux.py +0 -0
  210. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/qr_code.py +0 -0
  211. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/qwen.py +0 -0
  212. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/stable_diffusion.py +0 -0
  213. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/steps.py +0 -0
  214. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/image_gen/z_image.py +0 -0
  215. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/families/post_processing.py +0 -0
  216. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/graph.py +0 -0
  217. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/horde_compat.py +0 -0
  218. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/identifiers.py +0 -0
  219. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/node_schemas.py +0 -0
  220. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/patches.py +0 -0
  221. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/payload.py +0 -0
  222. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/payload_pp.py +0 -0
  223. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/registry.py +0 -0
  224. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/resolution.py +0 -0
  225. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline/sdk_adapter.py +0 -0
  226. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_controlnet.json +0 -0
  227. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_controlnet_annotator.json +0 -0
  228. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_controlnet_hires_fix.json +0 -0
  229. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_flux.json +0 -0
  230. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_image_facefix.json +0 -0
  231. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_image_upscale.json +0 -0
  232. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_qr_code.json +0 -0
  233. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_qwen.json +0 -0
  234. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_cascade.json +0 -0
  235. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_cascade_2pass.json +0 -0
  236. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_cascade_remix.json +0 -0
  237. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_diffusion.json +0 -0
  238. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_diffusion_hires_fix.json +0 -0
  239. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_diffusion_img2img_mask.json +0 -0
  240. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipeline_designs/pipeline_stable_diffusion_paint.json +0 -0
  241. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_controlnet.json +0 -0
  242. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_controlnet_annotator.json +0 -0
  243. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_controlnet_hires_fix.json +0 -0
  244. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_creative_upscale.json +0 -0
  245. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_flux.json +0 -0
  246. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_image_facefix.json +0 -0
  247. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_image_upscale.json +0 -0
  248. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_qr_code.json +0 -0
  249. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_qwen.json +0 -0
  250. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_cascade.json +0 -0
  251. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_cascade_2pass.json +0 -0
  252. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_cascade_remix.json +0 -0
  253. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_diffusion.json +0 -0
  254. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_diffusion_hires_fix.json +0 -0
  255. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_diffusion_img2img_mask.json +0 -0
  256. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_stable_diffusion_paint.json +0 -0
  257. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pipelines/pipeline_z_image.json +0 -0
  258. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/preload.py +0 -0
  259. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/profiling.py +0 -0
  260. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/py.typed +0 -0
  261. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pyinstaller_hooks/__init__.py +0 -0
  262. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/pyinstaller_hooks/hook-hordelib.horde.py +0 -0
  263. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/safety.py +0 -0
  264. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/safety_checker.py +0 -0
  265. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/settings.py +0 -0
  266. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/shared_model_manager.py +0 -0
  267. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/train.py +0 -0
  268. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/__init__.py +0 -0
  269. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/device_pinning.py +0 -0
  270. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/distance.py +0 -0
  271. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/dynamicprompt.py +0 -0
  272. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/fd_limits.py +0 -0
  273. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/gpuinfo.py +0 -0
  274. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/image_utils.py +0 -0
  275. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/ioredirect.py +0 -0
  276. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/logger.py +0 -0
  277. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/memory_trim.py +0 -0
  278. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/nvml.py +0 -0
  279. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/optional_deps.py +0 -0
  280. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/sanitizer.py +0 -0
  281. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/switch.py +0 -0
  282. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/torch_build.py +0 -0
  283. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/utils/torch_memory.py +0 -0
  284. {horde_engine-7.2.0 → horde_engine-7.2.2}/hordelib/vram_planning.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: horde-engine
3
- Version: 7.2.0
3
+ Version: 7.2.2
4
4
  Summary: A wrapper around ComfyUI to allow use by AI Horde.
5
5
  Project-URL: Homepage, https://github.com/Haidra-Org/hordelib
6
6
  Project-URL: Bug Tracker, https://github.com/Haidra-Org/hordelib/issues
@@ -679,11 +679,11 @@ Requires-Dist: aiohttp>=3.11.8
679
679
  Requires-Dist: alembic
680
680
  Requires-Dist: av>=16.0.0
681
681
  Requires-Dist: blake3
682
- Requires-Dist: comfy-aimdo==0.4.9
683
- Requires-Dist: comfy-kitchen==0.2.10
684
- Requires-Dist: comfyui-embedded-docs==0.5.3
685
- Requires-Dist: comfyui-frontend-package==1.45.15
686
- Requires-Dist: comfyui-workflow-templates==0.9.98
682
+ Requires-Dist: comfy-aimdo==0.4.13
683
+ Requires-Dist: comfy-kitchen==0.2.26
684
+ Requires-Dist: comfyui-embedded-docs==0.5.9
685
+ Requires-Dist: comfyui-frontend-package==1.48.6
686
+ Requires-Dist: comfyui-workflow-templates==0.11.31
687
687
  Requires-Dist: distro>=1.9.0
688
688
  Requires-Dist: einops
689
689
  Requires-Dist: filelock
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '7.2.0'
22
- __version_tuple__ = version_tuple = (7, 2, 0)
21
+ __version__ = version = '7.2.2'
22
+ __version_tuple__ = version_tuple = (7, 2, 2)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -4,6 +4,8 @@ import enum
4
4
  import hashlib
5
5
  import json
6
6
  import os
7
+ import shutil
8
+ import stat
7
9
  import subprocess
8
10
  import time
9
11
  import uuid
@@ -92,11 +94,72 @@ def _head_commit(repo_path: Path) -> str | None:
92
94
  return None
93
95
 
94
96
 
97
+ def _remove_tree_best_effort(path: Path) -> None:
98
+ """Recursively delete ``path``, clearing the read-only flag git sets on object files on Windows.
99
+
100
+ Failures are swallowed: every caller is discarding a staging directory whose survival is only
101
+ cosmetic, and must not turn a completed install into an error.
102
+ """
103
+
104
+ def _clear_readonly_and_retry(func: object, failed_path: str, _exc_info: object) -> None:
105
+ try:
106
+ os.chmod(failed_path, stat.S_IWRITE)
107
+ func(failed_path) # type: ignore[operator]
108
+ except OSError:
109
+ pass
110
+
111
+ shutil.rmtree(path, onexc=_clear_readonly_and_retry)
112
+
113
+
95
114
  def _clone_at_ref(repo_url: str, ref: str, target: Path) -> None:
115
+ """Clone ``repo_url`` at ``ref`` so a finished checkout appears at ``target`` all at once.
116
+
117
+ The clone lands in a process-unique staging directory beside the target and is renamed into
118
+ place only once the checkout is complete. The install locks serialise installers where the
119
+ filesystem honours them, but they are advisory: on filesystems that ignore them (network and
120
+ FUSE-backed mounts among others) concurrent installers otherwise clone into one directory and
121
+ sweep each other's half-written trees aside mid-clone. With the rename, a partial tree is never
122
+ visible under the final name: a concurrent installer sees either nothing or a complete clone,
123
+ and if another installer finishes the same target first, its clone stands and the caller's HEAD
124
+ verification judges it.
125
+ """
96
126
  target.parent.mkdir(parents=True, exist_ok=True)
127
+ _remove_dead_staging_dirs(target)
128
+ staging = target.parent / f".{target.name}.staging-{os.getpid()}-{uuid.uuid4().hex[:8]}"
97
129
  logger.info("Cloning repository: url={}, target={}", repo_url, target)
98
- _run_git(["clone", repo_url, target.name], target.parent)
99
- _run_git(["checkout", "--force", ref], target)
130
+ try:
131
+ _run_git(["clone", repo_url, staging.name], target.parent)
132
+ _run_git(["checkout", "--force", ref], staging)
133
+ try:
134
+ staging.rename(target)
135
+ except OSError:
136
+ if not target.exists():
137
+ raise
138
+ logger.info(
139
+ "Target appeared while cloning (another installer finished it first); "
140
+ "keeping the existing checkout: target={}",
141
+ target,
142
+ )
143
+ finally:
144
+ if staging.exists():
145
+ _remove_tree_best_effort(staging)
146
+
147
+
148
+ def _remove_dead_staging_dirs(target: Path) -> None:
149
+ """Delete staging directories for ``target`` whose owning installer is certainly gone.
150
+
151
+ A killed installer leaves its staging directory behind. Only directories untouched for longer
152
+ than the lock timeout are removed: a younger one may belong to a live installer this process
153
+ cannot see holding the lock (the same advisory-lock caveat that motivates staging in the first
154
+ place), and deleting it would recreate the mid-clone sweep the staging scheme exists to prevent.
155
+ """
156
+ cutoff = time.time() - LOCK_TIMEOUT_SECONDS
157
+ for stale in target.parent.glob(f".{target.name}.staging-*"):
158
+ try:
159
+ if stale.is_dir() and stale.stat().st_mtime < cutoff:
160
+ _remove_tree_best_effort(stale)
161
+ except OSError:
162
+ continue
100
163
 
101
164
 
102
165
  def _target_lock(target: Path) -> FileLock:
@@ -41,11 +41,11 @@ dependencies = [
41
41
  "alembic",
42
42
  "av>=16.0.0",
43
43
  "blake3",
44
- "comfy-aimdo==0.4.9",
45
- "comfy-kitchen==0.2.10",
46
- "comfyui-embedded-docs==0.5.3",
47
- "comfyui-frontend-package==1.45.15",
48
- "comfyui-workflow-templates==0.9.98",
44
+ "comfy-aimdo==0.4.13",
45
+ "comfy-kitchen==0.2.26",
46
+ "comfyui-embedded-docs==0.5.9",
47
+ "comfyui-frontend-package==1.48.6",
48
+ "comfyui-workflow-templates==0.11.31",
49
49
  "distro>=1.9.0",
50
50
  "einops",
51
51
  "filelock",
File without changes
File without changes
File without changes