What's Changed
β¨ New Features
- feat: adding provider icon to agent by @edwinjosechittilappilly in #6741
- feat: add search agent template by @VinciGit00 in #6730
- feat: implement S3 bucket uploader component and unit test by @pedrocassalpacheco in #6146
- feat: add map and extract endpoints with v1 updates for scrape and crawl by @aparupganguly in #6787
- feat: Add more icons and QOL improvements to Astra DB component by @erichare in #6918
- feat: add GPT4.5 to OpenAI model constants by @edwinjosechittilappilly in #6886
- feat: Add JSON field extraction and enhanced URL validation by @Cristhianzl in #6051
- feat: Enhance Webhook component by @Cristhianzl in #6313
- feat: improving tool mode metadata updates and tables refresh by @edwinjosechittilappilly in #6935
- feat: Add feature flag customization and astra tracking by @mfortman11 in #6963
- feat: deprecate freeze and rename freeze path button by @lucaseduoli in #6821
- feat: Add possibility to save flow to FS by @cbornet in #6841
- feat: display the color itself instead of gray if there's only one color in the handle by @ogabrielluiz in #6980
- feat: Change Anthropic SVG icon by @Cristhianzl in #6968
- feat: add tool filter by @edwinjosechittilappilly in #6951
- Feat: add a support for OpenSearch and AstraDB components to yield the langchain vector_store connection object by @pedrocassalpacheco in #6998
- feat: Add updateHiddenOutputs helper function to manage output visibility by @Cristhianzl in #6932
- feat: Sync flows from FS to DB if flow has fs_path by @cbornet in #7043
- feat: add a unified language model component. by @rodrigosnader in #6994
- feat: add regex pattern extractor component by @raphaelchristi in #6015
- feat: add pokedex agent template by @mendonk in #6885
- feat: apify starter template by @MQ37 in #6784
- feat: Needle Search Tool With Template by @JANHMS in #6648
- feat: New parser component with multiple input types and stringify add on by @edwinjosechittilappilly in #6652
- feat: Dynamic outputs for file component by @erichare in #7005
- feat: Update AgentQL integration with new features by @colriot in #7089
- feat: add agent component to skip update in template loading. by @edwinjosechittilappilly in #7077
- feat: add detailed view for prompt component by @lucaseduoli in #7036
- feat: Quality of Life improvements for Astra Component by @deon-sanchez in #6953
- feat: create "Diet Analysis" tempalate by @ethanyu99 in #6660
- feat: Publish Flow, API code update and UI components by @anovazzi1 in #6140
- feat: add new Tab input by @lucaseduoli in #7032
- feat: adds new JSON viewer by @anovazzi1 in #5407
- feat: financial agent template by @jhpiedrahitao in #6246
- feat: change params for models by @rodrigosnader in #6992
- feat: Add dataframe output to data list components by @rodrigosnader in #6987
- feat: add dataframe support for vector stores by @rodrigosnader in #6990
- feat: gmail component by @abhishekpatil4 in #6915
- feat: adds file management feature under feature flag, adds file dialog, adds files page by @lucaseduoli in #6134
- feat: NVIDIA Model Component - QoL and detailed thinking toggle for reasoning models by @jordanrfrazier in #7070
- Feat: introducing Graph RAG component by @pedrocassalpacheco in #7056
- feat: Add LambdaFilter for enhanced data filtering by @rodrigosnader in #7095
- feat: add legacy tag deprecated components by @edwinjosechittilappilly in #7142
- feat: voice mode by @phact in #4642
- feat: add text sentiment analysis template by @Victor-w-Madeira in #6945
- feat: enhance APIRequestComponent with new output methods by @rodrigosnader in #7148
- feat: Add cURL command unescaping for API request parsing by @rodrigosnader in #7026
- feat: Add truncation notification for large outputs by @Cristhianzl in #7212
- feat: add new Opik Tracer by @Lothiraldan in #6928
- feat: Enhance AstraDB tool component with vector search and metadata filter by @smatiolids in #6887
- feat: enhance URL component with recursive crawling by @rodrigosnader in #7006
- feat: add watsonx component by @galatro in #7080
- feat: remove graph rag template by @Cristhianzl in #7289
- feat: Add watsonx embedding component by @thiau in #7292
- feat: Composio Component Upgrade by @deon-sanchez in #6905
- feat: voice mode tts endpoint by @phact in #7294
- feat: lmprove MCP langflow port selection and error handling by @edwinjosechittilappilly in #7327
- feat: expose serialization truncation constants in /config route by @italojohnny in #7316
- feat: add a unified local vector store by @rodrigosnader in #6995
- feat: Update AgentQL templates by @desi003 in #7165
- feat: deprecate Parsing component and replace them in starter projects by @edwinjosechittilappilly in #6697
π Bug Fixes
- fix: Fix crashes and enhance test reliability with session IDs by @ogabrielluiz in #6683
- fix: prevent UnboundLocalError in MessageStoreComponent by @YuhangWuAI in #6802
- fix: changed edge position on minimized and not updated node by @lucaseduoli in #6816
- fix: edges moving on just cloned flows by @lucaseduoli in #6819
- fix: changed stop build icon on components by @lucaseduoli in #6817
- fix: adds table dropdown cell editor using options defined in TableInput column by @lucaseduoli in #6825
- fix: update sqlalchemy dependencies in pyproject.toml by @ogabrielluiz in #6854
- fix: Remove unnecessary logger warning in NVIDIA ingest component by @ogabrielluiz in #6843
- fix: Add optional PostgreSQL dependencies for SQLAlchemy in langflow-base by @ogabrielluiz in #6865
- fix: Increase timeouts in Portfolio Website Code Generator test for improved reliability (nightly fix) by @Cristhianzl in #6908
- fix: langfuse trace get the right parent span by @tianzhipeng-git in #6844
- fix: Delete old logo and old dashboard by @deon-sanchez in #6884
- fix: update data validation in Data model by @ogabrielluiz in #6789
- fix: Send request origin in AgentQL request Headers by @wjwjtf in #6833
- fix: auth current user on code validation by @jordanrfrazier in #6911
- fix: set prepared threshold to none for migrations by @jordanrfrazier in #6912
- fix: remove empty space for hidden column by @edwinjosechittilappilly in #6954
- fix: changed badge to toggle on editable boolean fields on table component by @lucaseduoli in #6956
- fix: React Console Warnings and Accessibility Issues in Langflow Frontend by @Cristhianzl in #6950
- fix: improve ref naming causing fallback error on icons + regression test by @Cristhianzl in #6989
- fix: ensure end_all_traces is called at the end of all flow build events by @italojohnny in #6991
- fix: add code button decoration when throwing custom component in screen by @lucaseduoli in #6823
- fix: Add robust auto-login system with exponential backoff to fix authentication redirects in make command environments by @Cristhianzl in #6848
- fix: Update LoopComponent to use
data
instead ofitem
by @ogabrielluiz in #7013 - fix: make header flow title occupy remaining space by @lucaseduoli in #7016
- fix: make chat input handle overflow by @lucaseduoli in #7014
- fix: make edit sticky notes mode occupy whole note by @lucaseduoli in #7012
- fix: bump frontend version to current version and add command to bump frontend version in Makefile by @lucaseduoli in #6948
- fix: allow Components with no Inputs to have tool mode by @ogabrielluiz in #6958
- fix: readded output inspection shortcut by @lucaseduoli in #6812
- fix: Disable retries in usePostValidateComponentCode mutation by @Cristhianzl in #7044
- fix: docker test trigger for poetry is wrong now is uv by @yihong0618 in #6743
- fix: Rename AgentQL components and add prompt parameter by @wjwjtf in #6834
- fix: pass props to SvgAnthropicBox component by @noodleslove in #7057
- fix: check if component is in tool mode as well to display Tool Mode switch by @ogabrielluiz in #7042
- fix: component MCP Tools (SSE): 'Timeout' by @azdolinski in #5638
- fix: refactor tracing service by @tianzhipeng-git in #7015
- fix: In the api_request component, resolve UnboundLocalError 'redirection_history' when the request is abnormal by @zhubaoxiang in #7088
- fix: refactor templates to remove small bugs by @lucaseduoli in #7090
- fix: bump assistants version to fix module not found error by @phact in #7093
- fix: resolve package-lock dependencies error by @Cristhianzl in #7103
- fix: typo, update description for url.py by @simonfraserduncan in #6010
- fix: Enhance JSON filtering with special cases, update CI workflows, and improve frontend components and tests (nightly fix) by @Cristhianzl in #7110
- fix: Performance and Error Handling Improvements in JSON Filtering by @Cristhianzl in #7115
- fix: reposition and disable shareable playground toggle on empty flow by @lucaseduoli in #7111
- fix: adds handling for tags by @lucaseduoli in #7109
- fix: remove redundant modal descriptions by @lucaseduoli in #7121
- fix: Return empty list when not ingesting data by @erichare in #7134
- fix: Add libpq-dev and gcc dependencies to backend Dockerfile by @Cristhianzl in #7136
- fix: change access_type to fit new ENUM by @Cristhianzl in #7145
- fix: Icon not ordering after searching for Dropdown by @deon-sanchez in #7144
- fix: Update Custom Component Maker by @edwinjosechittilappilly in #6851
- fix: Improve test accuracy with component generation steps and robust assertions (nightly fix) by @Cristhianzl in #7156
- fix: Improve token refresh logic and API interceptor handling by @Cristhianzl in #7158
- fix: adjusted templates positions and api keys by @lucaseduoli in #7147
- fix: Glean icon missing by @deon-sanchez in #7164
- fix: Optimize test shard counts, clean up JSON configs, and add frontend test IDs by @Cristhianzl in #7170
- fix: remove redundant description from Prompt modal by @lucaseduoli in #7139
- fix: remove search and adjust color and height of json viewer by @lucaseduoli in #7140
- fix: check if file management is on before getting files by @lucaseduoli in #7163
- fix: logout redirection on auto-login off by @Cristhianzl in #7171
- fix: Add webrtcvad dependency to backend base requirements by @Cristhianzl in #7180
- fix: add scify package to pypoetry by @Cristhianzl in #7182
- fix: rollback package-lock.json file by @Cristhianzl in #7184
- fix: MongoDB Atlas search documents by @gs-costa in #7166
- fix: updated version of lanchain-astradb to 0.5.3 by @pedrocassalpacheco in #7189
- fix: Update min/max zoom value and fit view values by @deon-sanchez in #7113
- fix: add tab to supported types to not show input handles by @lucaseduoli in #7196
- fix: apply field name automatically to Apply to Fields in global variable by @lucaseduoli in #7195
- fix: nvidia model component refresh behavior by @jordanrfrazier in #7203
- fix: Test Stability Enhancements (nightly fix) by @Cristhianzl in #7207
- fix: refetch endpoints on backend startup (improvement for devs) by @Cristhianzl in #7208
- fix: prevent logout when auto-login is true by @Cristhianzl in #7209
- fix: add validation on build request to prevent output glitch by @Cristhianzl in #7210
- fix: added overflow on dataframe output by @lucaseduoli in #7197
- fix: updated icons with same svg id that caused conflicts by @lucaseduoli in #7198
- fix: Improve disabled state handling in CustomInputPopover and InputGlobalComponent by @Cristhianzl in #7213
- fix: add full width on Select files button by @Cristhianzl in #7219
- fix: made truncate gradient appear just in the end of the truncated component by @lucaseduoli in #7215
- fix: Enhance state management with reset methods and logout functionality improvements by @ogabrielluiz in #7234
- fix: Standardize flow name handling with snake_case conversion in MCP API by @phact in #7242
- fix: update handle display logic and improve popover layout in node components by @Cristhianzl in #7244
- fix: add tool_mode to query input on gleanSearchComponent by @Cristhianzl in #7216
- fix: Improve tool metadata and dropdown state management by @Cristhianzl in #7257
- fix: override modality for elevenlabs on response.create by @phact in #7269
- fix: allow float to be typed in float input by @lucaseduoli in #7275
- fix: Implement cleanup grace period for job queue tasks by @ogabrielluiz in #7250
- fix: make json viewer design more consistent with current design by @lucaseduoli in #7276
- fix: made node toolbar not appear when selecting multiple nodes by @lucaseduoli in #7277
- fix: made plus button on file component not occupy full width by @lucaseduoli in #7278
- fix: add "mode" to priorityFields in constants (#7279) by @rodrigosnader in #7290
- fix: use stdout instead richHandler in loguru improve performance #7018 by @jeevic in #7024
- fix: valid file type check by @jordanrfrazier in #7152
- fix: Add debouncing to handleOnNewValue and disable retries for usePostTemplateValue mutation by @Cristhianzl in #7263
- fix: add memo hook to handle filter to prevent excessive renders (icons loading error) by @Cristhianzl in #7317
- fix: Enhance dictionary access tests and refactor apply_json_filter function by @ogabrielluiz in #7335
- fix: make node be maximized when adding more handles by @lucaseduoli in #7320
- fix: adds truncation to tab input by @lucaseduoli in #7323
- fix: adds external link icon to empty prompt by @lucaseduoli in #7324
- fix: make dataframe output format identify and show truncation by @lucaseduoli in #7312
- fix: change file cursor and selection ordering on file modal by @lucaseduoli in #7344
- fix: changed naming from freeze path to freeze by @lucaseduoli in #7343
- fix: removed duplicate controls from node toolbar by @lucaseduoli in #7274
- fix: remove composio Gmail component by @edwinjosechittilappilly in #7319
- fix: make agent work with new tool mode backend updates by @edwinjosechittilappilly in #7314
- fix: adds priority sorting for sidebar components and makes LanguageModel appear first by @lucaseduoli in #7322
- fix: update currentflow to be fetched from Flow Store for icon to be rendered correctly by @lucaseduoli in #7354
- fix: fixed the parser component by @italojohnny in #7303
- fix: MCP SSE Model tool mode issue by @edwinjosechittilappilly in #7360
- fix: Prevent API key banner from displaying when key is unavailable by @ogabrielluiz in #7356
- fix: add secret key loading functionality to basic templates by @Cristhianzl in #7363
π Documentation Updates
- docs: updates for release by @mendonk in #6762
- docs: bump openapi.json to v1.2.0 by @mendonk in #6832
- docs: clean up and test deployment documentation by @mendonk in #6029
- docs: add guidance for hugging face components by @mendonk in #6872
- docs: Add Arize integration documentation to Langflow by @mendonk in #6876
- docs: Improve Apify integration documentation by @mendonk in #6889
- docs: configure environment variables by @mendonk in #6853
- docs: add support page by @mendonk in #6962
- doc: add guide document for writing component tests by @italojohnny in #6288
- docs: concepts-flows page by @mendonk in #6907
- docs: Allow setting baseUrl configuration via ENV variable by @mlr in #7021
- docs: fix syntax errors at build by @mendonk in #7047
- docs: revised README by @crtr0 in #7052
- docs: Pull request draft workflow by @mlr in #7046
- docs: api build and run examples update by @mendonk in #6904
- docs: mcp integration by @mendonk in #6986
- docs: test and update google oauth integration by @mendonk in #6949
- docs: Add workflow to automate updates to docs/openapi.json by @mlr in #7072
- docs: adds link to YouTube channel in README.md by @crtr0 in #7106
- docs: opt-in draft docs builds to stale cleanup by @mlr in #7117
- docs: add prerelease flag to nvidia ingest instructions by @jordanrfrazier in #7114
- Docs: Create styled link to DataStax Langflow in the sidebar by @colegoldsmith in #7143
- docs: integrate nvidia NIM on WSL2 by @mendonk in #7192
- docs: remove dupe reference to wsl install by @jordanrfrazier in #7206
- docs: Add tribute comment to OtΓ‘vio Anovazzi in reactflowUtils.ts by @ogabrielluiz in #7017
- docs: example for HCD vector store by @mendonk in #7214
- docs: deployment overview by @mendonk in #7108
- docs: deprecate freeze and replace with freeze path by @mendonk in #6828
- docs: platform content by @mendonk in #7091
- docs: v1.3 by @mendonk in #7160
- docs: mcp server component and integrations by @mendonk in #7286
- docs: Update documentation and add TAVILY_API_KEY to environment variables by @ogabrielluiz in #7366
π Maintenance Tasks
- refactor: Suppress SQLite foreign key warnings in Alembic migration by @ogabrielluiz in #6809
- build: Bump ruff version to 0.9.7 by @cbornet in #6614
- refactor: Replace async_open by anyio.Path methods in tests by @cbornet in #6847
- refactor: sort json before exporting and add tags to flows by @ogabrielluiz in #6849
- refactor: use
DataFrame.map
instead ofDataFrame.applymap
by @ogabrielluiz in #6810 - build: add postgresql client library libpq5 by @jordanrfrazier in #6964
- refactor: remove async queue from tracing service by @italojohnny in #6999
- refactor: improve maintainability and testability of
Vertex.build_params
by @ogabrielluiz in #5808 - refactor: pull types call out of the main page by @mfortman11 in #7116
- refactor: Add compression to the 2 largest LF calls by @mfortman11 in #7200
- refactor: update logging to use logger.debug for consistency by @ogabrielluiz in #7258
β Tests
- test: Parameterize DeepSeek model component test correctly by @ogabrielluiz in #7019
- test: add pokedex agent and social media agent integration tests by @Cristhianzl in #7087
- test: enhance chat integration tests with additional assertions and validations by @Cristhianzl in #7102
- test: update workflow configuration and Financial Agent JSON structure (nightly fix) by @Cristhianzl in #7112
- test: fix api_request test (nightly fix) by @Cristhianzl in #7229
- test: fix outdated components (nightly fix) by @Cristhianzl in #7230
- test: update api-request tests by @Cristhianzl in #7231
- test: fix apply json filter validation test by @Cristhianzl in #7338
- test: Fix apply_json_filter to handle empty string filters and nested key access edge cases by @Cristhianzl in #7340
Others
- ci: Improve nightly build status check in CI workflow by @ogabrielluiz in #6845
- ci: Add pytest-rerunfailures for improved test reliability by @ogabrielluiz in #6852
- ci: fix Playwright browser caching in TypeScript workflow by @ogabrielluiz in #6840
- chore: raise clearer error when
aget_messages
is missing in memory by @italojohnny in #6795 - chore: make codeflash config ignore-paths relative in langflow-base by @KRRT7 in #6938
- build(deps): bump prismjs from 1.29.0 to 1.30.0 in /docs by @dependabot in #7002
- chore: Bump frontend package version and enhance test reliability by @ogabrielluiz in #7049
- chore: update test durations by @github-actions in #6975
- ci: fix false positive on ci sucess status by @italojohnny in #6868
- build(deps): bump @babel/runtime-corejs3 from 7.26.9 to 7.26.10 in /docs by @dependabot in #7051
- ref: Refactor tracing service by @cbornet in #7011
- Fix: Text split issues related to separator by @rodrigosnader in #6993
- tests: update node/edge IDs and properties in starter project (nightly fix) by @Cristhianzl in #7099
- tests: update selector to match new data-testid format in chat integration test (nightly fix) by @Cristhianzl in #7100
- chore: update astra-assistants to v2.2.11 by @phact in #7104
- chore: mark zep componente as deprecated by @italojohnny in #7130
- tests: Skip tests that are failing during nightly build by @Cristhianzl in #7177
- chore: merge mcp components by @phact in #7167
- tests: change handle testid on URL Component by @Cristhianzl in #7220
- tests: change freeze test folder by @Cristhianzl in #7221
- test: add timeout on freeze test to prevent errors on ci by @Cristhianzl in #7227
- ci: use uv for base install workflow by @jordanrfrazier in #7266
- chore: Remove mention of anovazzi1 from bug report template by @ogabrielluiz in #7265
- ci: add pytest-timeout with 120s limit for CI tests by @italojohnny in #7342
- chore: Ensure consistent version extraction for langflow-base in workflows by @ogabrielluiz in #7352
- chore: fix small typo in grep command by @ogabrielluiz in #7353
- ref: split ast parsing / class exec loops by @jordanrfrazier in #7248
- docs: ensure asset paths update on draft rebuilds by @mlr in #7355
- chore: bump langflow and langflow-base for 1.3.0 release by @Cristhianzl in #7362
- chore(deps-dev): bump vite from 5.4.14 to 5.4.16 in /src/frontend by @dependabot in #7365
New Contributors
- @YuhangWuAI made their first contribution in #6802
- @aparupganguly made their first contribution in #6787
- @wjwjtf made their first contribution in #6833
- @KRRT7 made their first contribution in #6938
- @mlr made their first contribution in #7021
- @crtr0 made their first contribution in #7052
- @noodleslove made their first contribution in #7057
- @azdolinski made their first contribution in #5638
- @ethanyu99 made their first contribution in #6660
- @zhubaoxiang made their first contribution in #7088
- @simonfraserduncan made their first contribution in #6010
- @gs-costa made their first contribution in #7166
- @colegoldsmith made their first contribution in #7143
- @Victor-w-Madeira made their first contribution in #6945
- @Lothiraldan made their first contribution in #6928
- @galatro made their first contribution in #7080
- @jeevic made their first contribution in #7024
- @thiau made their first contribution in #7292
Full Changelog: 1.2.0...1.3.0