diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 1df6422d7876a..00f8d5cd76acf 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -3,8 +3,7 @@ env: IMAGE_NAME: ${{ github.event_name != 'pull_request' && github.event_name != 'workflow_dispatch' && github.repository || 'windmill-labs/windmill-test' }} DEV_SHA: - ${{ github.event_name != 'pull_request' && github.event_name != 'workflow_dispatch' && 'dev' || github.event.inputs.tag }} - + ${{ github.event_name != 'pull_request' && github.event_name != 'workflow_dispatch' && 'dev' || github.event.inputs.tag || github.sha }} name: Build windmill:main on: push: diff --git a/CHANGELOG.md b/CHANGELOG.md index 3bda342059f2d..edeea4c22b659 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [1.441.1](https://github.com/windmill-labs/windmill/compare/v1.441.0...v1.441.1) (2024-12-24) + + +### Bug Fixes + +* **backend:** timeout for bigquery/graphql/snowflake ([#4965](https://github.com/windmill-labs/windmill/issues/4965)) ([1d20dea](https://github.com/windmill-labs/windmill/commit/1d20dea6630407840fd058a8b51c410fae3fbe78)) +* windows compatibility for C# ([#4980](https://github.com/windmill-labs/windmill/issues/4980)) ([b12e9c3](https://github.com/windmill-labs/windmill/commit/b12e9c3005db10d15ee27894a819dbb556832a83)) +* **windows&python:** Access is denied. (os error 5) ([#4969](https://github.com/windmill-labs/windmill/issues/4969)) ([6bd2dc3](https://github.com/windmill-labs/windmill/commit/6bd2dc38325388a55dd288b94e26ac6018622aaa)) + ## [1.441.0](https://github.com/windmill-labs/windmill/compare/v1.440.3...v1.441.0) (2024-12-20) diff --git a/backend/Cargo.lock b/backend/Cargo.lock index a4e86fac600d4..d1a89b3d5eba0 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -166,9 +166,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.94" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7" +checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" [[package]] name = "arc-swap" @@ -441,7 +441,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -501,7 +501,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -523,7 +523,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -559,7 +559,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -1099,7 +1099,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.90", + "syn 2.0.91", "which 4.4.2", ] @@ -1120,7 +1120,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -1138,7 +1138,7 @@ dependencies = [ "regex", "rustc-hash 2.1.0", "shlex", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -1274,7 +1274,7 @@ dependencies = [ "serde_json", "serde_repr", "serde_urlencoded", - "thiserror 2.0.8", + "thiserror 2.0.9", "tokio", "tokio-util", "tower-service", @@ -1313,7 +1313,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -1415,7 +1415,7 @@ checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -1675,7 +1675,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -2060,7 +2060,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -2108,7 +2108,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -2130,7 +2130,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core 0.20.10", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -2657,7 +2657,7 @@ dependencies = [ "stringcase", "strum 0.25.0", "strum_macros 0.25.3", - "syn 2.0.90", + "syn 2.0.91", "thiserror 1.0.69", ] @@ -2843,7 +2843,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.1", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -2948,7 +2948,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -2971,7 +2971,7 @@ checksum = "f2b99bf03862d7f545ebc28ddd33a665b50865f4dfd84031a393823879bd4c54" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3127,7 +3127,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3147,7 +3147,7 @@ checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3272,9 +3272,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flatbuffers" -version = "24.3.25" +version = "24.12.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8add37afff2d4ffa83bc748a70b4b1370984f6980768554182424ef71447c35f" +checksum = "4f1baf0dbf96932ec9a3038d57900329c015b0bfb7b63d904f3bc27e2b02a096" dependencies = [ "bitflags 1.3.2", "rustc_version 0.4.1", @@ -3352,7 +3352,7 @@ checksum = "32016f1242eb82af5474752d00fd8ebcd9004bd69b462b1c91de833972d08ed4" dependencies = [ "proc-macro2", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3384,7 +3384,7 @@ checksum = "e99b8b3c28ae0e84b604c75f721c21dc77afb3706076af5e8216d15fd1deaae3" dependencies = [ "frunk_proc_macro_helpers", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3396,7 +3396,7 @@ dependencies = [ "frunk_core", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3408,7 +3408,7 @@ dependencies = [ "frunk_core", "frunk_proc_macro_helpers", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3532,7 +3532,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -3785,7 +3785,7 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -4502,7 +4502,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -4624,7 +4624,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -5268,7 +5268,7 @@ checksum = "a7ce64b975ed4f123575d11afd9491f2e37bbd5813fbfbc0f09ae1fbddea74e0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -5307,7 +5307,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", "termcolor", "thiserror 1.0.69", ] @@ -5564,7 +5564,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -5595,9 +5595,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.5" +version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" +checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "memchr", ] @@ -5737,7 +5737,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6099,7 +6099,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6140,7 +6140,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6274,7 +6274,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6314,7 +6314,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6325,7 +6325,7 @@ checksum = "07c277e4e643ef00c1233393c673f655e3672cf7eb3ba08a00bdd0ea59139b5f" dependencies = [ "proc-macro-rules-macros", "proc-macro2", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6337,7 +6337,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6398,7 +6398,7 @@ dependencies = [ "schemars", "serde", "serde_json", - "syn 2.0.90", + "syn 2.0.91", "thiserror 1.0.69", "typify", "unicode-ident", @@ -6418,7 +6418,7 @@ dependencies = [ "serde_json", "serde_tokenstream", "serde_yaml", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6471,7 +6471,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6484,7 +6484,7 @@ dependencies = [ "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -6600,7 +6600,7 @@ dependencies = [ "rustc-hash 2.1.0", "rustls 0.23.20", "socket2", - "thiserror 2.0.8", + "thiserror 2.0.9", "tokio", "tracing", ] @@ -6619,7 +6619,7 @@ dependencies = [ "rustls 0.23.20", "rustls-pki-types", "slab", - "thiserror 2.0.8", + "thiserror 2.0.9", "tinyvec", "tracing", "web-time", @@ -7137,7 +7137,7 @@ dependencies = [ "quote", "rust-embed-utils", "shellexpand", - "syn 2.0.90", + "syn 2.0.91", "walkdir", ] @@ -7523,7 +7523,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -7683,7 +7683,7 @@ checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -7694,14 +7694,14 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] name = "serde_json" -version = "1.0.133" +version = "1.0.134" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" +checksum = "d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d" dependencies = [ "indexmap 2.7.0", "itoa", @@ -7759,7 +7759,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -7780,7 +7780,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -7835,7 +7835,7 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8177,7 +8177,7 @@ checksum = "01b2e185515564f15375f593fb966b5718bc624ba77fe49fa4616ad619690554" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8248,7 +8248,7 @@ dependencies = [ "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8271,7 +8271,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.90", + "syn 2.0.91", "tempfile", "tokio", "url", @@ -8423,7 +8423,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8483,7 +8483,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8496,7 +8496,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8604,7 +8604,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8653,7 +8653,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8738,7 +8738,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8845,7 +8845,7 @@ checksum = "63db0adcff29d220c3d151c5b25c0eabe7e32dd936212b84cdaa1392e3130497" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8856,7 +8856,7 @@ checksum = "f486687bfb7b5c560868f69ed2d458b880cebc9babebcb67e49f31b55c5bf847" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8879,7 +8879,7 @@ dependencies = [ "proc-macro2", "quote", "swc_macros_common", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -8895,9 +8895,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.90" +version = "2.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" +checksum = "d53cbcb5a243bd33b7858b1d7f4aca2153490815872d86d955d6ea29f743c035" dependencies = [ "proc-macro2", "quote", @@ -8927,7 +8927,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -9186,11 +9186,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.8" +version = "2.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f5383f3e0071702bf93ab5ee99b52d26936be9dedd9413067cbdcddcb6141a" +checksum = "f072643fd0190df67a8bab670c20ef5d8737177d6ac6b2e9a236cb096206b2cc" dependencies = [ - "thiserror-impl 2.0.8", + "thiserror-impl 2.0.9", ] [[package]] @@ -9201,18 +9201,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] name = "thiserror-impl" -version = "2.0.8" +version = "2.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f357fcec90b3caef6623a099691be676d033b40a058ac95d2a6ade6fa0c943" +checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -9447,7 +9447,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -9795,7 +9795,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -10029,7 +10029,7 @@ dependencies = [ "regress", "schemars", "serde_json", - "syn 2.0.90", + "syn 2.0.91", "thiserror 1.0.69", "unicode-ident", ] @@ -10046,7 +10046,7 @@ dependencies = [ "serde", "serde_json", "serde_tokenstream", - "syn 2.0.90", + "syn 2.0.91", "typify-impl", ] @@ -10453,7 +10453,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", "wasm-bindgen-shared", ] @@ -10487,7 +10487,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -10520,7 +10520,7 @@ checksum = "b7f89739351a2e03cb94beb799d47fb2cac01759b40ec441f7de39b00cbf7ef0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -10657,7 +10657,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windmill" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "axum", @@ -10698,7 +10698,7 @@ dependencies = [ [[package]] name = "windmill-api" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "argon2", @@ -10783,7 +10783,7 @@ dependencies = [ [[package]] name = "windmill-api-client" -version = "1.441.0" +version = "1.441.1" dependencies = [ "base64 0.22.1", "chrono", @@ -10801,7 +10801,7 @@ dependencies = [ [[package]] name = "windmill-audit" -version = "1.441.0" +version = "1.441.1" dependencies = [ "chrono", "serde", @@ -10814,7 +10814,7 @@ dependencies = [ [[package]] name = "windmill-autoscaling" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "serde", @@ -10828,7 +10828,7 @@ dependencies = [ [[package]] name = "windmill-common" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "async-stream", @@ -10872,7 +10872,7 @@ dependencies = [ "sha2 0.10.8", "sqlx", "tempfile", - "thiserror 2.0.8", + "thiserror 2.0.9", "tikv-jemalloc-ctl", "tokio", "tonic", @@ -10887,7 +10887,7 @@ dependencies = [ [[package]] name = "windmill-git-sync" -version = "1.441.0" +version = "1.441.1" dependencies = [ "regex", "serde", @@ -10901,7 +10901,7 @@ dependencies = [ [[package]] name = "windmill-indexer" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "bytes", @@ -10924,19 +10924,19 @@ dependencies = [ [[package]] name = "windmill-macros" -version = "1.441.0" +version = "1.441.1" dependencies = [ "itertools 0.13.0", "lazy_static", "proc-macro2", "quote", "regex", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] name = "windmill-parser" -version = "1.441.0" +version = "1.441.1" dependencies = [ "convert_case 0.6.0", "serde", @@ -10945,7 +10945,7 @@ dependencies = [ [[package]] name = "windmill-parser-bash" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "lazy_static", @@ -10957,7 +10957,7 @@ dependencies = [ [[package]] name = "windmill-parser-csharp" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "serde_json", @@ -10969,7 +10969,7 @@ dependencies = [ [[package]] name = "windmill-parser-go" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "gosyn", @@ -10981,7 +10981,7 @@ dependencies = [ [[package]] name = "windmill-parser-graphql" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "lazy_static", @@ -10993,7 +10993,7 @@ dependencies = [ [[package]] name = "windmill-parser-php" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "itertools 0.13.0", @@ -11004,7 +11004,7 @@ dependencies = [ [[package]] name = "windmill-parser-py" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "itertools 0.13.0", @@ -11015,7 +11015,7 @@ dependencies = [ [[package]] name = "windmill-parser-py-imports" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "async-recursion", @@ -11033,7 +11033,7 @@ dependencies = [ [[package]] name = "windmill-parser-rust" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "convert_case 0.6.0", @@ -11043,14 +11043,14 @@ dependencies = [ "quote", "regex", "serde_json", - "syn 2.0.90", + "syn 2.0.91", "toml 0.7.8", "windmill-parser", ] [[package]] name = "windmill-parser-sql" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "lazy_static", @@ -11062,7 +11062,7 @@ dependencies = [ [[package]] name = "windmill-parser-ts" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "lazy_static", @@ -11080,7 +11080,7 @@ dependencies = [ [[package]] name = "windmill-parser-wasm" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "getrandom 0.2.15", @@ -11102,7 +11102,7 @@ dependencies = [ [[package]] name = "windmill-parser-yaml" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "serde_json", @@ -11112,7 +11112,7 @@ dependencies = [ [[package]] name = "windmill-queue" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "async-recursion", @@ -11146,7 +11146,7 @@ dependencies = [ [[package]] name = "windmill-sql-datatype-parser-wasm" -version = "1.441.0" +version = "1.441.1" dependencies = [ "wasm-bindgen", "wasm-bindgen-test", @@ -11156,7 +11156,7 @@ dependencies = [ [[package]] name = "windmill-worker" -version = "1.441.0" +version = "1.441.1" dependencies = [ "anyhow", "async-recursion", @@ -11535,7 +11535,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", "synstructure", ] @@ -11557,7 +11557,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] @@ -11577,7 +11577,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", "synstructure", ] @@ -11606,7 +11606,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.91", ] [[package]] diff --git a/backend/Cargo.toml b/backend/Cargo.toml index 5b408a1a5b324..041f1f42d9885 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "windmill" -version = "1.441.0" +version = "1.441.1" authors.workspace = true edition.workspace = true @@ -30,7 +30,7 @@ members = [ ] [workspace.package] -version = "1.441.0" +version = "1.441.1" authors = ["Ruben Fiszel "] edition = "2021" diff --git a/backend/windmill-api/openapi.yaml b/backend/windmill-api/openapi.yaml index dca35fc0b4384..bd5caa8e5b557 100644 --- a/backend/windmill-api/openapi.yaml +++ b/backend/windmill-api/openapi.yaml @@ -1,7 +1,7 @@ openapi: "3.0.3" info: - version: 1.441.0 + version: 1.441.1 title: Windmill API contact: diff --git a/backend/windmill-worker/src/bigquery_executor.rs b/backend/windmill-worker/src/bigquery_executor.rs index 30c0f1d575617..e4674ed6ee387 100644 --- a/backend/windmill-worker/src/bigquery_executor.rs +++ b/backend/windmill-worker/src/bigquery_executor.rs @@ -2,6 +2,7 @@ use std::collections::HashMap; use futures::future::BoxFuture; use futures::{FutureExt, TryFutureExt}; +use reqwest::Client; use serde_json::{json, value::RawValue, Value}; use windmill_common::error::to_anyhow; use windmill_common::jobs::QueuedJob; @@ -9,11 +10,11 @@ use windmill_common::{error::Error, worker::to_raw_value}; use windmill_parser_sql::{ parse_bigquery_sig, parse_db_resource, parse_sql_blocks, parse_sql_statement_named_params, }; -use windmill_queue::{CanceledBy, HTTP_CLIENT}; +use windmill_queue::CanceledBy; use serde::Deserialize; -use crate::common::OccupancyMetrics; +use crate::common::{build_http_client, OccupancyMetrics}; use crate::handle_child::run_future_with_polling_update_job_poller; use crate::{ common::{build_args_values, resolve_job_timeout}, @@ -68,9 +69,10 @@ fn do_bigquery_inner<'a>( all_statement_values: &'a HashMap, project_id: &'a str, token: &'a str, - timeout_ms: i32, + timeout_ms: u64, column_order: Option<&'a mut Option>>, skip_collect: bool, + http_client: &'a Client, ) -> windmill_common::error::Result>>> { let param_names = parse_sql_statement_named_params(query, '@'); @@ -86,7 +88,7 @@ fn do_bigquery_inner<'a>( .collect::>(); let result_f = async move { - let response = HTTP_CLIENT + let response = http_client .post( "https://bigquery.googleapis.com/bigquery/v2/projects/".to_string() + project_id @@ -249,13 +251,10 @@ pub async fn do_bigquery( .await .map_err(|e| Error::ExecutionErr(e.to_string()))?; - let timeout_ms = i32::try_from( - resolve_job_timeout(&db, &job.workspace_id, job.id, job.timeout) - .await - .0 - .as_millis(), - ) - .unwrap_or(200000); + let (timeout_duration, _, _) = + resolve_job_timeout(&db, &job.workspace_id, job.id, job.timeout).await; + let timeout_ms = timeout_duration.as_millis() as u64; + let http_client = build_http_client(timeout_duration)?; let project_id = authentication_manager .project_id() @@ -325,6 +324,7 @@ pub async fn do_bigquery( timeout_ms, None, annotations.return_last_result && i < queries.len() - 1, + &http_client, ) }) .collect::>>()?; @@ -353,6 +353,7 @@ pub async fn do_bigquery( timeout_ms, Some(column_order), false, + &http_client, )? }; diff --git a/backend/windmill-worker/src/common.rs b/backend/windmill-worker/src/common.rs index 54d7307fd7db8..05444dd975475 100644 --- a/backend/windmill-worker/src/common.rs +++ b/backend/windmill-worker/src/common.rs @@ -3,6 +3,7 @@ use async_recursion::async_recursion; use itertools::Itertools; use lazy_static::lazy_static; use regex::Regex; +use reqwest::Client; use serde::{Deserialize, Serialize}; use serde_json::value::RawValue; use serde_json::{json, Value}; @@ -32,11 +33,7 @@ use windmill_common::{ use anyhow::{anyhow, Result}; use std::path::Path; -use std::{ - collections::HashMap, - sync::Arc, - time::Duration, -}; +use std::{collections::HashMap, sync::Arc, time::Duration}; use uuid::Uuid; use windmill_common::{variables, DB}; @@ -965,3 +962,12 @@ pub fn use_flow_root_path(flow_path: &str) -> String { return flow_path.to_string(); } } + +pub fn build_http_client(timeout_duration: std::time::Duration) -> error::Result { + reqwest::ClientBuilder::new() + .user_agent("windmill/beta") + .timeout(timeout_duration) + .connect_timeout(std::time::Duration::from_secs(10)) + .build() + .map_err(|e| Error::InternalErr(format!("Error building http client: {e:#}"))) +} diff --git a/backend/windmill-worker/src/csharp_executor.rs b/backend/windmill-worker/src/csharp_executor.rs index 2195117091958..7d36e1fef04a0 100644 --- a/backend/windmill-worker/src/csharp_executor.rs +++ b/backend/windmill-worker/src/csharp_executor.rs @@ -46,10 +46,16 @@ use crate::SYSTEM_ROOT; const NSJAIL_CONFIG_RUN_CSHARP_CONTENT: &str = include_str!("../nsjail/run.csharp.config.proto"); #[cfg(feature = "csharp")] -lazy_static::lazy_static! { - static ref HOME_DIR: String = std::env::var("HOME").expect("Could not find the HOME environment variable"); - static ref DOTNET_ROOT: String = std::env::var("DOTNET_ROOT").expect("Could not find the DOTNET_ROOT environment variable"); +#[cfg(windows)] +const DOTNET_ROOT_DEFAULT: &str = "C:\\Program Files\\dotnet"; + +#[cfg(feature = "csharp")] +#[cfg(unix)] +const DOTNET_ROOT_DEFAULT: &str = "/usr/share/dotnet"; +#[cfg(feature = "csharp")] +lazy_static::lazy_static! { + static ref DOTNET_ROOT: String = std::env::var("DOTNET_ROOT").unwrap_or_else(|_| DOTNET_ROOT_DEFAULT.to_string()); } #[cfg(feature = "csharp")] @@ -83,6 +89,30 @@ pub async fn generate_nuget_lockfile( .args(vec!["restore", "--use-lock-file"]) .stdout(Stdio::piped()) .stderr(Stdio::piped()); + #[cfg(windows)] + gen_lockfile_cmd + .env("SystemRoot", SYSTEM_ROOT.as_str()) + .env("SystemRoot", SYSTEM_ROOT.as_str()) + .env( + "TMP", + std::env::var("TMP").unwrap_or_else(|_| "C:\\tmp".to_string()), + ) + .env("USERPROFILE", crate::USERPROFILE_ENV.as_str()) + .env( + "APPDATA", + std::env::var("APPDATA") + .unwrap_or_else(|_| format!("{}\\AppData\\Roaming", HOME_ENV.as_str())), + ) + .env( + "ProgramFiles", + std::env::var("ProgramFiles").unwrap_or_else(|_| String::from("C:\\Program Files")), + ) + .env( + "LOCALAPPDATA", + std::env::var("LOCALAPPDATA") + .unwrap_or_else(|_| format!("{}\\AppData\\Local", HOME_ENV.as_str())), + ); + let gen_lockfile_process = start_child_process(gen_lockfile_cmd, DOTNET_PATH.as_str()).await?; handle_child( job_id, @@ -147,6 +177,17 @@ fn gen_cs_proj( }) .join("\n"); + let item_group = if pkgs.is_empty() { + "".to_string() + } else { + format!( + r#" +{pkgs} + +"# + ) + }; + write_file( job_dir, "Main.csproj", @@ -159,10 +200,7 @@ fn gen_cs_proj( WindmillScriptCSharpInternal.Wrapper true - -{pkgs} - - +{item_group} "# ), @@ -297,13 +335,27 @@ async fn build_cs_proj( .stderr(Stdio::piped()); #[cfg(windows)] - { - build_cs_cmd.env("SystemRoot", SYSTEM_ROOT.as_str()); - build_cs_cmd.env( + build_cs_cmd + .env("SystemRoot", SYSTEM_ROOT.as_str()) + .env( "TMP", std::env::var("TMP").unwrap_or_else(|_| "C:\\tmp".to_string()), + ) + .env("USERPROFILE", crate::USERPROFILE_ENV.as_str()) + .env( + "APPDATA", + std::env::var("APPDATA") + .unwrap_or_else(|_| format!("{}\\AppData\\Roaming", HOME_ENV.as_str())), + ) + .env( + "ProgramFiles", + std::env::var("ProgramFiles").unwrap_or_else(|_| String::from("C:\\Program Files")), + ) + .env( + "LOCALAPPDATA", + std::env::var("LOCALAPPDATA") + .unwrap_or_else(|_| format!("{}\\AppData\\Local", HOME_ENV.as_str())), ); - } let build_cs_process = start_child_process(build_cs_cmd, DOTNET_PATH.as_str()).await?; handle_child( @@ -322,7 +374,6 @@ async fn build_cs_proj( ) .await?; append_logs(job_id, w_id, "\n\n", db).await; - if let Err(e) = std::fs::remove_file(Path::new(job_dir).join("nuget.config")) { if e.kind() != io::ErrorKind::NotFound { Err(anyhow!("Error erasing nuget.config: {}", e))?; @@ -330,11 +381,15 @@ async fn build_cs_proj( } let bin_path = format!("{}/{hash}", CSHARP_CACHE_DIR); + #[cfg(unix)] + let target = format!("{job_dir}/Main"); + #[cfg(windows)] + let target = format!("{job_dir}/Main.exe"); match save_cache( &bin_path, &format!("{CSHARP_OBJECT_STORE_PREFIX}{hash}"), - &format!("{job_dir}/Main"), + &target, ) .await { @@ -408,18 +463,16 @@ pub async fn handle_csharp_job( let (cache, cache_logs) = windmill_common::worker::load_cache(&bin_path, &remote_path).await; let cache_logs = if cache { - let target = format!("{job_dir}/Main"); - #[cfg(unix)] - let symlink = std::os::unix::fs::symlink(&bin_path, &target); - #[cfg(windows)] - let symlink = std::os::windows::fs::symlink_dir(&bin_path, &target); - - symlink.map_err(|e| { - Error::ExecutionErr(format!( - "could not copy cached binary from {bin_path} to {job_dir}/main: {e:?}" - )) - })?; + { + let target = format!("{job_dir}/Main"); + let symlink = std::os::unix::fs::symlink(&bin_path, &target); + symlink.map_err(|e| { + Error::ExecutionErr(format!( + "could not copy cached binary from {bin_path} to {job_dir}/Main: {e:?}" + )) + })?; + } cache_logs } else { @@ -497,10 +550,21 @@ pub async fn handle_csharp_job( .args(vec!["--config", "run.config.proto", "--", "/tmp/main"]) .stdout(Stdio::piped()) .stderr(Stdio::piped()); + + #[cfg(windows)] + nsjail_cmd.env("SystemRoot", SYSTEM_ROOT.as_str()); + start_child_process(nsjail_cmd, NSJAIL_PATH.as_str()).await? } else { - let compiled_executable_name = "./Main"; - let mut run_csharp = Command::new(compiled_executable_name); + #[cfg(unix)] + let compiled_executable_name = "./Main".to_string(); + #[cfg(windows)] + let compiled_executable_name = if cache { + bin_path.to_string() + } else { + format!("{job_dir}/Main.exe") + }; + let mut run_csharp = Command::new(&compiled_executable_name); run_csharp .current_dir(job_dir) .env_clear() @@ -515,8 +579,31 @@ pub async fn handle_csharp_job( .env("HOME", HOME_ENV.as_str()) .stdout(Stdio::piped()) .stderr(Stdio::piped()); + #[cfg(windows)] + run_csharp + .env("SystemRoot", SYSTEM_ROOT.as_str()) + .env("SystemRoot", SYSTEM_ROOT.as_str()) + .env( + "TMP", + std::env::var("TMP").unwrap_or_else(|_| "C:\\tmp".to_string()), + ) + .env("USERPROFILE", crate::USERPROFILE_ENV.as_str()) + .env( + "APPDATA", + std::env::var("APPDATA") + .unwrap_or_else(|_| format!("{}\\AppData\\Roaming", HOME_ENV.as_str())), + ) + .env( + "ProgramFiles", + std::env::var("ProgramFiles").unwrap_or_else(|_| String::from("C:\\Program Files")), + ) + .env( + "LOCALAPPDATA", + std::env::var("LOCALAPPDATA") + .unwrap_or_else(|_| format!("{}\\AppData\\Local", HOME_ENV.as_str())), + ); - start_child_process(run_csharp, compiled_executable_name).await? + start_child_process(run_csharp, &compiled_executable_name).await? }; handle_child( diff --git a/backend/windmill-worker/src/graphql_executor.rs b/backend/windmill-worker/src/graphql_executor.rs index 67bb6a2c7ba64..929235cccf744 100644 --- a/backend/windmill-worker/src/graphql_executor.rs +++ b/backend/windmill-worker/src/graphql_executor.rs @@ -8,11 +8,11 @@ use windmill_common::jobs::QueuedJob; use windmill_common::worker::to_raw_value; use windmill_common::{error::Error, worker::CLOUD_HOSTED}; use windmill_parser_graphql::parse_graphql_sig; -use windmill_queue::{CanceledBy, HTTP_CLIENT}; +use windmill_queue::CanceledBy; use serde::Deserialize; -use crate::common::OccupancyMetrics; +use crate::common::{build_http_client, resolve_job_timeout, OccupancyMetrics}; use crate::handle_child::run_future_with_polling_update_job_poller; use crate::{common::build_args_map, AuthedClientBackgroundTask}; @@ -81,8 +81,12 @@ pub async fn do_graphql( } } } + let (timeout_duration, _, _) = + resolve_job_timeout(&db, &job.workspace_id, job.id, job.timeout).await; - let mut request = HTTP_CLIENT.post(api.base_url).json(&json!({ + let http_client = build_http_client(timeout_duration)?; + + let mut request = http_client.post(api.base_url).json(&json!({ "query": query, "variables": variables })); diff --git a/backend/windmill-worker/src/python_executor.rs b/backend/windmill-worker/src/python_executor.rs index 7f588d143f06c..083ff09a63e31 100644 --- a/backend/windmill-worker/src/python_executor.rs +++ b/backend/windmill-worker/src/python_executor.rs @@ -336,6 +336,18 @@ pub async fn uv_pip_compile( .args(&args) .stdout(Stdio::piped()) .stderr(Stdio::piped()); + + #[cfg(windows)] + { + child_cmd + .env("SystemRoot", SYSTEM_ROOT.as_str()) + .env("USERPROFILE", crate::USERPROFILE_ENV.as_str()) + .env( + "TMP", + std::env::var("TMP").unwrap_or_else(|_| String::from("/tmp")), + ); + } + let child_process = start_child_process(child_cmd, uv_cmd).await?; append_logs(&job_id, &w_id, logs, db).await; handle_child( diff --git a/backend/windmill-worker/src/snowflake_executor.rs b/backend/windmill-worker/src/snowflake_executor.rs index 4e817a3927967..3315df6bc10c0 100644 --- a/backend/windmill-worker/src/snowflake_executor.rs +++ b/backend/windmill-worker/src/snowflake_executor.rs @@ -4,7 +4,7 @@ use core::fmt::Write; use futures::future::BoxFuture; use futures::{FutureExt, TryFutureExt}; use jsonwebtoken::{encode, Algorithm, EncodingKey, Header}; -use reqwest::Response; +use reqwest::{Client, Response}; use serde_json::{json, value::RawValue, Value}; use sha2::{Digest, Sha256}; use std::collections::HashMap; @@ -17,7 +17,7 @@ use windmill_queue::{CanceledBy, HTTP_CLIENT}; use serde::{Deserialize, Serialize}; -use crate::common::{resolve_job_timeout, OccupancyMetrics}; +use crate::common::{build_http_client, resolve_job_timeout, OccupancyMetrics}; use crate::handle_child::run_future_with_polling_update_job_poller; use crate::{common::build_args_values, AuthedClientBackgroundTask}; @@ -122,6 +122,7 @@ fn do_snowflake_inner<'a>( token_is_keypair: bool, column_order: Option<&'a mut Option>>, skip_collect: bool, + http_client: &'a Client, ) -> windmill_common::error::Result>>> { body.insert("statement".to_string(), json!(query)); @@ -145,7 +146,7 @@ fn do_snowflake_inner<'a>( } let result_f = async move { - let mut request = HTTP_CLIENT + let mut request = http_client .post(format!( "https://{}.snowflakecomputing.com/api/v2/statements/", account_identifier.to_uppercase() @@ -365,6 +366,11 @@ pub async fn do_snowflake( let queries = parse_sql_blocks(query); + let (timeout_duration, _, _) = + resolve_job_timeout(&db, &job.workspace_id, job.id, job.timeout).await; + + let http_client = build_http_client(timeout_duration)?; + let result_f = if queries.len() > 1 { let futures = queries .iter() @@ -379,6 +385,7 @@ pub async fn do_snowflake( token_is_keypair, None, annotations.return_last_result && i < queries.len() - 1, + &http_client, ) }) .collect::>>()?; @@ -407,6 +414,7 @@ pub async fn do_snowflake( token_is_keypair, Some(column_order), false, + &http_client, )? }; let r = run_future_with_polling_update_job_poller( diff --git a/backend/windmill-worker/src/worker.rs b/backend/windmill-worker/src/worker.rs index aa99743e263e8..88e556a2b749a 100644 --- a/backend/windmill-worker/src/worker.rs +++ b/backend/windmill-worker/src/worker.rs @@ -331,6 +331,12 @@ lazy_static::lazy_static! { pub static ref WORKER_EXECUTION_DURATION: Arc>> = Arc::new(RwLock::new(HashMap::new())); } +#[cfg(windows)] +const DOTNET_DEFAULT_PATH: &str = "C:\\Program Files\\dotnet\\dotnet.exe"; +#[cfg(unix)] +const DOTNET_DEFAULT_PATH: &str = "/usr/bin/dotnet"; + + lazy_static::lazy_static! { pub static ref JOB_TOKEN: Option = std::env::var("JOB_TOKEN").ok(); @@ -385,7 +391,7 @@ lazy_static::lazy_static! { pub static ref POWERSHELL_PATH: String = std::env::var("POWERSHELL_PATH").unwrap_or_else(|_| "/usr/bin/pwsh".to_string()); pub static ref PHP_PATH: String = std::env::var("PHP_PATH").unwrap_or_else(|_| "/usr/bin/php".to_string()); pub static ref COMPOSER_PATH: String = std::env::var("COMPOSER_PATH").unwrap_or_else(|_| "/usr/bin/composer".to_string()); - pub static ref DOTNET_PATH: String = std::env::var("DOTNET_PATH").unwrap_or_else(|_| "/usr/bin/dotnet".to_string()); + pub static ref DOTNET_PATH: String = std::env::var("DOTNET_PATH").unwrap_or_else(|_| DOTNET_DEFAULT_PATH.to_string()); pub static ref NSJAIL_PATH: String = std::env::var("NSJAIL_PATH").unwrap_or_else(|_| "nsjail".to_string()); pub static ref PATH_ENV: String = std::env::var("PATH").unwrap_or_else(|_| String::new()); pub static ref HOME_ENV: String = std::env::var("HOME").unwrap_or_else(|_| "/tmp".to_string()); diff --git a/benchmarks/lib.ts b/benchmarks/lib.ts index cc6493b997795..faaf2fc41fae3 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.441.0"; +export const VERSION = "v1.441.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 06bc530849eb8..8eb70e3f76007 100644 --- a/cli/main.ts +++ b/cli/main.ts @@ -60,7 +60,7 @@ export { // } // }); -export const VERSION = "1.441.0"; +export const VERSION = "1.441.1"; const command = new Command() .name("wmill") diff --git a/frontend/package-lock.json b/frontend/package-lock.json index b037275212858..9498481688be6 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "windmill-components", - "version": "1.441.0", + "version": "1.441.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "windmill-components", - "version": "1.441.0", + "version": "1.441.1", "license": "AGPL-3.0", "dependencies": { "@anthropic-ai/sdk": "^0.32.1", diff --git a/frontend/package.json b/frontend/package.json index f09bc67a68677..862f7715cf99a 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "windmill-components", - "version": "1.441.0", + "version": "1.441.1", "scripts": { "dev": "vite dev", "build": "vite build", diff --git a/frontend/src/lib/components/AuthSettings.svelte b/frontend/src/lib/components/AuthSettings.svelte index 827f5cd770668..59a1df7c7704c 100644 --- a/frontend/src/lib/components/AuthSettings.svelte +++ b/frontend/src/lib/components/AuthSettings.svelte @@ -1,4 +1,4 @@ -