Commit Graph

2807 Commits

Author SHA1 Message Date
Ruben Fiszel
1914a8bc4d chore(main): release 1.618.2 (#7721)
* chore(main): release 1.618.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-28 15:29:57 +00:00
Ruben Fiszel
35c34e83f4 chore(main): release 1.618.0 (#7714)
* chore(main): release 1.618.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-28 12:41:54 +00:00
Ruben Fiszel
5d0beb5f2b chore(main): release 1.617.3 (#7707)
* chore(main): release 1.617.3

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-27 18:28:41 +00:00
centdix
b891a22e98 fix(backend): include empty schemas in list_datatable_schemas endpoint (#7708)
The endpoint now returns all non-system schemas, including empty ones
without tables. This is useful for CLI and frontend features that need
to know about available schemas for autocompletion and app creation.

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 18:14:26 +00:00
Ruben Fiszel
d4eeb50787 fix: do not delete tokens on being promoted to superadmins 2026-01-27 18:13:48 +00:00
Ruben Fiszel
fc59dfa662 chore(main): release 1.617.2 (#7702)
* chore(main): release 1.617.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-27 17:38:27 +00:00
hugocasa
6b909f26a9 fix(backend): folder/group permissions workspace id change (#7703) 2026-01-27 17:31:35 +00:00
hugocasa
40fb61da07 fix: 404 triggers listing in CE (#7705) 2026-01-27 17:30:36 +00:00
centdix
3ef496609c fix(mcp): use computed base_internal_url instead of static default (#7701)
* fix(mcp): use computed base_internal_url instead of static default

Pass the actual base_internal_url (computed from the runtime port) to
the MCP backend instead of using the static BASE_INTERNAL_URL which
defaults to http://localhost:8000. This fixes internal API calls when
the server runs on a non-default port.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix

* remove BASE_INTERNAL_URL

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 17:01:24 +00:00
Ruben Fiszel
bad86d862f chore(main): release 1.617.1 (#7698)
* chore(main): release 1.617.1

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-27 11:57:01 +00:00
Ruben Fiszel
6011032453 fix: fix lowercase migration with existing duplicates 2026-01-27 11:52:24 +00:00
Ruben Fiszel
c4e811f062 fix: support run again for preview and running a hub path directly as preview 2026-01-27 11:25:36 +00:00
Ruben Fiszel
b31bbca53d chore(main): release 1.617.0 (#7692)
* chore(main): release 1.617.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-27 10:23:29 +00:00
Ruben Fiszel
213b451028 chore(main): release 1.616.0 (#7689)
* chore(main): release 1.616.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-26 21:06:13 +00:00
dieriba
25b3c1b959 feat: nextcloud native triggers (#6797) 2026-01-26 16:49:52 +00:00
Ruben Fiszel
7a78195e48 chore(main): release 1.615.3 (#7687)
* chore(main): release 1.615.3

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-26 16:08:16 +00:00
Ruben Fiszel
ec6e58589a chore(main): release 1.615.2 (#7685)
* chore(main): release 1.615.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-26 15:54:43 +00:00
Pyra
02596e888f fix: mixed version error (#7686)
* fix mixed version error

Signed-off-by: pyranota <pyra@duck.com>

* fix comp error

Signed-off-by: pyranota <pyra@duck.com>

* fix

Signed-off-by: pyranota <pyra@duck.com>

---------

Signed-off-by: pyranota <pyra@duck.com>
2026-01-26 15:49:31 +00:00
Ruben Fiszel
32061dfd52 chore(main): release 1.615.1 (#7684)
* chore(main): release 1.615.1

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-26 13:20:46 +00:00
centdix
5aa61e8360 fix(aiagent): fix usage for gemini 3 models (#7682)
* fix for gemini3 models

* cleaning

* cleaning

* small opti
2026-01-26 13:15:18 +00:00
Ruben Fiszel
5eda159461 chore(main): release 1.615.0 (#7674)
* chore(main): release 1.615.0

* Apply automatic changes

* pin rdkafka

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-26 11:41:33 +00:00
centdix
e57325ce6f feat(ai): native bedrock compatibility (#7668)
* check endpoint

* use flag for cred check on worker

* use sdk for auth chat side

* cleaning

* cleaning

* also handle GET

* Add session token support in BedrockClient::from_credentials

Users with temporary STS credentials need session tokens for AWS
authentication. This adds the optional session_token parameter to
support these use cases.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Cache AWS SDK config loading to avoid repeated I/O

aws_config::load_defaults() performs environment variable lookups and
potentially file I/O on each call. Cache the result in a static OnceCell
to improve performance on high-frequency Bedrock requests.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Add debouncing to Bedrock credential check button

Prevent rapid clicks from spawning multiple concurrent flow preview
jobs for the worker credential check.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Remove orphaned SigV4 signing comment

The manual SigV4 signing code was removed in favor of the AWS SDK,
but this documentation comment was left behind.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Remove verbose tracing info and change-related comments

- Remove per-request auth method info logs (too verbose for production)
- Simplify from_env log to single debug-level message
- Remove comments describing future changes rather than current behavior

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* cleaning

* Fix Bedrock feature flag compilation warnings

Gate AWS-specific imports, struct fields, and methods behind the bedrock
feature flag to eliminate dead code warnings when building without the
bedrock feature enabled.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* bedrock flag

* cleaning

* Move BedrockCredentialsCheck from edit drawer to add drawer

The component was incorrectly shown when editing resources instead of
when adding new ones. Moved it from ResourceEditor.svelte to
ApiConnectForm.svelte.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* cleaning

* cleaning

* make aws-config optional

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2026-01-26 11:04:14 +00:00
Ruben Fiszel
9f45ad29a4 fix build 2026-01-26 09:25:41 +00:00
Ruben Fiszel
f8e0dfb045 add comprehensive permissions tests and restrict operator script archiving
- Add permissions test suite covering scripts, flows, apps, resources,
  variables, schedules, and folder-based permissions
- Add test for operator restrictions (cannot create/update/archive)
- Restrict operators from archiving scripts (archive_script_by_path,
  archive_script_by_hash) for security consistency with flows/apps

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 23:33:54 +00:00
Ruben Fiszel
a4d0b965ef refactor: replace v2 live migration with regular SQL migration (#7678)
* refactor: replace v2 live migration with regular SQL migration

Remove the v2_finalize live migration that waited for workers to reach
v1.461+ and replace it with an idempotent SQL migration. Since enough
time has passed, all deployments are assumed to be on v1.461+.

Changes:
- Remove v2_finalize() function and spawn task from live_migrations.rs
- Remove MIN_VERSION_IS_AT_LEAST_1_461 constant from min_version.rs
- Add 20260125000000_v2_finalize.up.sql with all finalization steps
- All SQL operations use IF EXISTS/CASCADE for idempotency

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: remove migration-related delays and tighten CLI tests CI trigger

- Remove 5s backend initialization delay in cargo_backend.ts that was
  needed for the v2 live migration (now replaced with SQL migration)
- Restrict CLI tests workflow to only trigger on cli/** changes
  (removed backend/**, openapi.yaml, openflow.openapi.yaml paths)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: skip v2_finalize migration if live migration already ran

Wrap migration in DO block that checks for 'v2_finalize_job_completed'
in windmill_migrations table. If present (live migration already ran),
skip entirely to avoid unnecessary table locks on upgraded instances.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 22:32:21 +00:00
Ruben Fiszel
b342737324 fix: tighten operator permissions 2026-01-24 19:37:25 +00:00
claude[bot]
a9e6ba392d feat: add workspace setting to disable error handler for u/ scripts/flows (#7634)
* feat: add workspace setting to disable error handler for u/ scripts/flows

Add a new workspace setting `error_handler_muted_on_user_path` that allows
disabling the error handler for jobs related to scripts/flows that start
with the "u/" prefix (user scripts/flows).

Changes:
- Add migration to add `error_handler_muted_on_user_path` column to workspace_settings
- Update WorkspaceSettings struct and get_settings query
- Update EditErrorHandler struct and edit_error_handler API endpoint
- Update error handler cache to include the new setting
- Add skip logic in send_error_to_workspace_handler for u/ paths
- Add toggle in workspace settings UI

The implementation uses the existing cached settings to avoid additional
database queries, making it efficient.

Closes #7633

Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>

* all

* update ee private

* combine migrations

* sqlx

* fix: migration fixes for auto_invite JSONB column

- Fix TEXT[] to JSONB conversion using to_jsonb()
- Add GIN index on auto_invite for efficient ? operator queries
- Add index cleanup to down migration

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* sqlx

* all

* all

* all

---------

Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 19:26:06 +00:00
Ruben Fiszel
96d1234fe6 chore(main): release 1.614.0 (#7650)
* chore(main): release 1.614.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-23 12:56:16 +00:00
Pyra
34492550a4 feat: better mixed versions handling (#7628) 2026-01-22 23:16:57 +00:00
centdix
967c26fff1 feat(ai): handle google vertex for claude models + base url overrides (#7654)
* fix hardcoded gemini url

* allow overriding any provider url

* handle vertex

* same for chat proxy

* fix for chat
2026-01-22 17:28:51 +00:00
Diego Imbert
85e617cd83 Playwright E2E (#7520)
* clean plate

* npm i

* log in e2e

* global setup login

* set license key

* Revert "set license key"

This reverts commit 86d5db2c48.

* create datatable test

* fix wrong pg_creds

* data table + db manager e2e test

* DbManagerPage class

* small refactor

* create resource test + improvements

* text db manager in resources

* Factor test logic in classes

* refactoring

* refacto

* alter table test

* alter table e2e test

* set schema in test

* nits

* fix wrong schema var

* Correct setup and parallelization

* reducedMotion

* tests passing headless !

* bigger timeout

* start e2e docker compose

* e2e runs on all databases

* nit test uid fix

* refactp

* stash

* Better Workspace Storage settings

* minio setup

* nit

* nit

* super nit

* Permission settings in modal

* badge indicator

* Fetch alter table metadata much faster

* Upgrade duckdb to 1.4.3

* Ducklake tests

* Disable transactional DDL for Ducklake (bug on their side)

* git ignore env

* bigquery tests passes

* getJsonEnv

* load coldef in parallel

* Make Bigquery schema fetching much faster

* makeLoadTableMetaDataQuery for entire db in bigquery

* refactor getDbSchemas to avoid assignment side effect

* fix col def

* Better loading state mgmt

* snowflake

* fix snowflake primary keys

* Test CI

* fix setTimeout type

* remove type node

* test e2e ci

* Revert "test e2e ci"

This reverts commit bf98a755dc.

* remove ci

* fix snowflake pk query in alternate schemas

* nit wait for coldefs

* nit snowflake

* Snowflake fk fix

* UNPROCESSABLE_ENTITY instead of INTERNAL_ERROR

* nits

* fix alter pk in snowflake

* yet other fixes

* snowflake tests pass

* nits
2026-01-22 16:20:01 +00:00
centdix
1d7d033744 feat(aichat): handle codestral from any provider (#7649)
* fix for codestral

* enable codestral

* fim with completion

* reduce context when using completion

* refactor: extract model detection utilities for Codestral/Mistral

Consolidate duplicated model detection logic into shared utilities
in copilot/utils.ts to improve maintainability and ensure consistency
across autocomplete support checks and Mistral-specific configurations.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: add cursor marker to FIM-to-chat transformation prompt

Add explicit <CURSOR/> marker between prefix and suffix in the
FIM-to-chat transformation to help chat models better understand
where the completion should be inserted.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 19:54:30 +00:00
Ruben Fiszel
761bba87e3 chore(main): release 1.613.4 (#7646)
* chore(main): release 1.613.4

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-21 14:23:09 +00:00
Ruben Fiszel
49f29475e9 chore(main): release 1.613.3 (#7644)
* chore(main): release 1.613.3

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-21 13:23:00 +00:00
Ruben Fiszel
4e52563685 chore(main): release 1.613.2 (#7642)
* chore(main): release 1.613.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-21 12:44:44 +00:00
Diego Imbert
09644be6ac fix: azure read s3 proxy (#7641)
* nit create role

* ee repo ref

* chore: update ee-repo-ref to cfed5d823884d9c8235ac4d8aeed0b71d5a53592

This commit updates the EE repository reference after PR #382 was merged in windmill-ee-private.

Previous ee-repo-ref: 5dc1b80d07653f873a3a27de352e9e4d13270efa

New ee-repo-ref: cfed5d823884d9c8235ac4d8aeed0b71d5a53592

Automated by sync-ee-ref workflow.

---------

Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2026-01-21 11:42:25 +00:00
Ruben Fiszel
5e19c4a97d chore(main): release 1.613.1 (#7637)
* chore(main): release 1.613.1

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-21 01:45:01 +00:00
Ruben Fiszel
05777eb878 chore(main): release 1.613.0 (#7617)
* chore(main): release 1.613.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-20 21:18:40 +00:00
Diego Imbert
72103b6886 fix ci oss (#7636) 2026-01-20 21:58:41 +01:00
Diego Imbert
39a9a77417 fix: S3 advanced custom permissions (#7632)
* audit_author

* Fix S3 Permissions

* ee

* chore: update ee-repo-ref to e8605e72a6c93c9cf43737ebea74dd28e1f00e83

This commit updates the EE repository reference after PR #381 was merged in windmill-ee-private.

Previous ee-repo-ref: 0c8638d3895a1ead9422fc8e428e3e0405e3a060

New ee-repo-ref: e8605e72a6c93c9cf43737ebea74dd28e1f00e83

Automated by sync-ee-ref workflow.

---------

Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2026-01-20 20:44:10 +00:00
centdix
2c4d86adc1 feat(mcp): handle server oauth (#7585)
* draft

* better

* more compliant

* better frontend

* proxy well known to backend

* make authenticate layer work

* correctly scoped

* cleaning

* cleaning

* cleaning

* better

* update sqlx

* cleaning

* better frontend

* add missing param

* deprecate /sse for /mcp

* handle refresh token

* cleaning

* update sqlx

* cleaning

* cleaning

* remove grants
2026-01-20 19:19:21 +00:00
claude[bot]
15755ced17 docs: remove deprecated get_large_file_storage_config endpoint from OpenAPI spec (#7629)
Closes #7622

Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Diego Imbert <diegoimbert@users.noreply.github.com>
2026-01-20 18:31:41 +00:00
Ruben Fiszel
f8885eba4b feat(raw-apps): add public URL and custom path support for raw apps (#7630)
* feat(raw-apps): add public URL and custom path support for raw apps

- Enable public URL UI in raw app editor by removing hideSecretUrl prop
- Add bundle_secret field to AppWithLastVersion for raw app rendering
- Compute bundle_secret in get_public_app_by_secret endpoint
- Update PublicApp.svelte to render RawAppPreview for raw apps
- Make get_data endpoint accessible without auth for anonymous raw apps
- Use /apps_u/ endpoint for bundle loading to support anonymous access

This allows raw apps to use the same public URL and custom path features
as regular apps, with proper support for anonymous (no login required)
execution mode.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: compute bundle_secret only once in get_public_app_by_secret

Move bundle_secret computation after all authorization checks to avoid
duplication between anonymous and authenticated code paths.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: add explicit error state for raw apps missing workspace

Show a clear error message instead of silently falling through to
render AppPreview when a raw app is loaded without workspace info.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* update sqlx

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 18:21:58 +00:00
Pyra
b2944c5dfb feat: otel REST tracing (#7571) 2026-01-20 13:38:02 +00:00
Diego Imbert
a2bee4738e feat: DuckDB support write to Azure (#7618)
* Fix DuckDB Azure write

* separate file for azure logic

* ee

* ee repo ref

* chore: update ee-repo-ref to 62cc5aaf46a4f825d9b0cf446924c07eeb95b8d5

This commit updates the EE repository reference after PR #379 was merged in windmill-ee-private.

Previous ee-repo-ref: bec039939f73859535e9e8c94b3e876c1161836e

New ee-repo-ref: 62cc5aaf46a4f825d9b0cf446924c07eeb95b8d5

Automated by sync-ee-ref workflow.

---------

Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2026-01-20 12:52:58 +00:00
Ruben Fiszel
965e3b3cd4 feat(api): add include_args query parameter to job list endpoints
Add optional `include_args` query parameter to /jobs/list, /queue/list,
and /completed/list endpoints to optionally include job arguments in the
response. Returns an error when used on cloud hosted Windmill.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 21:42:10 +00:00
Ruben Fiszel
36d803fc9d chore(main): release 1.612.2 (#7614)
* chore(main): release 1.612.2

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-19 20:39:35 +00:00
Ruben Fiszel
9ec2bcbc1d fix: add HIDE_WORKERS_FOR_NON_ADMINS env var and workspace-scoped custom_tags endpoint (#7613) 2026-01-19 19:14:18 +00:00
Ruben Fiszel
348d4f7598 chore(main): release 1.612.1 (#7612)
* chore(main): release 1.612.1

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-19 18:41:41 +00:00
Ruben Fiszel
e1f7aafb85 chore(main): release 1.612.0 (#7609)
* chore(main): release 1.612.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
2026-01-19 17:56:59 +00:00