1.11.2
langgenius/dify1.11.2Dec 25, 2025by laipz8200
AI Summary
Version 1.11.2 introduces support for InterSystems IRIS Vector Database and Aliyun SLS workflow logging, expands language support to Tunisian Arabic, and patches critical security vulnerabilities including XSS, SSRF, and CSV injection. The release also significantly enhances platform robustness through comprehensive Jest test coverage, extensive code refactoring, and improved monitoring capabilities.
Key Highlights
- Added InterSystems IRIS Vector Database support for enhanced data handling
- Critical security patches for XSS (Mermaid Graph), SSRF, and CSV injection vulnerabilities
- Aliyun Simple Log Service (SLS) integration for workflow execution logging
- Expanded internationalization with Tunisian Arabic language support
- Major test coverage improvements with comprehensive Jest tests and automated pipeline testing
New Features
- InterSystems IRIS Vector Database support
- Aliyun SLS Integration for workflow execution logging
- Tunisian Arabic (ar-TN) language support
Full Release Notes
## š Whatās New in v1.11.2 š Welcome to version 1.11.2! This release sees a significant number of improvements, especially around testing, fixes, and new integrations to enhance the robustness and flexibility of the platform. Here's the lowdown: ### š New Features - **InterSystems IRIS Vector Database**: We've added support for this database to bolster data handling capabilities. Big ups to @TomoOkuyama! (#29480) - **Aliyun SLS Integration**: Workflow execution logging can now leverage Aliyun's Simple Log Service, courtesy of @adongfan. (#28986) - **Tunisian Arabic Support**: We've expanded our language support with Tunisian Arabic. Shukran @nourzakhama2003! (#29306) ### āļø Enhancements - **Comprehensive Test Coverage**: A slew of Jest tests have been added to various components, such as the ConfirmModal, AppCard, CustomizeModal, and more. Thanks to everyone involved, especially @lyzno1! These enhance our confidence in releasing robust changes. (#29627, #29667, etc.) - **Amplitude Tracking**: Enhanced user behavior tracking across the platform for deeper insights, thanks to @CodingOnStar. (#29662) - **Pipeline Setting Tests**: Automated testing has been added to ensure any future changes to pipeline settings won't break your optimizations. (#29478) - **Responsive Chat Wrapper**: We've optimized the chat interface for better usability across all device types. Props to @hangboss1761. (#29687) ### š ļø Bug Fixes - **Unified Translation**: Fixed various translation-related issues across multiple languages for a more coherent global experience. Thanks, @ZeroZ-lab! (#29759) - **Security Enhancements**: We've patched an XSS vulnerability with the Mermaid Graph and tackled SSRF and CSV injection issues. Kudos to @zyssyz123 and @laipz8200. (#29811, #29462) - **Upload Fixes**: If file uploads are disabled, they'll now be consistently so across the board. Big thanks to @iamjoel. (#29681) - **API Key Validation**: Ensures API keys in HTTPRequest nodes are never empty, thanks to @AziizBg. (#29950) - **Miscellaneous Fixes**: A whole host of tweaks ranging from workflow past version data synchronization to adjustment of padding for better alignment. Massive thanks to all who squashed these bugs! (#30139, #29999) ### šØ Code Quality & Maintenance - **Refactor Marathon**: We've massively refactored our API and web controllers to make future updates easier and more performant. Big thanks to @asukaminato0721 for spearheading this. (#29894, #29888, etc.) - **Jest and Webpack Optimizations**: Improved Jest caching, configuration, and migration to Vitest/ESM in the web components for quicker, more reliable tests. Hats off to @lyzno1 and @hyoban. (#29881, #29974) - **Documentation Cleanup**: The Swagger UI is now disabled by default in production releases, being more cautious about what information hangs out there. Thanks @laipz8200. (#29723) That's the round-up for v1.11.2! As always, a huge shoutout to all contributors who make these improvements possible. You rock! Now, go try the new release, and hit us up with feedback. Happy coding! š --- ## 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 ``` > [!NOTE] > > If you encounter errors like below > > ```bash > 2025/11/26 11:37:57 /app/internal/db/pg/pg.go:30 > [error] failed to initialize database, got error failed to connect to `host=db_postgres user=postgres database=dify_plugin`: hostname resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) > > 2025/11/26 11:37:57 /app/internal/db/pg/pg.go:34 > [error] failed to initialize database, got error failed to connect to `host=db_postgres user=postgres database=postgres`: hostname > resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) > 2025/11/26 11:37:57 init.go:99: [PANIC]failed to init dify plugin db: failed to connect to `host=db_postgres user=postgres database=postgres`: hostname resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) > panic: [PANIC]failed to init dify plugin db: failed to connect to `host=db_postgres user=postgres database=postgres`: hostname resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) > ``` > Please use the following command instead. For details, please read this https://github.com/langgenius/dify/issues/28706 > ```bash > docker compose --profile postgresql 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.11.2 ``` 3. Update Python dependencies: ```bash cd api uv sync ``` 4. Then, let's run the migration script: ```bash uv run flask db upgrade ``` 5. Finally, run the API server, Worker, and Web frontend Server again. --- ## What's Changed * chore: add test case for download components by @iamjoel in https://github.com/langgenius/dify/pull/29569 * chore: test for app card and no data by @iamjoel in https://github.com/langgenius/dify/pull/29570 * test(web): add comprehensive tests for workflow-log component by @lyzno1 in https://github.com/langgenius/dify/pull/29562 * fix: bump wandb to 0.23.1 urllib3 to 2.6.0 by @kenwoodjw in https://github.com/langgenius/dify/pull/29481 * fix: remove unnecessary error log when trigger endpoint returns 404 by @Mairuis in https://github.com/langgenius/dify/pull/29587 * feat(i18n): add Tunisian Arabic (ar-TN) translation by @nourzakhama2003 in https://github.com/langgenius/dify/pull/29306 * fix: validate page_size limit in plugin list and tasks endpoints by @aplulu in https://github.com/langgenius/dify/pull/29611 * fix(workflow): agent prompt editor canvas not covering full text height by @abesticode in https://github.com/langgenius/dify/pull/29623 * chore: add anthropic skills for frontend testing by @lyzno1 in https://github.com/langgenius/dify/pull/29608 * fix: fix mime type is none by @fatelei in https://github.com/langgenius/dify/pull/29579 * fix(ci): use setup-python to avoid 504 errors and use project oxlint config by @lyzno1 in https://github.com/langgenius/dify/pull/29613 * fix: show uninstalled plugin nodes in workflow checklist by @lyzno1 in https://github.com/langgenius/dify/pull/29630 * fix: fix delete_account_task not check billing enabled by @fatelei in https://github.com/langgenius/dify/pull/29577 * fix: add secondary text color to plugin task headers by @Pleasurecruise in https://github.com/langgenius/dify/pull/29529 * fixes: #28300 Change the Citations banner in dark mode to fully opaque by @Rickon-dev in https://github.com/langgenius/dify/pull/28673 * feat: Add InterSystems IRIS vector database support by @TomoOkuyama in https://github.com/langgenius/dify/pull/29480 * chore(deps): bump @hookform/resolvers from 3.10.0 to 5.2.2 in /web by @dependabot[bot] in https://github.com/langgenius/dify/pull/29442 * chore: add AGENTS.md for frontend by @lyzno1 in https://github.com/langgenius/dify/pull/29647 * test: add comprehensive Jest tests for ConfirmModal component by @lyzno1 in https://github.com/langgenius/dify/pull/29627 * fix(api): Populate Missing Attributes For Arize Phoenix Integration by @ialisaleh in https://github.com/langgenius/dify/pull/29526 * fix(workflow): tool plugin output_schema array type not selectable in subsequent nodes by @importcjj in https://github.com/langgenius/dify/pull/29035 * Add file upload enabled check and new i18n message by @halogen22 in https://github.com/langgenius/dify/pull/28946 * chore: disable swagger doc in production by @lin-snow in https://github.com/langgenius/dify/pull/29283 * fix(api): use json_repair for conversation title parsing by @quicksandznzn in https://github.com/langgenius/dify/pull/29649 * perf: commit once by @fatelei in https://github.com/langgenius/dify/pull/29590 * fix: delete knowledge pipeline but pipeline and workflow don't delete by @JohnJyong in https://github.com/langgenius/dify/pull/29591 * refactor: admin api using session factory by @fatelei in https://github.com/langgenius/dify/pull/29628 * chore(i18n): translate i18n files and update type definitions by @github-actions[bot] in https://github.com/langgenius/dify/pull/29651 * fix: does not save segment vector when there is no attachment_ids by @Chenyl-Sai in https://github.com/langgenius/dify/pull/29520 * test: Consolidate API CI test runner by @laipz8200 in https://github.com/langgenius/dify/pull/29440 * fix: correct i18n SSO translations and fix validation/type issues by @NeatGuyCoding in https://github.com/langgenius/dify/pull/29564 * fix: dos in annotation import by @zyssyz123 in https://github.com/langgenius/dify/pull/29470 * feat: Enhance Amplitude tracking across various components by @CodingOnStar in https://github.com/langgenius/dify/pull/29662 * chore: tests for annotation by @iamjoel in https://github.com/langgenius/dify/pull/29664 * chore: some billing test by @iamjoel in https://github.com/langgenius/dify/pull/29648 * fix: ssrf, add internal ip filter when parse tool schema by @zyssyz123 in https://github.com/langgenius/dify/pull/29548 * fix: csv injection in annotations export by @zyssyz123 in https://github.com/langgenius/dify/pull/29462 * fix: all upload files are disabled if upload file feature disabled by @iamjoel in https://github.com/langgenius/dify/pull/29681 * fix: webhook node output file as file variable by @fatelei in https://github.com/langgenius/dify/pull/29621 * chore: skip upload_file_id is missing by @fatelei in https://github.com/langgenius/dify/pull/29666 * chore: add online drive metadata source enum by @quicksandznzn in https://github.com/langgenius/dify/pull/29674 * fix: update chat wrapper components to use min-h instead of h for better responsiveness by @hangboss1761 in https://github.com/langgenius/dify/pull/29687 * test: enhance DebugWithMultipleModel component test coverage by @lyzno1 in https://github.com/langgenius/dify/pull/29657 * chore: some tests for configuration components by @iamjoel in https://github.com/langgenius/dify/pull/29653 * test: enhance workflow-log component tests with comprehensive coverage by @lyzno1 in https://github.com/langgenius/dify/pull/29616 * test: add comprehensive frontend tests for billing plan assets by @lyzno1 in https://github.com/langgenius/dify/pull/29615 * test: try to use Anthropic Skills to add tests for web/app/components/apps/ by @lyzno1 in https://github.com/langgenius/dify/pull/29607 * feat: VECTOR_STORE supports seekdb by @longbingljw in https://github.com/langgenius/dify/pull/29658 * refactor: create shared react-i18next mock to reduce duplication by @lyzno1 in https://github.com/langgenius/dify/pull/29711 * test: add comprehensive Jest test for CreateAppTemplateDialog component by @lyzno1 in https://github.com/langgenius/dify/pull/29713 * test: add unit tests for DocumentPicker, PreviewDocumentPicker, and R⦠by @CodingOnStar in https://github.com/langgenius/dify/pull/29695 * feat: add GraphEngine layer node execution hooks by @hieheihei in https://github.com/langgenius/dify/pull/28583 * chore: webhook with bin file should guess mimetype by @hjlarry in https://github.com/langgenius/dify/pull/29704 * test: add comprehensive Jest tests for CustomPage and WorkflowOnboardingModal components by @lyzno1 in https://github.com/langgenius/dify/pull/29714 * revert: "security/fix-swagger-info-leak-m02" by @crazywoola in https://github.com/langgenius/dify/pull/29721 * test: add comprehensive tests for CustomizeModal component by @lyzno1 in https://github.com/langgenius/dify/pull/29709 * chore: Disable Swagger UI by default in docker samples by @laipz8200 in https://github.com/langgenius/dify/pull/29723 * chore: tests for billings by @iamjoel in https://github.com/langgenius/dify/pull/29720 * test: add comprehensive unit tests for APIKeyInfoPanel component by @lyzno1 in https://github.com/langgenius/dify/pull/29719 * feat: Remove TLS 1.1 from default NGINX protocols by @laipz8200 in https://github.com/langgenius/dify/pull/29728 * test: Add comprehensive Jest test for AppCard component by @lyzno1 in https://github.com/langgenius/dify/pull/29667 * test: Stabilize sharded Redis broadcast multi-subscriber test by @laipz8200 in https://github.com/langgenius/dify/pull/29733 * chore: tests for components in config by @iamjoel in https://github.com/langgenius/dify/pull/29739 * Feat/update notion preview by @JohnJyong in https://github.com/langgenius/dify/pull/29345 * fix: Login secret text transmission by @zyssyz123 in https://github.com/langgenius/dify/pull/29659 * fix: oxlint no unused expressions by @Angel98518 in https://github.com/langgenius/dify/pull/29675 * feat: _truncate_json_primitives support file by @fatelei in https://github.com/langgenius/dify/pull/29760 * fix: add Slovenian and Tunisian Arabic translations across multiple language files by @ZeroZ-lab in https://github.com/langgenius/dify/pull/29759 * ci: show missing lines in coverage report summary by @laipz8200 in https://github.com/langgenius/dify/pull/29717 * chore: add tests for config string and dataset card item by @lyzno1 in https://github.com/langgenius/dify/pull/29743 * chore(web): add some jest tests by @lyzno1 in https://github.com/langgenius/dify/pull/29754 * feat: add automated tests for pipeline setting by @CodingOnStar in https://github.com/langgenius/dify/pull/29478 * feat: add datasource_parameters handling for API requests by @r-hashi01 in https://github.com/langgenius/dify/pull/29757 * feat: Add "type" field to PipelineRecommendedPlugin model; Add query param "type" to recommended-plugins api. by @FFXN in https://github.com/langgenius/dify/pull/29736 * chore: tests form add annotation by @iamjoel in https://github.com/langgenius/dify/pull/29770 * chore: tests for webapp run batch by @iamjoel in https://github.com/langgenius/dify/pull/29767 * feat: Add Aliyun SLS (Simple Log Service) integration for workflow execution logging by @adongfan in https://github.com/langgenius/dify/pull/28986 * feat: update RAG recommended plugins hook to accept type parameter by @WTW0313 in https://github.com/langgenius/dify/pull/29735 * fix: detect_file_encodings TypeError: tuple indices must be integers or slices, not str by @zhaobingshuang in https://github.com/langgenius/dify/pull/29595 * test(api): add a test for `detect_file_encodings` by @fatelei in https://github.com/langgenius/dify/pull/29778 * chore: tests for app agent configures by @iamjoel in https://github.com/langgenius/dify/pull/29789 * fix: Correct French grammar by @ttaylorr1 in https://github.com/langgenius/dify/pull/29793 * fix(deps): restore charset_normalizer, revert accidental chardet reintroduction by @adongfan in https://github.com/langgenius/dify/pull/29782 * chore: scope docs CODEOWNERS by @laipz8200 in https://github.com/langgenius/dify/pull/29813 * chore: add some jest tests by @lyzno1 in https://github.com/langgenius/dify/pull/29800 * chore: compatiable opendal modify by @fatelei in https://github.com/langgenius/dify/pull/29794 * test: add comprehensive unit tests for JinaReader and WaterCrawl comp⦠by @CodingOnStar in https://github.com/langgenius/dify/pull/29768 * chore(web): add some tests by @lyzno1 in https://github.com/langgenius/dify/pull/29772 * test: add unit tests for DatasetConfig component with comprehensive coverage of rendering, dataset management, context variables, and metadata filtering by @lyzno1 in https://github.com/langgenius/dify/pull/29779 * chore: add AppTypeSelector tests and improve clear button accessibility by @lyzno1 in https://github.com/langgenius/dify/pull/29791 * fix: remove unnecessary min-width css style from AllTools and Blocks components by @wcc0077 in https://github.com/langgenius/dify/pull/29810 * fix: mermaid graph xss problem by @laipz8200 in https://github.com/langgenius/dify/pull/29811 * fix: drop some dead links by @yihong0618 in https://github.com/langgenius/dify/pull/29827 * fix: TypeError: outputParameters is not iterable by @crazywoola in https://github.com/langgenius/dify/pull/29833 * feat: add billing subscription plan api by @hj24 in https://github.com/langgenius/dify/pull/29829 * chore: tests for goto anything by @iamjoel in https://github.com/langgenius/dify/pull/29831 * feat: sandbox retention basic settings by @hj24 in https://github.com/langgenius/dify/pull/29842 * fix: fix json object validate by @fatelei in https://github.com/langgenius/dify/pull/29840 * fix(theme): make sticky headers opaque in dark mode (Monaco sticky sc⦠by @nourzakhama2003 in https://github.com/langgenius/dify/pull/29826 * ci: add detailed test coverage report for web by @lyzno1 in https://github.com/langgenius/dify/pull/29803 * fix: plugin execution timeout not respecting PLUGIN_MAX_EXECUTION_TIMEOUT by @hukurou0 in https://github.com/langgenius/dify/pull/29785 * feat: show generate speed in chatbot by @leslie2046 in https://github.com/langgenius/dify/pull/29602 * chore: tests for annotation by @iamjoel in https://github.com/langgenius/dify/pull/29851 * perf: decrease db query by @fatelei in https://github.com/langgenius/dify/pull/29837 * chore(codeowners): add migrations code owner by @laipz8200 in https://github.com/langgenius/dify/pull/29864 * chore(web): enhance frontend tests by @lyzno1 in https://github.com/langgenius/dify/pull/29859 * fix: fix fixed_separator by @fatelei in https://github.com/langgenius/dify/pull/29861 * refactor: part of remove all reqparser by @asukaminato0721 in https://github.com/langgenius/dify/pull/29848 * chore(web): enhance tests follow the testing.md and skills by @lyzno1 in https://github.com/langgenius/dify/pull/29841 * fix(api): resolve errors when setting visibility to partial members by @quicksandznzn in https://github.com/langgenius/dify/pull/29830 * refactor: implement SettingsModal with retrieval settings and add tests for RetrievalChangeTip component by @lyzno1 in https://github.com/langgenius/dify/pull/29786 * chore: enhance Jest setup and add new tests for dataset creation components by @CodingOnStar in https://github.com/langgenius/dify/pull/29825 * fix 29184 by @leslie2046 in https://github.com/langgenius/dify/pull/29188 * chore: tests for configuration by @iamjoel in https://github.com/langgenius/dify/pull/29870 * refactor: split changes for api/controllers/web/audio.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29856 * chore(web): enhance frontend tests by @lyzno1 in https://github.com/langgenius/dify/pull/29869 * chore(deps-dev): bump storybook from 9.1.13 to 9.1.17 in /web by @dependabot[bot] in https://github.com/langgenius/dify/pull/29906 * refactor: split changes for api/libs/helper.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29875 * perf: improve Jest caching and configuration in web tests by @lyzno1 in https://github.com/langgenius/dify/pull/29881 * refactor: unified cn utils by @hyoban in https://github.com/langgenius/dify/pull/29916 * refactor: split changes for api/controllers/web/completion.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29855 * chore: update packageManager version in package.json to pnpm@10.26.1 by @lyzno1 in https://github.com/langgenius/dify/pull/29918 * feat(tests): add comprehensive tests for Processing and EmbeddingProcess components by @CodingOnStar in https://github.com/langgenius/dify/pull/29873 * fix: workflow log search input controlled state by @lyzno1 in https://github.com/langgenius/dify/pull/29930 * chore: add some tests case code by @iamjoel in https://github.com/langgenius/dify/pull/29927 * refactor: migrate common service toward TanStack Query by @lyzno1 in https://github.com/langgenius/dify/pull/29009 * test: Adding missing tests or correcting existing tests by @CodingOnStar in https://github.com/langgenius/dify/pull/29937 * refactor: split changes for api/tests/test_containers_integration_tes⦠by @asukaminato0721 in https://github.com/langgenius/dify/pull/29897 * refactor: split changes for api/controllers/console/explore/completio⦠by @asukaminato0721 in https://github.com/langgenius/dify/pull/29894 * chore: Add codeowner for web test, vdb and docker by @laipz8200 in https://github.com/langgenius/dify/pull/29948 * chore: add symlink for skills directory and update autofix workflow exclusion pattern by @lyzno1 in https://github.com/langgenius/dify/pull/29953 * fix: add RFC 9728 compliant well-known URL discovery with path insertion fallback by @Nov1c444 in https://github.com/langgenius/dify/pull/29960 * fix: update Notion credential retrieval in document indexing sync task by @nht1206 in https://github.com/langgenius/dify/pull/29933 * feat: first use INTERNAL_FILES_URL first, then FILES_URL by @fatelei in https://github.com/langgenius/dify/pull/29962 * fix: validate API key is not empty in HTTPRequest node by @AziizBg in https://github.com/langgenius/dify/pull/29950 * fix: clear uploaded files when clicking clear button in workflow by @GuangjingYan in https://github.com/langgenius/dify/pull/29884 * refactor: split changes for api/controllers/console/explore/installed⦠by @asukaminato0721 in https://github.com/langgenius/dify/pull/29891 * refactor: split changes for api/controllers/console/explore/conversat⦠by @asukaminato0721 in https://github.com/langgenius/dify/pull/29893 * fix: invalidate tool provider cache after MCP authentication by @Nov1c444 in https://github.com/langgenius/dify/pull/29972 * chore(deps): bump immer from 10.2.0 to 11.1.0 in /web by @dependabot[bot] in https://github.com/langgenius/dify/pull/29969 * refactor(web): migrate to Vitest and esm by @hyoban in https://github.com/langgenius/dify/pull/29974 * fix: CODEOWNERS web path scope by @laipz8200 in https://github.com/langgenius/dify/pull/29995 * chore: bump plugin daemon image tag to 0.5.2-local by @laipz8200 in https://github.com/langgenius/dify/pull/29993 * feat: Configure devcontainer with `/tmp` volume mount, `vscode` remote user, and post-start script updates. by @ZeroZ-lab in https://github.com/langgenius/dify/pull/29986 * perf: optimize DatasetRetrieval.retrievećRetrievalService._deduplicat⦠by @fatelei in https://github.com/langgenius/dify/pull/29981 * refactor: split changes for api/controllers/web/app.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29857 * fix: adjust padding in entry node container for better alignment by @ZeroZ-lab in https://github.com/langgenius/dify/pull/29999 * fix: preserve empty list for FILE_LIST type in base_app_generator by @majiayu000 in https://github.com/langgenius/dify/pull/29618 * chore(deps): bump pypdfium2 from 4.30.0 to 5.2.0 in /api by @dependabot[bot] in https://github.com/langgenius/dify/pull/29639 * refactor: split changes for api/controllers/web/message.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29874 * feat: support var filer in conversation service by @fatelei in https://github.com/langgenius/dify/pull/29245 * feat: Add OSS-specific parameters for HW and ALI private deployment by @myg133 in https://github.com/langgenius/dify/pull/29705 * chore: anchor CODEOWNERS paths to root by @laipz8200 in https://github.com/langgenius/dify/pull/29998 * fix(chat): reset scroll state when switching conversations by @majiayu000 in https://github.com/langgenius/dify/pull/29984 * fix: invite team member display issue by @hjlarry in https://github.com/langgenius/dify/pull/30011 * chore: remove unused login call from activation flow by @hjlarry in https://github.com/langgenius/dify/pull/30017 * chore: Translate stray Chinese comment to English by @hjlarry in https://github.com/langgenius/dify/pull/30024 * chore(web): new lint setup by @hyoban in https://github.com/langgenius/dify/pull/30020 * feat: Add polyfill for Array.prototype.toSpliced method by @CodingOnStar in https://github.com/langgenius/dify/pull/30031 * chore: lint require and how to import react by @hyoban in https://github.com/langgenius/dify/pull/30041 * fix: YAML URL import rewrite for GitHub attachments by @laipz8200 in https://github.com/langgenius/dify/pull/30003 * chore: enable ts/no-explicit-any, remove no-unused-vars by @hyoban in https://github.com/langgenius/dify/pull/30042 * feat: grace ful close the connection by @fatelei in https://github.com/langgenius/dify/pull/30039 * fix(ops): correct LangSmith dotted_order timestamp format by @ericko-being in https://github.com/langgenius/dify/pull/30022 * fix: when use forward proxy with httpx, httpx will overwrite the use ⦠by @fatelei in https://github.com/langgenius/dify/pull/30029 * feat: allow user close the tab to sync the draft by @fatelei in https://github.com/langgenius/dify/pull/30034 * refactor: split changes for api/controllers/web/remote_files.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29853 * refactor: nodejs sdk by @lyzno1 in https://github.com/langgenius/dify/pull/30036 * fix: fix firecrawl url concat by @fatelei in https://github.com/langgenius/dify/pull/30008 * refactor: split changes for api/controllers/console/extension.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29888 * refactor: split changes for api/controllers/web/forgot_password.py by @asukaminato0721 in https://github.com/langgenius/dify/pull/29858 * feat(docker): add environment variables synchronization tool by @sattosan in https://github.com/langgenius/dify/pull/29845 * fix: handle missing `credential_id` by @nht1206 in https://github.com/langgenius/dify/pull/30051 * fix: loop streaming by clearing stale subgraph variables by @Nov1c444 in https://github.com/langgenius/dify/pull/30059 * chore: some tests by @iamjoel in https://github.com/langgenius/dify/pull/30078 * refactor(web): migrate log service to TanStack Query by @lyzno1 in https://github.com/langgenius/dify/pull/30065 * chore: some tests by @iamjoel in https://github.com/langgenius/dify/pull/30084 * chore: fix type check for i18n by @hyoban in https://github.com/langgenius/dify/pull/30058 * refactor(web): migrate explore app lists from useSWR to TanStack Query by @lyzno1 in https://github.com/langgenius/dify/pull/30076 * chore: no template string in translation by @hyoban in https://github.com/langgenius/dify/pull/30101 * fix: fix use build_request lead unexpect param by @fatelei in https://github.com/langgenius/dify/pull/30095 * fix(web): remove incorrect placeholderData usage in useExploreAppList by @lyzno1 in https://github.com/langgenius/dify/pull/30102 * refactor(web): migrate workflow run history from useSWR to TanStack Query by @lyzno1 in https://github.com/langgenius/dify/pull/30077 * feat: add editing support for trigger subscriptions by @Mairuis in https://github.com/langgenius/dify/pull/29957 * fix: trigger subscription delete not working for non-auto-created credentials by @Mairuis in https://github.com/langgenius/dify/pull/30122 * chore(web): migrate lodash-es to es-toolkit compat by @lyzno1 in https://github.com/langgenius/dify/pull/30126 * fix: handle list content type in Parameter Extraction node by @krap730 in https://github.com/langgenius/dify/pull/30070 * fix: allow None values in VariableMessage validation by @krap730 in https://github.com/langgenius/dify/pull/30082 * test: Add comprehensive test suite for Chip component by @SherlockShemol in https://github.com/langgenius/dify/pull/30119 * ci: generate docker compose in autofix by @laipz8200 in https://github.com/langgenius/dify/pull/30105 * feat(web): add unit tests for Badge component by @SherlockShemol in https://github.com/langgenius/dify/pull/30096 * fix(api): force download for HTML previews by @laipz8200 in https://github.com/langgenius/dify/pull/30090 * fix: workflow past version data sync by @zxhlyh in https://github.com/langgenius/dify/pull/30139 * chore: some test by @iamjoel in https://github.com/langgenius/dify/pull/30144 * feat: make the SegmentService.get_segments sort stable by @fatelei in https://github.com/langgenius/dify/pull/30152 * chore: bump version to 1.11.2 by @laipz8200 in https://github.com/langgenius/dify/pull/30088 * fix(api): move cache invalidation outside redis lock to prevent timeout by @Mairuis in https://github.com/langgenius/dify/pull/30150 * fix: prioritize copying selected text by @JeeekXY in https://github.com/langgenius/dify/pull/30141 * fix(web): disable cache for trigger dynamic select options by @Mairuis in https://github.com/langgenius/dify/pull/30161 ## New Contributors * @nourzakhama2003 made their first contribution in https://github.com/langgenius/dify/pull/29306 * @aplulu made their first contribution in https://github.com/langgenius/dify/pull/29611 * @Rickon-dev made their first contribution in https://github.com/langgenius/dify/pull/28673 * @TomoOkuyama made their first contribution in https://github.com/langgenius/dify/pull/29480 * @lin-snow made their first contribution in https://github.com/langgenius/dify/pull/29283 * @Chenyl-Sai made their first contribution in https://github.com/langgenius/dify/pull/29520 * @Angel98518 made their first contribution in https://github.com/langgenius/dify/pull/29675 * @r-hashi01 made their first contribution in https://github.com/langgenius/dify/pull/29757 * @adongfan made their first contribution in https://github.com/langgenius/dify/pull/28986 * @ttaylorr1 made their first contribution in https://github.com/langgenius/dify/pull/29793 * @wcc0077 made their first contribution in https://github.com/langgenius/dify/pull/29810 * @hukurou0 made their first contribution in https://github.com/langgenius/dify/pull/29785 * @AziizBg made their first contribution in https://github.com/langgenius/dify/pull/29950 * @GuangjingYan made their first contribution in https://github.com/langgenius/dify/pull/29884 * @majiayu000 made their first contribution in https://github.com/langgenius/dify/pull/29618 * @myg133 made their first contribution in https://github.com/langgenius/dify/pull/29705 * @ericko-being made their first contribution in https://github.com/langgenius/dify/pull/30022 * @sattosan made their first contribution in https://github.com/langgenius/dify/pull/29845 * @krap730 made their first contribution in https://github.com/langgenius/dify/pull/30070 **Full Changelog**: https://github.com/langgenius/dify/compare/1.11.1...1.11.2