Diego Imbert
709cf8aecb
Merge remote-tracking branch 'origin/main' into datatable-perms-3
...
# Conflicts:
# backend/ee-repo-ref.txt
2026-08-31 22:01:47 +02:00
Ruben Fiszel and rubenfiszel
412eb90c0d
chore(main): release 1.800.0 ( #10888 )
...
* chore(main): release 1.800.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-31 20:29:23 +02:00
Ruben Fiszel and rubenfiszel
7a0c81d722
chore(main): release 1.799.0 ( #10874 )
...
* chore(main): release 1.799.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-28 17:26:18 +02:00
Ruben Fiszel and rubenfiszel
90b40fffc3
chore(main): release 1.798.1 ( #10870 )
...
* chore(main): release 1.798.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-27 12:00:45 +02:00
Ruben Fiszel and rubenfiszel
2302e58c24
chore(main): release 1.798.0 ( #10868 )
...
* chore(main): release 1.798.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-27 11:07:15 +02:00
Ruben Fiszel and rubenfiszel
52ca19e9ae
chore(main): release 1.797.0 ( #10848 )
...
* chore(main): release 1.797.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-27 10:15:23 +02:00
Diego Imbert
ae162b6d3e
Merge branch 'main' into datatable-perms-3
2026-08-26 10:24:13 +02:00
Diego Imbert and Claude Opus 5
8a6dc27236
feat: configurable expiry for presigned s3 public url signatures ( #10835 )
...
* feat: configurable expiry for presigned s3 public url signatures
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_015JdZFeMXLGfeFNiQgx9QvA
* fix: describe expiry_secs clamping in the spec and pin the bounds in a test
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_015JdZFeMXLGfeFNiQgx9QvA
* fix: omit null expiry_secs from the python sdk sign request
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_015JdZFeMXLGfeFNiQgx9QvA
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-26 00:47:24 +02:00
Diego Imbert
665cadbca6
feat(datatables): take the sdk role as an options argument
2026-08-25 14:08:37 +02:00
Ruben Fiszel and rubenfiszel
0f3d884c6f
chore(main): release 1.796.0 ( #10810 )
...
* chore(main): release 1.796.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-24 22:42:33 +02:00
Diego Imbert
4e53d1ac45
chore(datatables): regenerate cli/system-prompt docs for the datatable role param
2026-08-24 08:46:17 +02:00
Diego Imbert
5974f5491d
Merge remote-tracking branch 'origin/main' into datatable-perms-3
...
# Conflicts:
# backend/ee-repo-ref.txt
# backend/parsers/windmill-parser/src/asset_parser.rs
# backend/windmill-common/src/workspaces.rs
2026-08-24 08:39:01 +02:00
Ruben Fiszel and rubenfiszel
74af4ed939
chore(main): release 1.795.0 ( #10807 )
...
* chore(main): release 1.795.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-22 12:11:36 +02:00
Ruben Fiszel and rubenfiszel
1a506b8f22
chore(main): release 1.794.1 ( #10801 )
...
* chore(main): release 1.794.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-21 13:45:56 +00:00
Ruben Fiszel and rubenfiszel
55b6279058
chore(main): release 1.794.0 ( #10782 )
...
* chore(main): release 1.794.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-21 12:27:44 +02:00
Ruben Fiszel and rubenfiszel
2439a610be
chore(main): release 1.793.0 ( #10764 )
...
* chore(main): release 1.793.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-20 22:18:01 +02:00
Ruben Fiszel and rubenfiszel
a7637aca31
chore(main): release 1.792.2 ( #10753 )
...
* chore(main): release 1.792.2
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-19 14:15:59 +02:00
Ruben Fiszel and rubenfiszel
9f517d5a40
chore(main): release 1.792.1 ( #10750 )
...
* chore(main): release 1.792.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-18 17:10:42 +02:00
Ruben Fiszel and rubenfiszel
8efede55d6
chore(main): release 1.792.0 ( #10745 )
...
* chore(main): release 1.792.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-18 12:32:35 +02:00
Ruben Fiszel and rubenfiszel
ce71756c89
chore(main): release 1.791.0 ( #10718 )
...
* chore(main): release 1.791.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-18 01:55:42 +02:00
Ruben Fiszel and rubenfiszel
010d67e07f
chore(main): release 1.790.1 ( #10712 )
...
* chore(main): release 1.790.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-17 11:08:47 +02:00
Ruben Fiszel and rubenfiszel
944ad1083a
chore(main): release 1.790.0 ( #10699 )
...
* chore(main): release 1.790.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-15 14:54:31 +02:00
Ruben Fiszel and rubenfiszel
80a18ec284
chore(main): release 1.789.0 ( #10670 )
...
* chore(main): release 1.789.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-13 13:29:52 +02:00
Ruben Fiszel and rubenfiszel
b39860235c
chore(main): release 1.788.0 ( #10664 )
...
* chore(main): release 1.788.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-12 21:17:47 +02:00
Ruben Fiszel and rubenfiszel
2ac3e64fe2
chore(main): release 1.787.0 ( #10657 )
...
* chore(main): release 1.787.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-12 13:27:21 +02:00
Ruben Fiszel and rubenfiszel
20953a0c67
chore(main): release 1.786.1 ( #10652 )
...
* chore(main): release 1.786.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-12 09:40:03 +02:00
Ruben Fiszel and rubenfiszel
45a6e4932a
chore(main): release 1.786.0 ( #10649 )
...
* chore(main): release 1.786.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-12 02:22:18 +02:00
Ruben Fiszel and rubenfiszel
a65a184a80
chore(main): release 1.785.0 ( #10626 )
...
* chore(main): release 1.785.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-11 18:26:31 +00:00
13b521651b
fix(python-client): return at most size bytes from S3BufferedReader.read ( #10623 )
...
* feat: add unit tests for S3BufferedReader.read and improve read method implementation
* feat: refactor S3BufferedReader.read method and add unit tests for its functionality
* feat: implement peek() on S3BufferedReader with buffered reads
* fix(python-client): keep the read(size) contract and trim the test surface
Drop the duplicated `TestS3BufferedReaderRead` class from
`python-client/tests/wmill_client_test.py`: CI runs `pytest tests/` from
`python-client/wmill`, so that legacy manual harness never executes, and the
same assertions already live in `python-client/wmill/tests/test_s3_reader.py`.
Narrow that file to the four behaviours a future change could break, and make
the `bytes_generator` guard actually call `bytes_generator`.
Align `peek()` with `io.BufferedReader.peek`, which does at most one read on
the underlying stream, rather than looping until `size` bytes are buffered.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* fix(python-client): hold read1 to one underlying read
read1 forwarded to read, so read1(-1) drained the whole object — the same
unbounded buffering this branch removes from read. Now that a buffer exists,
read1 can honour its own contract: fill only when the buffer is empty, then
serve from it.
Also treat read(None) as read(-1), per the BufferedReader contract, and pin
that read(0) does not pull from the stream: that holds only because the
drain sentinel is a negative size, and widening it to any falsy size would
reintroduce whole-file buffering.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* fix(python-client): return from read1(0) without touching the stream
A zero-length read has nothing to serve, so pulling a chunk to satisfy it
both wastes a round trip and advances the stream. Guard it ahead of the
fill, and pin it with a chunk source that counts pulls.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Tushar <tusharanshu18@gmail.com >
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-10 23:04:27 +02:00
Ruben Fiszel and rubenfiszel
cf3ddaa3cc
chore(main): release 1.784.0 ( #10603 )
...
* chore(main): release 1.784.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-10 22:56:55 +02:00
Ruben Fiszel and rubenfiszel
099efa358a
chore(main): release 1.783.0 ( #10578 )
...
* chore(main): release 1.783.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-07 12:41:05 +02:00
Ruben Fiszel and rubenfiszel
d592fb75eb
chore(main): release 1.782.0 ( #10566 )
...
* chore(main): release 1.782.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-06 12:55:48 +02:00
Ruben Fiszel and rubenfiszel
c03bd34be9
chore(main): release 1.781.3 ( #10563 )
...
* chore(main): release 1.781.3
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-06 10:02:27 +02:00
Ruben Fiszel and rubenfiszel
74737d16dd
chore(main): release 1.781.2 ( #10561 )
...
* chore(main): release 1.781.2
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-06 09:53:18 +02:00
Ruben Fiszel and rubenfiszel
c7ea530e1f
chore(main): release 1.781.1 ( #10556 )
...
* chore(main): release 1.781.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-06 02:17:57 +00:00
Ruben Fiszel and rubenfiszel
9cf307f3ad
chore(main): release 1.781.0 ( #10528 )
...
* chore(main): release 1.781.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-06 00:04:25 +02:00
Ruben Fiszel and rubenfiszel
055a9c2690
chore(main): release 1.780.0 ( #10527 )
...
* chore(main): release 1.780.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-05 00:37:06 +02:00
Ruben Fiszel and rubenfiszel
59072a1273
chore(main): release 1.779.0 ( #10496 )
...
* chore(main): release 1.779.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-04 20:45:57 +02:00
Diego Imbert
23cd7737b6
feat(datatables): opt-in role-based permissions
2026-08-04 18:59:03 +02:00
Ruben Fiszel and rubenfiszel
4c4d6c98bf
chore(main): release 1.778.0 ( #10469 )
...
* chore(main): release 1.778.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-04 01:49:00 +02:00
6b9691df3a
chore(main): release 1.777.1 ( #10464 )
...
* chore(main): release 1.777.1
* Apply automatic changes
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
Co-authored-by: windmill-internal-app[bot] <217088191+windmill-internal-app[bot]@users.noreply.github.com>
2026-08-03 13:18:26 +02:00
Ruben Fiszel and rubenfiszel
45b5c7a0c0
chore(main): release 1.777.0 ( #10454 )
...
* chore(main): release 1.777.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-03 12:32:57 +02:00
Ruben Fiszel and rubenfiszel
b0a2c8ca44
chore(main): release 1.776.0 ( #10406 )
...
* chore(main): release 1.776.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-08-01 20:47:00 +02:00
Ruben Fiszel
68a52f45a7
refactor: deprecate username_to_email in favor of WM_END_USER_EMAIL ( #10429 )
2026-07-31 11:47:58 +02:00
Ruben Fiszel and rubenfiszel
64ec1aa490
chore(main): release 1.775.2 ( #10397 )
...
* chore(main): release 1.775.2
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-07-29 12:12:07 +02:00
Ruben Fiszel and rubenfiszel
cfb8ca4391
chore(main): release 1.775.1 ( #10394 )
...
* chore(main): release 1.775.1
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-07-28 20:43:07 +02:00
Ruben Fiszel and rubenfiszel
0de18dc017
chore(main): release 1.775.0 ( #10392 )
...
* chore(main): release 1.775.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-07-28 18:59:14 +02:00
Ruben Fiszel and rubenfiszel
773a428ad0
chore(main): release 1.774.0 ( #10365 )
...
* chore(main): release 1.774.0
* Apply automatic changes
---------
Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com >
2026-07-28 17:43:36 +02:00
Ruben Fiszel and Claude Opus 5
3b95c947d4
test(wac): pin the failure record with one corpus both SDKs read ( #10385 )
...
* test(wac): pin the failure record with one corpus both SDKs read
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* test(wac): add the behaviour matrix that verified the failure record
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* docs(wac): record how to exercise an unreleased SDK change
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* fix(wac): guard the whole extra pair, not just its value
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* fix(wac): never rehash an untrusted extra key
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* fix(wac): walk only a real __dict__ when collecting extra
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* docs(wac): name the divergence the corpus cannot pin
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* chore(wac): state the extra-encoding constraints in four lines
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-28 16:54:40 +02:00
Ruben Fiszel and Claude Opus 5
faf5aead6f
ci: run the SDK suites on release ( #10386 )
...
* ci: run the python and typescript SDK suites
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* ci: run the SDK suites on release tags only
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* chore(ci): state the constraint without the incident
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* docs(sdk): claim only what functools.wraps actually restores
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
* docs(ci): note the interpreter the suite runs on is not the worker's
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-07-28 16:51:47 +02:00