Dify 1.5.0stable Released Jun 25, 2025
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.

Compatibility not verified β€” check source notes
πŸ“„ .MD
⚑ 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). ![variable-inspect](https://github.com/user-attachments/assets/fd9ca06f-1541-4951-a9ae-7e73fe1bc705) ## ✨ 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