From d7b83274db5ba89c6358a07ca0e2d8a4ec41e013 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Mon, 21 Oct 2024 11:24:45 +0200 Subject: [PATCH 01/79] fix: update bun to 1.1.31 and deno to 2.0.2 --- .github/DockerfileBackendTests | 4 ++-- Dockerfile | 4 ++-- docker/DockerfileSlim | 2 +- docker/DockerfileSlimEe | 2 +- lsp/Dockerfile | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/DockerfileBackendTests b/.github/DockerfileBackendTests index 5792e5753b..e20d023bdc 100644 --- a/.github/DockerfileBackendTests +++ b/.github/DockerfileBackendTests @@ -40,11 +40,11 @@ RUN wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VER RUN /usr/local/bin/python3 -m pip install pip-tools -COPY --from=oven/bun:1.1.30 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun ARG TARGETPLATFORM -RUN curl -Lsf https://github.com/denoland/deno/releases/download/v2.0.0/deno-x86_64-unknown-linux-gnu.zip -o deno.zip +RUN curl -Lsf https://github.com/denoland/deno/releases/download/v2.0.2/deno-x86_64-unknown-linux-gnu.zip -o deno.zip # RUN [ "$TARGETPLATFORM" == "linux/arm64" ] && curl -Lsf https://github.com/denoland/deno/releases/download/v2.0.0/deno-aarch64-unknown-linux-gnu.zip -o deno.zip || true RUN unzip deno.zip && rm deno.zip && mv deno /usr/bin/deno diff --git a/Dockerfile b/Dockerfile index 505cf61d50..f3a90605c2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -175,9 +175,9 @@ RUN /usr/local/bin/python3 -m pip install pip-tools COPY --from=builder /frontend/build /static_frontend COPY --from=builder /windmill/target/release/windmill ${APP}/windmill -COPY --from=denoland/deno:2.0.0 --chmod=755 /usr/bin/deno /usr/bin/deno +COPY --from=denoland/deno:2.0.2 --chmod=755 /usr/bin/deno /usr/bin/deno -COPY --from=oven/bun:1.1.30 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun COPY --from=php:8.3.7-cli /usr/local/bin/php /usr/bin/php COPY --from=composer:2.7.6 /usr/bin/composer /usr/bin/composer diff --git a/docker/DockerfileSlim b/docker/DockerfileSlim index cb0284ff1d..1b756cc29c 100644 --- a/docker/DockerfileSlim +++ b/docker/DockerfileSlim @@ -20,7 +20,7 @@ RUN /usr/local/bin/python3 -m pip install pip-tools # Install UV RUN curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.18/uv-installer.sh | sh && mv /root/.cargo/bin/uv /usr/local/bin/uv -COPY --from=oven/bun:1.1.27 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun # add the docker client to call docker from a worker if enabled COPY --from=docker:dind /usr/local/bin/docker /usr/local/bin/ diff --git a/docker/DockerfileSlimEe b/docker/DockerfileSlimEe index 54a7b15764..80762939b1 100644 --- a/docker/DockerfileSlimEe +++ b/docker/DockerfileSlimEe @@ -19,7 +19,7 @@ RUN /usr/local/bin/python3 -m pip install pip-tools # Install UV RUN curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.18/uv-installer.sh | sh && mv /root/.cargo/bin/uv /usr/local/bin/uv -COPY --from=oven/bun:1.1.27 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun # add the docker client to call docker from a worker if enabled COPY --from=docker:dind /usr/local/bin/docker /usr/local/bin/ diff --git a/lsp/Dockerfile b/lsp/Dockerfile index be76edb450..2d56305116 100644 --- a/lsp/Dockerfile +++ b/lsp/Dockerfile @@ -26,7 +26,7 @@ ENV GOBIN=/usr/local/go/bin RUN /usr/local/go/bin/go install -v golang.org/x/tools/gopls@latest RUN pip3 install tornado python-lsp-jsonrpc ruff-lsp -COPY --from=denoland/deno:2.0.0 --chmod=755 /usr/bin/deno /usr/bin/deno +COPY --from=denoland/deno:2.0.2 --chmod=755 /usr/bin/deno /usr/bin/deno COPY Pipfile . From 9bf7868aa1baf21bc9d647bb4986b1460c28df9d Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Mon, 21 Oct 2024 14:38:08 +0200 Subject: [PATCH 02/79] feat(cli): encrypt sensitive instance settings (#4561) --- cli/local_encryption.ts | 104 ++++++++++++++++++ cli/settings.ts | 81 +++++++++++--- .../src/lib/components/OAuthSetting.svelte | 16 +++ 3 files changed, 183 insertions(+), 18 deletions(-) create mode 100644 cli/local_encryption.ts diff --git a/cli/local_encryption.ts b/cli/local_encryption.ts new file mode 100644 index 0000000000..0a70b0742b --- /dev/null +++ b/cli/local_encryption.ts @@ -0,0 +1,104 @@ +import { log } from "./deps.ts"; +import crypto from "node:crypto"; + +// Helper function to convert strings to Uint8Array (binary) +function encode(input: string): Uint8Array { + return new TextEncoder().encode(input); + } + + // Helper function to convert Uint8Array (binary) to base64 + function toBase64(arr: Uint8Array): string { + return btoa(String.fromCharCode(...arr)); + } + + // Helper function to convert base64 to Uint8Array (binary) + function fromBase64(base64: string): Uint8Array { + return new Uint8Array( + atob(base64).split("").map((char) => char.charCodeAt(0)) + ); + } + + // Function to derive a 256-bit key from any input string using SHA-256 + async function deriveKey(keyString: string): Promise { + const keyMaterial = encode(keyString); + const keyHash = await crypto.subtle.digest("SHA-256", keyMaterial); // Generate SHA-256 hash + // Import the hash as a CryptoKey for AES-GCM + return crypto.subtle.importKey( + "raw", + keyHash, + { name: "AES-GCM" }, + false, + ["encrypt", "decrypt"] + ); + } + + + + // Encrypt function + export async function encrypt( + plaintext: string, + keyString: string + ): Promise { + const key = await deriveKey(keyString); // Derive a 256-bit AES key from any input string + const iv = crypto.getRandomValues(new Uint8Array(12)); // AES-GCM needs a 12-byte IV + const encrypted = await crypto.subtle.encrypt( + { + name: "AES-GCM", + iv, + tagLength: 128 + }, + key, + encode(plaintext) // convert plaintext to binary + ); + + // Concatenate IV and encrypted data + const combined = new Uint8Array(iv.length + encrypted.byteLength); + combined.set(iv, 0); // first part is the IV + combined.set(new Uint8Array(encrypted), iv.length); // second part is the ciphertext + + // Convert to base64 for storage/transmission + return toBase64(combined); + } + + // Decrypt function + export async function decrypt( + combinedCiphertext: string, + keyString: string + ): Promise { + const key = await deriveKey(keyString); // Derive the same 256-bit AES key from the input string + const combined = fromBase64(combinedCiphertext); // decode base64 to binary + + // Split the IV and the ciphertext + const iv = combined.slice(0, 12); // First 12 bytes are the IV + const ciphertext = combined.slice(12); // The rest is the encrypted data + console.log() + + // log.info({keyString, key, ciphertext}) + // Perform decryption + const decrypted = await crypto.subtle.decrypt( + { + name: "AES-GCM", + iv, + tagLength: 128 + }, + key, + ciphertext + ); + + // Convert decrypted data from binary to string + return new TextDecoder().decode(decrypted); + } + +// // Example usage: +// const key = "any-length-key-you-want"; // Now can be any length +// const message = "This is a secret message."; + +// encrypt(message, key).then((combinedCiphertext) => { +// console.log("Encrypted message:", combinedCiphertext); + +// // Now decrypt it +// decrypt(combinedCiphertext, key).then((decryptedMessage) => { +// console.log("Decrypted message:", decryptedMessage); +// }); +// }); + \ No newline at end of file diff --git a/cli/settings.ts b/cli/settings.ts index 328a6d0e25..f9dbac1fa6 100644 --- a/cli/settings.ts +++ b/cli/settings.ts @@ -9,6 +9,7 @@ import { deepEqual } from "./utils.ts"; import * as wmill from "./gen/services.gen.ts"; import { Config, GlobalSetting } from "./gen/types.gen.ts"; import { removeWorkerPrefix } from "./worker_groups.ts"; +import process from "node:process"; export interface SimplifiedSettings { // slack_team_id?: string; @@ -112,10 +113,10 @@ export async function pushWorkspaceSettings( workspace, requestBody: localSettings.auto_invite_enabled ? { - operator: localSettings.auto_invite_as === "operator", - invite_all: true, - auto_add: localSettings.auto_invite_mode === "add", - } + operator: localSettings.auto_invite_as === "operator", + invite_all: true, + auto_add: localSettings.auto_invite_mode === "add", + } : {}, }); } catch (_) { @@ -127,10 +128,10 @@ export async function pushWorkspaceSettings( workspace, requestBody: localSettings.auto_invite_enabled ? { - operator: localSettings.auto_invite_as === "operator", - invite_all: false, - auto_add: localSettings.auto_invite_mode === "add", - } + operator: localSettings.auto_invite_as === "operator", + invite_all: false, + auto_add: localSettings.auto_invite_mode === "add", + } : {}, }); } @@ -155,7 +156,7 @@ export async function pushWorkspaceSettings( settings.error_handler_extra_args ) || localSettings.error_handler_muted_on_cancel !== - settings.error_handler_muted_on_cancel + settings.error_handler_muted_on_cancel ) { log.debug(`Updating error handler...`); await wmill.editErrorHandler({ @@ -259,27 +260,69 @@ export async function pushWorkspaceKey( } } +const INSTANCE_SETTINGS_PATH = "instance_settings.yaml"; + export async function readInstanceSettings() { let localSettings: GlobalSetting[] = []; try { - localSettings = (await yamlParseFile( - "instance_settings.yaml" - )) as GlobalSetting[]; + localSettings = (await yamlParseFile(INSTANCE_SETTINGS_PATH)) as GlobalSetting[]; } catch { - log.warn("No instance_settings.yaml found"); + log.warn(`No ${INSTANCE_SETTINGS_PATH} found`); } return localSettings; } + +import { decrypt, encrypt } from "./local_encryption.ts"; + +const SENSITIVE_FIELD: string[] = ["license_key", "jwt_secret"] + +async function processInstanceSettings(settings: GlobalSetting[], mode: "encode" | "decode"): Promise { + const encKey = process.env.WMILL_INSTANCE_LOCAL_ENCRYPTION_KEY; + if (encKey) { + const res: GlobalSetting[] = [] + + for (const s of settings) { + if (SENSITIVE_FIELD.includes(s.name) && typeof s.value === "string") { + res.push(await processField(s, "value", encKey, mode) as GlobalSetting); + } else if (s.name == "oauths") { + if (typeof s.value === "object") { + const oauths = s.value as { [key: string]: any }; + for (const [k, v] of Object.entries(oauths)) { + oauths[k] = await processField(v, "secret", encKey, mode); + } + res.push(s); + } else { + log.warn(`Unexpected oauths value type: ${typeof s.value}`); + res.push(s); + } + } else { + res.push(s); + } + } + return res; + } else { + log.warn("No encryption key found, skipping encryption. Recommend setting WMILL_INSTANCE_LOCAL_ENCRYPTION_KEY"); + } + return settings; +} + +async function processField(obj: { [key: string]: any }, field: string, encKey: string, mode: "encode" | "decode"): Promise<{ [key: string]: any }> { + return { + ...obj, + [field]: mode === "encode" ? await encrypt(obj[field], encKey) : await decrypt(obj[field], encKey) as any, + } +} + export async function pullInstanceSettings(preview = false) { const remoteSettings = await wmill.listGlobalSettings(); if (preview) { const localSettings: GlobalSetting[] = await readInstanceSettings(); - + const processedSettings = await processInstanceSettings(remoteSettings, "encode"); return compareInstanceObjects( - remoteSettings, + processedSettings, localSettings, "name", "setting" @@ -287,12 +330,13 @@ export async function pullInstanceSettings(preview = false) { } else { log.info("Pulling settings from instance"); + const processedSettings = await processInstanceSettings(remoteSettings, "encode"); await Deno.writeTextFile( - "instance_settings.yaml", - yamlStringify(remoteSettings as any) + INSTANCE_SETTINGS_PATH, + yamlStringify(processedSettings) ); - log.info(colors.green("Settings written to instance_settings.yaml")); + log.info(colors.green(`Settings written to ${INSTANCE_SETTINGS_PATH}`)); } } @@ -302,6 +346,7 @@ export async function pushInstanceSettings( ) { const remoteSettings = await wmill.listGlobalSettings(); let localSettings: GlobalSetting[] = await readInstanceSettings(); + localSettings = await processInstanceSettings(localSettings, "decode"); if (baseUrl) { localSettings = localSettings.filter((s) => s.name !== "base_url"); diff --git a/frontend/src/lib/components/OAuthSetting.svelte b/frontend/src/lib/components/OAuthSetting.svelte index 505db1c36a..632fcc63a1 100644 --- a/frontend/src/lib/components/OAuthSetting.svelte +++ b/frontend/src/lib/components/OAuthSetting.svelte @@ -3,6 +3,7 @@ import CollapseLink from './CollapseLink.svelte' import IconedResourceType from './IconedResourceType.svelte' import Toggle from './Toggle.svelte' + import { onMount } from 'svelte' export let name: string export let value: any @@ -13,6 +14,21 @@ let tenant: string = '' $: name == 'microsoft' && changeTenantId(tenant) + onMount(() => { + try { + if ( + name == 'microsoft' && + value && + value['login_config'] && + typeof value['login_config']['auth_url'] == 'string' + ) { + tenant = value['login_config']['auth_url'].split('/')[3] + } + } catch (e) { + console.error('Could not set tenantId', e) + } + }) + function changeTenantId(tenant: string) { if (value && tenant) { if (tenant != '') { From 8a0e9743a65444c0bf07bcafc7f70aa36c0a0003 Mon Sep 17 00:00:00 2001 From: wendrul <53628737+wendrul@users.noreply.github.com> Date: Mon, 21 Oct 2024 17:44:16 +0200 Subject: [PATCH 03/79] fix: Do not ignore file resources with json file ext (#4562) --- cli/sync.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cli/sync.ts b/cli/sync.ts index ce539b7a1f..342dda3162 100644 --- a/cli/sync.ts +++ b/cli/sync.ts @@ -618,8 +618,8 @@ export async function elementsToMap( for await (const entry of readDirRecursiveWithIgnore(ignore, els)) { if (entry.isDirectory || entry.ignored) continue; const path = entry.path; - if (json && path.endsWith(".yaml")) continue; - if (!json && path.endsWith(".json")) continue; + if (json && path.endsWith(".yaml") && !isFileResource(path)) continue; + if (!json && path.endsWith(".json") && !isFileResource(path)) continue; const ext = json ? ".json" : ".yaml"; if (!skips.includeSchedules && path.endsWith(".schedule" + ext)) continue; if (!skips.includeUsers && path.endsWith(".user" + ext)) continue; From 6cbfd1bad1762ae468e2b24f56578ae7d7fb7211 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Mon, 21 Oct 2024 20:20:59 +0200 Subject: [PATCH 04/79] chore(main): release 1.411.0 (#4559) * chore(main): release 1.411.0 * Apply automatic changes --------- Co-authored-by: rubenfiszel --- CHANGELOG.md | 13 ++ backend/Cargo.lock | 200 +++++++++--------- backend/Cargo.toml | 4 +- backend/windmill-api/openapi.yaml | 2 +- benchmarks/lib.ts | 2 +- cli/main.ts | 2 +- frontend/package-lock.json | 4 +- frontend/package.json | 2 +- lsp/Pipfile | 4 +- openflow.openapi.yaml | 2 +- .../WindmillClient/WindmillClient.psd1 | 2 +- python-client/wmill/pyproject.toml | 2 +- python-client/wmill_pg/pyproject.toml | 2 +- typescript-client/jsr.json | 2 +- typescript-client/package.json | 2 +- version.txt | 2 +- 16 files changed, 130 insertions(+), 117 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 31ef1b08a2..be568afe54 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## [1.411.0](https://github.com/windmill-labs/windmill/compare/v1.410.3...v1.411.0) (2024-10-21) + + +### Features + +* **cli:** encrypt sensitive instance settings ([#4561](https://github.com/windmill-labs/windmill/issues/4561)) ([b8a6a11](https://github.com/windmill-labs/windmill/commit/b8a6a116354b10f5977e54edb365d6711e160538)) + + +### Bug Fixes + +* Do not ignore file resources with json file ext ([#4562](https://github.com/windmill-labs/windmill/issues/4562)) ([2079b2e](https://github.com/windmill-labs/windmill/commit/2079b2e7e19aa2fe327f2ae66d1b5eba988b9b0a)) +* update bun to 1.1.31 and deno to 2.0.2 ([0d90396](https://github.com/windmill-labs/windmill/commit/0d9039641b3348e75599937188c35dd89a000584)) + ## [1.410.3](https://github.com/windmill-labs/windmill/compare/v1.410.2...v1.410.3) (2024-10-20) diff --git a/backend/Cargo.lock b/backend/Cargo.lock index 89bed47aa1..3eb14cfed3 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -441,7 +441,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -486,9 +486,9 @@ dependencies = [ [[package]] name = "async-compression" -version = "0.4.16" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "103db485efc3e41214fe4fda9f3dbeae2eb9082f48fd236e6095627a9422066e" +checksum = "0cb8f1d480b0ea3783ab015936d2a55c87e219676f0c0b7dec61494043f21857" dependencies = [ "brotli 7.0.0", "bzip2", @@ -588,7 +588,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -636,7 +636,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -678,7 +678,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -1218,7 +1218,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.81", + "syn 2.0.82", "which 4.4.2", ] @@ -1237,7 +1237,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -1381,7 +1381,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", "syn_derive", ] @@ -1484,7 +1484,7 @@ checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -1744,7 +1744,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -2124,7 +2124,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -2172,7 +2172,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -2194,7 +2194,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core 0.20.10", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -2233,7 +2233,7 @@ dependencies = [ "arrow-array", "arrow-ipc", "arrow-schema", - "async-compression 0.4.16", + "async-compression 0.4.17", "async-trait", "bytes", "bzip2", @@ -2715,7 +2715,7 @@ dependencies = [ "quote", "strum 0.25.0", "strum_macros 0.25.3", - "syn 2.0.81", + "syn 2.0.82", "thiserror", ] @@ -2907,7 +2907,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.1", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3004,7 +3004,7 @@ checksum = "f2b99bf03862d7f545ebc28ddd33a665b50865f4dfd84031a393823879bd4c54" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3160,7 +3160,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3180,7 +3180,7 @@ checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3395,7 +3395,7 @@ checksum = "32016f1242eb82af5474752d00fd8ebcd9004bd69b462b1c91de833972d08ed4" dependencies = [ "proc-macro2", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3427,7 +3427,7 @@ checksum = "e99b8b3c28ae0e84b604c75f721c21dc77afb3706076af5e8216d15fd1deaae3" dependencies = [ "frunk_proc_macro_helpers", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3439,7 +3439,7 @@ dependencies = [ "frunk_core", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3451,7 +3451,7 @@ dependencies = [ "frunk_core", "frunk_proc_macro_helpers", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3575,7 +3575,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -3828,7 +3828,7 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -4463,7 +4463,7 @@ dependencies = [ "Inflector", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -5113,7 +5113,7 @@ checksum = "a7ce64b975ed4f123575d11afd9491f2e37bbd5813fbfbc0f09ae1fbddea74e0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -5152,7 +5152,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", "termcolor", "thiserror", ] @@ -5562,7 +5562,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -5839,7 +5839,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -5880,7 +5880,7 @@ checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -6062,7 +6062,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "910d41a655dac3b764f1ade94821093d3610248694320cd072303a8eedcf221d" dependencies = [ "proc-macro2", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -6115,7 +6115,7 @@ checksum = "07c277e4e643ef00c1233393c673f655e3672cf7eb3ba08a00bdd0ea59139b5f" dependencies = [ "proc-macro-rules-macros", "proc-macro2", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -6127,7 +6127,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -6188,7 +6188,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "syn 2.0.81", + "syn 2.0.82", "thiserror", "typify", "unicode-ident", @@ -6208,7 +6208,7 @@ dependencies = [ "serde_json", "serde_tokenstream", "serde_yaml", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -6251,7 +6251,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -6728,7 +6728,7 @@ version = "0.12.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f713147fbe92361e52392c73b8c9e48c04c6625bce969ef54dc901e58e042a7b" dependencies = [ - "async-compression 0.4.16", + "async-compression 0.4.17", "base64 0.22.1", "bytes", "encoding_rs", @@ -6934,7 +6934,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.81", + "syn 2.0.82", "walkdir", ] @@ -7314,7 +7314,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -7461,7 +7461,7 @@ checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -7472,7 +7472,7 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -7547,7 +7547,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -7602,7 +7602,7 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -7971,7 +7971,7 @@ checksum = "01b2e185515564f15375f593fb966b5718bc624ba77fe49fa4616ad619690554" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8042,7 +8042,7 @@ dependencies = [ "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8065,7 +8065,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.81", + "syn 2.0.82", "tempfile", "tokio", "url", @@ -8217,7 +8217,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8271,7 +8271,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8284,7 +8284,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8392,7 +8392,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8441,7 +8441,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8526,7 +8526,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8633,7 +8633,7 @@ checksum = "63db0adcff29d220c3d151c5b25c0eabe7e32dd936212b84cdaa1392e3130497" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8644,7 +8644,7 @@ checksum = "f486687bfb7b5c560868f69ed2d458b880cebc9babebcb67e49f31b55c5bf847" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8667,7 +8667,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8683,9 +8683,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.81" +version = "2.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198514704ca887dd5a1e408c6c6cdcba43672f9b4062e1b24aa34e74e6d7faae" +checksum = "83540f837a8afc019423a8edb95b52a8effe46957ee402287f4292fae35be021" dependencies = [ "proc-macro2", "quote", @@ -8701,7 +8701,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8727,7 +8727,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -8992,7 +8992,7 @@ checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -9217,7 +9217,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -9486,7 +9486,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8437150ab6bbc8c5f0f519e3d5ed4aa883a83dd4cdd3d1b21f9482936046cb97" dependencies = [ - "async-compression 0.4.16", + "async-compression 0.4.17", "bitflags 2.6.0", "bytes", "futures-core", @@ -9544,7 +9544,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -9781,7 +9781,7 @@ dependencies = [ "regress", "schemars", "serde_json", - "syn 2.0.81", + "syn 2.0.82", "thiserror", "unicode-ident", ] @@ -9798,7 +9798,7 @@ dependencies = [ "serde", "serde_json", "serde_tokenstream", - "syn 2.0.81", + "syn 2.0.82", "typify-impl", ] @@ -9898,9 +9898,9 @@ checksum = "10103c57044730945224467c09f71a4db0071c123a0648cc3e818913bde6b561" [[package]] name = "unicode-id-start" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97e2a3c5fc9de285c0e805d98eba666adb4b2d9e1049ce44821ff7707cc34e91" +checksum = "2f322b60f6b9736017344fa0635d64be2f458fbc04eef65f6be22976dd1ffd5b" [[package]] name = "unicode-ident" @@ -10193,7 +10193,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", "wasm-bindgen-shared", ] @@ -10227,7 +10227,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -10260,7 +10260,7 @@ checksum = "b7f89739351a2e03cb94beb799d47fb2cac01759b40ec441f7de39b00cbf7ef0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -10394,7 +10394,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windmill" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "axum", @@ -10435,7 +10435,7 @@ dependencies = [ [[package]] name = "windmill-api" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "argon2", @@ -10520,7 +10520,7 @@ dependencies = [ [[package]] name = "windmill-api-client" -version = "1.410.3" +version = "1.411.0" dependencies = [ "base64 0.21.7", "chrono", @@ -10538,7 +10538,7 @@ dependencies = [ [[package]] name = "windmill-audit" -version = "1.410.3" +version = "1.411.0" dependencies = [ "chrono", "serde", @@ -10551,7 +10551,7 @@ dependencies = [ [[package]] name = "windmill-common" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "async-stream", @@ -10597,7 +10597,7 @@ dependencies = [ [[package]] name = "windmill-git-sync" -version = "1.410.3" +version = "1.411.0" dependencies = [ "regex", "rsmq_async", @@ -10612,7 +10612,7 @@ dependencies = [ [[package]] name = "windmill-indexer" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "bytes", @@ -10634,19 +10634,19 @@ dependencies = [ [[package]] name = "windmill-macros" -version = "1.410.3" +version = "1.411.0" dependencies = [ "itertools 0.13.0", "lazy_static", "proc-macro2", "quote", "regex", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] name = "windmill-parser" -version = "1.410.3" +version = "1.411.0" dependencies = [ "convert_case 0.6.0", "serde", @@ -10655,7 +10655,7 @@ dependencies = [ [[package]] name = "windmill-parser-bash" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "lazy_static", @@ -10667,7 +10667,7 @@ dependencies = [ [[package]] name = "windmill-parser-go" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "gosyn", @@ -10679,7 +10679,7 @@ dependencies = [ [[package]] name = "windmill-parser-graphql" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "lazy_static", @@ -10691,7 +10691,7 @@ dependencies = [ [[package]] name = "windmill-parser-php" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "itertools 0.13.0", @@ -10702,7 +10702,7 @@ dependencies = [ [[package]] name = "windmill-parser-py" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "itertools 0.13.0", @@ -10713,7 +10713,7 @@ dependencies = [ [[package]] name = "windmill-parser-py-imports" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "async-recursion", @@ -10731,7 +10731,7 @@ dependencies = [ [[package]] name = "windmill-parser-rust" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "convert_case 0.6.0", @@ -10741,14 +10741,14 @@ dependencies = [ "quote", "regex", "serde_json", - "syn 2.0.81", + "syn 2.0.82", "toml 0.7.8", "windmill-parser", ] [[package]] name = "windmill-parser-sql" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "lazy_static", @@ -10760,7 +10760,7 @@ dependencies = [ [[package]] name = "windmill-parser-ts" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "lazy_static", @@ -10778,7 +10778,7 @@ dependencies = [ [[package]] name = "windmill-parser-wasm" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "getrandom 0.2.15", @@ -10799,7 +10799,7 @@ dependencies = [ [[package]] name = "windmill-parser-yaml" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "serde_json", @@ -10809,7 +10809,7 @@ dependencies = [ [[package]] name = "windmill-queue" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "async-recursion", @@ -10842,7 +10842,7 @@ dependencies = [ [[package]] name = "windmill-sql-datatype-parser-wasm" -version = "1.410.3" +version = "1.411.0" dependencies = [ "wasm-bindgen", "wasm-bindgen-test", @@ -10852,7 +10852,7 @@ dependencies = [ [[package]] name = "windmill-worker" -version = "1.410.3" +version = "1.411.0" dependencies = [ "anyhow", "async-recursion", @@ -11218,7 +11218,7 @@ checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", "synstructure", ] @@ -11240,7 +11240,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", ] [[package]] @@ -11260,7 +11260,7 @@ checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.81", + "syn 2.0.82", "synstructure", ] diff --git a/backend/Cargo.toml b/backend/Cargo.toml index b0ced81436..b83105a87e 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "windmill" -version = "1.410.3" +version = "1.411.0" authors.workspace = true edition.workspace = true @@ -28,7 +28,7 @@ members = [ ] [workspace.package] -version = "1.410.3" +version = "1.411.0" authors = ["Ruben Fiszel "] edition = "2021" diff --git a/backend/windmill-api/openapi.yaml b/backend/windmill-api/openapi.yaml index 327dd04c7b..a75a8cc1db 100644 --- a/backend/windmill-api/openapi.yaml +++ b/backend/windmill-api/openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.410.3 + version: 1.411.0 title: Windmill API contact: diff --git a/benchmarks/lib.ts b/benchmarks/lib.ts index eb47107fe8..aa6d2664a5 100644 --- a/benchmarks/lib.ts +++ b/benchmarks/lib.ts @@ -2,7 +2,7 @@ import { sleep } from "https://deno.land/x/sleep@v1.2.1/mod.ts"; import * as windmill from "https://deno.land/x/windmill@v1.174.0/mod.ts"; import * as api from "https://deno.land/x/windmill@v1.174.0/windmill-api/index.ts"; -export const VERSION = "v1.410.3"; +export const VERSION = "v1.411.0"; export async function login(email: string, password: string): Promise { return await windmill.UserService.login({ diff --git a/cli/main.ts b/cli/main.ts index 0cf659c601..dcf7e3b35c 100644 --- a/cli/main.ts +++ b/cli/main.ts @@ -60,7 +60,7 @@ export { // } // }); -export const VERSION = "1.410.3"; +export const VERSION = "1.411.0"; const command = new Command() .name("wmill") diff --git a/frontend/package-lock.json b/frontend/package-lock.json index a4f5ccbd4a..a4d9b91045 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "windmill-components", - "version": "1.410.3", + "version": "1.411.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "windmill-components", - "version": "1.410.3", + "version": "1.411.0", "license": "AGPL-3.0", "dependencies": { "@aws-crypto/sha256-js": "^4.0.0", diff --git a/frontend/package.json b/frontend/package.json index d64d037923..2d48db956d 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "windmill-components", - "version": "1.410.3", + "version": "1.411.0", "scripts": { "dev": "vite dev", "build": "vite build", diff --git a/lsp/Pipfile b/lsp/Pipfile index 331090e56f..f3a86540a8 100644 --- a/lsp/Pipfile +++ b/lsp/Pipfile @@ -4,8 +4,8 @@ verify_ssl = true name = "pypi" [packages] -wmill = ">=1.410.3" -wmill_pg = ">=1.410.3" +wmill = ">=1.411.0" +wmill_pg = ">=1.411.0" sendgrid = "*" mysql-connector-python = "*" pymongo = "*" diff --git a/openflow.openapi.yaml b/openflow.openapi.yaml index a5f1de312c..3ca3d70508 100644 --- a/openflow.openapi.yaml +++ b/openflow.openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.410.3 + version: 1.411.0 title: OpenFlow Spec contact: name: Ruben Fiszel diff --git a/powershell-client/WindmillClient/WindmillClient.psd1 b/powershell-client/WindmillClient/WindmillClient.psd1 index d2e6712269..2dea60dcb9 100644 --- a/powershell-client/WindmillClient/WindmillClient.psd1 +++ b/powershell-client/WindmillClient/WindmillClient.psd1 @@ -12,7 +12,7 @@ RootModule = 'WindmillClient.psm1' # Version number of this module. -ModuleVersion = '1.410.3' +ModuleVersion = '1.411.0' # Supported PSEditions # CompatiblePSEditions = @() diff --git a/python-client/wmill/pyproject.toml b/python-client/wmill/pyproject.toml index f5cd1e1044..e52548a77c 100644 --- a/python-client/wmill/pyproject.toml +++ b/python-client/wmill/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "wmill" -version = "1.410.3" +version = "1.411.0" description = "A client library for accessing Windmill server wrapping the Windmill client API" license = "Apache-2.0" homepage = "https://windmill.dev" diff --git a/python-client/wmill_pg/pyproject.toml b/python-client/wmill_pg/pyproject.toml index 39a94952ad..be944a4b26 100644 --- a/python-client/wmill_pg/pyproject.toml +++ b/python-client/wmill_pg/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "wmill-pg" -version = "1.410.3" +version = "1.411.0" description = "An extension client for the wmill client library focused on pg" license = "Apache-2.0" homepage = "https://windmill.dev" diff --git a/typescript-client/jsr.json b/typescript-client/jsr.json index fbf65a0a36..00c2875f07 100644 --- a/typescript-client/jsr.json +++ b/typescript-client/jsr.json @@ -1,6 +1,6 @@ { "name": "@windmill/windmill", - "version": "1.410.3", + "version": "1.411.0", "exports": "./src/index.ts", "publish": { "exclude": ["!src", "./s3Types.ts", "./client.ts"] diff --git a/typescript-client/package.json b/typescript-client/package.json index 79852ab4a3..0bba85c4a2 100644 --- a/typescript-client/package.json +++ b/typescript-client/package.json @@ -1,7 +1,7 @@ { "name": "windmill-client", "description": "Windmill SDK client for browsers and Node.js", - "version": "1.410.3", + "version": "1.411.0", "author": "Ruben Fiszel", "license": "Apache 2.0", "devDependencies": { diff --git a/version.txt b/version.txt index e2222940e1..67789b485d 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.410.3 +1.411.0 From 68de33b910bb91e5d989107eb6908827fdd3b8b1 Mon Sep 17 00:00:00 2001 From: Alexander Petric Date: Mon, 21 Oct 2024 20:42:12 -0400 Subject: [PATCH 05/79] audit logs for failed login attempts (#4564) * audit logs for failed login attempts * updating ee ref --- backend/ee-repo-ref.txt | 2 +- backend/windmill-api/openapi.yaml | 1 + frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/backend/ee-repo-ref.txt b/backend/ee-repo-ref.txt index 2ada4955ca..0b60c124b1 100644 --- a/backend/ee-repo-ref.txt +++ b/backend/ee-repo-ref.txt @@ -1 +1 @@ -ce38a7f85ca257c48471c46e3811a1281d9e2f27 +d61c163e0a311ecd86d1398aff883eaea8d0b09a diff --git a/backend/windmill-api/openapi.yaml b/backend/windmill-api/openapi.yaml index a75a8cc1db..53a4f79379 100644 --- a/backend/windmill-api/openapi.yaml +++ b/backend/windmill-api/openapi.yaml @@ -10735,6 +10735,7 @@ components: - "users.delete" - "users.update" - "users.login" + - "users.login_failure" - "users.logout" - "users.accept_invite" - "users.decline_invite" diff --git a/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte b/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte index 107d80b0c0..c6c8bfb2d8 100644 --- a/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte +++ b/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte @@ -241,6 +241,7 @@ USERS_SETPASSWORD: 'users.setpassword', USERS_UPDATE: 'users.update', USERS_LOGIN: 'users.login', + USERS_LOGIN_FAILURE: 'users.login_failure', USERS_LOGOUT: 'users.logout', USERS_ACCEPT_INVITE: 'users.accept_invite', USERS_DECLINE_INVITE: 'users.decline_invite', From 99867598b253b8db59cfed9184b3ad1b3a3e41e9 Mon Sep 17 00:00:00 2001 From: HugoCasa Date: Tue, 22 Oct 2024 15:49:08 +0200 Subject: [PATCH 06/79] improve stripe team plan switching (#4552) Co-authored-by: Ruben Fiszel --- backend/Cargo.lock | 4 ++-- backend/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/backend/Cargo.lock b/backend/Cargo.lock index 3eb14cfed3..eae7e54819 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -641,9 +641,9 @@ dependencies = [ [[package]] name = "async-stripe" -version = "0.34.1" +version = "0.39.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109605d984dd71a9a278e2d43a2831a20e80f25c3bcc25174096d12352cfc469" +checksum = "58d670cf4d47a1b8ffef54286a5625382e360a34ee76902fd93ad8c7032a0c30" dependencies = [ "chrono", "futures-util", diff --git a/backend/Cargo.toml b/backend/Cargo.toml index b83105a87e..1355d1f9bb 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -219,7 +219,7 @@ serde_derive = "1.0.147" const_format = { version = "0.2", features = ["rust_1_64", "rust_1_51"] } dyn-iter = "0.2.0" rsa = "0.7.2" -async-stripe = { version = "0.34.1", features = [ +async-stripe = { version = "0.39.1", features = [ "runtime-tokio-hyper", "checkout", "billing", From e9e0b572d6b57069b375f1c5c81c1c147f24a676 Mon Sep 17 00:00:00 2001 From: Alexander Petric Date: Tue, 22 Oct 2024 11:02:59 -0400 Subject: [PATCH 07/79] adding github workflow build triggers on comment (#4565) * adding github workflow build triggers on comment * fix conditions * revert formating * simplify * event_name fix --- .github/workflows/docker-image.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index f0928cbd33..1704472b3a 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -16,6 +16,8 @@ on: types: [opened, synchronize, reopened] paths: - "Dockerfile" + issue_comment: + types: [created, edited, deleted] concurrency: group: ${{ github.ref }} @@ -26,6 +28,7 @@ permissions: write-all jobs: build: runs-on: ubicloud + if: (github.event_name != 'issue_comment') || (contains(github.event.comment.body, '/buildimage') || contains(github.event.comment.body, '/buildimage_all')) steps: - uses: actions/checkout@v4 with: @@ -87,6 +90,7 @@ jobs: build_ee: runs-on: ubicloud + if: (github.event_name != 'issue_comment') || (contains(github.event.comment.body, '/buildimage_ee') || contains(github.event.comment.body, '/buildimage_all')) steps: - uses: actions/checkout@v4 with: @@ -436,7 +440,7 @@ jobs: build_ee_nsjail: needs: [build_ee] runs-on: ubicloud - if: github.event_name != 'pull_request' + if: (github.event_name != 'issue_comment') || (github.event_name != 'pull_request') || (contains(github.event.comment.body, '/buildimage_nsjail') || contains(github.event.comment.body, '/buildimage_all')) steps: - uses: actions/checkout@v4 with: From 3d82c42af274448ba6f7d18892772902ca0364cb Mon Sep 17 00:00:00 2001 From: Alexander Petric Date: Tue, 22 Oct 2024 11:18:14 -0400 Subject: [PATCH 08/79] update docker build on comment (#4567) * adding github workflow build triggers on comment * fix conditions * revert formating * simplify * event_name fix * build ee on nsjail as well --- .github/workflows/docker-image.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 1704472b3a..70a24f0e4b 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -28,7 +28,7 @@ permissions: write-all jobs: build: runs-on: ubicloud - if: (github.event_name != 'issue_comment') || (contains(github.event.comment.body, '/buildimage') || contains(github.event.comment.body, '/buildimage_all')) + if: (github.event_name != 'issue_comment') || (contains(github.event.comment.body, '/buildimage_all') || contains(github.event.comment.body, '/buildimage_base')) steps: - uses: actions/checkout@v4 with: @@ -90,7 +90,7 @@ jobs: build_ee: runs-on: ubicloud - if: (github.event_name != 'issue_comment') || (contains(github.event.comment.body, '/buildimage_ee') || contains(github.event.comment.body, '/buildimage_all')) + if: (github.event_name != 'issue_comment') || (contains(github.event.comment.body, '/buildimage_ee') || contains(github.event.comment.body, '/buildimage_nsjail')) || contains(github.event.comment.body, '/buildimage_all') steps: - uses: actions/checkout@v4 with: From f354ac54982e8c96b7298c8205426e5c757f8f92 Mon Sep 17 00:00:00 2001 From: Guilhem Date: Tue, 22 Oct 2024 17:50:43 +0200 Subject: [PATCH 09/79] Glm/fix cron builder (#4566) * fix cron expression * fix cron builder * Fix prefilled schedule --------- Co-authored-by: Guilhem --- frontend/src/lib/components/CronInput.svelte | 18 +++++++++--------- .../src/lib/components/RunPageSchedules.svelte | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/frontend/src/lib/components/CronInput.svelte b/frontend/src/lib/components/CronInput.svelte index cee391930f..42fc3fecc4 100644 --- a/frontend/src/lib/components/CronInput.svelte +++ b/frontend/src/lib/components/CronInput.svelte @@ -112,26 +112,26 @@ // If using the basic editor, set the cron string based on the selected options if (executeEvery === 'second') { if (seconds > 0) { - nschedule = `*/${seconds} * * * *` + nschedule = `*/${seconds} * * * * *` } else { - nschedule = `* * * * *` + nschedule = `* * * * * *` } } else if (executeEvery === 'minute') { if (minutes > 0) { - nschedule = `0 */${minutes} * * *` + nschedule = `0 */${minutes} * * * *` } else { - nschedule = `* * * * *` + nschedule = `* * * * * *` } } else if (executeEvery === 'hour') { if (hours > 0) { - nschedule = `0 0 */${hours} * *` + nschedule = `0 0 */${hours} * * *` } else { - nschedule = `* * * * *` + nschedule = `* * * * * *` } } else if (executeEvery === 'day-month') { - nschedule = `0 ${s_AtUTCMinutes} ${s_AtUTCHours} ${s_daysOfMonth} *` + nschedule = `0 ${s_AtUTCMinutes} ${s_AtUTCHours} ${s_daysOfMonth} * *` } else if (executeEvery === 'month') { - nschedule = `0 ${s_AtUTCMinutes} ${s_AtUTCHours} ${s_daysOfMonth} ${s_months}` + nschedule = `0 ${s_AtUTCMinutes} ${s_AtUTCHours} ${s_daysOfMonth} ${s_months} *` } else if (executeEvery === 'day-week') { nschedule = `0 ${s_AtUTCMinutes} ${s_AtUTCHours} * * ${s_daysOfWeek}` } @@ -214,7 +214,7 @@ type="text" id="cron-schedule" name="cron-schedule" - placeholder="*/30 * * * *" + placeholder="0 0 */1 * * *" bind:value={schedule} {disabled} /> diff --git a/frontend/src/lib/components/RunPageSchedules.svelte b/frontend/src/lib/components/RunPageSchedules.svelte index 6c4958781d..45e081bcbc 100644 --- a/frontend/src/lib/components/RunPageSchedules.svelte +++ b/frontend/src/lib/components/RunPageSchedules.svelte @@ -218,7 +218,7 @@ $primarySchedule = { summary: '', args: {}, - cron: '0 0 0 /1 * * *', + cron: '0 0 */1 * * *', timezone: Intl.DateTimeFormat().resolvedOptions().timeZone, enabled: true } From 343c8da18a408a483105dcd985d595811a20bdd4 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Tue, 22 Oct 2024 19:40:31 +0200 Subject: [PATCH 10/79] remove issues_comment trigger for ci --- .github/workflows/docker-image.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 70a24f0e4b..6ad794e136 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -16,8 +16,6 @@ on: types: [opened, synchronize, reopened] paths: - "Dockerfile" - issue_comment: - types: [created, edited, deleted] concurrency: group: ${{ github.ref }} From 1ae033841eb8def4456ad8117adbcb3aa7316994 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Tue, 22 Oct 2024 20:08:26 +0200 Subject: [PATCH 11/79] fix: update bun to 1.1.32 (#4568) * fix: update bun to 1.1.32 * Update DockerfileSlimEe * Update Dockerfile --- Dockerfile | 2 +- docker/DockerfileSlim | 2 +- docker/DockerfileSlimEe | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index f3a90605c2..4afb307c8f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -177,7 +177,7 @@ COPY --from=builder /windmill/target/release/windmill ${APP}/windmill COPY --from=denoland/deno:2.0.2 --chmod=755 /usr/bin/deno /usr/bin/deno -COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.32 /usr/local/bin/bun /usr/bin/bun COPY --from=php:8.3.7-cli /usr/local/bin/php /usr/bin/php COPY --from=composer:2.7.6 /usr/bin/composer /usr/bin/composer diff --git a/docker/DockerfileSlim b/docker/DockerfileSlim index 1b756cc29c..a0190933a4 100644 --- a/docker/DockerfileSlim +++ b/docker/DockerfileSlim @@ -20,7 +20,7 @@ RUN /usr/local/bin/python3 -m pip install pip-tools # Install UV RUN curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.18/uv-installer.sh | sh && mv /root/.cargo/bin/uv /usr/local/bin/uv -COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.32 /usr/local/bin/bun /usr/bin/bun # add the docker client to call docker from a worker if enabled COPY --from=docker:dind /usr/local/bin/docker /usr/local/bin/ diff --git a/docker/DockerfileSlimEe b/docker/DockerfileSlimEe index 80762939b1..ef3771c767 100644 --- a/docker/DockerfileSlimEe +++ b/docker/DockerfileSlimEe @@ -19,7 +19,7 @@ RUN /usr/local/bin/python3 -m pip install pip-tools # Install UV RUN curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.4.18/uv-installer.sh | sh && mv /root/.cargo/bin/uv /usr/local/bin/uv -COPY --from=oven/bun:1.1.31 /usr/local/bin/bun /usr/bin/bun +COPY --from=oven/bun:1.1.32 /usr/local/bin/bun /usr/bin/bun # add the docker client to call docker from a worker if enabled COPY --from=docker:dind /usr/local/bin/docker /usr/local/bin/ From f37f24266628d32732cd4cc413603ed72ec4b93d Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Tue, 22 Oct 2024 20:26:35 +0200 Subject: [PATCH 12/79] chore(main): release 1.411.1 (#4569) * chore(main): release 1.411.1 * Apply automatic changes --------- Co-authored-by: rubenfiszel --- CHANGELOG.md | 7 ++ backend/Cargo.lock | 74 +++++++++---------- backend/Cargo.toml | 4 +- backend/windmill-api/openapi.yaml | 2 +- benchmarks/lib.ts | 2 +- cli/main.ts | 2 +- frontend/package-lock.json | 4 +- frontend/package.json | 2 +- lsp/Pipfile | 4 +- openflow.openapi.yaml | 2 +- .../WindmillClient/WindmillClient.psd1 | 2 +- python-client/wmill/pyproject.toml | 2 +- python-client/wmill_pg/pyproject.toml | 2 +- typescript-client/jsr.json | 2 +- typescript-client/package.json | 2 +- version.txt | 2 +- 16 files changed, 61 insertions(+), 54 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index be568afe54..adaa14ec7a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [1.411.1](https://github.com/windmill-labs/windmill/compare/v1.411.0...v1.411.1) (2024-10-22) + + +### Bug Fixes + +* update bun to 1.1.32 ([#4568](https://github.com/windmill-labs/windmill/issues/4568)) ([0586446](https://github.com/windmill-labs/windmill/commit/058644667129f0d79ec147aacdda449142ae0ab9)) + ## [1.411.0](https://github.com/windmill-labs/windmill/compare/v1.410.3...v1.411.0) (2024-10-21) diff --git a/backend/Cargo.lock b/backend/Cargo.lock index eae7e54819..6e3d854a2a 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -166,9 +166,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.90" +version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37bf3594c4c988a53154954629820791dde498571819ae4ca50ca811e060cc95" +checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8" [[package]] name = "arc-swap" @@ -1495,9 +1495,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.7.2" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" +checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" [[package]] name = "bytes-utils" @@ -6132,9 +6132,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.88" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" +checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" dependencies = [ "unicode-ident", ] @@ -7414,9 +7414,9 @@ checksum = "a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4" [[package]] name = "serde" -version = "1.0.210" +version = "1.0.212" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +checksum = "ccd4055b7e3937a5c2595e974f5bf1715a23919a595a04b5ad959bdbbb61ab04" dependencies = [ "serde_derive", ] @@ -7455,9 +7455,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.210" +version = "1.0.212" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +checksum = "726adf8349784fb68a42e6466f49362ae039d9c5333cc6eb131f4d6f94bb9126" dependencies = [ "proc-macro2", "quote", @@ -8977,18 +8977,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.64" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602" dependencies = [ "proc-macro2", "quote", @@ -10394,7 +10394,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windmill" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "axum", @@ -10435,7 +10435,7 @@ dependencies = [ [[package]] name = "windmill-api" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "argon2", @@ -10520,7 +10520,7 @@ dependencies = [ [[package]] name = "windmill-api-client" -version = "1.411.0" +version = "1.411.1" dependencies = [ "base64 0.21.7", "chrono", @@ -10538,7 +10538,7 @@ dependencies = [ [[package]] name = "windmill-audit" -version = "1.411.0" +version = "1.411.1" dependencies = [ "chrono", "serde", @@ -10551,7 +10551,7 @@ dependencies = [ [[package]] name = "windmill-common" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "async-stream", @@ -10597,7 +10597,7 @@ dependencies = [ [[package]] name = "windmill-git-sync" -version = "1.411.0" +version = "1.411.1" dependencies = [ "regex", "rsmq_async", @@ -10612,7 +10612,7 @@ dependencies = [ [[package]] name = "windmill-indexer" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "bytes", @@ -10634,7 +10634,7 @@ dependencies = [ [[package]] name = "windmill-macros" -version = "1.411.0" +version = "1.411.1" dependencies = [ "itertools 0.13.0", "lazy_static", @@ -10646,7 +10646,7 @@ dependencies = [ [[package]] name = "windmill-parser" -version = "1.411.0" +version = "1.411.1" dependencies = [ "convert_case 0.6.0", "serde", @@ -10655,7 +10655,7 @@ dependencies = [ [[package]] name = "windmill-parser-bash" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "lazy_static", @@ -10667,7 +10667,7 @@ dependencies = [ [[package]] name = "windmill-parser-go" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "gosyn", @@ -10679,7 +10679,7 @@ dependencies = [ [[package]] name = "windmill-parser-graphql" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "lazy_static", @@ -10691,7 +10691,7 @@ dependencies = [ [[package]] name = "windmill-parser-php" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "itertools 0.13.0", @@ -10702,7 +10702,7 @@ dependencies = [ [[package]] name = "windmill-parser-py" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "itertools 0.13.0", @@ -10713,7 +10713,7 @@ dependencies = [ [[package]] name = "windmill-parser-py-imports" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "async-recursion", @@ -10731,7 +10731,7 @@ dependencies = [ [[package]] name = "windmill-parser-rust" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "convert_case 0.6.0", @@ -10748,7 +10748,7 @@ dependencies = [ [[package]] name = "windmill-parser-sql" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "lazy_static", @@ -10760,7 +10760,7 @@ dependencies = [ [[package]] name = "windmill-parser-ts" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "lazy_static", @@ -10778,7 +10778,7 @@ dependencies = [ [[package]] name = "windmill-parser-wasm" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "getrandom 0.2.15", @@ -10799,7 +10799,7 @@ dependencies = [ [[package]] name = "windmill-parser-yaml" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "serde_json", @@ -10809,7 +10809,7 @@ dependencies = [ [[package]] name = "windmill-queue" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "async-recursion", @@ -10842,7 +10842,7 @@ dependencies = [ [[package]] name = "windmill-sql-datatype-parser-wasm" -version = "1.411.0" +version = "1.411.1" dependencies = [ "wasm-bindgen", "wasm-bindgen-test", @@ -10852,7 +10852,7 @@ dependencies = [ [[package]] name = "windmill-worker" -version = "1.411.0" +version = "1.411.1" dependencies = [ "anyhow", "async-recursion", diff --git a/backend/Cargo.toml b/backend/Cargo.toml index 1355d1f9bb..11a097d2b7 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "windmill" -version = "1.411.0" +version = "1.411.1" authors.workspace = true edition.workspace = true @@ -28,7 +28,7 @@ members = [ ] [workspace.package] -version = "1.411.0" +version = "1.411.1" authors = ["Ruben Fiszel "] edition = "2021" diff --git a/backend/windmill-api/openapi.yaml b/backend/windmill-api/openapi.yaml index 53a4f79379..b0fe70985a 100644 --- a/backend/windmill-api/openapi.yaml +++ b/backend/windmill-api/openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.411.0 + version: 1.411.1 title: Windmill API contact: diff --git a/benchmarks/lib.ts b/benchmarks/lib.ts index aa6d2664a5..fda9176483 100644 --- a/benchmarks/lib.ts +++ b/benchmarks/lib.ts @@ -2,7 +2,7 @@ import { sleep } from "https://deno.land/x/sleep@v1.2.1/mod.ts"; import * as windmill from "https://deno.land/x/windmill@v1.174.0/mod.ts"; import * as api from "https://deno.land/x/windmill@v1.174.0/windmill-api/index.ts"; -export const VERSION = "v1.411.0"; +export const VERSION = "v1.411.1"; export async function login(email: string, password: string): Promise { return await windmill.UserService.login({ diff --git a/cli/main.ts b/cli/main.ts index dcf7e3b35c..0fc9384525 100644 --- a/cli/main.ts +++ b/cli/main.ts @@ -60,7 +60,7 @@ export { // } // }); -export const VERSION = "1.411.0"; +export const VERSION = "1.411.1"; const command = new Command() .name("wmill") diff --git a/frontend/package-lock.json b/frontend/package-lock.json index a4d9b91045..7761d4f4a6 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "windmill-components", - "version": "1.411.0", + "version": "1.411.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "windmill-components", - "version": "1.411.0", + "version": "1.411.1", "license": "AGPL-3.0", "dependencies": { "@aws-crypto/sha256-js": "^4.0.0", diff --git a/frontend/package.json b/frontend/package.json index 2d48db956d..dee26b8333 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "windmill-components", - "version": "1.411.0", + "version": "1.411.1", "scripts": { "dev": "vite dev", "build": "vite build", diff --git a/lsp/Pipfile b/lsp/Pipfile index f3a86540a8..3ad5ebf804 100644 --- a/lsp/Pipfile +++ b/lsp/Pipfile @@ -4,8 +4,8 @@ verify_ssl = true name = "pypi" [packages] -wmill = ">=1.411.0" -wmill_pg = ">=1.411.0" +wmill = ">=1.411.1" +wmill_pg = ">=1.411.1" sendgrid = "*" mysql-connector-python = "*" pymongo = "*" diff --git a/openflow.openapi.yaml b/openflow.openapi.yaml index 3ca3d70508..6ce153606e 100644 --- a/openflow.openapi.yaml +++ b/openflow.openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.411.0 + version: 1.411.1 title: OpenFlow Spec contact: name: Ruben Fiszel diff --git a/powershell-client/WindmillClient/WindmillClient.psd1 b/powershell-client/WindmillClient/WindmillClient.psd1 index 2dea60dcb9..6585bf264d 100644 --- a/powershell-client/WindmillClient/WindmillClient.psd1 +++ b/powershell-client/WindmillClient/WindmillClient.psd1 @@ -12,7 +12,7 @@ RootModule = 'WindmillClient.psm1' # Version number of this module. -ModuleVersion = '1.411.0' +ModuleVersion = '1.411.1' # Supported PSEditions # CompatiblePSEditions = @() diff --git a/python-client/wmill/pyproject.toml b/python-client/wmill/pyproject.toml index e52548a77c..6a51dae631 100644 --- a/python-client/wmill/pyproject.toml +++ b/python-client/wmill/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "wmill" -version = "1.411.0" +version = "1.411.1" description = "A client library for accessing Windmill server wrapping the Windmill client API" license = "Apache-2.0" homepage = "https://windmill.dev" diff --git a/python-client/wmill_pg/pyproject.toml b/python-client/wmill_pg/pyproject.toml index be944a4b26..8bb05b8084 100644 --- a/python-client/wmill_pg/pyproject.toml +++ b/python-client/wmill_pg/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "wmill-pg" -version = "1.411.0" +version = "1.411.1" description = "An extension client for the wmill client library focused on pg" license = "Apache-2.0" homepage = "https://windmill.dev" diff --git a/typescript-client/jsr.json b/typescript-client/jsr.json index 00c2875f07..4d617e7f3b 100644 --- a/typescript-client/jsr.json +++ b/typescript-client/jsr.json @@ -1,6 +1,6 @@ { "name": "@windmill/windmill", - "version": "1.411.0", + "version": "1.411.1", "exports": "./src/index.ts", "publish": { "exclude": ["!src", "./s3Types.ts", "./client.ts"] diff --git a/typescript-client/package.json b/typescript-client/package.json index 0bba85c4a2..bab741796c 100644 --- a/typescript-client/package.json +++ b/typescript-client/package.json @@ -1,7 +1,7 @@ { "name": "windmill-client", "description": "Windmill SDK client for browsers and Node.js", - "version": "1.411.0", + "version": "1.411.1", "author": "Ruben Fiszel", "license": "Apache 2.0", "devDependencies": { diff --git a/version.txt b/version.txt index 67789b485d..d8999709d6 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.411.0 +1.411.1 From aeffe593b817e445f04c69f092fa614ee8feb99e Mon Sep 17 00:00:00 2001 From: Alexander Petric Date: Tue, 22 Oct 2024 16:09:31 -0400 Subject: [PATCH 13/79] adding oauth.login_failure to openapi spec (#4570) --- backend/windmill-api/openapi.yaml | 1 + frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte | 1 + 2 files changed, 2 insertions(+) diff --git a/backend/windmill-api/openapi.yaml b/backend/windmill-api/openapi.yaml index b0fe70985a..969bdb0cac 100644 --- a/backend/windmill-api/openapi.yaml +++ b/backend/windmill-api/openapi.yaml @@ -10747,6 +10747,7 @@ components: - "users.impersonate" - "users.leave_workspace" - "oauth.login" + - "oauth.login_failure" - "oauth.signup" - "variables.create" - "variables.delete" diff --git a/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte b/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte index c6c8bfb2d8..0610d7f571 100644 --- a/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte +++ b/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte @@ -252,6 +252,7 @@ USERS_IMPERSONATE: 'users.impersonate', USERS_LEAVE_WORKSPACE: 'users.leave_workspace', OAUTH_LOGIN: 'oauth.login', + OAUTH_LOGIN_FAILURE: 'oauth.login_failure', OAUTH_SIGNUP: 'oauth.signup', VARIABLES_CREATE: 'variables.create', VARIABLES_DELETE: 'variables.delete', From 1c56690fea6c37c6ed7da05ad030d2790856ffc0 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Wed, 23 Oct 2024 11:11:24 +0200 Subject: [PATCH 14/79] fix(app builder): date input default value improvements --- .../lib/components/apps/components/inputs/AppDateInput.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/lib/components/apps/components/inputs/AppDateInput.svelte b/frontend/src/lib/components/apps/components/inputs/AppDateInput.svelte index 2ffab7236d..dd78968a70 100644 --- a/frontend/src/lib/components/apps/components/inputs/AppDateInput.svelte +++ b/frontend/src/lib/components/apps/components/inputs/AppDateInput.svelte @@ -38,7 +38,7 @@ result: undefined as string | undefined }) - $: !value && handleDefault(resolvedConfig.defaultValue) + $: handleDefault(resolvedConfig.defaultValue) function formatDate(dateString: string, formatString: string = 'dd.MM.yyyy') { if (formatString === '') { From c2908e52c68103f5882dba896542f7f7fdec5cf7 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Thu, 24 Oct 2024 13:40:09 +0200 Subject: [PATCH 15/79] fix: initialize empty smtp settings correctly --- .../lib/components/InstanceSettings.svelte | 73 +++++++++++++------ 1 file changed, 51 insertions(+), 22 deletions(-) diff --git a/frontend/src/lib/components/InstanceSettings.svelte b/frontend/src/lib/components/InstanceSettings.svelte index ac0aabd161..5ff2262058 100644 --- a/frontend/src/lib/components/InstanceSettings.svelte +++ b/frontend/src/lib/components/InstanceSettings.svelte @@ -102,8 +102,8 @@ if (values['base_url'] == undefined) { values['base_url'] = 'http://localhost' } - if (values['smtp_connect'] == undefined) { - values['smtp_connect'] = {} + if (values['smtp_settings'] == undefined) { + values['smtp_settings'] = {} } loading = false @@ -274,22 +274,34 @@ {#if category == 'SMTP'}
Setting SMTP unlocks sending emails upon adding new users to the workspace or the instance or sending critical alerts. - Learn more
Setting SMTP unlocks sending emails upon adding new users to the workspace or the + instance or sending critical alerts. + Learn more {:else if category == 'Registries'}
- Add private registries for Pip, Bun and npm. Learn more + Add private registries for Pip, Bun and npm. Learn more
{:else if category == 'Slack'}
- Connecting your instance to a Slack workspace enables critical alerts to be sent to a Slack channel. - Learn more + Connecting your instance to a Slack workspace enables critical alerts to be sent to a + Slack channel. + Learn more
{:else if category == 'SCIM/SAML'}
- Setting up SAML and SCIM allows you to authenticate users using your identity provider. - Learn more + Setting up SAML and SCIM allows you to authenticate users using your identity + provider. + Learn more
{:else if category == 'Debug'}
@@ -310,9 +322,11 @@
{#if $enterpriseLicense} -
- On Enterprise Edition, you must send data to check that usage is in line with the terms of the subscription. You can either enable telemetry or regularly send usage data by clicking the button below. -
+
+ On Enterprise Edition, you must send data to check that usage is in line with the + terms of the subscription. You can either enable telemetry or regularly send usage + data by clicking the button below. +
- - {/if} +
+ + +
{#if alerts.length > 0}
@@ -217,12 +246,6 @@ - - + {#each alerts as alert, index} - {/if} + {#if activeOnly} + + {/if} {#if filteredUsers && users} - {#each filteredUsers.slice(0, nbDisplayed) as { email, super_admin, login_type, name, username } (email)} + {#each filteredUsers.slice(0, nbDisplayed) as { email, super_admin, login_type, name, username, operator_only } (email)} @@ -203,13 +230,22 @@ {email} isConflict on:renamed={() => { - listUsers() + listUsers(activeOnly) }} /> {/key} {/if} {/if} + {#if activeOnly} + + {/if}
- Name - - Queue Tags to Monitor @@ -230,38 +253,31 @@ Jobs Cooldown (s) Time (s) Actions
- {#if editingIndex === index} - - {:else} - {alert.name} - {/if} - {#if editingIndex === index}
@@ -282,8 +298,9 @@ filterTags(e)} + disabled={workerTags.length === alert.tags_to_monitor.length} class="p-1 flex-grow mr-1" /> @@ -302,6 +320,7 @@ class="autocomplete-list border max-h-36 overflow-y-auto absolute z-50" > {#each filteredTags as tag} + {#if !alert.tags_to_monitor.includes(tag)}
  • + {/if} {/each} {/if} @@ -401,6 +421,7 @@

    {/if} +

    Queue Metrics

    From 6572f7b509c7240c6688c919c51b3e5f8c64a076 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Fri, 25 Oct 2024 06:18:06 +0200 Subject: [PATCH 19/79] Update OAuthSetting.svelte --- frontend/src/lib/components/OAuthSetting.svelte | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/frontend/src/lib/components/OAuthSetting.svelte b/frontend/src/lib/components/OAuthSetting.svelte index 632fcc63a1..e2fe394761 100644 --- a/frontend/src/lib/components/OAuthSetting.svelte +++ b/frontend/src/lib/components/OAuthSetting.svelte @@ -66,10 +66,12 @@ > {#if enabled}
    - + {#if name != "slack"} + + {/if}
    usernamekind
    {email} {login_type} + {#if operator_only} + Operator only + {:else} + Developer + {/if} + @@ -244,7 +280,7 @@ updateName(e.detail, email) }} on:renamed={() => { - listUsers() + listUsers(activeOnly) }} {automateUsernameCreation} /> @@ -258,7 +294,7 @@ deleteConfirmedCallback = async () => { await UserService.globalUserDelete({ email }) sendUserToast(`User ${email} removed`) - listUsers() + listUsers(activeOnly) } }} > From 9c15fdde8a59f2c89c72b0415b88313efe9acbe6 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Tue, 29 Oct 2024 09:34:42 +0100 Subject: [PATCH 42/79] chore(main): release 1.414.0 (#4599) * chore(main): release 1.414.0 * Apply automatic changes * Update CHANGELOG.md --------- Co-authored-by: rubenfiszel --- CHANGELOG.md | 4 ++ backend/Cargo.lock | 48 +++++++++---------- backend/Cargo.toml | 4 +- backend/windmill-api/openapi.yaml | 2 +- benchmarks/lib.ts | 2 +- cli/main.ts | 2 +- frontend/package-lock.json | 4 +- frontend/package.json | 2 +- lsp/Pipfile | 4 +- openflow.openapi.yaml | 2 +- .../WindmillClient/WindmillClient.psd1 | 2 +- python-client/wmill/pyproject.toml | 2 +- python-client/wmill_pg/pyproject.toml | 2 +- typescript-client/jsr.json | 2 +- typescript-client/package.json | 2 +- version.txt | 2 +- 16 files changed, 45 insertions(+), 41 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 856c7b45f6..0302661caa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [1.414.0](https://github.com/windmill-labs/windmill/compare/v1.413.2...v1.414.0) (2024-10-29) + +* Issue with previous release, re-releasing + ## [1.413.2](https://github.com/windmill-labs/windmill/compare/v1.413.1...v1.413.2) (2024-10-29) diff --git a/backend/Cargo.lock b/backend/Cargo.lock index ce73a7bb66..fcd54febb1 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -10395,7 +10395,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windmill" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "axum", @@ -10437,7 +10437,7 @@ dependencies = [ [[package]] name = "windmill-api" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "argon2", @@ -10522,7 +10522,7 @@ dependencies = [ [[package]] name = "windmill-api-client" -version = "1.413.2" +version = "1.414.0" dependencies = [ "base64 0.21.7", "chrono", @@ -10540,7 +10540,7 @@ dependencies = [ [[package]] name = "windmill-audit" -version = "1.413.2" +version = "1.414.0" dependencies = [ "chrono", "serde", @@ -10553,7 +10553,7 @@ dependencies = [ [[package]] name = "windmill-autoscaling" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "rsmq_async", @@ -10568,7 +10568,7 @@ dependencies = [ [[package]] name = "windmill-common" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "async-stream", @@ -10614,7 +10614,7 @@ dependencies = [ [[package]] name = "windmill-git-sync" -version = "1.413.2" +version = "1.414.0" dependencies = [ "regex", "rsmq_async", @@ -10629,7 +10629,7 @@ dependencies = [ [[package]] name = "windmill-indexer" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "bytes", @@ -10651,7 +10651,7 @@ dependencies = [ [[package]] name = "windmill-macros" -version = "1.413.2" +version = "1.414.0" dependencies = [ "itertools 0.13.0", "lazy_static", @@ -10663,7 +10663,7 @@ dependencies = [ [[package]] name = "windmill-parser" -version = "1.413.2" +version = "1.414.0" dependencies = [ "convert_case 0.6.0", "serde", @@ -10672,7 +10672,7 @@ dependencies = [ [[package]] name = "windmill-parser-bash" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "lazy_static", @@ -10684,7 +10684,7 @@ dependencies = [ [[package]] name = "windmill-parser-go" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "gosyn", @@ -10696,7 +10696,7 @@ dependencies = [ [[package]] name = "windmill-parser-graphql" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "lazy_static", @@ -10708,7 +10708,7 @@ dependencies = [ [[package]] name = "windmill-parser-php" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "itertools 0.13.0", @@ -10719,7 +10719,7 @@ dependencies = [ [[package]] name = "windmill-parser-py" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "itertools 0.13.0", @@ -10730,7 +10730,7 @@ dependencies = [ [[package]] name = "windmill-parser-py-imports" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "async-recursion", @@ -10748,7 +10748,7 @@ dependencies = [ [[package]] name = "windmill-parser-rust" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "convert_case 0.6.0", @@ -10765,7 +10765,7 @@ dependencies = [ [[package]] name = "windmill-parser-sql" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "lazy_static", @@ -10777,7 +10777,7 @@ dependencies = [ [[package]] name = "windmill-parser-ts" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "lazy_static", @@ -10795,7 +10795,7 @@ dependencies = [ [[package]] name = "windmill-parser-wasm" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "getrandom 0.2.15", @@ -10816,7 +10816,7 @@ dependencies = [ [[package]] name = "windmill-parser-yaml" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "serde_json", @@ -10826,7 +10826,7 @@ dependencies = [ [[package]] name = "windmill-queue" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "async-recursion", @@ -10859,7 +10859,7 @@ dependencies = [ [[package]] name = "windmill-sql-datatype-parser-wasm" -version = "1.413.2" +version = "1.414.0" dependencies = [ "wasm-bindgen", "wasm-bindgen-test", @@ -10869,7 +10869,7 @@ dependencies = [ [[package]] name = "windmill-worker" -version = "1.413.2" +version = "1.414.0" dependencies = [ "anyhow", "async-recursion", diff --git a/backend/Cargo.toml b/backend/Cargo.toml index df77adff9e..5ba836f197 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "windmill" -version = "1.413.2" +version = "1.414.0" authors.workspace = true edition.workspace = true @@ -29,7 +29,7 @@ members = [ ] [workspace.package] -version = "1.413.2" +version = "1.414.0" authors = ["Ruben Fiszel "] edition = "2021" diff --git a/backend/windmill-api/openapi.yaml b/backend/windmill-api/openapi.yaml index d8ab6a8696..2ce27a2799 100644 --- a/backend/windmill-api/openapi.yaml +++ b/backend/windmill-api/openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.413.2 + version: 1.414.0 title: Windmill API contact: diff --git a/benchmarks/lib.ts b/benchmarks/lib.ts index 05ccd95904..6578a87ed9 100644 --- a/benchmarks/lib.ts +++ b/benchmarks/lib.ts @@ -2,7 +2,7 @@ import { sleep } from "https://deno.land/x/sleep@v1.2.1/mod.ts"; import * as windmill from "https://deno.land/x/windmill@v1.174.0/mod.ts"; import * as api from "https://deno.land/x/windmill@v1.174.0/windmill-api/index.ts"; -export const VERSION = "v1.413.2"; +export const VERSION = "v1.414.0"; export async function login(email: string, password: string): Promise { return await windmill.UserService.login({ diff --git a/cli/main.ts b/cli/main.ts index 1c06b24301..8a633bc383 100644 --- a/cli/main.ts +++ b/cli/main.ts @@ -60,7 +60,7 @@ export { // } // }); -export const VERSION = "1.413.2"; +export const VERSION = "1.414.0"; const command = new Command() .name("wmill") diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 6c99fc97a6..b859c62981 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "windmill-components", - "version": "1.413.2", + "version": "1.414.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "windmill-components", - "version": "1.413.2", + "version": "1.414.0", "license": "AGPL-3.0", "dependencies": { "@aws-crypto/sha256-js": "^4.0.0", diff --git a/frontend/package.json b/frontend/package.json index 2a48b09a4f..e85c91b829 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "windmill-components", - "version": "1.413.2", + "version": "1.414.0", "scripts": { "dev": "vite dev", "build": "vite build", diff --git a/lsp/Pipfile b/lsp/Pipfile index e7e4828ccd..0a9b200f43 100644 --- a/lsp/Pipfile +++ b/lsp/Pipfile @@ -4,8 +4,8 @@ verify_ssl = true name = "pypi" [packages] -wmill = ">=1.413.2" -wmill_pg = ">=1.413.2" +wmill = ">=1.414.0" +wmill_pg = ">=1.414.0" sendgrid = "*" mysql-connector-python = "*" pymongo = "*" diff --git a/openflow.openapi.yaml b/openflow.openapi.yaml index c9808679bf..91dde9a6dc 100644 --- a/openflow.openapi.yaml +++ b/openflow.openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.413.2 + version: 1.414.0 title: OpenFlow Spec contact: name: Ruben Fiszel diff --git a/powershell-client/WindmillClient/WindmillClient.psd1 b/powershell-client/WindmillClient/WindmillClient.psd1 index 41dba9e1da..789f9924c8 100644 --- a/powershell-client/WindmillClient/WindmillClient.psd1 +++ b/powershell-client/WindmillClient/WindmillClient.psd1 @@ -12,7 +12,7 @@ RootModule = 'WindmillClient.psm1' # Version number of this module. -ModuleVersion = '1.413.2' +ModuleVersion = '1.414.0' # Supported PSEditions # CompatiblePSEditions = @() diff --git a/python-client/wmill/pyproject.toml b/python-client/wmill/pyproject.toml index 4c3200022b..ff81b83dc8 100644 --- a/python-client/wmill/pyproject.toml +++ b/python-client/wmill/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "wmill" -version = "1.413.2" +version = "1.414.0" description = "A client library for accessing Windmill server wrapping the Windmill client API" license = "Apache-2.0" homepage = "https://windmill.dev" diff --git a/python-client/wmill_pg/pyproject.toml b/python-client/wmill_pg/pyproject.toml index d0b7d007e9..d3ad71e5d7 100644 --- a/python-client/wmill_pg/pyproject.toml +++ b/python-client/wmill_pg/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "wmill-pg" -version = "1.413.2" +version = "1.414.0" description = "An extension client for the wmill client library focused on pg" license = "Apache-2.0" homepage = "https://windmill.dev" diff --git a/typescript-client/jsr.json b/typescript-client/jsr.json index 2f34a6cb06..146ef63def 100644 --- a/typescript-client/jsr.json +++ b/typescript-client/jsr.json @@ -1,6 +1,6 @@ { "name": "@windmill/windmill", - "version": "1.413.2", + "version": "1.414.0", "exports": "./src/index.ts", "publish": { "exclude": ["!src", "./s3Types.ts", "./client.ts"] diff --git a/typescript-client/package.json b/typescript-client/package.json index ed422483f4..c1d1d8248b 100644 --- a/typescript-client/package.json +++ b/typescript-client/package.json @@ -1,7 +1,7 @@ { "name": "windmill-client", "description": "Windmill SDK client for browsers and Node.js", - "version": "1.413.2", + "version": "1.414.0", "author": "Ruben Fiszel", "license": "Apache 2.0", "devDependencies": { diff --git a/version.txt b/version.txt index 8e1037d7b9..7f67999298 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.413.2 +1.414.0 From 9fbcfc712c981b8a1fee29a1d6b0eed136667e23 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Tue, 29 Oct 2024 10:47:06 +0100 Subject: [PATCH 43/79] fix(frontend): new approval steps default to timeout 1800 --- .../src/lib/components/flows/map/FlowModuleSchemaMap.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/lib/components/flows/map/FlowModuleSchemaMap.svelte b/frontend/src/lib/components/flows/map/FlowModuleSchemaMap.svelte index 6b23ba909b..203ac70988 100644 --- a/frontend/src/lib/components/flows/map/FlowModuleSchemaMap.svelte +++ b/frontend/src/lib/components/flows/map/FlowModuleSchemaMap.svelte @@ -110,7 +110,7 @@ } if (kind == 'approval') { - module.suspend = { required_events: 1 } + module.suspend = { required_events: 1, timeout: 1800 } } else if (kind == 'trigger') { module.stop_after_if = { expr: '!result || (Array.isArray(result) && result.length == 0)', From f795a65276bbc26728f6ba2ae0699fef6d18b1f1 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Tue, 29 Oct 2024 12:23:56 +0100 Subject: [PATCH 44/79] fix(frontend): make script and schema scrollable on script detail page --- .../lib/components/FlowGraphViewerStep.svelte | 6 +- .../details/DetailPageDetailPanel.svelte | 80 +++++++++---------- .../details/DetailPageLayout.svelte | 44 +++++----- .../scripts/get/[...hash]/+page.svelte | 6 +- 4 files changed, 68 insertions(+), 68 deletions(-) diff --git a/frontend/src/lib/components/FlowGraphViewerStep.svelte b/frontend/src/lib/components/FlowGraphViewerStep.svelte index b2b7b9d381..fe235c6455 100644 --- a/frontend/src/lib/components/FlowGraphViewerStep.svelte +++ b/frontend/src/lib/components/FlowGraphViewerStep.svelte @@ -133,8 +133,10 @@ Error handler {:else if stepDetail.id === 'preprocessor'} Preprocessor - {:else} - Anonymous step + {:else if stepDetail.value.type == 'rawscript'} + Inline {stepDetail.value.language} script + {:else if stepDetail.value.type == 'script'} + Workspace script {/if} diff --git a/frontend/src/lib/components/details/DetailPageDetailPanel.svelte b/frontend/src/lib/components/details/DetailPageDetailPanel.svelte index 4d56fba8f3..84180d2d5e 100644 --- a/frontend/src/lib/components/details/DetailPageDetailPanel.svelte +++ b/frontend/src/lib/components/details/DetailPageDetailPanel.svelte @@ -1,7 +1,6 @@ - a.localeCompare(b)) - .map((key) => ({ - key - })) - : undefined} - bind:filteredItems={filteredConnects} - f={(x) => x.key} -/> - a[0].localeCompare(b[0]))} - bind:filteredItems={filteredConnectsManual} - f={(x) => x[0]} -/> -{#if step == 1} -
    - -
    - -

    OAuth APIs

    -
    - {#if filteredConnects} - {#each filteredConnects as { key }} - - {/each} - {:else} - {#each new Array(3) as _} - - {/each} - {/if} -
    - {#if connects && connects.length == 0} -
    No OAuth APIs has been setup on the instance. To add oauth APIs, first sync the resource - types with the hub, then add oauth configuration. See documentation -
    - {/if} - -

    Others

    - - {#if connectsManual && connectsManual?.length < 10} -
    - Resource Types have not been synced with the hub. Go to the admins workspace to sync them (and - add a schedule to do daily): -

    1. Go to the "admins" workspaces: - sync resource types -

    -

    - 2: Run the synchronization script: - sync resource types -

    -
    - {/if} - -
    - {#if filteredConnectsManual} - {#each filteredConnectsManual as [key, _]} - {#if nativeLanguagesCategory.includes(key)} - - {/if} - {/each} - {/if} -
    - -
    -
    - {#if filteredConnectsManual} - {#each filteredConnectsManual as [key, _]} - {#if !nativeLanguagesCategory.includes(key)} - - - {/if} - {/each} - {:else} - {#each new Array(9) as _} - - {/each} - {/if} -
    -{:else if step == 2 && manual} - a.localeCompare(b)) + .map((key) => ({ + key + })) + : undefined} + bind:filteredItems={filteredConnects} + f={(x) => x.key} /> - - {#if apiTokenApps[resourceType]} -

    Instructions

    -
    -
      - {#each apiTokenApps[resourceType].instructions as step} -
    1. - {@html step} -
    2. - {/each} -
    -
    - {#if apiTokenApps[resourceType].img} -
    - connect -
    - {/if} - {:else if !emptyString(resourceTypeInfo?.description)} -

    {resourceTypeInfo?.name} description

    -
    - -
    - {/if} - {#if resourceType == 'postgresql' || resourceType == 'mysql' || resourceType == 'mongodb'} - - {/if} - -

    Resource description -
    - - -
    -

    - {#if renderDescription} -
    -
    GH Markdown
    -