* feat: Multiplayer deploy collision warning
Show warning with diff viewer if 2+ users try to deploy flow/script/app at the same time
In other words, if user A and user B started editing same flow/script/app and user A deployed it,
user B will get warning if they try to deploy as well.
* Add warning for scripts
* Add `deployedBy` to Apps
* Format
* Fix advanced deployment on scripts
* Write comments and cleanup
* feat(frontend): unify all triggers UX and simplify flow settings (#4259)
* feat(frontend): added list of triggers in the flow graph
* feat(frontend): added list of triggers in the flow graph
* feat(frontend): clean up
* feat(frontend): improve UX
* feat(frontend): triggers
* feat(frontend): triggers
* feat(frontend): done
* feat(frontend): fix trigger when position when a preprocessor is presetn
* Glm/rework flow settings v2 (#4497)
* fat(frontend): simplify flow settings menu
* improve scroll
* changing mute toggle
* Add advanced settings badge
* Add nord theme colors
* Add bage for advanced options
* fix minor issue
* fix minor issue
* Add triggers menu to flow settings
* Add quick trigger access
* remove triggers in flow settings
* fix minor issue
* Move triggers settings to flow right panel
* polishing
* fix unset store
* remove save up to for triggers
* fix padding
* reset default tag color
* remove custom select component
* revert path change
* revert section modif
* Revert unused feature
---------
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home>
* Connect top bar cron to schedules settings
* Turn copilot into node
* fix copilot placement
* remove useless import
* fix center copilot
* fix binding
* remove copilot on top of preprocessor
* render copilot node on condition
* quickfix
* remove copilot node
* fix minor issues
* fix route count update
* fix schedule sync
* harmonize colors
* fix alignment and add edges
* recenter node summary
* fix schedules sync
* Add id title
* all
* all
* all
* iteration
* all
* all
* done
* fix
* more fixes
---------
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
* Update ScriptBuilder.svelte
* Remove `onMount` for flows
* Use version instead of last_updated_at in flows
* Use only versions for apps
* Fetch latest data in Diffs in Apps
* Optimize with (script/flow/app)GetLatestVersion
Create several new endpoints, that returns just latest version without rest of the history
* Sync Diffs with deployed
* Improve Diff's data
* Use `getFlowLatestVersion`
* fix failing endpoints for deployed collision warning
---------
Co-authored-by: Faton Ramadani <faton.ramadani14@gmail.com>
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
* feat: Multiplayer deploy collision warning
Show warning with diff viewer if 2+ users try to deploy flow/script/app at the same time
In other words, if user A and user B started editing same flow/script/app and user A deployed it,
user B will get warning if they try to deploy as well.
* Add warning for scripts
* Add `deployedBy` to Apps
* Format
* Fix advanced deployment on scripts
* Write comments and cleanup
* feat(frontend): unify all triggers UX and simplify flow settings (#4259)
* feat(frontend): added list of triggers in the flow graph
* feat(frontend): added list of triggers in the flow graph
* feat(frontend): clean up
* feat(frontend): improve UX
* feat(frontend): triggers
* feat(frontend): triggers
* feat(frontend): done
* feat(frontend): fix trigger when position when a preprocessor is presetn
* Glm/rework flow settings v2 (#4497)
* fat(frontend): simplify flow settings menu
* improve scroll
* changing mute toggle
* Add advanced settings badge
* Add nord theme colors
* Add bage for advanced options
* fix minor issue
* fix minor issue
* Add triggers menu to flow settings
* Add quick trigger access
* remove triggers in flow settings
* fix minor issue
* Move triggers settings to flow right panel
* polishing
* fix unset store
* remove save up to for triggers
* fix padding
* reset default tag color
* remove custom select component
* revert path change
* revert section modif
* Revert unused feature
---------
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home>
* Connect top bar cron to schedules settings
* Turn copilot into node
* fix copilot placement
* remove useless import
* fix center copilot
* fix binding
* remove copilot on top of preprocessor
* render copilot node on condition
* quickfix
* remove copilot node
* fix minor issues
* fix route count update
* fix schedule sync
* harmonize colors
* fix alignment and add edges
* recenter node summary
* fix schedules sync
* Add id title
* all
* all
* all
* iteration
* all
* all
* done
* fix
* more fixes
---------
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
* Update ScriptBuilder.svelte
* Remove `onMount` for flows
* Use version instead of last_updated_at in flows
* Use only versions for apps
* Fetch latest data in Diffs in Apps
* Optimize with (script/flow/app)GetLatestVersion
Create several new endpoints, that returns just latest version without rest of the history
* Sync Diffs with deployed
* Improve Diff's data
* Use `getFlowLatestVersion`
---------
Co-authored-by: Faton Ramadani <faton.ramadani14@gmail.com>
Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
Co-authored-by: Guilhem <guilhem@mbp-de-windmill.home>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
* fix: hide draft only scripts to ops and in pickers/flow builder
* fix: default to hiding draft only scripts
* fix: hide script drafts from ops
* fix: generalize to hide draft only/no main func by default
* fix: archived openapi nit
* Add concurrency_key table and field to payload
Add a new table custom_concurrency_key for storing concurrency keys on a
per job basis. Add the field to the job payload to populate the table on
creation of a new job.
* Rename to custom_concurrency_key
Be more explicit about the nature of the option variable by calling it
a more appropriate name.
* Delete concurrency_keys on delete_expire_items
* Propagate db errors up
* Add ref to EE changes
* update sqlx
* Add concurrency_key to tests
* Revert renaming of FlowValue field
FlowValue field concurrency_key must be named concurrency_key for
serialization purposes.
* Remove debug print statement
* Get concurrency_key from Job
Whether it is a Completed job or a queued one, add a ways to get the
associated concurrency key
* Add endpoint to get concurrency_key
* Add endpoint and button to get job concurrency_key
Add a line with a link on the FlowMetadata that goes to the
concurrency_groups page. add endpoint to get the concurrency_key of a
job
* Merge concurrency_key tables into one
migration + change all related querrys
* Add concurrency plot to the runs page
* Prepare sqlx
* Add concurrency Key filter on UI
* Prepare sqlx
* Prepare sqlx
* Fix filter and order query
The limit makes more sense if we cut the older rows, so order by
started_at
* Factor interpolation to reuse on concurrency key
Factor the arg interpolation logic into a function and finish the
processing of concurrency key before insertion
* Remove old concurrency key processing logic
* Second transaction with userdb
To send all concurrency intervals but revealing only uuids of accessible
jobs, make a second transaction with the userdb.
* Remove old second endpoint
the intervals endpoint now also gets the concurrencyt key information
for all jobs
* Show external jobs
* Put filters into a dropdown
Create a ToggleButtonMore and put elements into a dropdown
* Add toggle between two graphs
* Add filter functionality to concurrency graph
* Improve concurrency graph front
* Fix concurrency groups page
* Prepare sqlx
* Add ref to ee
* Change migration to create new table instead
Instead of renaming the custom_concurrency_key_ended atble, we create a
new table and we will delete custom_concurrency_key_ended in the future
when it is no longer linked to any jobs
* Do small UI improvements
* Fix range fusion by not filtering past jobs
Instead of filtering jobs in the backend on a startedAfter value, limit
the query to 1000 and query all possible towards the past to get a good
context for the graph in most sane situations
* Improve frontend UI
* feat: Add workspace settings to sync script to git repo on deployment
* track deployment callback jobs in separate table
* sqlx prepare
* update deployment_metadata table
* Point to hub script
* Add details to the settings page and restrict to EE only
* cleanup unused impots
* Flows and Apps are now pushed to GH as well
* Ignore scripts/flows/apps located in private user folders