This is an automated email from the ASF dual-hosted git repository.

liuhongyu pushed a change to branch fix/fix_sync_bug
in repository https://gitbox.apache.org/repos/asf/shenyu.git


    from 23954b4de3 Merge branch 'master' into fix/fix_sync_bug
     add e2cb6f3abc [type:feat] mcp server plugin (#5999)
     add e40e30cd2d Bump org.apache.commons:commons-lang3 from 3.12.0 to 3.18.0 
(#6052)
     add 13c70320e7 [feat] optimize aiTokenLimiterPlugin for streaming tokens 
(#6055)
     add 2627a12519 [fix] fix config import (#6051)
     add aca751ae9a [type:feature]  Add Swagger Import Functionality to ShenYu 
Admin (#6050)
     add 7de2558788 [feat] mcp streamable http (#6061)
     add 8f65ce0947 feat: add other infra module template (#6067)
     add 0eaec1e63a feat(ut): add ai plugin proxy unit test (#6070)
     add 9c8b78f782 chore: delete useless empty paths (#6066)
     add d782a64e87 e2e: comment for now (#6073)
     add 319ca4fd9f feat(ut): add ai plugin unit test (#6069)
     add d074596153 Update application.yml (#6064)
     add 2c49c4822e Merge branch 'master' into fix/fix_sync_bug

No new revisions were added by this update.

Summary of changes:
 .github/workflows/e2e-k8s.yml                      |   8 +-
 db/init/mysql/schema.sql                           |  34 +-
 db/init/ob/schema.sql                              |  25 +-
 db/init/og/create-table.sql                        |  27 +-
 db/init/oracle/schema.sql                          |  47 +-
 db/init/pg/create-table.sql                        |  28 +-
 db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql           |  31 +-
 db/upgrade/2.7.0-upgrade-2.7.1-ob.sql              |  29 +-
 db/upgrade/2.7.0-upgrade-2.7.1-og.sql              |  27 +-
 db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql          |  43 +-
 db/upgrade/2.7.0-upgrade-2.7.1-pg.sql              |  28 +-
 pom.xml                                            |  19 +-
 .../admin/config/HttpUtilsConfiguration.java       |  20 +-
 .../shenyu/admin/controller/ApiController.java     |   4 +-
 .../controller/ConfigsExportImportController.java  |   4 +-
 .../admin/controller/DashboardUserController.java  |   4 +-
 .../admin/controller/DiscoveryController.java      |   2 +-
 .../controller/DiscoveryUpstreamController.java    |   2 +-
 .../shenyu/admin/controller/PluginController.java  |   4 +-
 .../admin/controller/PluginHandleController.java   |   4 +-
 .../admin/controller/ProxySelectorController.java  |   2 +-
 .../admin/controller/ResourceController.java       |   4 +-
 .../shenyu/admin/controller/RoleController.java    |   4 +-
 .../shenyu/admin/controller/RuleController.java    |   4 +-
 .../admin/controller/SelectorController.java       |   4 +-
 .../admin/controller/ShenyuDictController.java     |   2 +-
 .../admin/controller/SwaggerImportController.java  |  91 ++
 .../shenyu/admin/controller/TagController.java     |   2 +-
 .../admin/model/dto/SwaggerImportRequest.java      |  70 ++
 ...rdLogService.java => SwaggerImportService.java} |  27 +-
 .../service/impl/SwaggerImportServiceImpl.java     | 151 ++++
 .../service/manager/impl/SwaggerDocParser.java     | 223 ++++-
 .../shenyu/admin/utils/UrlSecurityUtils.java       | 217 +++++
 .../src/main/resources/sql-script/h2/schema.sql    |   7 +-
 .../{index.2a428c0d.css => index.7892d888.css}     |   4 +-
 .../src/main/resources/static/index.c72b2a38.js    |   1 +
 .../src/main/resources/static/index.db384a79.js    |   1 -
 shenyu-admin/src/main/resources/static/index.html  |   4 +-
 ...ImplTest.java => SwaggerImportServiceTest.java} |  48 +-
 shenyu-bootstrap/pom.xml                           |   8 +
 shenyu-client/shenyu-client-core/pom.xml           |  20 +-
 .../apache/shenyu/common/config/ShenyuConfig.java  |  76 ++
 .../apache/shenyu/common/constant/Constants.java   |  15 +
 .../org/apache/shenyu/common/enums/PluginEnum.java |   7 +-
 .../{HttpSchemeEnum.java => SwaggerVersion.java}   |  39 +-
 .../src/main/resources/application.yml             |   1 -
 shenyu-infra/pom.xml                               |   4 +
 .../pom.xml                                        |   2 +-
 .../shenyu/infra/etcd/config}/EtcdConfig.java      |   5 +-
 .../org/apache/shenyu/infra/etcd/EtcdTests.java    |   4 +-
 .../pom.xml                                        |   2 +-
 .../shenyu/infra}/nacos/config/NacosACMConfig.java |   2 +-
 .../shenyu/infra}/nacos/config/NacosConfig.java    |   2 +-
 .../org/apache/shenyu/infra/nacos/NacosTests.java  |   4 +-
 .../pom.xml                                        |   2 +-
 .../java/org/apache/shenyu/infra/x/XConfig.java    |   4 +-
 .../java/org/apache/shenyu/infra/x/XTests.java     |   4 +-
 .../pom.xml                                        |   2 +-
 .../shenyu/infra}/zookeeper/ZookeeperConfig.java   |   3 +-
 .../shenyu/infra/zookeeper/ZookeeperTests.java     |   4 +-
 shenyu-plugin/pom.xml                              |   1 +
 .../plugin/ai/common/strategy/openai/OpenAI.java   |   8 +-
 .../ai/factory/DeepSeekModelFactoryTest.java       |  67 ++
 .../spring/ai/factory/OpenAiModelFactoryTest.java  |  67 ++
 .../ai/registry/AiModelFactoryRegistryTest.java    |  66 ++
 .../ai/common/strategy/AiModelFactoryTest.java     |  31 +-
 .../ai/common/strategy/openai/OpenAITest.java      |  81 ++
 .../shenyu/plugin/ai/proxy/AiProxyPluginTest.java  | 133 +++
 .../ai/proxy/handler/AiProxyPluginHandlerTest.java | 109 +++
 .../ai/token/limiter/AiTokenLimiterPlugin.java     | 139 ++-
 .../base/cache/CommonPluginDataSubscriber.java     |  12 +-
 .../plugin/base/utils/ServerWebExchangeUtils.java  |   2 +-
 .../shenyu-plugin-mcp-server/MCP_TOOL_EXAMPLES.md  | 492 ++++++++++
 .../MCP_TOOL_EXAMPLES_EN.md                        | 499 +++++++++++
 .../shenyu-plugin-mcp-server}/pom.xml              |  72 +-
 .../shenyu/plugin/mcp/server/McpServerPlugin.java  | 644 +++++++++++++
 .../mcp/server/callback/ShenyuToolCallback.java    | 682 ++++++++++++++
 .../server/definition/ShenyuToolDefinition.java    | 110 +++
 .../server/handler/McpServerPluginDataHandler.java | 169 ++++
 .../mcp/server/holder/ShenyuMcpExchangeHolder.java |  40 +-
 .../mcp/server/manager/ShenyuMcpServerManager.java | 629 +++++++++++++
 .../mcp/server/model/McpServerToolParameter.java   | 164 ++++
 .../plugin/mcp/server/model/ShenyuMcpServer.java   |  88 +-
 .../mcp/server/model/ShenyuMcpServerTool.java      | 163 ++++
 .../mcp/server/request/BodyWriterExchange.java     | 114 +++
 .../mcp/server/request/ParameterFormatter.java     |  60 ++
 .../plugin/mcp/server/request/RequestConfig.java   |  81 ++
 .../mcp/server/request/RequestConfigHelper.java    | 248 +++++
 .../NonCommittingMcpResponseDecorator.java         | 276 ++++++
 .../response/ShenyuMcpResponseDecorator.java       | 121 +++
 .../mcp/server/session/McpSessionHelper.java       | 104 +++
 .../server/transport/MessageHandlingResult.java    |  99 ++
 .../ShenyuSseServerTransportProvider.java          | 580 ++++++++++++
 ...henyuStreamableHttpServerTransportProvider.java | 996 +++++++++++++++++++++
 .../mcp/server/transport/SseEventFormatter.java    |  91 ++
 .../transport/StreamableHttpProviderBuilder.java   |  81 ++
 .../plugin/mcp/server/utils/JsonSchemaUtil.java    | 105 +++
 .../param/mapping/strategy/FormDataOperator.java   |  33 +-
 .../param/mapping/strategy/JsonOperator.java       |  48 +-
 .../shenyu-spring-boot-starter-plugin/pom.xml      |   2 +-
 .../pom.xml                                        |   4 +-
 .../mcp/server/McpServerPluginConfiguration.java   |  87 ++
 .../src/main/resources/META-INF/spring.factories   |  37 +-
 .../src/main/resources/META-INF/spring.provides    |   2 +-
 ...rk.boot.autoconfigure.AutoConfiguration.imports |   2 +-
 .../apache/shenyu/web/filter/FileSizeFilter.java   |  20 +-
 106 files changed, 8713 insertions(+), 412 deletions(-)
 copy 
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-feign/src/main/java/org/apache/shenyu/examples/sdk/feign/config/SdkConfig.java
 => 
shenyu-admin/src/main/java/org/apache/shenyu/admin/config/HttpUtilsConfiguration.java
 (70%)
 create mode 100644 
shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/SwaggerImportController.java
 create mode 100644 
shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/SwaggerImportRequest.java
 copy 
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/{OperationRecordLogService.java
 => SwaggerImportService.java} (64%)
 create mode 100644 
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SwaggerImportServiceImpl.java
 create mode 100644 
shenyu-admin/src/main/java/org/apache/shenyu/admin/utils/UrlSecurityUtils.java
 rename shenyu-admin/src/main/resources/static/{index.2a428c0d.css => 
index.7892d888.css} (76%)
 create mode 100644 shenyu-admin/src/main/resources/static/index.c72b2a38.js
 delete mode 100644 shenyu-admin/src/main/resources/static/index.db384a79.js
 copy 
shenyu-admin/src/test/java/org/apache/shenyu/admin/service/{manager/impl/SwaggerDocManagerImplTest.java
 => SwaggerImportServiceTest.java} (52%)
 copy 
shenyu-common/src/main/java/org/apache/shenyu/common/enums/{HttpSchemeEnum.java 
=> SwaggerVersion.java} (70%)
 copy shenyu-infra/{shenyu-infra-redis => shenyu-infra-etcd}/pom.xml (96%)
 copy 
{shenyu-spring-boot-starter/shenyu-spring-boot-starter-sync-data-center/shenyu-spring-boot-starter-sync-data-etcd/src/main/java/org/apache/shenyu/springboot/sync/data/etcd
 => 
shenyu-infra/shenyu-infra-etcd/src/main/java/org/apache/shenyu/infra/etcd/config}/EtcdConfig.java
 (93%)
 copy shenyu-spi/src/test/java/org/apache/shenyu/spi/fixture/NopSPI.java => 
shenyu-infra/shenyu-infra-etcd/src/test/java/org/apache/shenyu/infra/etcd/EtcdTests.java
 (92%)
 copy shenyu-infra/{shenyu-infra-redis => shenyu-infra-nacos}/pom.xml (96%)
 copy 
{shenyu-sync-data-center/shenyu-sync-data-nacos/src/main/java/org/apache/shenyu/sync/data
 => 
shenyu-infra/shenyu-infra-nacos/src/main/java/org/apache/shenyu/infra}/nacos/config/NacosACMConfig.java
 (98%)
 copy 
{shenyu-sync-data-center/shenyu-sync-data-nacos/src/main/java/org/apache/shenyu/sync/data
 => 
shenyu-infra/shenyu-infra-nacos/src/main/java/org/apache/shenyu/infra}/nacos/config/NacosConfig.java
 (98%)
 copy shenyu-spi/src/test/java/org/apache/shenyu/spi/fixture/NopSPI.java => 
shenyu-infra/shenyu-infra-nacos/src/test/java/org/apache/shenyu/infra/nacos/NacosTests.java
 (92%)
 copy shenyu-infra/{shenyu-infra-redis => shenyu-infra-x-module}/pom.xml (96%)
 copy shenyu-spi/src/test/java/org/apache/shenyu/spi/fixture/NopSPI.java => 
shenyu-infra/shenyu-infra-x-module/src/main/java/org/apache/shenyu/infra/x/XConfig.java
 (92%)
 copy shenyu-spi/src/test/java/org/apache/shenyu/spi/fixture/NopSPI.java => 
shenyu-infra/shenyu-infra-x-module/src/test/java/org/apache/shenyu/infra/x/XTests.java
 (92%)
 copy shenyu-infra/{shenyu-infra-redis => shenyu-infra-zookeeper}/pom.xml (96%)
 copy 
{shenyu-sync-data-center/shenyu-sync-data-zookeeper/src/main/java/org/apache/shenyu/sync/data
 => 
shenyu-infra/shenyu-infra-zookeeper/src/main/java/org/apache/shenyu/infra}/zookeeper/ZookeeperConfig.java
 (99%)
 copy shenyu-spi/src/test/java/org/apache/shenyu/spi/fixture/NopSPI.java => 
shenyu-infra/shenyu-infra-zookeeper/src/test/java/org/apache/shenyu/infra/zookeeper/ZookeeperTests.java
 (91%)
 create mode 100644 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-common/src/test/java/org/apache/shenyu/plugin/ai/common/spring/ai/factory/DeepSeekModelFactoryTest.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-common/src/test/java/org/apache/shenyu/plugin/ai/common/spring/ai/factory/OpenAiModelFactoryTest.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-common/src/test/java/org/apache/shenyu/plugin/ai/common/spring/ai/registry/AiModelFactoryRegistryTest.java
 copy 
shenyu-common/src/test/java/org/apache/shenyu/common/utils/SpiLoadFactoryTest.java
 => 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-common/src/test/java/org/apache/shenyu/plugin/ai/common/strategy/AiModelFactoryTest.java
 (55%)
 create mode 100644 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-common/src/test/java/org/apache/shenyu/plugin/ai/common/strategy/openai/OpenAITest.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-proxy/src/test/java/org/apache/shenyu/plugin/ai/proxy/AiProxyPluginTest.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-proxy/src/test/java/org/apache/shenyu/plugin/ai/proxy/handler/AiProxyPluginHandlerTest.java
 create mode 100644 shenyu-plugin/shenyu-plugin-mcp-server/MCP_TOOL_EXAMPLES.md
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/MCP_TOOL_EXAMPLES_EN.md
 copy {shenyu-client/shenyu-client-core => 
shenyu-plugin/shenyu-plugin-mcp-server}/pom.xml (61%)
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/McpServerPlugin.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/callback/ShenyuToolCallback.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/definition/ShenyuToolDefinition.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/handler/McpServerPluginDataHandler.java
 copy 
shenyu-sdk/shenyu-sdk-core/src/main/java/org/apache/shenyu/sdk/core/client/ShenyuSdkClientFactory.java
 => 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/holder/ShenyuMcpExchangeHolder.java
 (57%)
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/manager/ShenyuMcpServerManager.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/model/McpServerToolParameter.java
 copy 
shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/AuthPathApplyDTO.java
 => 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/model/ShenyuMcpServer.java
 (50%)
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/model/ShenyuMcpServerTool.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/BodyWriterExchange.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/ParameterFormatter.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/RequestConfig.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/request/RequestConfigHelper.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/response/NonCommittingMcpResponseDecorator.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/response/ShenyuMcpResponseDecorator.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/session/McpSessionHelper.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/MessageHandlingResult.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/ShenyuSseServerTransportProvider.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/ShenyuStreamableHttpServerTransportProvider.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/SseEventFormatter.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/transport/StreamableHttpProviderBuilder.java
 create mode 100644 
shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/utils/JsonSchemaUtil.java
 copy 
shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/{shenyu-spring-boot-starter-plugin-httpclient
 => shenyu-spring-boot-starter-plugin-mcp-server}/pom.xml (92%)
 create mode 100644 
shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/shenyu-spring-boot-starter-plugin-mcp-server/src/main/java/org/apache/shenyu/springboot/starter/plugin/mcp/server/McpServerPluginConfiguration.java
 copy 
shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/{shenyu-spring-boot-starter-plugin-basic-auth
 => 
shenyu-spring-boot-starter-plugin-mcp-server}/src/main/resources/META-INF/spring.factories
 (91%)
 mode change 100755 => 100644
 copy {shenyu-admin-listener/shenyu-admin-listener-etcd => 
shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/shenyu-spring-boot-starter-plugin-mcp-server}/src/main/resources/META-INF/spring.provides
 (93%)
 copy 
shenyu-spring-boot-starter/shenyu-spring-boot-starter-plugin/{shenyu-spring-boot-starter-plugin-basic-auth
 => 
shenyu-spring-boot-starter-plugin-mcp-server}/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
 (92%)

Reply via email to