* Implement MVP of Parallel uv installation
* Implement PY_CONCURRENT_DOWNLOADS
* Remove Flock for uv installs
* Make S3 pull/push parallel
* Refactor and allow to Cancel installation
* Dont print S3 in output if disabled
* Implement better error handling
* Polishing
* More polishing
* Implement error-handler for kill_tx_2.send()
* Fix and Format prev merge
* Presubscribe to all kill_tx's
We do it now before first event could fire
Meaning no events can be lost anymore
* Early print errors and safer error handling
* Return Err if installation failed
* Final changes
* Return error instead of just printing it
* Safer the way to acquire permit
* Fix compilation error
* Remove double error logs
* Search across all hosts in index. killpill on index pull
* Add retention period for service logs
* Remove console log
* monitor log_file when older than biggest retention period (job / log)
* Retention period deletes service and job logs
* Add setting to monitor logs out of s3
* Prepare sqlx
* Update ee repo ref
* Prepare sqlx
* Unused variables
* (python) Initially implement merge
Iterate overall all python paths and if same folder has same name multiple times,
then merge the content and put to <job_dir>/site-packages
Solves problem with imports for some dependencies.
Default layout (/windmill/cache/):
dep==x.y.z
└── X
└── A
dep-ext==x.y.z
└── X
└── B
In this case python would be confused with finding B module.
This function will convert it to (/<job_id>):
site-packages
└── X
├── A
└── B
This way python has no problems with finding correct module
* Better error-handling
* Optimize and fix bug
* Update backend/windmill-worker/src/python_executor.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Update backend/windmill-worker/src/python_executor.rs
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* Polish
* Add path to PathBuf
* Add & before PathBuf
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* feat(backend): implement flow scripts
* conditionally resolve reduced flow value
* conditionally use flow scripts based on the min worker version
* grant all to `flow_{version_lite,node}`
* do not silently discard errors
* env: add flow script feature flag
* flow script on cloud automatically
---------
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>