Impact Score: 5/10
Dify: v1.5.0
Source available β automated, not human-reviewed
Component: dify Β· Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
β‘ Executive Summary (TL;DR)
Dify 1.5.0. Source highlight: π What's New in v1.5.0?
Who Does This Impact? (Role-Based Analysis)
π» Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
π Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
βοΈ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
β¨ New Features & Capabilities (6)
- **Drag-and-Drop DSL:** Easily create apps by dropping DSL files directly into your browser (#20706, @ACAne0320).
- **Enhanced Default Templates:** `sys.files` now included for more powerful web apps (#21476, @laipz8200).
- **Hidden Form Attributes:** Greater UI flexibility and control (#20956, @croatialu).
- **MatrixOne Integration:** Advanced data strategies with MatrixOne VDB integration (#20714, @volgariver6).
- **Firecrawl Deep Search:** Richer content discovery with an enhanced search endpoint (#20521, @ftonato).
- **Notion Pagination:** Easier navigation through extracted Notion data (#20919, @kazuya-awano).
β‘ Performance & Enhancements (2)
- Minor Improvements for File Validation and Configuration Handling #21179
- Improve App Icon Picker: Stable Modal Height & Collapsible Emoji Style Section
π§ Bug Fixes & Patches (6)
- **Smart Login Redirects:** Intelligent user navigation with automatic login redirects (#21096, @douxc).
- **Environment Sync:** Automatic syncing of environment and conversation variables on import (#21215, @zxhlyh).
- **API UX Improvements:** Enhanced loading states, icon support, and rendering fixes (#21091, #20761, @kerwin612, @HyaCiovo).
- **Responsive Charts:** Improved analytics interactions with smoother, responsive charts (#21185, @xuzijie1995).
- **Stable Markdown:** Prevent crashes and enhance data integrity with improved markdown handling (#21258, #21309, @hjlarry, @koevas1226).
- **App Icon Picker:** Cleaner and better-organized UI with stable heights and collapsible sections (#21399).
π View Raw Release Notes (Original Developer Log)
# π What's New in v1.5.0?
Meet **v1.5.0**βa sleek, powerful update boosting your productivity with simplified debugging and powerful integrations. Let's jump right in:
## ποΈ Major Feature: Enhanced Workflow Debugging
We've completely rebuilt our workflow debugging tools! Effortlessly visualize and troubleshoot workflows with improved interfaces, persistent debugging variables (#20699, thanks @QuantumGhost), and enhanced dashboard integration (#21369, kudos to @iamjoel). Easily track your workflow runs directly from the dashboard, and spend less time debugging and more time creating amazing workflows. Dive deeper in our [blog post](https://dify.ai/blog/dify-1-5-0-real-time-workflow-debugging-that-actually-works).

## β¨ New & Improved Features
* **Drag-and-Drop DSL:** Easily create apps by dropping DSL files directly into your browser (#20706, @ACAne0320).
* **Enhanced Default Templates:** `sys.files` now included for more powerful web apps (#21476, @laipz8200).
* **Hidden Form Attributes:** Greater UI flexibility and control (#20956, @croatialu).
* **MatrixOne Integration:** Advanced data strategies with MatrixOne VDB integration (#20714, @volgariver6).
* **Firecrawl Deep Search:** Richer content discovery with an enhanced search endpoint (#20521, @ftonato).
* **Notion Pagination:** Easier navigation through extracted Notion data (#20919, @kazuya-awano).
* **SendGrid Integration:** Seamless, reliable email delivery (#21011, @andrematteo).
## π οΈ Refinements & Fixes
* **Smart Login Redirects:** Intelligent user navigation with automatic login redirects (#21096, @douxc).
* **Environment Sync:** Automatic syncing of environment and conversation variables on import (#21215, @zxhlyh).
* **API UX Improvements:** Enhanced loading states, icon support, and rendering fixes (#21091, #20761, @kerwin612, @HyaCiovo).
* **Responsive Charts:** Improved analytics interactions with smoother, responsive charts (#21185, @xuzijie1995).
* **Stable Markdown:** Prevent crashes and enhance data integrity with improved markdown handling (#21258, #21309, @hjlarry, @koevas1226).
* **App Icon Picker:** Cleaner and better-organized UI with stable heights and collapsible sections (#21399).
* **Instant Dataset Insights:** Quickly access essential dataset information directly from your workflows (#21413, #21406, @JohnJyong).
We crafted **v1.5.0** to enhance your productivityβdive in, explore, and start building! π
---
## Upgrade Guide
### Docker Compose Deployments
1. Back up your customized docker-compose YAML file (optional)
```bash
cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
```
2. Get the latest code from the main branch
```bash
git checkout main
git pull origin main
```
3. Stop the service. Please execute in the docker directory
```bash
docker compose down
```
4. Back up data
```bash
tar -cvf volumes-$(date +%s).tgz volumes
```
5. Upgrade services
```bash
docker compose up -d
```
### Source Code Deployments
1. Stop the API server, Worker, and Web frontend Server.
2. Get the latest code from the release branch:
```bash
git checkout 1.5.0
```
3. Update Python dependencies:
```bash
cd api
uv sync
```
7. Then, let's run the migration script:
```bash
uv run flask db upgrade
```
8. Finally, run the API server, Worker, and Web frontend Server again.
---
## What's Changed
* fix: redirect to apps page if current user has no permission to visit dataset page by @douxc in https://github.com/langgenius/dify/pull/21065
* fix: Replace GenericProviderID with ToolProviderID by @laipz8200 in https://github.com/langgenius/dify/pull/21064
* Fix/webapp loop login by @douxc in https://github.com/langgenius/dify/pull/21092
* fix: auto redirect to login page if web app needs login by @douxc in https://github.com/langgenius/dify/pull/21096
* fix: page loop in datasets and apps if current user is dataset_operator by @douxc in https://github.com/langgenius/dify/pull/21114
* fix: doc error by @ZeroZ-lab in https://github.com/langgenius/dify/pull/21108
* fix: prevent nodes from being unintentionally deleted by pressing the backspace key. by @kurokobo in https://github.com/langgenius/dify/pull/21023
* fix: some dark theme display incorrect by @hjlarry in https://github.com/langgenius/dify/pull/21055
* chore: cleanup wrong and unused doc links in i18 translations by appling docLink method usage by @bowenliang123 in https://github.com/langgenius/dify/pull/21112
* fix: remove the x overflow scroll bar of monitoring page by @hjlarry in https://github.com/langgenius/dify/pull/21059
* chore: check input variable key of code/template node is valid by @hjlarry in https://github.com/langgenius/dify/pull/21057
* feat: add a flask_context_manager. by @laipz8200 in https://github.com/langgenius/dify/pull/21061
* chore: responsive header by @zxhlyh in https://github.com/langgenius/dify/pull/21115
* fix(agent_node):Fix spelling errors. by @wood02 in https://github.com/langgenius/dify/pull/21094
* chore: translate i18n files by @github-actions in https://github.com/langgenius/dify/pull/21053
* fix(code-editor): optimize the loading style of the CodeEditor component in dark mode (#21116) by @HyaCiovo in https://github.com/langgenius/dify/pull/21120
* fix(web): enhance API test page experience by adding loading state for test button by @kerwin612 in https://github.com/langgenius/dify/pull/21091
* fix: shorten connection timeout to pypi.org for deprecation check for weaviate client by @kurokobo in https://github.com/langgenius/dify/pull/21131
* [Bug] fix misusing ACCESS_TOKEN_EXPIRE_MINUTES in jwt on exp by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21030
* fix(web): fix unique key issue (#20809) by @HyaCiovo in https://github.com/langgenius/dify/pull/20810
* feat: Add support for hidden attributes to form item types by @croatialu in https://github.com/langgenius/dify/pull/20956
* feat: add pagenation to notion extractor by @kazuya-awano in https://github.com/langgenius/dify/pull/20919
* fix Multiple <think>\n Interface rendering exception by @XiaoCC in https://github.com/langgenius/dify/pull/20977
* fix(web): number type prompt variable required validation not effective by @yangzheli in https://github.com/langgenius/dify/pull/20898
* Set a default value for the PLUGIN_S3_USE_AWS environment variable in the dify-plugin-daemon. by @41tair in https://github.com/langgenius/dify/pull/21152
* feat: Support drop DSL file into the browser to create app by @ACAne0320 in https://github.com/langgenius/dify/pull/20706
* add healthcheck to oceanbase container by @whhe in https://github.com/langgenius/dify/pull/20989
* chore: cancel enforcing uppercase of the text of plugin navigation button on the header bar by @bowenliang123 in https://github.com/langgenius/dify/pull/20890
* add service api ratelimit check by @JohnJyong in https://github.com/langgenius/dify/pull/20878
* feat: Embedded chat window supports userVariables configuration. by @croatialu in https://github.com/langgenius/dify/pull/20983
* refactor(graph_engine): Merge duplicated if block by @laipz8200 in https://github.com/langgenius/dify/pull/20784
* unreachable-code for lb model fetch. by @zhanluxianshen in https://github.com/langgenius/dify/pull/20797
* clean duplicate validate for dataset_configs by @zhanluxianshen in https://github.com/langgenius/dify/pull/20775
* Fixes #20748 KnowledgeRetrievalNode return all external documents when reranker disabled even top-k configed by @rainsoft in https://github.com/langgenius/dify/pull/20762
* fix(api): add support for "image" icon when duplicate app (#20744) by @HyaCiovo in https://github.com/langgenius/dify/pull/20761
* feat: add search endpoint for Firecrawl Integration by @ftonato in https://github.com/langgenius/dify/pull/20521
* fix: add environment variable POSTGRES_USER by @ine1127 in https://github.com/langgenius/dify/pull/20786
* wip: add check before install plugin by @douxc in https://github.com/langgenius/dify/pull/20014
* fix: remove redundant PG_USER by @crazywoola in https://github.com/langgenius/dify/pull/21162
* chore: translate i18n files by @github-actions in https://github.com/langgenius/dify/pull/21163
* bug: fix sequence number may be duplicated when multi-threads running the same workflow #21047 by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21153
* Fix: web app auth maybe failed by @douxc in https://github.com/langgenius/dify/pull/21166
* Feat/plugin install scope management by @zhangx1n in https://github.com/langgenius/dify/pull/19963
* fix: workflow shortcuts by @zxhlyh in https://github.com/langgenius/dify/pull/21164
* Minor Improvements for File Validation and Configuration Handling #21179 by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21171
* fix(echarts): Resolve interaction issues on charts with timelines by @xuzijie1995 in https://github.com/langgenius/dify/pull/21185
* add func args missing in apps chat. by @zhanluxianshen in https://github.com/langgenius/dify/pull/21085
* Translation fix by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21194
* feat: improve the orgnize node operation by @hjlarry in https://github.com/langgenius/dify/pull/21183
* Add Filter of Get Workflow Logs by @ZombieBlue in https://github.com/langgenius/dify/pull/21172
* feat: add support for Matrixone database by @volgariver6 in https://github.com/langgenius/dify/pull/20714
* feat:conversation variable support file array by @kinoooolu in https://github.com/langgenius/dify/pull/21174
* Feat/support sendgrid by @andrematteo in https://github.com/langgenius/dify/pull/21011
* fix keyword search top-k not initial by @JohnJyong in https://github.com/langgenius/dify/pull/21202
* fix wrongly remove reset nodes by @zalcit in https://github.com/langgenius/dify/pull/20880
* Revert "bug: fix sequence number may be duplicated when multi-threads running the same workflow #21047" by @QuantumGhost in https://github.com/langgenius/dify/pull/21207
* fix(plugin/migrations) refactor data migration to use specific provider ID classes. by @Yeuoly in https://github.com/langgenius/dify/pull/21187
* Fix/dataset page may redirect to apps if it still getting user info and workspace info by @douxc in https://github.com/langgenius/dify/pull/21221
* fix: fix load_balancing_config save error by @LeeeeeeM in https://github.com/langgenius/dify/pull/21213
* fix: workflow import sync env and conversation variables by @zxhlyh in https://github.com/langgenius/dify/pull/21215
* chore: remove redundant code by @LeeeeeeM in https://github.com/langgenius/dify/pull/21211
* feat: use default access mode when importing dsl by @GareArc in https://github.com/langgenius/dify/pull/21231
* fix(workflow_run): sequence_number race. by @laipz8200 in https://github.com/langgenius/dify/pull/21228
* fix: not permitted schema of markdown link cause page crash by @hjlarry in https://github.com/langgenius/dify/pull/21258
* bug: fix minor exception msg missing by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21255
* Feat: support selecting model in auto generator by @JzoNgKVO in https://github.com/langgenius/dify/pull/21208
* fix: update auto translations for days of the week(#21279) by @XiaoBa-Yu in https://github.com/langgenius/dify/pull/21287
* feat(mermaid): Rearchitect component for robustness, security, and theming by @xuzijie1995 in https://github.com/langgenius/dify/pull/21281
* Revert "feat:conversation variable support file array" by @QuantumGhost in https://github.com/langgenius/dify/pull/21273
* critical! insert_explore_app_list_api by @COCONUTwwater in https://github.com/langgenius/dify/pull/21277
* style(dark): Adjust chat bubble background color (langgenius#20990) by @HyaCiovo in https://github.com/langgenius/dify/pull/21264
* fix notion dataset rule not found by @JohnJyong in https://github.com/langgenius/dify/pull/21236
* Fixes #21203 Add a rapid deployment solution for deploying to Alibaba Cloud throug⦠by @hanans426 in https://github.com/langgenius/dify/pull/21206
* Knowledge base API supports status updates #18147 by @ZeroZ-lab in https://github.com/langgenius/dify/pull/18235
* fix: wrong translation by @crazywoola in https://github.com/langgenius/dify/pull/21311
* refactor: env check with function by @crazywoola in https://github.com/langgenius/dify/pull/21310
* fix: markdown_extractor lost chunks if it starts without a header(#21308) by @koevas1226 in https://github.com/langgenius/dify/pull/21309
* FeatureοΌRefactor batch update document status for #21324 by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21325
* fix: hide marketplace information(#21275) by @XiaoBa-Yu in https://github.com/langgenius/dify/pull/21276
* fix: Update the logic for segment type settings to support parent-child mode selection. by @onlylhf in https://github.com/langgenius/dify/pull/21278
* fix: Update segmentation type initialization to support parent-child mode based on document form by @WTW0313 in https://github.com/langgenius/dify/pull/21359
* fix segment display the default by @ZombieBlue in https://github.com/langgenius/dify/pull/21317
* fix: web error by @ZeroZ-lab in https://github.com/langgenius/dify/pull/21340
* feat: add config for max-tree-depth by @LeeeeeeM in https://github.com/langgenius/dify/pull/21291
* Fixes #21351 by @zhuzeyu22 in https://github.com/langgenius/dify/pull/21354
* fix(migrate/tools): Correct parameter name in tool_builtin_providers migration function by @Yeuoly in https://github.com/langgenius/dify/pull/21358
* feat: Persist Variables for Enhanced Debugging Workflow by @QuantumGhost in https://github.com/langgenius/dify/pull/20699
* feat: last run frontend by @iamjoel in https://github.com/langgenius/dify/pull/21369
* chore: translate i18n files by @github-actions in https://github.com/langgenius/dify/pull/21395
* Fixes #21357 Correct the wrong link destination (#quick-start) by @CWu101 in https://github.com/langgenius/dify/pull/21373
* Fixes #21366: Add link to the one-click Dify deployment solution on Alibaba Cloud DMS by @ZhihaoGu11 in https://github.com/langgenius/dify/pull/21385
* feat: make `RESPECT_XFORWARD_HEADERS_ENABLED` configurable in Compose by @antonko in https://github.com/langgenius/dify/pull/21248
* Improve App Icon Picker: Stable Modal Height & Collapsible Emoji Style Section by @kerwin612 in https://github.com/langgenius/dify/pull/21399
* add dataset info in response by @JohnJyong in https://github.com/langgenius/dify/pull/21406
* fix(document_extractor): xlsx file column int type error by @quicksandznzn in https://github.com/langgenius/dify/pull/21408
* fix missing style of conversation variable panel default value textarea by @Minamiyama in https://github.com/langgenius/dify/pull/21422
* add dataset info in response by @JohnJyong in https://github.com/langgenius/dify/pull/21413
* fix: last run not export var and ts problem by @iamjoel in https://github.com/langgenius/dify/pull/21424
* feat(api): Explicitly define version method for all BaseNode subclasses by @QuantumGhost in https://github.com/langgenius/dify/pull/21443
* fix: first message query error by @jiangbo721 in https://github.com/langgenius/dify/pull/21444
* fix: text generation app log not show by @iamjoel in https://github.com/langgenius/dify/pull/21436
* feat: persist debug-and-preview panel width in localstorage by @Minamiyama in https://github.com/langgenius/dify/pull/21434
* fix(knowledge_base): Unchecked metadata name length by @laipz8200 in https://github.com/langgenius/dify/pull/21454
* chore: translate i18n files by @github-actions in https://github.com/langgenius/dify/pull/21459
* fix (conf/code): Variables not correctly filled can still be referenced by @CasterWx in https://github.com/langgenius/dify/pull/21451
* fix: inputs.items is undefined by @crazywoola in https://github.com/langgenius/dify/pull/21463
* fix: in plugin config panel appselector can not list all apps() by @tomorrowthief in https://github.com/langgenius/dify/pull/21457
* fix: update DocumentList to include max height and overflow styles by @Covfefeable in https://github.com/langgenius/dify/pull/21466
* fix: prompt editor click to insert variable by @zxhlyh in https://github.com/langgenius/dify/pull/21470
* Refactor update dataset (fix #21401) by @NeatGuyCoding in https://github.com/langgenius/dify/pull/21402
* fix(api): adding variable to variable pool recursively while loading draft variables. by @QuantumGhost in https://github.com/langgenius/dify/pull/21478
* feat(web): Contains sys.files in the default template. by @laipz8200 in https://github.com/langgenius/dify/pull/21476
* Update smtp.py by @AuditAIH in https://github.com/langgenius/dify/pull/21335
* feat(oauth): plugin oauth service by @Mairuis in https://github.com/langgenius/dify/pull/21480
* feat(oauth): refactor proxy context by @Mairuis in https://github.com/langgenius/dify/pull/21483
* chore: update cover image by @crazywoola in https://github.com/langgenius/dify/pull/21489
* fix(event_handlers): DB dead lock by @laipz8200 in https://github.com/langgenius/dify/pull/21468
* fix: app description too long break ui by @iamjoel in https://github.com/langgenius/dify/pull/21491
* chore(version): Bump to 1.5.0 by @laipz8200 in https://github.com/langgenius/dify/pull/21415
* fix(update_provider_when_message_created): Fix db transaction by @laipz8200 in https://github.com/langgenius/dify/pull/21503
## New Contributors
* @wood02 made their first contribution in https://github.com/langgenius/dify/pull/21094
* @kerwin612 made their first contribution in https://github.com/langgenius/dify/pull/21091
* @croatialu made their first contribution in https://github.com/langgenius/dify/pull/20956
* @XiaoCC made their first contribution in https://github.com/langgenius/dify/pull/20977
* @ine1127 made their first contribution in https://github.com/langgenius/dify/pull/20786
* @volgariver6 made their first contribution in https://github.com/langgenius/dify/pull/20714
* @kinoooolu made their first contribution in https://github.com/langgenius/dify/pull/21174
* @andrematteo made their first contribution in https://github.com/langgenius/dify/pull/21011
* @COCONUTwwater made their first contribution in https://github.com/langgenius/dify/pull/21277
* @hanans426 made their first contribution in https://github.com/langgenius/dify/pull/21206
* @koevas1226 made their first contribution in https://github.com/langgenius/dify/pull/21309
* @onlylhf made their first contribution in https://github.com/langgenius/dify/pull/21278
* @zhuzeyu22 made their first contribution in https://github.com/langgenius/dify/pull/21354
* @CWu101 made their first contribution in https://github.com/langgenius/dify/pull/21373
* @ZhihaoGu11 made their first contribution in https://github.com/langgenius/dify/pull/21385
* @antonko made their first contribution in https://github.com/langgenius/dify/pull/21248
* @CasterWx made their first contribution in https://github.com/langgenius/dify/pull/21451
* @tomorrowthief made their first contribution in https://github.com/langgenius/dify/pull/21457
* @Covfefeable made their first contribution in https://github.com/langgenius/dify/pull/21466
* @AuditAIH made their first contribution in https://github.com/langgenius/dify/pull/21335
* @Mairuis made their first contribution in https://github.com/langgenius/dify/pull/21480
**Full Changelog**: https://github.com/langgenius/dify/compare/1.4.3...1.5.0