v0.21.0
👉 Changelog
Full Changelog: v0.20.0...v0.21.0
🚀 Enhancements
- ui: Add right click menu on file tree view in editor (#5936)
- core: Add displayName to flow level outputs(backend) " (#5605)
- ui: Add triggers sorting by next execution date (#6318)
- core,jdbc: Small trigger / scheduler improvements (a27bb1a85)
- ui: Add flow validation to FlowCreate component (#6370)
- plugins: Add typesense plugin (7979809ae)
- core: Log at ERROR level for script logs to stderr (0e0928d51)
- ui: Make filters expand fully if we omit some of the non required buttons (#6364)
- ui: Improvement in filter for adding clear all filters. (#6359)
- ui: Improve Gantt page. (#6358)
- ui: Triggers: The expanded button displays an empty area. (#6337)
- ui: Add missing filter options for metrics (#6409)
- UI: Added new filters to Flows -> Metrics tab (#6305)
- ui: Add new filters to Administration -> Triggers page (#6328)
- ui: Introduce new filters bar to audit logs (#6419)
- main-gha-workflow: Add dispatch event with new version (#6443)
- tests: Move the extension into the right folder (008c03ce2)
- webserver: Small improvements to our OpenAPI spec (6a34c04e3)
- core: Use the Sleep official task instead of a custom test one (aa8ad1520)
- script: Include task null outputs (b133210fa)
- core: Throw an error if the secret is not found (da1bbb51a)
- core: Allow SELECT input to be radio UI type (18a2b553c)
- Add Huggingface Plugin (2290b9933)
- ci: Parallelize frontend testing workflow with Storybook, vitest and linter (#6529)
- ui: Implement initial stories for filter components (#6542)
- jdbc: Small improvement to the worker trigger queue (3559b640e)
- core: Add audit log when killing an execution (53af6a38b)
- core: Add a Write task (a27ef2ace)
- core: Added a Pebble function [uniq] to deduplice array #6417 (#6417)
- core: Add an Exit task (ff83e25c0)
- ui: Introduce log font size property in settings (#6600)
- webserver: OpenAPI spec improvement (6db49aebf)
- tasks: Move http task to apache http client (93dc50888)
- core: Add a http client abstraction on top of apache http client (1772ed45f)
- core: Use http abstraction on http tasks (6dfe29adf)
- core: Add an audit log for executions created by a trigger (e5b0ff459)
- script: Add privileged flags to docker (e8ee97e26)
- core: Add taskrun.iteration inside Pebble variables (aa9af94c1)
- webserver: Add a configuration to change app html title (622f158bd)
- *: Maintenance mode (9901470b7)
- core-ee: Add log shipper first implementation (#6596)
- core: Add run context to log shipper (#6651)
- core: Restarting Subflow (1e36d1eb2)
- ui: Add an alert block for restarted execution (576e023d9)
- core: Add
taskRunner
output on ScriptOutput to get detailled information on underlying taskrunner (c265b49a8) - *: Fixes and improvements for custom dashboard (#6684)
- core: Add partial fix to micronaut hibernate validator and ValueExtractor (81f08f00c)
- core: Validate tasks and triggers with dynamic properties (c5e23d43d)
- core: Add log record serialization (#6683)
- core, ui, webserver: Add replay system labels (b3ed3d8df)
- Add support for deleting empty namespace parent folders (#5699)
- ui: Add status remapping to status component to match the real name of the CSS vars (a8be084e7)
- core: Add outputs and ID to log shippers (a994120d3)
- core-ee: Remove pagination from fetchAsync and use logRecord attributes (#6698)
- core-ee: Change log shipper properties names and use KV instead of state store (#6709)
- core: Introduce an
finally
block on flow & flowable (#6686) - webserver, ui: Avoid cancelled SSE connection from following exec (717d5560a)
- ui: Introduce the revamped no code editor (#6787)
- Add a story for executions list (#6784)
- ui: Allow exporting the flow to yaml file (#6610)
- ui: Improvements of no code editor (#6804)
- Various design fixes asked by nico (#6798)
- core: Validate in editor if subflow with namespace present (#6717)
- core: Add a randomPort pebble function (4d074cb05)
- tasks: Introduce an Assert tasks (4d4963abd)
- core: Schema title annotation for Custom Dashboard Filter (c337d5527)
- Export oss chunks of vite config (b542dda8e)
- Simplify logs chunks by packaging markdown (306d4ecd7)
- ui: Improvements of no code editor (#6876)
- *: OpenTelemetry traces (e87b97a2e)
- ui: Re-work the task array field for the no code editor (#6885)
- ui: New plugin doc redesign (1b0ce4d6a)
- Add support for multiple blueprint kinds (ad719a97f)
- ui: Make the one of component work properly (#6900)
- ui: Add the ability to remove tasks and other items (#6902)
- ui: Improve the one of task section (#6903)
- ui: New gantt layout to display taskrun state & duration with also attempts one (f08bd94d5)
- ui: Improvements of no code editor (#6916)
- ui: Multiple improvements of no code editor (#6923)
- ui: Improve custom dashboard access (#6940)
- ui: New 404 page layout (36675d90f)
- core: Add system.restarted: true label when changing the status of a task (4f2d35fc4)
- ui, webserver: Rename "Change status" to "Change state" and enhance the infos (4e3ed33a4)
- core, jdbc: Change the state of a subflow restart parent execution (7cf495581)
- ui: Pretty layout for status on filters (0a93b10a7)
- ui: Multiple improvements of no code editor (#6951)
- ui: Make DashboardEdit.vue overrided components (#6954)
- ui: Multiple improvements of no code editor (#6981)
- core: Rename WaitFor task to LoopUntil (#6978)
- ui: Don't load all revisions, optimize unnecessary calls and add back query params upon changing revisions (69b5093d6)
- ui: Design change on dashboard creation (#6984)
- ui: Better empty chart view + default view to documentation (5f8a45305)
- deps: Add support for OpenTelemetry metrics (32112d2ff)
- ui: Multiple improvements of no code editor (#6991)
- Add demo page for EE only features (#7003)
- ui: Add quick theme switcher (3194a8926)
- Add enterprise edition empty to flow edition audit logs (4375dc387)
- Add gradient animation on enterprise edition (966b8fb3a)
- ui: Multiple improvements of no code editor (#7028)
- core: Remove deprecated properties and reduce duplication (afabdf883)
- ui: Added Dashboards icons (0661899e4)
- ui: Don't show deprecated tasks in the plugins list (ab796dff9)
- webserver: If no date provided for dashboard, then use default timewindow (efa2d44e7)
- ui: Multiple improvements of no code editor (#7076)
- ui: Improve the task array component (#7095)
- ui: Allow task re-ordering from no code editor (#7120)
- ui: Add finally block to no code editor (#7123)
- ui: Multiple improvements of no code editor (#7146)
🩹 Fixes
- core: Possible NPE when the Executor didn't have the flow (0f2c5bb57)
- core: Possible NPE when the Executor didn't have the flow (2e9a0d132)
- docs: Keep use in docs sidebar when clicking in TOC page (#6262)
- test: Add metadata assertion to storage listing (6dbdfad9c)
- ui: Improve debug outputs expression on initial load (#6094)
- ui: Generalize filter width across browsers (#5980)
- jdbc: Possible race when initializing the JdbcMapper (91dd6170f)
- core: Correctly parse Content-Disposition in the Download task (973ba0342)
- core, webserver: Properly close the queue on Flux.onFinally (348547268)
- ui: Properly filter flows in namespace tab (#6046)
- ui: Handle logs selector overflow in a good manner (#6224)
- Rollback router update (f02cf1f51)
- core: Fix Pause property annotation, exclude Input subtypes from definitions (#6265)
- core: Copy the list to avoid concurrent modification exception in count (9cb1e5d46)
- ui: Only apply editor padding on main editor (#6310)
- ui: Filter out system labels from executing using prefill (#6311)
- webserver: Automatically handle trailing slash in delete endpoint for namespace files (#6266)
- docs: Table formatting (13fe55dc9)
- ui: Show status label in dialog for changing execution status (#6323)
- ui: Properly handle pebble expression if it contains dash character (#6062)
- core: Fix potential NPE in AbstractServiceLivenessCoordinator (85a22bcfa)
- jdbc: Topology was built across all tenants (21bf09df1)
- ui: Axios missing content type (525fcf6b7)
- core: Catch errors on task run (8a26e3745)
- ui: Make sure that property exists (948347ace)
- core: Fix cannot create Metric from null in Worker class (6c6f072c2)
- ui: Properly handle filename with multiple dots in editor sidebar (#6362)
- ui: Prevent undefined on triggers that don't have sources anymore (34c4ece23)
- tests: Select file for metadata checks in list() test (db41d81f6)
- jdbc: Don't delete from the queues table (fe6d6c85b)
- core: Ensure child-first strategy for plugin class loading (#4621)
- Add typescript tsconfig (#6316)
- ui: Pass flow revision on execution overview (#6380)
- core: Exclude reactivestreams from classloading isolation (#4621)
- core: Exclude common libs from classloading isolation (#4621)
- ui: Add Nuxt alias + bump some deps in package-lock.json (d98488526)
- Deprecated condition (200cedaca)
- ui: Flow create was no longer generating graph (99227a644)
- ui: Total is not needed in FlowCreate.vue (495f2cd39)
- ui: Avoid unsaved changes pop-up upon clicking on plugin property type definition anchors (88bb0748d)
- Required Boolean & Multiselect rules (#6445)
- Avoid redirect loops when axios calls an unauthorized API (#6450)
- tests: Load only required flows for runner tests (#6447)
- core-ee: Change Objects.equals for tenant id to prevent NPE (#6411)
- tests: Remove merge namespace mistake (870a3217e)
- core: Exclude def.failsafe from classloading isolation (#4621)
- core: Wait for running executor for liveness executor (89ccdfc77)
- webserver: TriggerController endpoint issues (9238b5600)
- jdbc: Missing SKIPPED state in DB migrations (#6487)
- core: Handle input & output with id of 1 chars (73026d064)
- jdbc-postgres: Escape special chars on full text search (506460635)
- core: Properly check next scheduled date for backfill execution (#6413)
- ui: Put 0.0.0 version in package.json as we don't update it and rely on gradle.properties version instead (a1f1987d7)
- core: Save flowable's output when flowable is child of another flowable (#6500)
- webserver: Correct the triger find endpoint URL (556fabc3a)
- jdbc: Read the disabled flag from the DB (01e6d529f)
- Add missing mutation when loading plugin doc form cache (#6502)
- core: Remove race condition on trigger runner test (#6516)
- run: Add LD_PRELOAD to handle duckdb/rocksdb libc conflict (0ab4b6d10)
- Subflow docs (7a8d2aeb9)
- webserver: Rework tests in order to load only required flows (#6517)
- ui: If no trigger state filter is selected, show them all (#6522)
- core: Existing ns based on KV and not only flows (f550fde76)
- runner-kafka: Interface contract of template test changed (#6536)
- ui: Only silence the necessary sass warnings (edb7f5443)
- ui: Improve namespaces filtering (#6564)
- core: Enable runIf property on flowable tasks (462c50562)
- core: Better method when looking for 'value' prop in a JsonNode for auditLog patch application (#6569)
- ui: Add check for property existence (5da044c80)
- Update package json again to fix storybook tests (7b4b90581)
- core: Killing paused without subtask should transition to KILLED (a9ff469f7)
- core: Configuration of log on the http client (5fee07e76)
- core: Handle http auth (a33f85bf1)
- core: Fix download http tasks (153d4ced9)
- core: Restore deprecated on the ui for http task (73b68294c)
- core: Make http client creation explicit (4a5f46132)
- deps: Include httpcore5 in platform deps (88709a2db)
- cicd: Don't build docker image & maven if failed test (9ebf2ac75)
- jdbc: Avoid duplicating the source when deleting the flow (44f363911)
- storage-local: Path traversal guard should include File.separator (b7f9a3201)
- core: ExitTest is flaky (409d78615)
- Fixes on select boxes (68646b07a)
- Alert colors and place of figma theme (5bec2fc06)
- Select multiple choices icon color an shape (50a9f6132)
- Element alert background (e1987ed2e)
- core: Path traversal guard (f12a0a054)
- core: Multiple conditon tests are flaky (eaa72dde4)
- More fixes on css variables (e1c202a3c)
- Finish the overload of buttons (0cdc6f062)
- Add proper typing for vuex (73c100ce1)
- core: Http proxy was not used (d67d44b93)
- Set the flowEditor docId on new (869c6877b)
- core: Correctly displayed errors icons (#6654)
- core: Worker log are displaying the wrong state on terminated tasks (f2a3ad557)
- webserver: Reset correctly nextExecutionDate when enabling schedule (35ffe7e63)
- Fix no execution layout (155f9b9d7)
- ui: Update CSS variable for log icon color in LogLine component (e09e21633)
- Logline when there is a {{ (86cb11fb8)
- core: Continue WaitFor loop if tasks are not failed (#6572)
- core: Handle runIf inside workingDirectory (#6690)
- core: Plugin default was not validating correctly boolean methods (841f32a9f)
- core: NPE in ExecutableUtils (#6699)
- *: Create real chart preview endpoint (3c19c910a)
- jdbc: Resubmitting a worker job running should create a new attempt (b9a74b875)
- core: If with only disabled tasks (1c705e2d7)
- ui: Fix reset of flow import input (159927d39)
- Improve storybook styles (6691575fa)
- Async docs were failing beause of issue in ui-libs MDC (e4698b0f1)
- Storybook - only i18nize once in preview (55b672033)
- jdbc: Batch query expand query and lead to overflow of metrics (c73305921)
- core, ui: Send a "start" event to be sure the UI receive the SSE (0c0ff37c6)
- core: Always close the queue after receive (f217d3376)
- core: Graph on dag are not attaching finally at the end of the dag task (e98543822)
- ui: Missing icons for finally (52aba32c1)
- Allow custom translations to be passed (#6752)
- jdbc: Ensure JdbcIndexer is only closed once (94545fe2f)
- core: Remove 64 characters limitation for displayName (#6470)
- jdbc: Update test config for flaky test on liveness (#6656)
- core: Parallel task should not resolved error and finally in parallel (f1c147cc4)
- core: Flow should not continue tasks when having a finally (9f12f9a63)
- Add ellipsis for Namespace charts (#6730)
- Topology css issues (4c6f8bd90)
- core: Property with default (b2c411956)
- webserver: Add check in file creation path for _flows* (#6228)
- ui: Flows overview are not scoped to current flow (554ea5850)
- jdbc: Summary count should be a prefix on the namespace (9a19c0108)
- Update custom upload button (f5dc67f0e)
- El-empty needed a backdrop (979c131b9)
- core: ForEach failed with errors, finally and concurrency = 0 (246602f9f)
- Reduce log borders on gantt chart logs (960a1bba4)
- ui: Properly encode text filter parameter to url string (#6803)
- ui: Amend the ability to create tasks (#6808)
- ui: Improve the editing of labels and variables (#6810)
- core: Fix some labels are lost when having same prefix key (207e8c3a7)
- Color of active item in sidebar (05e5af73a)
- Correct the description for DayWeek condition (#6834)
- core: Deprecated allowFailed should not have any default (02831295b)
- sidebar: Implement the _hover class in addition to hover pseudo class (7e926fc8e)
- core: Avoid double STRING schema type for types that resolves to a String (1a130daa2)
- Correct the condition name (#6843)
- core: RandomInt receive a Long not an Integer (01a77aff0)
- Update the vite config to use the rollup dependencies properly (#6853)
- Count: Fix Count task (db496a8fa)
- Logs page redirect (40c43256a)
- core: FromIon is reading only the first rows by default, adding a parameter to read all rows (1926ad5e0)
- ui: Amend namespace editor problem (#6883)
- Add title to TemplatedTask (#6891)
- ui: Properly handle file explorer visibility in namespace files section (#6895)
- ui: Fix multiple issues on blueprints (2e18c295e)
- ui: Fix blueprints use button (8e5ffe835)
- ui: Amend flow concurrency overview (0a047a7b7)
- webserver: Continue to warn, but do not return trigger with missing flow (#6905)
- ui: Prevent responsive on monaco editor for diff (c99476276)
- ui: Fix use button for dashboard blueprint (699e232dd)
- ui: Add missing use button into blueprin details (9781ff156)
- ui: Make disabled select less visible (fc84ee3e5)
- ui: Proper log display without multiple line (a97448f19)
- ui: Add confirmation message for crud on custom dashboard (c795f3756)
- ui: Rollouver on side menu was blinking (ae2d55570)
- ui: Left menu is blinking on blueprint page (6bc66d66e)
- ui: Remove some warnings about missing props for blueprints (fccaef462)
- ui: More explicit else-if branches for switch view (ae408209f)
- ui: Cleanup imports and get rid of some warnings (09ef11507)
- core: Flow equalsWithoutRevision don't use serialization to compare flows so that map orders don't matter (275951011)
- ui: Save content to proper file using the namespace file editor (#6931)
- script: Update release-plugins (3073d9e92)
- ui: Invalid hover on left menu for white theme (17e0340ab)
- Update ui-libs for docs (2e23269a9)
- See all is-text button color closes #6898 (#6898)
- Return task docs (fedb388e5)
- ui: Namepsace > blueprint display 404 page (4f96f8124)
- core: Fix unit test on DocumentationGeneratorTest (f8ff2e020)
- webserver: Ensure queues are not closed in nioEventLoop (c52fdd064)
- ui: Let filter dropdown fit width of the content (adb8d9a9d)
- core, jdbc: Count task (2359c4f74)
- ui: Missing translations (a1a1fbc31)
- ui: Remove dot from template (e0e7bd132)
- Dashboards in plural (#6971)
- core: ThresholdFilter is now stricly lower (bd82f5e3b)
- Use new color scheme for execution stats on flows list (1c08176c9)
- ui: Taskrun filters and new charts (f1c5555f6)
- ui: Don't display max displayable since not relevant (bcaa613f7)
- ui: Better layout filters comparator (125a277aa)
- ui: Use color for log on custom charts (5268c793e)
- core: Generate properly taskrunners and log exporters implementations in json schema after adding generic types (94e42a9dc)
- core: Add log exporters to plugins (16be38aaf)
- ui: Add log exporters to plugins (0438fbff6)
- ui: Better filtering for yamlUtils.extractFieldFromMaps (cf316eb83)
- ui: Missing image (325c68094)
- ui: Rename cluster to instance (41e4abba7)
- ui: Avoid monaco to show every words used as autocompletion when there is no suggestion (fd4a51259)
- core: Reset the MDC when we clean the run context (c9095bd87)
- core: Use DCL when creating the logger (3640b0863)
- core: Use the MDC from the loggin context (151d4d9da)
- ui: Fix blueprints (9d974ad84)
- ui: Handle light theme properly in plugin doc (dc13e9117)
- ui: Better css with in editor doc for dashboard (49d64b7f8)
- ui: Better handling of plugin type to display in doc from editor (7ec9f6c81)
- ui: Remove console.log() (035f6b3b6)
- core: Dashboard end date should apply to the execution start date (82150e606)
- Ee empty pages background and add flare (34247a971)
- Debouncing of input validation (3a01a44b2)
- ui: Easier gantt painting handling (e4016ebb7)
- Set docId for namespace demo (48427f185)
- core: Add de app block to plugin controller (kestra-io/kestra-ee#2773) (#2773)
- Align the flare regardless of language (80d1f2d6c)
- core: Catch linkageError when a class in already in classpath (#7029)
- cli: Doc generation failure handling to avoid infinite wait (1a23df3a7)
- Various fixes for the empty pages (a10f65c1d)
- Wrong title for apps page (061e4f5ec)
- core: Properties as map is now working properly with expression within base maps (b846f11b3)
- script: InjectDefault need the runContext (c5e7b4281)
- script: TargetOS must be rendered (3e8d32cfc)
- Realign vue tour ui element for onboarding closes #7010 (#7010)
- ui: Better inputs validation for backfill (95ea6536c)
- Label colors in executions list (6dfa08af8)
- cli: Flow watcher should compute plugin defaults (2d98f909d)
- ui: Dynamic format date (acdb46cea)
- core: RestartForEachItem() is flaky (d12fbf05b)
- ui: Amend no code editor breadcrumbs issue (#7054)
- script: AbstractExecScript.injectDefaults should throw IllegalVariableEvaluationException (c08f4f24c)
- cli: Repeate flaky tests FileChangedEventListenerTest (c792d9b6e)
- docs: Remove custom dashboard website component (5f7468a9a)
- core: Subflow validation didn't work anymore (ceda5eb8e)
- core: Subflow labels must not be overriden by parent flow ones (d12dd179c)
- core: Retry flaky test TimeoutTest.timeout() (95d2d1dfa)
- ui: Fix missing param kind for blueprint in flow editor (#7087)
- ci: Update scripts/workflows for plugins (2b72306b3)
- ui: Restore namespace filter manual typing & various improvements (#7127)
- core: Remove the dynamic property patterns (1ed882e8f)
- ui: Switching from custom Flow blueprints tab to dashboard was not working (3f2d91014)
- ui: Custom Dashboard name overflows. (#7124)
- ui: Get the string fields in no code to use editor and have auto completion back (#7150)
- Setup docId for blueprints (39a2293a4)
- Sidemenu bring back the gray hover (33ecf8d5f)
- Bring back hover in main menu (cf4b91f44)
- Enterprise edition tag in light mode (cb3195900)
- core: Process runner are not serialized correctly on worker (4392c89ec)
- ui: Null-safe search filters (a6ce86d70)
💅 Refactors
- ui: Enforce block order in ESLint configuration (#6299)
- Replace getCurrentInstance router access with useRouter (#6210)
- core: Optimize keepLastVersionCollector method (ff0b7c4a0)
- test: Create an ExecutionUtils to load flow (bfea840fa)
- test: Use application context from the current test suite on FlowLoad (706764415)
- ui: Move stories to tests/storybook (#6515)
- Migrate AbstractExecScript, CommandsWrapper, NamespaceFiles, OutputFilesInterface to dynamic properties (c6a09cd9d)
- Major css variable overhaul (#6497)
- Removed unused css in sidebar (20276a9e7)
- Remove spacer form sidebar (035a27c91)
- Remove bootstrap color from sidebar (9b59c75d2)
- core: Add new interface HasSource (d96742d7d)
- webserver: Move method to read source file/archive to HasSource interface (17120cff8)
- Add async loading for better performance (#6643)
- Migrate package plugin.core.http to dynamic properties (a934414db)
- Add [at]deprecated javadoc message : sonar (589638cc3)
- Migrate package plugin.core.kv to dynamic properties (d052a87c0)
- Address sonar issues (f2e4a3531)
- Migrate plugin.core.output to dynamic properties (4de65e7a3)
- Migrate package plugin.core.debug to dynamic properties (#6697)
- Migrate package plugin.core.state to dynamic properties (#6755)
- Migrate package plugin.core.storage to dynamic properties (#6770)
- Migrate package plugin.core.templating to dynamic properties (#6775)
- Avoid usage of runtime template to smaller bundle (#6779)
- Migrate package plugin.core.execution to dynamic properties (#6708)
- Migrate plugin.core.log to dynamic properties (#6823)
- Migrate plugin.core.namespace to dynamic properties (#6832)
- Migrate plugin.core.log to dynamic properties (#6732)
📖 Documentation
- Context docs appId basic setup (#6341)
- Make windows instructions more specific (7cdc04029)
- Conditional inputs and outputs (2594f2816)
- Add more keyboard shortcuts (0f23d3382)
- Add nested loop example (#6948)
- custom-dashboard: Update example to use metrics and logs (#7007)
📦 Build
- Setup storybook for development in isolation (#6499)
- ci: Allow docker-build when skipping tests (729972fd1)
- Use husky instead of ghooks (dba5c39de)
- Attempt to fix storybook tests swc issue (0cc5fb964)
- Fix storybook tests (5f7695e3e)
- Add new project properties for release (d79e40dd9)
- Add script and github workflow to tag all plugins (64dcc9649)
- Try and fix FE CI (f3852a3c2)
- Prevent corepack crash (f609d57a0)
🏡 Chores
- version: Update to version 'v0.20.0'. (279be8344)
- version: Update snapshot version 'v0.21.0-SNAPSHOT'. (fba4a7929)
- version: Update to version 'v0.20.0'. (aa1ba5998)
- ui: Properly highlight selected options in all of the filter dropdowns (#6173)
- ui: Add top and left padding to editor component (#6191)
- ui: Add a confirmation dialog before removing a bookmark (#6217)
- translations: Auto generate values for languages other than english (02898d29a)
- ui: Remove search field background on single plugin page (#6220)
- ui: Amend spacing on plugins page (#6223)
- core: Avoid using applicationContext.init() in the RunContext (fb9691d67)
- core: Remove deprecated RunContext.render(Property) methods (e16505269)
- ci: Add workflow to release all plugins (5330aa0e8)
- ui: Improvement in Welcome Page. (#6077)
- translations: Auto generate values for languages other than english (7171c5697)
- ui: Amend tags design on blueprints section (#6229)
- ui: Automatically add namespace filter where needed (#6296)
- ui: Make confirmation dialogs properly render markdown content (#5986)
- ui: Initial work on debug expression sidebar resizing on outputs page (#5878)
- ui: Initial work on output icons issue (#5746)
- Upgrade vue-router to 4.5.0 (#6298)
- ui: Remove default editor outline (#6303)
- ui: Uniform the height of cards on main dashboard (#6213)
- ui: Clean up of welcome page usage of markdown files (#6315)
- translations: Auto generate values for languages other than english (b63c2361c)
- ui: Uniform log line buttons styling (#6254)
- core: Remove Flow source auto-generation (985a10610)
- translations: Align keys with english (#6324)
- ui: Add tooltips for filter section buttons (#5942)
- ui: Improve bulk actions design in the executions listing (#6240)
- ui: Add scrolling to totals chart legend if more than 4 items present (#5971)
- ui: Respect date format form setting inside filter label (#6335)
- ui: Prevent text wrap inside trigger id column (#6336)
- ui: Vertically center content in flows table rows (#6330)
- ui: Improve the styling of boolean buttons on inputs form (#6055)
- ui: Initial work on improving display of topology (#5606)
- jdbc: Remove not used method (6a953d194)
- ui: Remove unused files (#6348)
- ui: Improve text label in filter bar (#6350)
- ci: Remove generation of latest-full tag (6bb521f4e)
- core: Add unit test for if nested in parallel (c6a7c1270)
- ui: Amend font size in tables (#6363)
- ui: Prevent opening flow trigger details on row double click (#6354)
- *: Bump node version used in project (#6327)
- docs: Switch link to good first issues in readme file (a78566fc5)
- core: Avoid serialzing the value multiple time (3cd0c7fbe)
- ui: Respect system theme for editor (#6376)
- ui: Amend description color of system namespace (#6382)
- ui: Temporarily disable filters bar highlighting (e9be78947)
- translations: Auto generate values for languages other than english (3ddfe5e8d)
- ui: Amended the css for filter bar width (e9033462c)
- translations: Auto generate values for languages other than english (c867db8ae)
- translations: Auto generate values for languages other than english (41e64cc04)
- ui: Removing recent filter functionality (#6420)
- translations: Auto generate values for languages other than english (019097465)
- ui: Improve filters expanding (#6415)
- ui: Prevent applying same filter multiple times (#6219)
- Update ESlint to v9 (next major) (#6389)
- deps-dev: Bump typescript-eslint from 8.17.0 to 8.18.0 in /ui (#6432)
- ui: Align with new version of linter (2358bf43f)
- core: Refactor SecretService (1267e9b02)
- ui: Amend filter selection (25818878e)
- translations: Add missing keys (3f104ae9b)
- translations: Auto generate values for languages other than english (909015467)
- ui: Improve design of the flow overview page with no executions (#6446)
- translations: Auto generate values for languages other than english (aae4e6b93)
- Exclude liveness/readiness health checks from access logs (#6453)
- ui: Use global scope for translations throughout the product (#6466)
- ui: Add clearable property to select fields on inputs form (#6477)
- Avoid global constants (use window instead) (#6478)
- ui: Rework the file structure in filters section (#6452)
- translations: Auto generate values for languages other than english (3fb12a66d)
- translations: Handle filters key translation (#6479)
- ui: Improve passing of props to filter component (#6483)
- translations: Auto generate values for languages other than english (c57984709)
- ui: Improve the styling of error component on executions overview (#6465)
- ui: Autmatically open date picker if absolute date is selected as type (#6484)
- ui: Amend scope lables on dasboard filters (#6485)
- ui: Re-work same filter applying multiple times (6f3aff146)
- ui: Make tab arrows hidden when there is no need for them (#6486)
- ui: Complete the audit log filtering options (#6496)
- translations: Auto generate values for languages other than english (aa8588c3b)
- ui: Improved filter usage throughout the product (#6513)
- translations: Auto generate values for languages other than english (cdc30080f)
- ui: Implement new filtering system where it was missing (#6531)
- translations: Auto generate values for languages other than english (5b6b501bc)
- ui: Expand doughnut chart if there is no legend shown (804c3b2d5)
- ui: Make the entire row clickable on the gantt page (#6539)
- ui: Improve behavior on changing theme or language (#6520)
- ui: Lint code properly for ci to pass (4a94b2237)
- ui: Rename flow editor tab to edit (#6552)
- ui: Limit accepted file types for flow import (#6550)
- ui: Improvement to blueprints inside flow editor tab (#6548)
- ui: Executions in progress link is taking proper filters into account (#6556)
- ui: Show artwork on flow triggers page instead of locking it (#6555)
- translations: Auto generate values for languages other than english (f0a15cdae)
- ui: Handle creation of nested folders properly (#6554)
- ui: Prevent adding filter parameters if decode prop is passed as false (#6563)
- ui: Replace language right after saving changes (#6566)
- ui: Prevent display of file helpers if there is no file (#6568)
- ui: Tweak font size for tag component (8357e0e23)
- ui: Introduce new filter bar on namespace kv page (#6570)
- ui: Prevent ability to add multiple filters on second try (#6573)
- ui: Always show flow revision column on executions listing (807a44d18)
- ui: Introduce horizontal scroll to cascader items (96d8239b5)
- ui: Add limit to environment name length (#6597)
- ui: Add a horizontal scroll bar to editor file tree (#6598)
- translations: Auto generate values for languages other than english (27f1430ff)
- ui: Add header title for column on triggers page (#6608)
- tasks: Improve unit test of http tasks (9e643dcc4)
- core: Tiny perf improvement in MapUtils.merge() (92ff55751)
- build: Increase Gradle memory limits (2307b2452)
- translations: Auto generate values for languages other than english (4dbf938de)
- core: Move builder default on TableColumnDescriptor (4fa6adc9c)
- test: Minor pebble error (47d2b0938)
- translations: Auto generate values for languages other than english (a1238a947)
- translations: Auto generate values for languages other than english (4e543a29c)
- ui: Add utility method extratFileNameFromContentDisposition (16a7e06c5)
- Remove an unwanted comment (2a56ba88c)
- docs: Split pause title and description (#6733)
- core: Reduce log level of property validation (708c1127c)
- ui: Amend passing of disabled property to no code editor (33c5cb507)
- translations: Amend translation key/value pairs (#6788)
- translations: Auto generate values for languages other than english (3c6aa6980)
- ui: Amend width of execute flow inputs section (#6720)
- ui: Mark taskruns with multiple attemps in gantt view (#6721)
- ui: Amend dialog close button styling (fdbe16387)
- ui: Add empty view on flow concurrency page (#6640)
- translations: Auto generate values for languages other than english (46c3e3ff7)
- translations: Auto generate values for languages other than english (3435e345e)
- ui: Mark places where we need to replace old charts with the new ones (#6623)
- ui: Change filter value by clicking on already selected one (#6705)
- test: Add required attributes for e2e test (#6797)
- translations: Auto generate values for languages other than english (e037e548b)
- ui: Show status label on dialog (96780a976)
- ui: Amend flow export method (#6835)
- translations: Auto generate values for languages other than english (a01170572)
- ui: Handle task dict type fields (#6884)
- ui: Make sure input pair component updates only what's needed (#6892)
- translations: Auto generate values for languages other than english (c6d69762c)
- cli: Invalid description on worker thread (61e0668ad)
- ui: Start product tour by clicking on first car on welcome page (#6934)
- ui: Start product tour by clicking on first card on welcome page (#6935)
- build: Fix .plugins file (01e565f3c)
- build: Fix release-plugins script (83e99edcf)
- script: Update release-plugins to support pushReleaseVersionBranch (4d7d8e008)
- ui: Improvements of welcome page (#6938)
- translations: Auto generate values for languages other than english (cb7ee6a0b)
- cli: Improve CLI help messages (#6920)
- ui: Refactor the namespace flows (a69f8b94f)
- translations: Auto generate values for languages other than english (4aa0a57e0)
- translations: Auto generate values for languages other than english (2bca260a3)
- ui: Amend plus button action on flow editor topology (#6983)
- translations: Auto generate values for languages other than english (32da58eee)
- translations: Auto generate values for languages other than english (9c56ffa91)
- Remove plugin-langchain (dd8a45f42)
- version: Update to version 'v0.21.0-rc0-SNAPSHOT'. (f4fdfc250)
- ui: Move apps link in left menu just below the flows (#7063)
- ui: Properly check the existence of fields inside schema (aa24c888a)
- translations: Auto generate values for languages other than english (804ff6a81)
- version: Update to version 'v0.21.0-rc1-SNAPSHOT' (86aec88de)
- ui: Properly pass a prop related to saved searches (6afe5ff41)
- Version 0.21.0-rc2-SNAPSHOT (d74a31ba7)
- Version 0.21.0 (aca5a9ff4)
✅ Tests
- runner tests: Add logs to track race condition (#6455)
- Add a story & tests for filter labels (#6526)
- core: Add coverage on http logger (62badb1e5)
- core: Request test use an internal https server to be stable (bccd95345)
- core: Add configurable timeout on ExecuteFlow (317284dfe)
🎨 Styles
- ui: Update SideBar link styles to match design (6a5ec8dcf)
🤖 CI
- Update workflow docker (a246ac38f)
- Update workflow docker (c33d08afd)
- Fix workflow docker (4e4ab80b2)
- Fix workflow docker for all plugins (f0d5d4b93)
- Fix runner on release workflows (6919848ab)
- Fix release workflows (41149a83b)
📖 Commits
- 987f491: keep active state on hover (Bart Ledoux)
- 828d9a7: add taskrun.iteration (#6723) (AJ Emerich) #6723
- 0c0ff37: fix(core, ui): send a "start" event to be sure the UI receive the SSE (Loïc Mathieu) #6731
- fbfab90: fix(#6745) vue flow needs a height on the container 🥸 (Bart Ledoux)
- 717d556: feat(webserver, ui): avoid cancelled SSE connection from following exec (Loïc Mathieu) #6738
- 51088c8: fix logline css variables (Bart Ledoux)
- 7f048af: add full logline stories (Bart Ledoux)
- Define the langchain4j ollama, openai & gemini plugins in the .plugin file list (#6813) #6813 (aeSouid)
- aa869eb: closes #6814 (Anna Geller)
- 4e3ed33: feat(ui, webserver): rename "Change status" to "Change state" and enhance the infos (Loïc Mathieu) #6799
- 7cf4955: feat(core, jdbc): change the state of a subflow restart parent execution (Loïc Mathieu) #6799
- 2359c4f: fix(core, jdbc): Count task (Loïc Mathieu) #6952
- db84595: (docs): add custom dashboard in app documentation (AJ Emerich) #6988
- b8bc50f: fix flare effect (Bart Ledoux)
⚠️ Breaking Changes
Git Plugin: Default Branch Name Changed
The default branch within Git tasks has been renamed from kestra
to main
(PR #98). Make sure to update any workflows that implicitly rely on the former default branch.
Secrets: Exception Thrown on Missing Secret
Fetching a non-existing secret using the secret()
function now throws an exception instead of returning null
, aligning the open-source behavior with the behavior in the Enterprise Edition (PR #6495).
Change State: Restart Downstream Task Runs
Manually changing a task run's status from Failed
to a non-failed state (e.g. Success
) via the Change state interface now restarts all downstream task runs, including subflows (PR #6799).
Restarting Parent Flow with Failed Subflow
When restarting an execution, Subflow
or ForEachItem
tasks now restart the existing failed subflow execution rather than creating a new one. This behavior is configurable via the new restartBehavior
enum property; setting it to NEW_EXECUTION
retains the previous behavior (PR #6799; Issue #6722). A system.restarted: true
label is added during restart for tracking, and the underlying subflow execution storage table is retained to avoid migration issues (scheduled for removal in v0.22).
Script Tasks: STDERR Logged at ERROR Level
Script tasks now log output sent to stderr
at the ERROR level instead of WARNING (PR #6383; Issue #190).
Flows Created Before v0.9: Redeployment Required
Flows created before v0.9 and not updated since require editing or redeployment due to changes in source auto-generation (PR #6264).
❤️ Contributors
- Loïc Mathieu (@loicmathieu)
- Ludovic DEHON (@tchiotludo)
- Bart Ledoux [email protected]
- Miloš Paunović (@MilosPaunovic)
- Piyush Bhaskar (@Piyush-r-bhaskar)
- Florian Hussonnois (@fhussonnois)
- Brian-mulier-p (@brian-mulier-p)
- GitHub Action (@Github-Action-Bot)
- AJ Emerich (@aj-emerich)
- YannC (@Skraye)
- Nicolas K. [email protected]
- Rajat Singh [email protected]
- Barthélémy Ledoux [email protected]
- Rajatsingh23 (@rajatsingh23)
- Anna Geller [email protected]
- Yuri [email protected]
- Mathieu Gabelle (@mgabelle)
- Shruti Mantri [email protected]
- Aabhas Sao (@aabhas-sao)
- CoderKill (@coderkill)
- Saumya Gaur (@SaumyaG1318)
- Hashim Khalifa (@hashimzs)
- Malay Dewangan (@Malaydewangan09)
- NKwiatkowski [email protected]
- Rajarajan [email protected]
- Ruturaj Dhakane (@rd-99)
- Sayed Qassim (@SayedQassim)
- Maheshwara Sampath (@sampath24-ss)
- Shreeup [email protected]
- Arpit Gupta (@arpitgupta-ITT)
- Yoann Vernageau (@yvrng)
- Marco Sabatini (@MarcoSaba)
- Kratos (@kratosmy)
- Michascant (@MichaScant)
- Tejas Patil (@tejas2292)
- Shivam (@shivam221098)
- ANKIT KUMAR [email protected]
- Sanketmagar2001 (@sanketmagar2001)
- Nitin Kumar Pal (@nitinkumarpals)
- Yerin Lee (@DVUN716)
- Manoj Balaraj (@ManojTauro)
- Will Russell [email protected]
- Abhishek Pawar (@abhishekpawar1060)
- Rohit Ghumare (@rohitg00)
- OsmaneTKT (@osmaneTKT)
- Bardan Putra Prananto [email protected]
- Pphy03 (@pphy03)
- Ian Cheng (@chengtc-dev)
- Nitin Bisht (@nitsbat)
- Joe Celaster (@JoeCelaster)
- Morri12 (@morri12)
- Ines Qian (@inesqyx)