Commit Graph

47 Commits

Author SHA1 Message Date
pyranota
d6d4756b7a feat: Allow setProgress and getProgress from within the script (#4400)
* Allow setting progress explicitly from script body.

This feature exposes:
 * `getProgress`
 * `setProgress`
 * `incProgress`

API in TypeScript client (python is coming soon).

NOTE: Progress cannot be out of range 0..100 and cannot decrease.

With exposed APIs there is also UI changes, so progress can be shown for individual jobs as well.

For optimization reasons, jobs start to ask for progress only after N-seconds of execution.

* feat: Add `shell.nix`

If you dont have anything but nix, dont worry, run nix-shell in root, or activate with direnv and get all needed dependencies

NOTE: You will still need docker

* feat: Add `dev.nu` to typescript client

Little helper function, allowing developer to work on ts client easier.

To use:
  `./dev.nu watch`

Now add import of windmill in body of your script and `//nobundle` on top of the file

Edit ts client in your favourite editor and hit save. Script will do the rest.

* Cleanup files

* Fix: Failed to deserialize query string: missing field `get_progress`

* perf: Implement non-naive polling mechanism for getting job progress

* Add independant delay for getProgress

Problem in `TestJobLoader`:

There should be 2 delays:

    One until we find our first progress (every 5s)
    Once we found our first progress, we can do it every second

* nit: Use `query_scalar!` instead of `query_as`

* Fix: Sql error, no rows returned by a query that expected to return at least one row

* refactor: Remove global CSS for JobProgressBar

* Change UI for progress of flow subjobs

* Replace `Step 1` with `Running` in ProgressBar for individual jobs

* Remove `incProgress`

incProgress is not very usefull and error-prone

* perf: Set metric only for jobs that are actually using it

(https://github.com/windmill-labs/windmill/pull/4373#discussion_r1759843773)

* Offload registering progress from clients to server

* Add `jobId?` argument to typescript-client's `setProgress` and `getProgress`

Allows to set progress of other jobs and flows,
if jobId specified, than flow id will be inferred automatically.

Could be used by SDK.

* Add `Error::MetricNotFound` for better error handling

* Fix: Make `JobProgressBar` display in red when failed

* Add persistant progress bar

Now you can reload the page after job is done and progress will be still there

* Allow succeeded individual job's progress bar stick to 100%

* Add python support 

* nit: Remove usage of undefined variable in python-client

* Add `async` in ts client (for error handling)

* nit(frontend): Remove unused import

* Dont load JobProgressBar when it is not needed

* nit: npm check fix

* cargo sqlx prepare

* fix sqlx

---------

Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-09-18 01:16:19 +02:00
Ruben Fiszel
7a68cc76c2 fix: improve logviewer behavior when job is loading 2024-08-13 20:34:46 +02:00
Ruben Fiszel
9ab5b2e32d fix: preserve force json across code preview 2024-07-23 16:42:29 +02:00
Ruben Fiszel
ab686ea69e fix sveltekit conf 2024-07-22 22:36:56 +02:00
Ruben Fiszel
6e33e4e0b9 fix: fix BASE_URL build conf 2024-07-22 21:53:08 +02:00
Ruben Fiszel
3131e14ca3 fix: fix BASE_URL build conf 2024-07-22 20:56:13 +02:00
Ruben Fiszel
c5891c2bb7 small nit BASE_URL 2024-07-22 19:34:33 +02:00
Marcel Klehr
dd75dd446b fix: Allow deploying frontend in a sub directory (#3867)
* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow depolying frontend in a sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Expose base path from $lib/navigation

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow deploying frontend in sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow deploying frontend in sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow deploying frontend in sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow deploying frontend in sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* fix: Allow deploying frontend in sub directory

Signed-off-by: Marcel Klehr <mklehr@gmx.net>

* update

* update

---------

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Ruben Fiszel <ruben@rubenfiszel.com>
2024-07-22 19:26:17 +02:00
Ruben Fiszel
251e6c35f4 app nits 2024-05-10 23:56:55 +02:00
Faton Ramadani
ee2a193958 feat(frontend): Improve app components (#3672)
* fix(frontend): wip

* fix(frontend): wip

* fix(frontend): improve components

* fix(frontend): improve components

* fix(frontend): improve ranges

* fix(frontend): fix build
2024-05-07 18:04:12 +02:00
Henri Courdent
770f4471b5 Rich result buttons (#3485)
* Rich result buttons

* Fix rich result button

* feat(frontend): improve rich display buttons

* Icon to monitor

* Custom tooltip

* End Monitor

* Tooltip file fixed

---------

Co-authored-by: Faton Ramadani <faton.ramadani14@gmail.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-04-25 17:49:46 +02:00
Ruben Fiszel
071a0ae927 feat: show more for logs on s3 directly possible from browser log viewer 2024-04-17 21:42:46 +02:00
Ruben Fiszel
0291f624e1 fix View Logs 2024-03-28 17:49:29 +01:00
HugoCasa
522f32c6c0 feat keep sql columns ordering (#3444)
* feat: keep pg columns ordering

* feat: pass column order through flow status

* feat: sql ordering for all sql langs

* fix: sqlx build on mac + rename to _metadata

* Update JobPreview.svelte

* Update +page.svelte

* Update +page.svelte

* Update LogPanel.svelte

* Update +page.svelte

* Update LogPanel.svelte

* Update JobPreview.svelte

* fix: build

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2024-03-22 10:34:32 +01:00
Ruben Fiszel
55c80959a0 feat: workflow as code with timelines 2024-03-05 12:45:24 +01:00
Faton Ramadani
64441b3452 fix(frontend): fix logpanel (#3111) 2024-01-30 18:16:28 +01:00
Faton Ramadani
cbfa5ff887 fix(frontend): various UI fix (#3098)
* fix(frontend): Fix Tree view whitespace break + add w-max to contextual variable table + Migrate script history tab to Datatable + uniformize branch one/all settings + Migrate cache setting old layout

* fix(frontend): add class prop to datatable

* fix(frontend): add noBorder prop
2024-01-29 14:19:50 +01:00
Faton Ramadani
fe35c7ad3c feat(frontend): Buttons refactor (#2545)
* feat(frontend): wip

* feat(frontend): button refactor wip

* feat(frontend): button refactor wip

* feat(frontend): fix build

* feat(frontend): fix build

* fix(frontend): fix build

* fix(frontend): fix buttons styles

* fix(frontend): remove dev file

* feat(frontend): clean up

* feat(frontend): done

* feat(frontend): done

* feat(frontend): remove duplicated componnet

* feat(frontend): wip

* feat(frontend): wip

* feat(frontend): forked Flow icons

* feat(frontend): remove legacy dropdown

* feat(frontend): migrated all + remove dependencies

* feat(frontend): clean up
2023-11-10 09:43:10 +01:00
Ruben Fiszel
1e2e8ade61 improve settings, add tag to logs 2023-11-05 23:13:58 +01:00
Ruben Fiszel
39cab72951 improve history from the script editor 2023-09-09 09:44:24 +02:00
Ruben Fiszel
e7e63e111a fix: remove result and args from list completed and list queue jobs 2023-09-09 09:31:45 +02:00
HugoCasa
5cca5833e9 feat: snowflake schema explorer + refactoring (#2260) 2023-09-08 16:49:47 +02:00
HugoCasa
2f3138c65d feat: flow copilot (#2219)
* chore: refactoring

* feat: hub embeddings search benchmark

* feat: flow copilot v0

* feat: as trigger schedule + refactoring

* feat: improvements

* fix: remove unecessary filter

* feat: UX improvements

* fix: frontend check

* feat: switch to bun + other improvements

* fix: improve reactivity
2023-09-07 18:03:48 +02:00
Ruben Fiszel
d311d76557 fix: uniformize that all job links specify the workspace 2023-08-31 12:55:28 +02:00
HugoCasa
82612c35bd feat: copilot tokens streaming + cancel (#2107)
* feat: copilot tokens streaming + cancel

* fix: UI improvements
2023-08-17 14:21:42 +02:00
Ruben Fiszel
3410e66b22 fix: improve code structure to reduce unecessary dependency of apppreview on heavy packages 2023-08-01 09:16:16 +02:00
Faton Ramadani
8fa9e3ca4c Dark mode v0 (#1893)
* feat(frontend): wip

* wip

* wip

* wip

* wip

* add toggle

* correctly handle monaco theme

* wip

* wip

* wip

* wip

* wip

* feat(frontend): Dark mode v0

* feat(frontend): Adap AI gen poppup

* feat(frontend): Adap script metadata labels

* feat(frontend): Fix unreadable texts

* feat(frontend): Fix unreadable texts

* feat(frontend): Fix unreadable texts

* feat(frontend): Fix ressource picker

* feat(frontend): Fix unreadable texts

* feat(frontend): Fix unreadable texts

* feat(frontend): Fix unreadable texts

* feat(frontend): Add theme toggle in the login page

* feat(frontend): Fix unreadable texts

* feat(frontend): Fix language selection

* feat(frontend): Fix FlowStatusViewer colors

* feat(frontend): Fix divide colors

* feat(frontend): Fix flow graph buttons

* feat(frontend): add theme toggle in login modal

* feat(frontend): small ui fix

* feat(frontend): fix graph dark mode toggle
2023-07-25 10:43:04 +02:00
HugoCasa
012ea2dc0a feat: generate and fix scripts using Autopilot powered by OpenAI #1827)
* feat(frontend): generate simple script from prompt

* feat(backend): add OpenAI key workspace settings

* feat(frontend): add OpenAI key workplace settings

* feat: proxy to backend + support all languages

* fix: openapi spec

* feat: ScriptGen new UI + gpt 4

* fix: openai key sqlx data

* fix: diffEditor optional

* feat: beta + minor improvements

* feat: resource type support

* feat: edit with AI

* feat: AI fix

* feat: minor improvements
content max length, format, env info

* fix: minor
2023-07-12 17:07:45 +02:00
Ruben Fiszel
c669e9940b feat: native fetch + native postgresql jobs (#1796)
* push

* test

* test

* done

* fix

* modify script lang enum

* fix tests

* update wasm

* fix tests
2023-07-04 19:39:59 +02:00
Ruben Fiszel
7a1f999cea feat: download logs from backend 2023-06-22 22:38:41 +02:00
Ruben Fiszel
53f32a2b8d use app for dev setup directly 2023-06-10 16:32:59 +02:00
Ruben Fiszel
632be3b8fb feat: expose a react sdk to integrate windmill into react apps (#1605)
* expose react sdk

* expose react sdk

* iterate

* iterate

* iterate

* nit

* update example

* update example

* small fixes

* update all
2023-05-19 20:44:07 +02:00
Ruben Fiszel
83e982e84d minor fix 2023-03-27 11:54:30 +02:00
Ruben Fiszel
b9d6e67791 frontend misc 2023-02-05 00:05:16 +01:00
Ruben Fiszel
f584062f13 feat: add mem peak info 2023-02-04 20:26:15 +01:00
Ruben Fiszel
3fba91084d improve job loader in case of concurrent requests 2023-01-05 05:57:22 +01:00
Ruben Fiszel
2acb7d1774 nit fix incorrect overflow-auto in display result 2023-01-03 11:17:15 +01:00
Ruben Fiszel
39e2bf39e9 make app public page not require login at all 2023-01-02 13:02:45 +01:00
Ruben Fiszel
334ec1a084 remove buggy transition fade on code editor 2023-01-02 04:28:23 +01:00
Ruben Fiszel
b920345de2 improve perceived performances 2022-12-12 02:26:31 +01:00
Ruben Fiszel
bb531845b4 improve perceived performances 2022-12-12 02:05:32 +01:00
Faton Ramadani
5ae0e5da19 UI refactor (#973)
* fix(frontend): ui refactor

* fix(frontend): WIP

* fix(frontend): WIP

* fix(frontend): WIP

* fix(frontend): remove virtual table

* fix(frontend): Add virtual list

* fix(frontend): fix number of items

* fix(frontend): revert changes

* fix(frontend): fix build
2022-12-02 19:39:23 +01:00
Faton Ramadani
e8d3a0efb1 fix(frontend): add size prop to tabs (#894) 2022-11-14 18:04:47 +01:00
Ruben Fiszel
3c09275960 feat: support bash as 4th language (#865)
* bash support

* bash backend working

* frontend part

* bash backend working
2022-11-06 23:48:18 +01:00
Ruben Fiszel
bff8331eb0 drawer nits + logo in top menu 2022-11-06 11:52:16 +01:00
Ádám Kovács
99e60b1b74 fix(frontend): Fix text styling (#753) 2022-10-17 16:25:32 +02:00
Ádám Kovács
8a774e0d04 feat(frontend): Update split panes (#741) 2022-10-17 15:43:31 +02:00