Commit Graph

4545 Commits

Author SHA1 Message Date
Ruben Fiszel
5e1f47ae29 improve flow script editor performances 2025-04-26 20:53:45 +02:00
Ruben Fiszel
97ae0d80df border nit 2025-04-26 20:45:52 +02:00
Ruben Fiszel
4bb9d64d4f improve flow script editor performances 2025-04-26 20:42:31 +02:00
Ruben Fiszel
42edbfac66 nit reactiveness 2025-04-26 07:56:05 +02:00
Ruben Fiszel
7264618ad8 improve flow script editor responsivity 2025-04-26 00:56:01 +02:00
Ruben Fiszel
ac129d9b65 nit fix token 2025-04-25 19:32:05 +02:00
Ruben Fiszel
6e833cbf2f nit fix token 2025-04-25 19:30:29 +02:00
Ruben Fiszel
58140cde2f nit fix token 2025-04-25 19:25:54 +02:00
Ruben Fiszel
2b5dfcfb25 fix: fix token creation after mcp mode change to make it non workspace specific 2025-04-25 19:20:21 +02:00
Alexander Petric
dc5c8d8c5f fix: check for valid teams_channel config when saving critical alerts settings (#5660)
* fix: check for valid teams_channel config when saving critical alerts settings

* Update frontend/src/lib/components/InstanceSettings.svelte

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

* sqlx prepare

* Update InstanceSettings.svelte

* Update InstanceSettings.svelte

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-04-25 14:27:33 +02:00
centdix
1625524311 feat: Add MCP only mode (#5661)
* add mcp mode

* fix flag usage

* change mcp path

* do not migrate db in mcp mode

* handle null values
2025-04-25 14:22:45 +02:00
wendrul
fdd1642ce1 feat: Ansible improvements (vault, roles and git repos) (#5655)
* Ansible vault + roles

* Clone arbitrary repos

* Fix cloning logic after merge

* Make function for cloning without history any commit

* Cloning repos and lockfile on the commit

* Improve error messages

* Create lockfile for roles and collections

* Simplify ansible ssh identity interface

* Ansible vault password: pass just a variable instead of 2 step approach

* Lock lockfiles for roles and collections

* fix typo

* Change git ssh identity section name

* Rename variable

* Update init script for ansible

* Suppress error when no roles

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-04-24 16:04:28 +02:00
centdix
a34ac4fa24 feat: Add MCP endpoints (#5639) 2025-04-23 23:28:41 +02:00
Guilhem
c41c1eb587 fix(frontend): fix validity check (#5654) 2025-04-23 19:20:46 +02:00
Ruben Fiszel
b146de281b improve warning message for self-approval for superadmins 2025-04-23 19:07:16 +02:00
dieriba
494d662b2d fix cli gcp types (#5644)
* update types

* fix types cli

* fix ci

* fix gcp types and fix used triggers

* update repo ref revert .env and nits

* fix build

* Update frontend/src/lib/utils.ts

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

* fix type and deploy to

* update ee-repo-ref

* update .sqlx

* add missing fields

* fix: add sqlx derive macro

* hanfle missing field, fix deploy to other workspace and update ee-repo-ref

* update repo ref

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-04-23 12:18:36 +02:00
Ruben Fiszel
2e25f1559e add disabled to date component 2025-04-21 16:46:37 +02:00
Ruben Fiszel
42514f2b1d add event handlers to more components 2025-04-21 16:45:20 +02:00
Diego Imbert
80658a4b21 chore: npx sv migrate self-closing-tags (#5647) 2025-04-21 14:43:39 +02:00
Ruben Fiszel
941adea42a make edit and add schema order consistent 2025-04-21 14:39:21 +02:00
Ruben Fiszel
3c68fef2ab ui code builder v0 (at secret path) (#4964) 2025-04-20 01:19:02 +02:00
Diego Imbert
64c72b6fce fix: output picker output opening doesn't change id (#5641) 2025-04-19 11:00:39 +02:00
Ruben Fiszel
ab3ff1d701 fix run script preview for bundle scripts 2025-04-18 19:04:02 +02:00
Diego Imbert
cdbe534a5d Schedule Reports Custom Resolution (#5634)
* Schedule Reports Custom Resolution

* enable for pdf too

* fix flow args and load custom res
2025-04-18 14:31:03 +02:00
Alexander Petric
6a9bdfd3bd fix: linter in early stop doesn't include flow_input (#5638) 2025-04-18 01:54:07 +02:00
Ruben Fiszel
b9bb071a8a improve agGrid behavior with extraConfig 2025-04-18 00:14:18 +02:00
dieriba
5b123b01a1 feat: handle different aws auth resource type (#5637)
* feat: oidc auth with sqs

* rafctor

* update: add id token struct

* update has_expired function

* fix duration

* fix typo

* Update backend/windmill-common/src/auth.rs

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

* Update backend/windmill-common/src/auth.rs

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

* update ref

* update sqlx

* update resource type

* update repo ref

* Update settings.json

* add new resource type

* update repo ref and clear resource path on resource type change

* update .sqlx

* add missing key

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-04-17 21:51:18 +02:00
centdix
da13014c41 allow deleting code context (#5635) 2025-04-17 17:23:23 +02:00
Diego Imbert
58fa4c8006 fix: improve flow editor step switch performance
* replace on click wt on pointer down on flow node click

* pointerdown on virtualitems

* Load monaco async with a placeholder to avoid size flash

* monaco placeholder for editor

* less flashing

* simulate first line bg

* better match to monaco

* more fine tune

* fix for increased browser font sizes

* flow nodes feel much better to click on

* move setTimeout upwards

* only load async in flow editor

* load async monaco in app

* lots of components dont respect the type and pass undefined

* weird outline when opening and closing OutputPicker

* fixed hover flow nodes

* moved setTimeout upwards

* hover color for virtual items

* wrong Cargo.lock

* disable interaction if not selectable

* pixel perfect editor placeholder

* fake monaco editor perfect in flow editor

* fake monaco for app json editor

* (temp) never load editor monaco

* os dependant constants in monaco

* Revert " (temp) never load editor monaco"

This reverts commit c20fca134d.

---------

Co-authored-by: Diego Imbert <diego@windmill.dev>
2025-04-17 15:41:41 +02:00
dieriba
34b307b2be feat: oidc support for sqs trigger (#5614)
* feat: oidc auth with sqs

* rafctor

* update: add id token struct

* update has_expired function

* fix duration

* fix typo

* Update backend/windmill-common/src/auth.rs

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

* Update backend/windmill-common/src/auth.rs

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

* update ref

* update sqlx

* update resource type

* update repo ref

* Update settings.json

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-04-17 15:36:17 +02:00
dieriba
2655da0796 add old row (#5633) 2025-04-17 13:12:34 +00:00
Diego Imbert
081145726a fix: fix click outside popover fullscreen (#5631)
Co-authored-by: Diego Imbert <diego@windmill.dev>
2025-04-17 09:33:30 +02:00
Guilhem
bd7c6a2a46 fix(frontend): postgres remove selectedTable (#5386)
* remove selectedTable

* add deletion options

* fix select

* add delete option for replication slot and fixed type conversion for timestampz

* fix delete active slot

* fix undefined error and add schema display

---------

Co-authored-by: dieriba <t.dieriba@gmail.com>
Co-authored-by: dieriba <dieriba.pro@gmail.com>
2025-04-17 00:21:00 +02:00
Guilhem
ab7511e75f ensure schedule is deployed to edit and open advanced (#5626) 2025-04-16 23:57:52 +02:00
Alexander Petric
cc4384f48c fix: show workspace color if superadmin and not in workspace + change workspace name when switching workspace (#5625)
* fix: show workspace color if superadmin and not in workspace

* svelte 5

* move local workspace color to store

* fix: changing name not reactive when swtiching workspace
2025-04-16 17:32:30 +02:00
Ruben Fiszel
24e893b8c5 fix: flow editor workspace script test use actual workspace script hash 2025-04-16 00:44:49 +00:00
Guilhem
16bed593df fix(frontend): load all step jobs (#5617)
* fecth run from deployed script

* do not show job loader for fast loading jobs

* format file

* Add padding to step output viewer

* adjust prop picker popover

* update job filters
2025-04-15 19:51:18 +02:00
Diego Imbert
8413919237 replace on click wt on pointer down on flow node click (#5620)
* replace on click wt on pointer down on flow node click

* pointerdown on virtualitems

---------

Co-authored-by: Diego Imbert <diego@windmill.dev>
2025-04-15 17:19:57 +02:00
Diego Imbert
26b5ea5023 feat: Batch re-run (#5553)
* runs on svelte 5

* Line component from svelte-chartjs

* Replaced all svelte-chartjs occurrences with custom wrapper

* Fix props mistake

* Fix illegal table structures

* self-closing-tags fix

* aria labels

* Fixed trivial warnings and errors

* @tanstack/svelte-table fix

* upgrade to vite 6

* svelte-kit sync before running svelte-check

* Remove on:clear which is actually on:removeAll and already handled by on:change

* fix worker tags not displaying in Autoscaling

* Try to fix svelte-kit sync not working during CI

* remove warnings

* Fix add flow page crashing

* access worldStore before assignment fix

* fix infinite recursions in App Editor

* Replaced JSON.stringify with proper deepEqual

* component mount api changed (no longer classes)

* fix ci errors

* Fix infinite loops in background runnable panel

* factored effect on deep equal logic in onObjChange

* fix "Add" not working in AgGrid Table

* Replaced legacy component.$set api

* Fix multiselect infinite value reaction

* Fix flow input fields resetting when opening their edit tab

* fix date input resetting when typing year

* Remove !p-0 affecting subgrid dotted borders

* fix missing debounceTemplate causing hundreds of updates

* Fix AgGrid action refreshes and disppearing

* resolve getItems generating random ids every rerun

* fix cannot access items before init

* fix sort lambda arguments being undefined

* Revert "Remove !p-0 affecting subgrid dotted borders"

This reverts commit c62809bb45d682a48376b071680645ed4e1c601b.

* fix input not updating in decision tree editor

* Update frontend/src/lib/components/schema/EditableSchemaWrapper.svelte

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

* Re-added padding affecting subgrid dotted borders (#5479)

* remove !p-0 in preset components

* removed extra padding on accordion tabs subgrid

* Fix non-reactive SchemaForm

* dirty fix for the oneOf bug

* feat: add nu-lang support (#5217)

* feat: add nu (nushell) support

* add worker tests

* deactivate tables and non-any types below top-level

full support will come in V1
for V0 it's better to keep things minimal and simple

* add syntax highlighting

used python's grammar, since nushell isn't supported by monaco nor svelte-highlights

for V1 nu will get it`s own grammar

* add logo

* partially implement plugin support

* change logo + ability to deploy + nsjail draft

* static variables + get_resource + get_variable

* lsp/dev.nu + initial nu lsp (not working yet)

* make it work with nsjail

* nullguard

* Much more flexible signature parsing and better error-messages

* add init script

* rename nulsp to nu

* install nu to dockerfile

* fix merge

* implement Default for MainArgSignature

* stage NU_CACHE_DIR

* improve dockerfiles

* dev.nu for parser-wasm + flake.nix

* update code for windows

* add nushell to flake

* upload Cargo.lock

* make build.sh work on nixos

* build wasm cli parsers

* add docs to README_DEV.md

* add helper script docker/dev.nu

* improve docker/dev.nu

* fix windows

* commit frontend/package(lock).json

* update cargo.lock

* correctly update cargo.lock

* remove lsp

* update flake.nix to include svelte server and nushell

* Revert base.sql to main

* remove PLUGIN_USE_RE

* make CARGO_PATH private

* add nu to cli

* Change flags to build wasm-nu-parser

* remove flake.nix from parser-wasm

* update wasm-build target

* remove unused import

* add cli support for nu

* update github workflows

* wasm-build 0.17 -> 0.19

* update build script

* update cargo.lock

* Fix typographical error

* update Cargo.lock

* update ENV_SETTINGS

* use published nu parser

* update package.lock

* rewrite parser in tree-sitter

* implement parser from scratch

* polishing

* change init script to match new parser

* fix imports

* fix cli build

* fix cli build

* merge

* update wasm

* use MiniPulledJob

* update cli

* change cli wasm schema

* change cli

* update deno.json

* make wasm modules load lazily

* regenerate parsers

* remove leftover

* update cargo.lock

* clean up dnt.ts

* add docs to cli/test.nu

* add schema validation option

* add Nu to try_validate_schema

* reference frontend to new parser version

* feat: unsafe parameters for sql queries (table names, column names) (#5488)

* 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

* WIP: unsafe sql params for sql langauges

* 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

* Change sql languages to all get arguments as Values instead of RawValue

* Only cache if not preview

* Add last sql languages and some CI fixes

* Rename after typo on `sanitized`

* Finish rename

* Remove unused import

* Fix wrong test

* Add newly published regex parser version

* Remove default features from cargo.toml

* Change to a cleaner syntax for the interpolated args

* Update republished parser

* fix win build (#5494)

* add sysinfoapi feature flag for winapi dependency

* add ff

* add ff at the right place

* fix(frontend): use stable path for capture tables + nits (#5495)

* add missing capture move on first time deploy (#5496)

* avoid regen client as build step

* perf: cache workspace env variables to avoid one query (#5499)

* perf: optimize number of queries needed for job run (#5504)

* optPerf

* update sqlx

* update sqlx

* fix: improve cancel for flows with many substeps

* 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

* Made selection more generic

* RunsBatchActionsDropdown refactor

* started BatchReRunOptionsPane

* fix overflow quirk

* fetch schema

* refactor to group jobs by (kind, path)

* auto select

* computePropertyMap

* InputTransformForm works

* Pickable properties

* remove PropPickerWrapper and make it optional in InputTransformForm

* hide help btn

* available expressions info alert

* extraLib for editor linting

* fix selected group not updating

* nit

* Refactor async logic in script tag

* persist changes in state

* correct typing

* count for each (path, kind) group

* support flows

* use dot operator when possible

* count jobs and fix wrong number

* fix selectedJobs recomputing periodically

* (v0) individual api requests to re-run jobs

* move batchReRunChangedArgs state upwards

* Support static arg

* mistake

* Single confirmation modal + removed unnecessary state

* change confirmation modal color

* use runes in confirmation modal

* listSelectedJobsSchema API endpoint

* refactored batch rerun pane for listSelectedJobsSchema

* eliminated selectedJobs

* batch rerun works backend (v0 same args)

* Static input transforms

* simpler list_selected_jobs_schemas sql query with coalesce

* use latest schema UI + refactor

* run latest version in backend

* add deno_core dependency to windmill-api

* stream jobs from db

* basic js evaluation

* sqlx prepare

* add id path and hash in editor lint

* js works with job object!

* moved deno_core logic to separate function

* openapi yaml mistake

* unnecessary bind

* fix date as string

* Stream re-ran uuids

* handle SSE multiple values at once

* don't select all by default on batch action

* nit ui

* check that schema has property backend

* Better JobGroup query + cache

* handle multi type properties

* Notify user on error

* stupid mistake

* Fix warnings and update svelte-exmarkdown for svelte 5

* regen package-lock to fix crash on vite preview

* batch re-run all filtered jobs

* merge schemas to common type

* more explicit tooltips

* changed sse counter ui

* typos

* fix tutorial first part

* nit mistake

* package lock + elipsis nit

* fix: latest_schema option still checked on the job original schema

* always gotta forget sqlx prepare

* fix flashing loading screen

* fix batch re-run select all filtered

* better tooltip

* fix batch actions btn growing on wide screen

* revert disableBatchActions

* fix selectable step jobs

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: pyranota <92104930+pyranota@users.noreply.github.com>
Co-authored-by: wendrul <53628737+wendrul@users.noreply.github.com>
Co-authored-by: Alexander Petric <alpetric@users.noreply.github.com>
Co-authored-by: HugoCasa <hugo@casademont.ch>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-04-14 16:25:41 +02:00
HugoCasa
54c1ed1d4f nit app runnable s3 input (#5609)
* nit app runnable s3 input

* n
2025-04-14 16:25:20 +02:00
Diego Imbert
4aae6ab634 fix: number input in app multiselect yields NOT_NUMBER (#5616)
* fix: number input in app multiselect yields NOT_NUMBER

* wrong type cast
2025-04-14 16:24:15 +02:00
Diego Imbert
44f99653eb fix app input not handling change when value is empty (#5615) 2025-04-14 10:18:08 +00:00
Ruben Fiszel
5010850cdc fix inline script update effect 2025-04-11 23:05:10 +00:00
Alexander Petric
cdb0e42979 github app linking: do the redirect via browser (#5611) 2025-04-11 20:35:27 +00:00
Ruben Fiszel
3e8a201c60 improve public app performances 2025-04-11 20:00:57 +02:00
Alexander Petric
177e16bb18 feat(frontend): app editor code input component (monaco) (#5566)
* feat(frontend): app editor code input component (monaco)

* only import when needed + svelte 5

* simple editor -> svelte5

* removing unneccessary rename

* fix vimMode

* nit fixes

* fix height

* rm global

* add html support

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-04-11 19:42:22 +02:00
Guilhem
39ebe18607 allow 0ms duration for flows (#5608) 2025-04-11 18:20:24 +02:00
HugoCasa
b9e879618b feat: signed s3 objects (#5593)
* feat: accept signed s3 objects for s3 file keys in apps + sign endpoint and helpers

* Update backend/windmill-api/openapi.yaml

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

* fix build

* Update python-client/wmill/wmill/client.py

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

* nti

* fix build

* fix build

* presigned

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

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

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

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

* fix build

* b

* fix sqlx

* nit

* 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>
2025-04-11 18:03:40 +02:00
dieriba
1daeb2f48f feat(postgres-trigger): postgres trigger fix circular dependencies and add remove associate resource (#5606)
* remove selectedTable

* add deletion options

* fix select

* add delete option for replication slot and fixed type conversion for timestampz

* fix delete active slot

* update .sqlx

* fix hidden add schema

---------

Co-authored-by: Guilhem <guilhemlemouel@gmail.com>
2025-04-11 18:00:57 +02:00
Diego Imbert
299d32ba82 svelte 5 dispatch fixes (#5604)
* dispatchIfMounted

* fixed all warnings

* typo

* fix another infinite loop

* buggy date time input on runs page when changing search params
2025-04-11 15:17:42 +00:00