Commit Graph

798 Commits

Author SHA1 Message Date
dieriba
4c6f60010f feat: add description option to schedule page (#5500)
* add description option to schedule page

* add description property to schedule trigger type

* fix ci

* update: use textare for description and add down migration

* perf: use jsonb instead of json, and use query_as macro sqlx instead of function variant

* update .sqlx

* nits

* fix: missing comma in description
2025-03-27 09:47:34 +00:00
dieriba
e920101107 feat: api key/basic/hmac auth for http triggers (#5476)
* feat: add webhook configuration in front and start handling logic in back

* feat: add generic implementation

* update: add stripe provider working on auth

* merge main

* handling new webhook, add generic implem

* feat: add auth method and api key and handling custom authentication

* nits

* added generic implem for webhook provider

* feat: added resource webhook_auth to handle http route auth, refactored backend code

* update sqlx

* fix: zoom and twitch challenge request event, call verify function

* removing webhook name to make it more general, properly added custom auth option alongside windmill_auth option

* update .sqlx

* update deply to for http routes

* update .sqlx

* add different auth method for http routes

* add custom script method and custom signature fixed bug with webhook auth

* update auth options

* update .sqlx

* add new auth method

* update .sqlx

* refacto function and fix frontend bug

* fix typo, update .sqlx and handle pototential error

* nits

* nits

* add script template flow

* Update frontend/src/lib/components/triggers/http/utils.ts

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* nits

* update: remove wrong trigger type and use right icon for sqs trigger

* nits

* update: .sqlx

* update: reunite flow and script logic for script placeholder value replacement

* Update backend/windmill-api/src/http_trigger_auth.rs

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>

* delete vite config

* remove darks mode observer

* update: add new option to capture panel for http route

* nits

* revert

* nits

* typo

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Co-authored-by: HugoCasa <hugo@casademont.ch>
2025-03-27 08:43:42 +00:00
Alexander Petric
a5eb3d403c gh app import export from other instance + ui improvements (#5518)
* updating hub paths for git sync scripts supporting github app

* removing accidentally committed file

* gh app import export from other instance + ui improvements

* update repo ref

* sqlx + ellipsis
2025-03-26 20:41:10 -07:00
Alexander Petric
88cc3a801b updating hubPaths for github app support (#5512) 2025-03-26 21:50:57 +01:00
HugoCasa
7a62527575 feat: remove stripe dep (#5508)
* remove automatic_billing

* fix build

* fix build

* update ee ref

* Update frontend/src/lib/components/settings/PremiumInfo.svelte

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-03-26 18:38:47 +01:00
Alexander Petric
b822c66262 feat: github app token instead of pat for git sync (#5279)
* feat: github app token instead of pat for git sync

* sqlx error

* revert

* refactor

* refactor

* frontend component create resource from installation

* use resource editor

* next

* refactor

* ce with ee ff

* npm check

* also update other fields in var

* quicksave

* refactor: simplifications part 1

* cleanup

* sqlx

* update openapi

* small fix

* moving all UI components into one popover

* ee ref

---------

Co-authored-by: Alex <alex@Charlottes-Laptop.local>
2025-03-25 22:36:54 +01:00
HugoCasa
234b20f8bd feat: autocomplete v2 + AI chat (#5323)
* feat: autocomplete v2

* wip chat

* wip

* feat: chat ai review and apply

* feat: multiple providers

* update cli gen

* fixes

* improvements

* fix build

* fix issues

* fix build

* final nits

* nits

* nits
2025-03-25 19:53:48 +01:00
Ruben Fiszel
5573d88695 perf: cache workspace premium check 2025-03-25 02:00:51 +01:00
Diego Imbert
e868fe2bf5 feat: list references upon renaming a script or a flow (#5487)
* Refactored flow_workspace_runnables to more generic workspace_runnable_dependencies

* list flows referencing an item upon renaming it

* Refactor with two exclusive columns to avoid breaking FK constraints

* Show apps depending on item upon renaming

* sqlx prepare

* list-disc instead of •

* on delete and on update cascade

* displayPathChangedWarning oneOf check instead noneOf

* combine migrations + add "on update cascade" to flow fk

* unique index on app dependencies to avoid duplicates

* create new workspace_runnable_dependencies instead of renaming old table

* Add "looking for references" loading msg

* Revert "create new workspace_runnable_dependencies instead of renaming old table"

This reverts commit 015c38ca8f.

* flow_workspace_runnables view for backwards compatibility

* Add warning for script imports on rename

* support import dependency tracking in deno

* number of using scripts / flows / apps tooltip

* forgot sqlx prepare

* delete app-related rows in down migration
2025-03-24 22:08:19 +01:00
Ruben Fiszel
ec11d577c6 fix: improve cancel for flows with many substeps 2025-03-24 22:00:15 +01:00
Ruben Fiszel
3edca4bc91 perf: optimize number of queries needed for job run (#5504)
* optPerf

* update sqlx

* update sqlx
2025-03-24 20:12:26 +01:00
wendrul
6634c82e20 feat: backend arg schema validation (#5455)
* Make schema validation struct

Schema Validation rules that are constructed from the schema or from the
MainArgSig(TODO).

* Make other validator builder

* Fail dependency job like with lockfile failing for schema validator

* Add last types + tests

* Remove unused dependency

* fix typos

* Migration ID was colliding with another, changed it manually

* Add Oneof + other fixes

* fix: cache for querying scripts correclty handles ScriptMetadata

* Add cache for schema validation from main arg sig

* Prepare sqlx

* Remove default features

* Feature flags

* Fix down migration table name

* cleanup: put validation logic inside a function

* Refactor to cache the should_validate boolean

Changed the schemavalidators cache to take in an
Option<SchemaValidator>, effectively storing the `should_validate_schema` information.

Also pass the schema when avaialble to construct the schema validator

* Add other job kinds to u8 cache key just in case

* Only cache if not preview
2025-03-19 19:41:10 +01:00
HugoCasa
551c0ecd6a perf: improve perf of get completed flow node (#5418)
* perf: improve perf of get completed flow node

* better

* nit

* nits

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-03-19 10:51:30 +01:00
Ruben Fiszel
fb532e0b85 nit move away from using views 2025-03-19 10:48:43 +01:00
Ruben Fiszel
ead1592399 fix: fix delete completed job 2025-03-19 10:10:16 +01:00
Ruben Fiszel
880db319e8 feat: filter by worker + backend perf opt (#5489)
* all

* all

* all

* refactor

* sqlx

* ref

* impr

* fix

* fix

* fix

* ee private
2025-03-19 09:55:53 +01:00
Ruben Fiszel
8a7b119d4d improve concurrency limits II (#5485) 2025-03-17 17:24:50 +01:00
Ruben Fiszel
eee7d33bd8 fix: improve concurrency limit check performances 2025-03-17 00:53:14 +01:00
Ruben Fiszel
e8bb307502 fix: improve row lock contention on concurrency counter 2025-03-16 17:20:39 +01:00
HugoCasa
4f43b1984f feat: keep captures across drafts and deploys (#5482) 2025-03-14 15:17:48 +01:00
dieriba
9dba57d546 feat: add raw string option and wrap option for http trigger (#5467)
* add new column

* handled worskpaced route

* update .sqlx

* update: rename migration file, rewrite query for checking existing route path key, add copy button url for each route trigger

* update .sqlx

* update sql query

* update .sqlx

* fix: prevent precedence on query

* nits

* update .sqlx

* update query

* Update http_triggers.rs

* nits

* handling two new option in http route 'wrap_body' and 'raw_string'

* update sqlx and add wrap_body and raw_string to http route

* fix: undefined route path

* nits: remove unnecessay ref as type implement copy

* nits

* fix: undefined protection

---------

Co-authored-by: HugoCasa <hugo@casademont.ch>
2025-03-13 20:39:54 +00:00
dieriba
61a5ceaba3 feat: option to prefix http route with workspace id (#5461)
* add new column

* handled worskpaced route

* update .sqlx

* update: rename migration file, rewrite query for checking existing route path key, add copy button url for each route trigger

* update .sqlx

* update sql query

* update .sqlx

* fix: prevent precedence on query

* nits

* update .sqlx

* update query

* Update http_triggers.rs

* nits

---------

Co-authored-by: HugoCasa <hugo@casademont.ch>
2025-03-11 15:24:22 +00:00
Ruben Fiszel
11ed81a6c7 nit zombie job monitoring 2025-03-11 07:08:28 +01:00
Ruben Fiszel
0068087b81 improve slightly index creation 2025-03-11 06:35:57 +01:00
dieriba
6d64bd9ad1 use-exists-function-for-folder-and-improve-error-handling (#5464)
* update: removing try and catch for checkExistalready fn and use exist function folder instead of get folder for folder kind

* update .sqlx
2025-03-10 12:38:11 +01:00
Alexander Petric
8dbe0fa644 feat(frontend): pick image from workspace storage bucket (#5382)
* feat(frontend): pick image from workspace storage bucket

* also upload

* update policy for unauthed s3 download

* sqlx prep

* sqlx prep

* force policy

* no need for ee

* image picker

* Update frontend/src/lib/components/apps/editor/settingsPanel/InputsSpecEditor.svelte

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* field not needed

* feature flag

* filter for image files

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-03-06 11:53:53 +01:00
dieriba
5c39037aea feat: MQTT triggers (#5277)
* first commit

* update migration mqtt

* chore: update dependencies

* add cli support and update schema for mqtt

* update: casing style

* update: rename get_resource function and moving to resource.rs

* feat:

* feat: refactored

* feat: add ready endpoints for workers to enterprise

* feat: handle connection to server

* fix: main.rs

* feat: added support v5

* feat: 🚧 updated .github, handle more case for v5 and handle v3

* feat: handled client, update script helper

* update .sqlx

* refactor: added generic implement and trait to remove redundant code, misses client impleme

* feat: remove optinal property update test function

* feat: done

* handle client certificate

* minor fix

* fix: tls and mtls

* fix: min topic len in frontend

* Update frontend/src/lib/components/triggers/mqtt/MqttEditorConfigSection.svelte

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* Update backend/windmill-api/openapi.yaml

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* Update backend/windmill-api/src/mqtt_triggers.rs

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* update openapi, and script_helper.ts

* fix: toggle button and update mqtt migration

* nits: remove postgres type and only relies on serde

* fix: timeout connection

* fix typo and captures

* fix: capture table reactivity

* handle more mqtt v5 option

* nits: remove clone method

* update: better naming

* nits: display tooltip qos

* fix: hanle tls connection with natively

* update: add documentation links for qos and topics

* fix tooltip and add default value

* update: shoz preprocessor only if selected in capture table

* nits: show mqtt icon in resource related componenets

* update hub link and repo ref

* fix: unused var

* update ee ref

* fix: give good reference id for script hub

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Clement Zhang <clement.zhang2@gmail.com>
2025-03-04 23:52:47 +01:00
Alexander Petric
e9044f0b9b feat(backend): option to invalidate all sessions on logout (#5419)
* feat(backend): option to invalidate all sessions on logout

* lazy static

* Update backend/.sqlx/query-8cccb31aa56af16af675c692bf4e14b297d2caeafd1c4e4b1584f3bc9ff4c563.json

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* sqlx

* sqlx

* all -> invalidate-all

* add audit log

* rename env var

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-03-04 23:47:33 +01:00
Alexander Petric
534a8249d6 feat: more controls on setting token duration (#5421)
* allow setting max session length

* more options for expiration

* sqlx

* option to invalidate all old sessions on new session

* sqlx update script on mac

* order

* add audit log

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-03-04 20:08:42 +01:00
Ruben Fiszel
fba9e7ef03 fix: improve cancel performance 2025-03-03 23:50:13 +01:00
Ruben Fiszel
b601883bc0 fix sqlx 2025-03-03 14:51:51 +01:00
HugoCasa
7bf9e25ede feat: track workspace runnables used in flows (#5369)
* feat: track workspace runnables used in flows

* track script hash

* weird

* do it with lock

* Revert "feat: add support for | None and Optional in python (#5361)"

This reverts commit 9736355d5f.

* Revert "Revert "feat: add support for | None and Optional in python (#5361)""

This reverts commit bb8f709894.

* update openapi

* delete old in lock_modules + don't track hub scripts
2025-02-27 10:01:12 +01:00
Ruben Fiszel
c8a959691c feat: limit the number of times a job can be restarted (3) after loss of pings 2025-02-25 16:35:29 +01:00
Ruben Fiszel
fd1cfc0df5 bench.sh 2025-02-24 01:20:20 +01:00
Ruben Fiszel
b8e6d0da79 feat: make flow lock deployment error visible in UI 2025-02-22 15:02:16 +01:00
Alexander Petric
ee4a9c6592 teams cleanup cleanup (#5330)
* sqlx

* repo ref

* adding teams channel to criticalerrorchannel in non-ee
2025-02-19 19:01:18 +01:00
dieriba
58a67a3ac0 feat: SQS triggers (#5182)
* feat: first commit

* fix: npm check

* fix: openapi file

* feat: update openapi and migration

* feat: basic implementation done

* fix: fix: no used function when no feature

* feat: capture done

* Update capture.rs

* nits: change sqs trigger

* fix: make migration great again

* feat: add message attributes

* feat: nits: fix error messages, remove console.log and add try catch

* update sqs icon and ee feature for sqs_trigger

* update: change sqs name casing and added test connection button

* nits: update Icon and add create from template button

* fix: ci build and error compilation

* update migration type sqs

* update link on create from template button for sqs, add archive in workspace export and update sqlx

* fix: ci

* Update SqsTriggerEditorInner.svelte

* add link to docs, use generic function for resource and fix import error

* chore: update .github ci

* nits: remove empty

* update to match ee repo changement

* Update backend/windmill-api/src/resources.rs

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* add sqs handling for the cli and refacoring sqsEditorInner

* Update cli/sync.ts

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* fix: add break to switch statement for sqs case

* fix: display aws_resource_path when retrieve or create a new trigger

* rework sqs ui, fix postgres optional port

* fix: ci

* update ui for trigger

* update repo ref and specific

* feat: add ready endpoints for workers to enterprise

* update ref

* Update frontend/src/lib/script_helpers.ts

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

---------

Co-authored-by: HugoCasa <hugo@casademont.ch>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-02-18 23:49:45 +01:00
Ruben Fiszel
1b46e0f084 fix: fix teams cleanup preventing start 2025-02-18 10:25:42 +01:00
Ruben Fiszel
588ff79364 make benchmarks even more stable 2025-02-18 08:43:03 +01:00
Ruben Fiszel
3b6585afdf nit benchmarks 2025-02-18 01:54:14 +01:00
Ruben Fiszel
3d7882577f chore(main): release 1.463.4 (#5309)
* chore(main): release 1.463.4

* Update CHANGELOG.md

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2025-02-18 00:55:01 +01:00
Alexander Petric
935b5b7996 fix: improve teams settings in workspace settings (#5316) 2025-02-17 22:44:26 +01:00
Ruben Fiszel
953082681e fix: improve que job indices for faster performances 2025-02-17 21:26:46 +01:00
Ruben Fiszel
85c56e9450 fix: improve que job indices for faster performances 2025-02-17 19:17:30 +01:00
Ruben Fiszel
5e22690bd9 fix: improve que job indices for faster performances 2025-02-17 17:56:28 +01:00
Ruben Fiszel
266f82046a fix: improve runs page load time 2025-02-14 13:30:07 +01:00
Ruben Fiszel
9c5756507b chore(main): release 1.462.2 (#5286)
* chore(main): release 1.462.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2025-02-14 04:38:09 +01:00
Ruben Fiszel
470d80e219 fix: ai_models in workspace_settings is now optional 2025-02-14 02:45:13 +01:00
Ruben Fiszel
86d45c61c9 fix extra_perms for schedule light 2025-02-13 21:34:53 +01:00
Ruben Fiszel
f15b67b4e4 workspace colors fix 2025-02-13 20:23:12 +01:00