Move `use std::fs::Permissions` and `use std::os::unix::fs::PermissionsExt`
inside the #[cfg(unix)] block to avoid unused import error on Windows.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Switch to blacksmith-16vcpu-windows-2025 runner
- Replace deprecated actions-rs/toolchain with actions-rust-lang/setup-rust-toolchain with cargo caching
- Increase build timeout from 90min to 180min
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Add vertical nav bar to workspace settings
* harmonize settings content titles
* remove sidebar icons
* add background to sidebar
* nit user section
* EEonly display
* Workspace settings general design
* Add schema validation and dirty detection
* Put critical alerts in a separated tab
* separate error success handler
* only enable save when there is some changes
* Fix dirty detection for deployment UI
* Only enable save button when changes for datatables ws storage
* Add setting footer component
* Use new footer setting for saving configs
* nit
* apply setting footer
* improve save button
* nit
* nit
* nit
* make ws app use same pattern as other tabs
* Separate scrolling between sidebar and content
* Gather error handlers
* use universal save button for object storage
* Title sentence case
* nit
* nit
* improve dirty config logic
* nit
* nit
* clean dead code
* Use settings footer for deployment settings
* Git sync settings
* move tabs
* fix dirty stats of error handlers
* nit
* nit
* fix: reuse existing transaction in push instead of acquiring new connection
In push_inner, fetch_authed_from_permissioned_as was acquiring a new
connection from the pool to fetch job permissions, even though a
transaction was already open. Use fetch_authed_from_permissioned_as_conn
with the existing transaction instead, reducing pool pressure when many
jobs are pushed concurrently.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* improve contention
* improve contention
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* fix(backend): prevent sqs hanging
* fix dep
* chore: update ee-repo-ref to b1916254951d504db136759f4150a40d3a88a638
This commit updates the EE repository reference after PR #410 was merged in windmill-ee-private.
Previous ee-repo-ref: a5d74260b942eb208cd4b963bd63d74ad5240931
New ee-repo-ref: b1916254951d504db136759f4150a40d3a88a638
Automated by sync-ee-ref workflow.
---------
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
* fix: parse Python datetime.datetime and datetime.date type annotations correctly
The Python parser only matched ExprKind::Name for type annotations, so
`datetime.datetime` (an Attribute expression) silently fell through to
Typ::Unknown and no datetime picker was shown in the UI.
- Extend parse_expr to resolve `datetime.*` attribute access (alongside
the existing `wmill.*` handling)
- Add Typ::Date variant for `datetime.date` → JSON schema format "date"
- Update python worker to import and convert `date.fromisoformat()`
- Update argSigToJsonSchemaType, AI types, schema validation, and SQL
datatype wasm for the new Date variant
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* all
* all
* all
* all
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* fix: flake nix devshell clang/mold/openssl compatibility
- Add mold linker to buildInputs
- Pin cargo linker to clang 18 (stdenv's clang 21 causes SIGSEGV with mold)
- Embed OpenSSL rpath via rustflags instead of LD_LIBRARY_PATH to avoid leaking into git/ssh
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* more fixes
* fix
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Add 7 #[ignore] e2e tests (one per trigger type) that fire real messages
to external services and verify job creation in v2_job. Also add 9 DB-level
CRUD tests for MQTT, GCP, and Email triggers.
Includes helper shell scripts in tests/fixtures/ to start/stop each
external service (MQTT, WebSocket, Postgres replication, Kafka, NATS,
SQS via LocalStack, GCP Pub/Sub emulator).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The handler expected Path((w_id, name)) but the route was registered
as /is_owner without :name, making the endpoint unreachable.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* ci: limit test threads to 16 to prevent postgres pool exhaustion
Running all tests with unlimited parallelism exhausts postgres
max_connections (default 100), causing sqlx::test databases to fail
setup and producing spurious RowNotFound errors.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: CI ruby env vars and mysql test binary coercion
- Ruby executor reads RUBY_BUNDLE_PATH and RUBY_GEM_PATH but CI was
setting BUNDLE_PATH and GEM_PATH, causing "Executable bundle not
found on worker" errors.
- MySQL test CAST(CONCAT(...) AS CHAR) returns binary type when param
is bound as bytes. Use CONVERT(? USING utf8mb4) to ensure character
result type.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
The test file used old JobPayload/FlowValue field names that were
refactored into DebouncingSettings/ConcurrencySettings structs.
Remove the test file, fixture, feature flag, and cfg gate in monitor.rs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>