Commit Graph

1640 Commits

Author SHA1 Message Date
Ruben Fiszel
f1571fd07e fix: improve suspended flow handling when missing next step 2023-11-17 13:13:05 +01:00
Ruben Fiszel
518a8396b3 feat: dedicated workers for flows (#2637)
* dw for flows

* dw for flows

* all

* sqlx

* sqlx

* dedicated workers

* more comments
2023-11-17 10:00:04 +01:00
Ruben Fiszel
0b518f8df7 improve empty inner loops handling 2023-11-15 14:38:02 +01:00
Ruben Fiszel
a285ca24b0 feat: cache postgres connection (#2621)
* feat: cache pg connection

* fix wmill dev

* adjust timings

* don't keep connection alive if not latest con

* reduce sleep
2023-11-13 19:40:25 +01:00
Ruben Fiszel
3d7b3d74bc feat: add dedicated worker support for deno 2023-11-11 15:19:27 +01:00
Ruben Fiszel
224351e81c fix: handle console logs in dedicated workers 2023-11-11 13:39:06 +01:00
Ruben Fiszel
7459ab3b59 fix: support digit prefixed script in python 2023-11-10 20:51:28 +01:00
Ruben Fiszel
6e39da89fe feat: exit dedicated worker upon new deployment 2023-11-10 20:41:43 +01:00
Ruben Fiszel
fcf6d6b94b fix dedicated worker dependency jobs 2023-11-10 18:38:10 +01:00
Ruben Fiszel
c65a90e41a fix: optimize single step iterative forloops (#2596)
* cc

* fixed
2023-11-10 13:17:39 +01:00
HugoCasa
2fe623cf6b feat: add sql server (#2604)
* feat: add sql server

* feat: mssql test, db schema, AI

* chore: update to latest parser

* fix: clean mssql executor
2023-11-10 11:16:13 +01:00
Guillaume Bouvignies
f113851aa1 fix: iter args conflicts with external variables named iter (#2605)
* fix: iter args conflicts with external variables named iter

* Similar logic in frontend and fix backend

* frontend new object

* avoid another clone
2023-11-10 10:53:22 +01:00
Ruben Fiszel
c164969764 results.x returns null in non trivial evals 2023-11-09 23:36:04 +01:00
Guillaume Bouvignies
c22ca551d0 fix: Pythong script in dedicated worker fails with more than 1 arg (#2588) 2023-11-08 10:08:42 +01:00
Guillaume Bouvignies
54cc811405 feat: Add toggle to optionally mute error handler for cancelled jobs (#2567)
* fix: Fix canceled flag in completed_job table

* Add toggle to workspace settings
2023-11-06 18:24:51 +01:00
Ruben Fiszel
aeacaa2b01 fix: improve dedicated workers 2023-11-06 11:21:36 +01:00
Tsvetomir Bonev
dc926a3b78 fix: return non-integer sleep error directly (#2558) 2023-11-04 08:44:38 +01:00
Tsvetomir Bonev
e3de82058b fix: fail on non-integer sleep value (#2556) 2023-11-04 00:49:57 +01:00
Ruben Fiszel
765568f83a fix: subflow with cache can not be considered simple 2023-11-03 22:06:49 +01:00
Ruben Fiszel
64e98367a8 fix: support results[<x>] + export more metatada for scripts 2023-11-03 21:53:58 +01:00
Ruben Fiszel
7c8c048ea0 fix: make python imports work at any nesting level 2023-11-03 20:10:14 +01:00
Ruben Fiszel
d3a4072488 deactive forloop pruning in-presence of sleep or suspend 2023-11-02 08:32:45 +01:00
Ruben Fiszel
bc8f167674 fix: fix powershell args passing 2023-11-01 17:19:15 +01:00
Guillaume Bouvignies
7b7cf8b050 feat: Ability to restart flow on loop/branchall iteration (#2526)
* feat: Ability to restart flow on loop/branchall iteration

* Add popover to frontend

* refresh restart button onSelectedJobStepChange

* Display branch names for branchall

* Fix flow preview

* Fix compile break

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2023-10-31 15:27:54 +01:00
Ruben Fiszel
fb95c97463 feat: invalidate result cache on flow or script change 2023-10-31 12:49:31 +01:00
Guillaume Bouvignies
29ea5f0f7e feat: Restartable flows (#2514)
* feat: Restartable flows for simple sequential flows

* check if status of previous module to initialize last_result

* compute result of forloop flows when needed

* Add possibility to restart a flow preview

* Re-compute leaf jobs when needed

* FE polishing

* Add tooltip on button and fix module not found error in preview

* Handle ListJob when computing leaf job from db

* Fix unused imports

* ./build_openapi.sh

* sqlx prepare
2023-10-30 12:51:56 +01:00
Ruben Fiszel
20a6e7414e improve slow pull metrics 2023-10-30 12:20:40 +01:00
Ruben Fiszel
73d0eb24ed nit metrics 2023-10-28 16:21:30 +02:00
Ruben Fiszel
b525548de0 add more metrics 2023-10-28 15:35:45 +02:00
Ruben Fiszel
638fa64062 add dedicated worker sender channel queue 2023-10-28 14:15:42 +02:00
Ruben Fiszel
8f9bc6d3d3 feat: refactor metrics and add performance debug metrics (#2520)
* all

* feat: add debug metrics
2023-10-27 21:00:28 +02:00
Ruben Fiszel
bb5aad4eb8 associate metrics with tags and not langs anymore 2023-10-26 23:44:25 +02:00
Ruben Fiszel
35665cf102 fix: move keep job directories and expose debug metrics to instance settings UI 2023-10-26 13:08:39 +02:00
Ruben Fiszel
57dc62b298 fix: prometheus metrics are an instance settings 2023-10-25 23:32:47 +02:00
Ruben Fiszel
6ee1addea3 improve key not found error 2023-10-25 09:59:49 +02:00
Ruben Fiszel
4a4b3bea0c fix: do not share http_client in js_eval runtime 2023-10-25 09:51:20 +02:00
Guillaume Bouvignies
7441e407d4 fix: concurrency limit EE feature warning (#2505)
* fix: concurrency limit EE feature warning

* fix deprecated usage

* skip serializing empty optional
2023-10-24 17:59:16 +02:00
Ruben Fiszel
65b36baf41 feat: dedicated worker for python (#2492)
* update

* all
2023-10-23 20:21:16 +02:00
HugoCasa
b076e093df feat: add unique id (#2483)
* feat: add unique id

* fix: sqlx prepare

* feat: add disable option

* fix: cron schedule
2023-10-23 17:05:54 +02:00
Guillaume Bouvignies
bd69bafe59 feat: Priority queue (#2476)
* BE v1 for priority queue

* Add FE prototype

* sqlx prepare

* Disply priority badge in job detail view

* sqlx prepare post merge

* Add priority number input field next to toggle

* increase dnd timeout for app events

* Update db migration

* Fix FE import

* Add badge to script/flow details page and fix EE-only mention in tooltip

---------

Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2023-10-23 14:22:59 +02:00
Ruben Fiszel
9dd210478e feat: dragndrop component on creation 2023-10-21 22:50:19 +02:00
Ruben Fiszel
7cbf169054 fix: allow superadmin to run inline scripts in repo they are not part of 2023-10-21 14:48:51 +02:00
Ruben Fiszel
d035c5d433 fix: fix app reactivity 2023-10-21 14:33:07 +02:00
Guillaume Bouvignies
3443cf5ba5 feat: Flow approvers user groups can be JS InputTransforms (#2468)
* backend auth user validation

* Approval page suggesting login

* BE impl to support groups

* Add FE for setting suspend on flow step

* handle admin as a specific case

* restrict feature to entperprise only

* group names as static input transforms

* Suspend settings with tabs

* Update enterprise edition check

* cleanup

* FE InputTransformForm

* BE InputTransform

* Fix FE

* cleanup

* ArgInput list multiselect

* cleanup

* reset vscode settings
2023-10-20 01:39:31 +02:00
Guillaume Bouvignies
5f5604a2aa feat: Approval step optionally require logged-in user (#2462)
* backend auth user validation

* Approval page suggesting login

* BE impl to support groups

* Add FE for setting suspend on flow step

* handle admin as a specific case

* restrict feature to entperprise only

* group names as static input transforms

* Suspend settings with tabs

* Update enterprise edition check

* cleanup

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2023-10-20 00:20:20 +02:00
Ruben Fiszel
745524f924 fix: fix handling of undefined values in input transforms by serde 2023-10-19 15:37:15 +02:00
Ruben Fiszel
fbfa08cb5a fix: fix mocking for workflows 2023-10-18 21:44:10 +02:00
Guillaume Bouvignies
09e29d6b3c feat: Mute workspace error handler for flows and scripts (#2458)
* feat: Mute workspace error handler for flows and scripts

* implement BE muting

* Add tooltip to bell icon

* change field name to ws_error_handler_muted

* revert new field for queue table

* Error when error handler not set

* extract svelte component and use flow table column

* Fix flow error handler result arg
2023-10-17 22:07:13 +02:00
Ruben Fiszel
c15aca19e9 improve error handling after refactor 2023-10-16 18:40:01 +02:00
Ruben Fiszel
2ee57f3f84 feat: refactor entirely json processing in favor or rawjson to handle larger payloads (#2446)
* raw json

* raw json

* raw json

* raw json

* the big rawjson rewrite

* resolve merge conflicts

* all

* progress

* progress

* all compile

* remove mut

* remove mut

* remove mut

* arc queuedjob

* finish

* finish

* finish

* fixes

* progress

* fix result

* small fixes

* small fixes

* fix tests

* fix tests

* fix tests

* optimize eval timeout

* optimize eval timeout

* optimize eval timeout

* handle big args and result in get jobs

* improve args

* fix

* fix

* fix tests

* fix tests

* done

* add bigquery to native picker

* add bigquery

---------

Co-authored-by: gbouv <guillaume@windmill.dev>
2023-10-16 10:46:55 +02:00