From 1e8c181f8e2e9324d0576ecc5fb1f504f0a5ad36 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Thu, 17 Jul 2025 23:29:22 +0000 Subject: [PATCH 01/16] try catch assets json parse --- frontend/src/lib/infer.ts | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/frontend/src/lib/infer.ts b/frontend/src/lib/infer.ts index 68bbc848fc..3ddb61f037 100644 --- a/frontend/src/lib/infer.ts +++ b/frontend/src/lib/infer.ts @@ -84,17 +84,22 @@ export async function inferAssets( language: SupportedLanguage | undefined, code: string ): Promise { - if (language === 'duckdb') { - await initWasmRegex() - return JSON.parse(parse_assets_sql(code)) - } - if (language === 'deno' || language === 'nativets' || language === 'bun') { - await initWasmTs() - return JSON.parse(parse_assets_ts(code)) - } - if (language === 'python3') { - await initWasmPython() - return JSON.parse(parse_assets_py(code)) + try { + if (language === 'duckdb') { + await initWasmRegex() + return JSON.parse(parse_assets_sql(code)) + } + if (language === 'deno' || language === 'nativets' || language === 'bun') { + await initWasmTs() + return JSON.parse(parse_assets_ts(code)) + } + if (language === 'python3') { + await initWasmPython() + return JSON.parse(parse_assets_py(code)) + } + } catch (e) { + console.error('error parsing assets', e) + return [] } return [] } From 2a739cb04b87dd5ab4b47b98790d9e25e0004bc0 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Fri, 18 Jul 2025 08:43:27 +0000 Subject: [PATCH 02/16] only display loader of custom component if custom component is rendered --- .../apps/components/display/AppCustomComponent.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/lib/components/apps/components/display/AppCustomComponent.svelte b/frontend/src/lib/components/apps/components/display/AppCustomComponent.svelte index e6f748f3f1..8b13cc055e 100644 --- a/frontend/src/lib/components/apps/components/display/AppCustomComponent.svelte +++ b/frontend/src/lib/components/apps/components/display/AppCustomComponent.svelte @@ -121,7 +121,7 @@
- {#if !loaded} + {#if !loaded && render} {/if}
From 8a020bcfd523195d2848c4dff837fd4ec81b807e Mon Sep 17 00:00:00 2001 From: Tammo Ippen Date: Fri, 18 Jul 2025 10:44:56 +0200 Subject: [PATCH 03/16] Fix required properties (#6221) --- openflow.openapi.yaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/openflow.openapi.yaml b/openflow.openapi.yaml index 0de884f00a..1d6d3572a2 100644 --- a/openflow.openapi.yaml +++ b/openflow.openapi.yaml @@ -184,9 +184,9 @@ components: type: type: string enum: - - javascript + - static required: - - expr + - value - type JavascriptTransform: @@ -437,7 +437,6 @@ components: $ref: "#/components/schemas/FlowModule" required: - modules - - expr type: type: string enum: From 673f10095dc0ac306d3416fdf8a1a3b6971361ec Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Fri, 18 Jul 2025 09:05:43 +0000 Subject: [PATCH 04/16] whitelabelling nits --- backend/windmill-worker/src/worker.rs | 8 ++++++-- frontend/src/lib/toast.ts | 10 ++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/backend/windmill-worker/src/worker.rs b/backend/windmill-worker/src/worker.rs index ab81a628aa..caebcd1bef 100644 --- a/backend/windmill-worker/src/worker.rs +++ b/backend/windmill-worker/src/worker.rs @@ -2069,6 +2069,10 @@ async fn do_nativets( .await?) } +lazy_static::lazy_static! { + static ref LOG_TAG_NAME: String = std::env::var("LOG_TAG_NAME").unwrap_or("tag".to_string()); +} + #[derive(Deserialize, Serialize, Default)] pub struct PreviousResult<'a> { #[serde(borrow)] @@ -2264,8 +2268,8 @@ pub async fn handle_queued_job( // println!("handle queue {:?}", SystemTime::now()); logs.push_str(&format!( - "job={} tag={} worker={} hostname={}\n", - &job.id, &job.tag, &worker_name, &hostname + "job={} {}={} worker={} hostname={}\n", + &job.id, *LOG_TAG_NAME, &job.tag, &worker_name, &hostname )); if *NO_LOGS_AT_ALL { diff --git a/frontend/src/lib/toast.ts b/frontend/src/lib/toast.ts index 173af98dd4..2c61546093 100644 --- a/frontend/src/lib/toast.ts +++ b/frontend/src/lib/toast.ts @@ -13,6 +13,16 @@ export function sendUserToast( errorMessage: string | undefined = undefined, duration: number = 5000 ): void { + if (globalThis.windmillToast) { + globalThis.windmillToast({ + message, + error, + actions, + errorMessage, + duration + }) + return + } toast.push({ component: { // https://github.com/zerodevx/svelte-toast/issues/115 From a7f6d74e05056e08f16f48cec855dad2af845430 Mon Sep 17 00:00:00 2001 From: Diego Imbert <70353967+diegoimbert@users.noreply.github.com> Date: Fri, 18 Jul 2025 12:07:02 +0200 Subject: [PATCH 05/16] remove fdsfs (#6222) --- .../src/lib/components/graph/renderers/nodes/AssetNode.svelte | 2 -- 1 file changed, 2 deletions(-) diff --git a/frontend/src/lib/components/graph/renderers/nodes/AssetNode.svelte b/frontend/src/lib/components/graph/renderers/nodes/AssetNode.svelte index ed605acf05..cefdaaaa78 100644 --- a/frontend/src/lib/components/graph/renderers/nodes/AssetNode.svelte +++ b/frontend/src/lib/components/graph/renderers/nodes/AssetNode.svelte @@ -299,8 +299,6 @@ {formatAssetKind({ ...data.asset, metadata: cachedResourceMetadata })} -
- fdsfs {/snippet} From 1f48a05100981d6b89e72812e31511bfe709e35c Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Fri, 18 Jul 2025 10:10:40 +0000 Subject: [PATCH 06/16] add refresh on worker tag select --- .../src/lib/components/WorkerTagSelect.svelte | 36 +++++++++++++++++-- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/frontend/src/lib/components/WorkerTagSelect.svelte b/frontend/src/lib/components/WorkerTagSelect.svelte index baac15cb6d..2850ba99f6 100644 --- a/frontend/src/lib/components/WorkerTagSelect.svelte +++ b/frontend/src/lib/components/WorkerTagSelect.svelte @@ -5,6 +5,9 @@ import { createEventDispatcher } from 'svelte' import Select from './select/Select.svelte' import { safeSelectItems } from './select/utils.svelte' + import { Button } from './common' + import { RotateCw } from 'lucide-svelte' + import { sendUserToast } from '$lib/toast' let { tag = $bindable(), @@ -27,29 +30,56 @@ loadWorkerGroups() const dispatch = createEventDispatcher() + + let loading = $state(false) async function loadWorkerGroups() { - if (!$workerTags) { - $workerTags = await WorkerService.getCustomTags({ workspace: $workspaceStore }) + loading = true + try { + if (!$workerTags) { + $workerTags = await WorkerService.getCustomTags({ workspace: $workspaceStore }) + } + } catch (e) { + $workerTags = [] + sendUserToast('Error loading custom tags', true) } + loading = false } let items = $derived([ // ...(tag ? ['reset to default'] : [nullTag ? `default: ${nullTag}` : '']), ...(tag && tag != '' && !($workerTags ?? []).includes(tag) ? [tag] : []), ...($workerTags ?? []) ]) + + let open = $state(false) -
+
{#if !noLabel}
{placeholder ?? 'tag'}
{/if}