Skip to content

Conversation

@homejim
Copy link
Contributor

@homejim homejim commented Jul 11, 2025

… plugin list responses with backward compatibility

Description

Fixes langgenius/dify#22250
During the upgrade process, we encountered an error (reference issue: xxx). I resolved this by introducing a new response_type parameter in the Plugin Daemon.

Fix Details:

  1. Added an optional response_type parameter to the /plugin/{tenantId}/management/list API:
  • If response_type=paged is specified, the endpoint returns a paginated response.
  • Otherwise, it returns the legacy non-paginated format, ensuring backward compatibility with older versions of Dify.
  1. In Dify v1.6.0, the response_type=paged parameter is now included by default when calling this endpoint, aligning it with the updated Plugin Daemon behavior.

Recommended Upgrade Paths:

  • For users who have not yet upgraded:

It's recommended to upgrade Plugin Daemon first, followed by Dify. This ensures a smooth and error-free transition.

  • For users who have already upgraded:

You should first upgrade Dify to v1.6.0 before upgrading Plugin Daemon, to ensure compatibility between components.

Type of Change

  • Bug fix
  • New feature
  • Refactor
  • Performance improvement
  • Other

Essential Checklist

Testing

  • I have tested the changes locally and confirmed they work as expected
  • I have added unit tests where necessary and they pass successfully

Bug Fix (if applicable)

  • I have used GitHub syntax to close the related issue (e.g., Fixes #123 or Closes #123)

Additional Information

Please provide any additional context that would help reviewers understand the changes.

… plugin list responses with backward compatibility
@homejim
Copy link
Contributor Author

homejim commented Jul 11, 2025

@Yeuoly @crazywoola

@crazywoola crazywoola requested a review from Yeuoly July 12, 2025 11:55
@Yeuoly
Copy link
Contributor

Yeuoly commented Jul 21, 2025

As for me, it's not a good implementation that returns data with different schema, it's not so restful, and of course, versions between Dify and daemon should always align, upgrading only one side would make lots of problems, not only this one, such as MCP and Tools OAuth

@homejim
Copy link
Contributor Author

homejim commented Jul 24, 2025

As for me, it's not a good implementation that returns data with different schema, it's not so restful, and of course, versions between Dify and daemon should always align, upgrading only one side would make lots of problems, not only this one, such as MCP and Tools OAuth

You're right about this issue. This is just a solution provided based on the current state, mainly to solve the problems we encountered during the upgrade process. It's essential that all component versions remain consistent. However, during the upgrade process, if dify and daemon are deployed separately, this situation will cause problems now. @Yeuoly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Breaking Changes Between Dify v1.4.1 and Plugin Daemon v0.1.3 Result in Mutual Incompatibility

2 participants