Compare commits

..

1 Commits

Author SHA1 Message Date
Ruben Fiszel
fb2a7c3ba1 all 2025-08-22 07:44:09 +00:00
20 changed files with 113 additions and 83 deletions

View File

@@ -1,21 +1,5 @@
# Changelog
## [1.531.0](https://github.com/windmill-labs/windmill/compare/v1.530.0...v1.531.0) (2025-08-22)
### Features
* ai agent steps ([#6393](https://github.com/windmill-labs/windmill/issues/6393)) ([958e8af](https://github.com/windmill-labs/windmill/commit/958e8af78290cf859f98c45c012ed41e3bada39e))
* bump Go version from 1.22.0 to 1.25.0 [#6415](https://github.com/windmill-labs/windmill/issues/6415) ([c92bfe6](https://github.com/windmill-labs/windmill/commit/c92bfe6601fd96f6d74860f52f9307e02961ac21))
### Bug Fixes
* **app:** fix ctrl drag for insertion into subgrids ([51ea947](https://github.com/windmill-labs/windmill/commit/51ea9473ef23c6871699e69bbe79772a4d50d3b8))
* **frontend:** graph cache of ai agent step tools ([#6431](https://github.com/windmill-labs/windmill/issues/6431)) ([28f1d61](https://github.com/windmill-labs/windmill/commit/28f1d611643459d42531fa217c185408eb97d6d1))
* make relevant sidebar menu items a instead of button ([06d078e](https://github.com/windmill-labs/windmill/commit/06d078ebfa8f70b66bc764eae70d33c8c57b4012))
* s3 result presigned not working with list ([9df008b](https://github.com/windmill-labs/windmill/commit/9df008b9f8fe58692463e4b9da0538935e458b10))
## [1.530.0](https://github.com/windmill-labs/windmill/compare/v1.529.0...v1.530.0) (2025-08-20)

80
backend/Cargo.lock generated
View File

@@ -1895,9 +1895,9 @@ dependencies = [
[[package]]
name = "cc"
version = "1.2.34"
version = "1.2.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42bc4aea80032b7bf409b0bc7ccad88853858911b7713a8062fdc0623867bedc"
checksum = "3ee0f8803222ba5a7e2777dd72ca451868909b1ac410621b676adf07280e9b5f"
dependencies = [
"jobserver",
"libc",
@@ -5345,9 +5345,9 @@ checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
[[package]]
name = "form_urlencoded"
version = "1.2.2"
version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf"
checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
dependencies = [
"percent-encoding",
]
@@ -5798,9 +5798,9 @@ dependencies = [
[[package]]
name = "generator"
version = "0.8.7"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "605183a538e3e2a9c1038635cc5c2d194e2ee8fd0d1b66b8349fad7dbacce5a2"
checksum = "d18470a76cb7f8ff746cf1f7470914f900252ec36bbc40b569d74b1258446827"
dependencies = [
"cc",
"cfg-if",
@@ -6856,9 +6856,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
[[package]]
name = "idna"
version = "1.1.0"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de"
checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e"
dependencies = [
"idna_adapter",
"smallvec",
@@ -9534,9 +9534,9 @@ dependencies = [
[[package]]
name = "percent-encoding"
version = "2.3.2"
version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220"
checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
[[package]]
name = "pest"
@@ -14596,9 +14596,9 @@ dependencies = [
[[package]]
name = "url"
version = "2.5.6"
version = "2.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "137a3c834eaf7139b73688502f3f1141a0337c5d8e4d9b536f9b8c796e26a7c4"
checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60"
dependencies = [
"form_urlencoded",
"idna",
@@ -15129,7 +15129,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
name = "windmill"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"axum",
@@ -15183,7 +15183,7 @@ dependencies = [
[[package]]
name = "windmill-api"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"argon2",
@@ -15300,7 +15300,7 @@ dependencies = [
[[package]]
name = "windmill-api-client"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"base64 0.22.1",
"chrono",
@@ -15315,7 +15315,7 @@ dependencies = [
[[package]]
name = "windmill-audit"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"chrono",
"serde",
@@ -15328,7 +15328,7 @@ dependencies = [
[[package]]
name = "windmill-autoscaling"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"axum",
@@ -15347,7 +15347,7 @@ dependencies = [
[[package]]
name = "windmill-common"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"async-recursion",
@@ -15427,7 +15427,7 @@ dependencies = [
[[package]]
name = "windmill-git-sync"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"regex",
"serde",
@@ -15442,7 +15442,7 @@ dependencies = [
[[package]]
name = "windmill-indexer"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"bytes",
@@ -15466,7 +15466,7 @@ dependencies = [
[[package]]
name = "windmill-macros"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"itertools 0.14.0",
"lazy_static",
@@ -15478,7 +15478,7 @@ dependencies = [
[[package]]
name = "windmill-parser"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"convert_case 0.6.0",
"serde",
@@ -15487,7 +15487,7 @@ dependencies = [
[[package]]
name = "windmill-parser-bash"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"lazy_static",
@@ -15499,7 +15499,7 @@ dependencies = [
[[package]]
name = "windmill-parser-csharp"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"serde_json",
@@ -15511,7 +15511,7 @@ dependencies = [
[[package]]
name = "windmill-parser-go"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"gosyn",
@@ -15523,7 +15523,7 @@ dependencies = [
[[package]]
name = "windmill-parser-graphql"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"lazy_static",
@@ -15535,7 +15535,7 @@ dependencies = [
[[package]]
name = "windmill-parser-java"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"serde_json",
@@ -15547,7 +15547,7 @@ dependencies = [
[[package]]
name = "windmill-parser-nu"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"nu-parser",
@@ -15558,7 +15558,7 @@ dependencies = [
[[package]]
name = "windmill-parser-php"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"itertools 0.14.0",
@@ -15569,7 +15569,7 @@ dependencies = [
[[package]]
name = "windmill-parser-py"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"itertools 0.14.0",
@@ -15581,7 +15581,7 @@ dependencies = [
[[package]]
name = "windmill-parser-py-imports"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"async-recursion",
@@ -15604,7 +15604,7 @@ dependencies = [
[[package]]
name = "windmill-parser-ruby"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"lazy_static",
@@ -15618,7 +15618,7 @@ dependencies = [
[[package]]
name = "windmill-parser-rust"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"convert_case 0.6.0",
@@ -15635,7 +15635,7 @@ dependencies = [
[[package]]
name = "windmill-parser-sql"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"lazy_static",
@@ -15649,7 +15649,7 @@ dependencies = [
[[package]]
name = "windmill-parser-ts"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"lazy_static",
@@ -15667,7 +15667,7 @@ dependencies = [
[[package]]
name = "windmill-parser-wasm"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"getrandom 0.2.16",
@@ -15692,7 +15692,7 @@ dependencies = [
[[package]]
name = "windmill-parser-yaml"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"serde_json",
@@ -15702,7 +15702,7 @@ dependencies = [
[[package]]
name = "windmill-queue"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"async-recursion",
@@ -15735,7 +15735,7 @@ dependencies = [
[[package]]
name = "windmill-sql-datatype-parser-wasm"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"wasm-bindgen",
"wasm-bindgen-test",
@@ -15745,7 +15745,7 @@ dependencies = [
[[package]]
name = "windmill-worker"
version = "1.531.0"
version = "1.530.0"
dependencies = [
"anyhow",
"async-recursion",

View File

@@ -1,6 +1,6 @@
[package]
name = "windmill"
version = "1.531.0"
version = "1.530.0"
authors.workspace = true
edition.workspace = true
@@ -33,7 +33,7 @@ members = [
]
[workspace.package]
version = "1.531.0"
version = "1.530.0"
authors = ["Ruben Fiszel <ruben@windmill.dev>"]
edition = "2021"

View File

@@ -1,7 +1,7 @@
openapi: "3.0.3"
info:
version: 1.531.0
version: 1.530.0
title: Windmill API
contact:

View File

@@ -1389,13 +1389,19 @@ async fn get_empty_ts_script_by_path() -> String {
return String::new();
}
#[derive(Deserialize)]
struct RawScriptByPathQuery {
cache_key: Option<String>,
}
async fn raw_script_by_path(
authed: ApiAuthed,
Extension(user_db): Extension<UserDB>,
Extension(db): Extension<DB>,
Path((w_id, path)): Path<(String, StripPath)>,
Query(query): Query<RawScriptByPathQuery>,
) -> Result<String> {
raw_script_by_path_internal(path, user_db, db, authed, w_id, false).await
raw_script_by_path_internal(path, user_db, db, authed, w_id, false, query.cache_key).await
}
async fn raw_script_by_path_unpinned(
@@ -1403,8 +1409,9 @@ async fn raw_script_by_path_unpinned(
Extension(user_db): Extension<UserDB>,
Extension(db): Extension<DB>,
Path((w_id, path)): Path<(String, StripPath)>,
Query(query): Query<RawScriptByPathQuery>,
) -> Result<String> {
raw_script_by_path_internal(path, user_db, db, authed, w_id, true).await
raw_script_by_path_internal(path, user_db, db, authed, w_id, true, query.cache_key).await
}
lazy_static::lazy_static! {
@@ -1419,6 +1426,7 @@ async fn raw_script_by_path_internal(
authed: ApiAuthed,
w_id: String,
unpin: bool,
cache_key: Option<String>,
) -> Result<String> {
let path = path.to_path();
check_scopes(&authed, || format!("scripts:read:{}", path))?;

View File

@@ -537,6 +537,48 @@ pub mod flow {
}
}
pub mod python_import_by_path {
use super::*;
use crate::DB;
#[derive(Eq, PartialEq, Debug, Hash, Clone)]
pub struct ScriptPathWithCacheKey {
pub path: String,
pub cache_key: String,
}
impl Item for ScriptPathWithCacheKey {
fn path(&self, root: impl AsRef<Path>) -> PathBuf {
root.as_ref()
.join(self.path.clone())
.join(self.cache_key.clone())
}
}
#[derive(Eq, PartialEq, Debug, Hash, Clone, Serialize, Deserialize)]
pub struct ScriptContentOrPrefix {
pub content: String,
pub prefix: bool,
}
make_static! {
static ref CACHE: { ScriptPathWithCacheKey => ScriptContentOrPrefix } in "python_import_by_path" <= 1000;
}
pub async fn fetch(
db: &DB,
path: &str,
w_id: &str,
cache_key: &str,
) -> error::Result<ScriptContentOrPrefix> {
let r =sqlx::query_scalar!(
"SELECT content FROM script WHERE path = $1 AND workspace_id = $2 AND archived = false ORDER BY created_at DESC LIMIT 1",
path,
w_id
).fetch_optional(db).await?;
todo!()
}
}
pub mod script {
use crate::{worker::Connection, DB};

View File

@@ -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.531.0";
export const VERSION = "v1.530.0";
export async function login(email: string, password: string): Promise<string> {
return await windmill.UserService.login({

View File

@@ -68,7 +68,7 @@ export {
// }
// });
export const VERSION = "1.531.0";
export const VERSION = "1.530.0";
const command = new Command()
.name("wmill")

View File

@@ -1,12 +1,12 @@
{
"name": "windmill-components",
"version": "1.531.0",
"version": "1.530.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "windmill-components",
"version": "1.531.0",
"version": "1.530.0",
"hasInstallScript": true,
"license": "AGPL-3.0",
"dependencies": {

View File

@@ -1,6 +1,6 @@
{
"name": "windmill-components",
"version": "1.531.0",
"version": "1.530.0",
"scripts": {
"dev": "vite dev",
"build": "vite build",

View File

@@ -928,7 +928,7 @@
>
</button>
{:else if !s3object?.disable_download}
<FileDownload {workspaceId} {s3object} {appPath} />
<FileDownload {s3object} />
{:else}
<div class="flex text-secondary pt-2">{s3object?.s3} (download disabled)</div>
{/if}

View File

@@ -3,13 +3,9 @@
import { Download } from 'lucide-svelte'
import { base } from '$lib/base'
interface Props {
s3object: any
workspaceId?: string | undefined
appPath?: string | undefined
}
let { s3object, workspaceId = undefined, appPath = undefined }: Props = $props()
export let s3object: any
export let workspaceId: string | undefined = undefined
export let appPath: string | undefined = undefined
</script>
<a

View File

@@ -4,8 +4,8 @@ verify_ssl = true
name = "pypi"
[packages]
wmill = ">=1.531.0"
wmill_pg = ">=1.531.0"
wmill = ">=1.530.0"
wmill_pg = ">=1.530.0"
sendgrid = "*"
mysql-connector-python = "*"
pymongo = "*"

View File

@@ -1,7 +1,7 @@
openapi: "3.0.3"
info:
version: 1.531.0
version: 1.530.0
title: OpenFlow Spec
contact:
name: Ruben Fiszel

View File

@@ -12,7 +12,7 @@
RootModule = 'WindmillClient.psm1'
# Version number of this module.
ModuleVersion = '1.531.0'
ModuleVersion = '1.530.0'
# Supported PSEditions
# CompatiblePSEditions = @()

View File

@@ -1,6 +1,6 @@
[tool.poetry]
name = "wmill"
version = "1.531.0"
version = "1.530.0"
description = "A client library for accessing Windmill server wrapping the Windmill client API"
license = "Apache-2.0"
homepage = "https://windmill.dev"

View File

@@ -1,6 +1,6 @@
[tool.poetry]
name = "wmill-pg"
version = "1.531.0"
version = "1.530.0"
description = "An extension client for the wmill client library focused on pg"
license = "Apache-2.0"
homepage = "https://windmill.dev"

View File

@@ -1,6 +1,6 @@
{
"name": "@windmill/windmill",
"version": "1.531.0",
"version": "1.530.0",
"exports": "./src/index.ts",
"publish": {
"exclude": ["!src", "./s3Types.ts", "./client.ts"]

View File

@@ -1,7 +1,7 @@
{
"name": "windmill-client",
"description": "Windmill SDK client for browsers and Node.js",
"version": "1.531.0",
"version": "1.530.0",
"author": "Ruben Fiszel",
"license": "Apache 2.0",
"devDependencies": {

View File

@@ -1 +1 @@
1.531.0
1.530.0