Changelog
🔀 Merge
- 996466e Merge pull request #15242 from kestra-io/kestra_v2, closes #15242
- c04ef96 Merge branch 'develop' into kestra_wip
- a5f1e75 Merge branch 'develop' into kestra_wip
- cb9eee1 Merge branch 'develop' into kestra_wip
📢 Breaking Changes
core
- dd71be7 🚨 adopt RFC 9457 problem details as the single API error format (#17912) - *error responses no longer carry
message,_linksor
_embedded.errors[], and are served asapplication/problem+jsonrather than
application/json. Bulk endpoints report per-item failures inerrors[]instead of
invalids[]. Clients must branch ontypeand readdetail.
chore(core): localize to languages other than english
Refs https://github.com/kestra-io/kestra-ee/issues/9671*, closes #17912
flows
🚀 Features
UI
ai
- 49922f1 note when the AI model is switched mid-conversation (#18538), closes #18538
- a2f6c3d support custom HTTP headers on every copilot model provider (#17992), closes #17992
- afd1ecc expand copilot page context and note context changes in the chat (#17728), closes #17728
- 4938d09 animate the Kestra mark in the copilot working indicator (#17666), closes #17666
- 48e95e3 revamp ai copilot style (#16545), closes #16545
- 3e89076 add AI Copilot to No-Code editor (#15209), closes #15209
apps
- b933bfc generate the JS/TS SDK in-repo (OSS) (#17541), closes #17541
- cdbec44 redesign Settings page and align design system with Figma 2.0 (#16310), closes #1 #2 #43 #631 #9869 #15081 #15967 #16310 #16324 #16467 #23252 #111115 #424256
assets
- a895dc7 add a layered DAG view and freshness to asset dependencies (#18567), closes #18567 #18569
- 1e2699e asset editable type (#18352), closes #18352
async
- 7a7ceae blocking single-action + async batch for executions and triggers
blueprint
build
- f8a4875 migrate Docker plugin install to kestractl CI download
cases
charts
ci
cli
- cf0816c print UI URL as the last line once the server is fully ready
- 68e52f4 add configuration-schema command for JSON Schema generation (#15753), closes #15753
copilot
- 2ed2f14 add ownAndInheritedSecrets and use it in expression context
- 3227852 add ExpressionContextService with typed context, RunVariables introspection, and test coverage
core
- 307ef7b add a @DurationMin constraint beside @DurationMax (#19001), closes #18676 #19001
- 6ca00ee reject an external log store outside Enterprise Edition (#18982), closes #18982
- 6346960 add url to the default SDK authentication (#18605), closes #18605
- bd9d3b0 use 3D artwork on empty states (#18629), closes #18629
- 65270d0 add Flow/Custom tabs to the embedded blueprints panel (#18295), closes #18295
- 6d3d920 add ForbiddenException mapped to HTTP 403
- add80ea introduce no data page for custom blueprints (#18202), closes #18202
- d35b5cc parse kotlp OTLP telemetry in TaskLogLineMatcher (#17873), closes #17873
- 31a9d7c implement search filter in outputs tab (#17511), closes #5448 #17511
- b341e66 introduce
select alloption to the select component in design system (#17713), closes #17639 #17713 - b859109 add assetFailureBehavior property to AssetsDeclaration (#9467), closes #9467
- 501f0b1 add locked query filter field for assets (#9466), closes #9466
- 78d4b6a add ProtectedZipInputStream to guard against ZIP-bomb attacks
- 92bc9a3 amend the format of the new flow IDs (#17626), closes #17626
- cd26c65 normalize PostHog event names to surface.object.action (#17573), closes #17573
- 87e9c81 add onWebhookMatched hook after webhook key matching
- ca6cd11 OSS enablers for EE Policies
- 3b0d2da generate docs for charts, data filters, apps and app blocks (#17030), closes #17030
- b259dc6 census input types by name in the anonymous usage report (#17258), closes #17258
- 8264ea0 REUSABLE_INPUTS input type, validation, and editor seam (#17042), closes #17042
- 5c5c4f4 show an icon inside asset dependency nodes (#17207), closes #17207
- bbdc940 disable blueprints that need plugins which are not installed (#17121), closes #17121
- b8922d7 add metric constants for maintenance enter/exit (#16597), closes #16597
- d0a7fe0 attach logs to dynamically-generated taskruns and nest them in the UI
- c0e0016 let task runners emit detail on the failure path
- 050a539 add full arg to the secret() pebble function
- 26fbee1 add
CTRL+Shift+Lshortcut to cycle themes (#16940), closes #16940 - eaf57ea autocomplete subflow() namespace and id arguments (#16882), closes #16882
- 20fc773 add config flag to disable the UI and run the webserver API-only (#16748), closes #16747 #16748
- 4d6fedc add subflow() Pebble function
- c05e508 make external tooltip follow the cursor and only over bars/slices (#16836), closes #16836
- 2fc1229 redesigned Gantt. (#16680), closes #16680
- 7a9ed14 fallback SDK auth to OSS basic auth
- 4a285a4 redesign flow blueprints list (#16457), closes #16457
- 248b30f match strategy on WorkerSelector + Disposition on WorkerQueueRouting
- e0703ea add maintenance status endpoint (#16181), closes #14455 #16181
- b37908b add CSRF token protection for cookie-authenticated requests (#16317), closes #16317
- bbee04d show version badge with commit info and refactor and unify admin section (#16285), closes #16285
- 66f239b switch ION serialization to binary format (#16144), closes #3155 #16144
- d8f2413 add isLastWorkingDay() Pebble function
- b869c0f automate all migration scripts (#15601), closes #15601
- 27aff90 monitor queue subscriber pause/resume and fix subscribers gauge (#15750), closes #15750
- 6949451 add translation keys related to enterprise copilot (#15707), closes #15707
- 9f63dd4 extract reusable copilot component for onboarding pages (#15533), closes #15533
- d289f9b regexp filter (#15351), closes #15332 #15351
- 4bcacf5 add kestra.ai.enabled property to disable AI copilot entirely (#15476), closes #15474 #15476
- ed9db4f open no-code trigger creation form from flow triggers tab (#15463), closes #15463
- c231395 make sidebar logo destination configurable via prop (#15462), closes #15462
- 7bb7272 respect timeWindow.default for filter time range (#15461), closes #15461
- 8851014 redirect logo click to welcome page (#15404), closes #15376 #15404
- 5e781f7 add secret property type to No-Code editor
- 97da227 add @PluginProperty(secret = true) with validation for it
- ab1125a add PebbleUtil and replace hardcoded Pebble delimiters
- 55240cc Add support for ServiceInstance (#15173), closes #15173
- 8f4b28a introduce new welcome page with revamped onboarding (#15046), closes #15046
- bc7d993 introduce dependency view filtering (#14972), closes #14972
- 57eea63 add separate purge options for execution and trigger logs in PurgeLogs (#14922), closes #14922
- 782a6d6 implement SecurityIntegration ENABLED filter. (#14839), closes #14839
- 53db598 allow exporting dependency graphs as jpeg or png images (#14941), closes #14941
- 325e186 implement BINDING TYPE and NAMESPACE filters (#14829), closes #14829
- d594be3 implement GROUP.NAME filter. (#14812), closes #14812
- de39702 implement INVITATION: NAME, EXPIRED_AT, EMAIL filters. (#14810), closes #14810
- f0e1051 implement Role.NAME filter. (#14808), closes #14808
- f2ed88d implement User.group EQUALS and IN filter (#14782), closes #14782
- a208201 Expose service instance metrics via API and add new pending worker messages metric. (#14495), closes #14495
- dfae1c8 remove deprecated runner property in favor or taskRunner
- cf1cfd6 remove Property deprecated methdso and constructors
dashboard
- cd56ec0 open a preview drawer on chart drill-down instead of a full-page redirect (#17194), closes #17194
dashboards
- 5512794 recycle offscreen dashboard charts and cap their canvas pixel ratio (#18588), closes #14234 #18199 #18588
- a1f6a8e load charts as they scroll into view and limit concurrent chart requests (#18199), closes #14234 #18199
- b9d8932 custom dashboard to enterprise only (#17942), closes #17942
- 04d0a6d broaden chart export to all data charts, add CSV/ION format, default dashboard sentinel (#17260), closes #157 #17260
- 22e2b24 expandable Top-N + Others Executions per-namespace chart (#17009), closes #17008 #17009
- bd68963 replace "Executions In Progress" with filterable "Executions" widget (#16616), closes #16616
- 27ec04b allow setting a default dashboard
design-system
- 1336b23 let KsSegmented options carry an icon (#18587), closes #18587
- 4874533 consistent clickable namespace and flow references across tables (#17575), closes #17575
- aaeac87 add square prop to KsButton for icon-only square buttons (#17474), closes #17474
- 659356c enforce font-size scale across the UI (#16993), closes #16993
- 9a7963c redesign login page [2.0] (#16605), closes #16605
- d8e8921 add sass as a dependency and update package-lock (#16229), closes #16229
- d81f37b export color palette CSS vars, add missing EP wrappers and fix build exports (#16145), closes #16145
docs
ds
- 1f21950 introduce loader for select
execution
- 786d23a adapt webhook multipart for EE
- 870a5a5 update execution progress component and API for average duration
- f5eb458 add support for allowed and denied list for HTTP tasks
- 96f9166 replace execution statistics from the Execution repository to the new ExecutionStatistics repository
- 70d19d4 possible NoSuchElementException on State.getEndDate
- fcd9cfd Execution stat ...