diff --git a/CHANGELOG/en/CHANGELOG-3.1.md b/CHANGELOG/en/CHANGELOG-3.1.md index 2277cf869d23..93a6ece84c69 100644 --- a/CHANGELOG/en/CHANGELOG-3.1.md +++ b/CHANGELOG/en/CHANGELOG-3.1.md @@ -1,4 +1,7 @@ +- [v3.1.0](#v310) + - [Changelog since v3.0.0](#changelog-since-v300) + - [v3.1.0-rc.3](#v310-rc3) - [Changelog since v3.1.0-rc.2](#changelog-since-v310-rc2) @@ -13,6 +16,360 @@ +# v3.1.0 +## 2025-01-08 +### Changelog since v3.0.0 +#### New + +##### Pipeline +- [New] feat: Export pipeline function optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11304) +- [New] feat: Recommended version number template optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11186) +- [New] feat: Git branch/Tag and Svn branch/Tag type variable optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10774) +- [New] Plugin configuration supports linkage between fields [link](http://github.com/TencentBlueKing/bk-ci/issues/11251) +- [New] feat: Optimize PUSH event pre-matching logic [link](http://github.com/TencentBlueKing/bk-ci/issues/11317) +- [New] AI big model integration [link](http://github.com/TencentBlueKing/bk-ci/issues/10825) +- [New] feat: copilot editor supports login-free [link](http://github.com/TencentBlueKing/bk-ci/issues/11290) +- [New] feat: Project settings support administrators to configure the naming conventions of pipelines under the project [link](http://github.com/TencentBlueKing/bk-ci/issues/11057) +- [New] feat: Support setting tags when creating pipelines [link](http://github.com/TencentBlueKing/bk-ci/issues/11055) +- [New] feat: Pipeline variable syntax supports two styles [link](http://github.com/TencentBlueKing/bk-ci/issues/10576) +- [New] [bugfix] okhttp3 Response not closing actively may cause potential memory leak [link](http://github.com/TencentBlueKing/bk-ci/issues/11234) +- [New] Pipeline plugin development custom UI hopes to get the jobid attribute of the container [link](http://github.com/TencentBlueKing/bk-ci/issues/11197) +- [New] [Blue Shield - Reviewed by the Review Committee] [PAC] feat: Pipeline version management mechanism [link](http://github.com/TencentBlueKing/bk-ci/issues/8161) +- [New] [Blue Shield - Reviewed by the Review Committee] [PAC] feat: Create/edit pipelines to support arranging pipelines in Code [link](http://github.com/TencentBlueKing/bk-ci/issues/8125) +- [New] feat: Optimize the editing of drop-down type variable options [link](http://github.com/TencentBlueKing/bk-ci/issues/10747) +- [New] feat: Remove CI administrator related information from pipeline group management [link](http://github.com/TencentBlueKing/bk-ci/issues/11165) +- [New] feat: Custom trigger control callback of trigger adds event type [link](http://github.com/TencentBlueKing/bk-ci/issues/11196) +- [New] feat: When the pipeline runs concurrently, support limiting the number of concurrent calls and queuing [link](http://github.com/TencentBlueKing/bk-ci/issues/10718) +- [New] feat: Recommended version number optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10958) +- [New] feat: Pipeline trigger history supports searching by trigger results [ link ](http://github.com/TencentBlueKing/bk-ci/issues/11006) +- [New] Added a build details view configuration item. When you click a plugin in the build details interface, the default page you enter is the log or configuration tab page. [Link](http://github.com/TencentBlueKing/bk-ci/issues/10808) +- [New] feat: Runtime check whether the authority of the delegate has expired [link](http://github.com/TencentBlueKing/bk-ci/issues/10478) +- [New] feat: When queuing in a mutually exclusive job group, the queue length supports up to 50 [link](http://github.com/TencentBlueKing/bk-ci/issues/10975) +- [New] feat: pipeline list, add label display [link](http://github.com/TencentBlueKing/bk-ci/issues/11054) +- [New] feat: Community version pipeline completion notification, support notification group [link](http://github.com/TencentBlueKing/bk-ci/issues/10976) +- [New] feat: Trigger event replay operation permission control [link](http://github.com/TencentBlueKing/bk-ci/issues/11052) +- [New] feat: Execution triggered by sub-pipeline call, supports retry [link](http://github.com/TencentBlueKing/bk-ci/issues/11015) +- [New] feat: stage review supports checklist confirmation scenarios [link](http://github.com/TencentBlueKing/bk-ci/issues/10920) +- [New] feat: "Execute when all parameters meet the conditions" and "Do not execute when all parameters meet the conditions" in UI mode are converted to Code optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10930) +- [New] feat: Support pipeline indicator monitoring [link](http://github.com/TencentBlueKing/bk-ci/issues/9860) +- [New] feat: Engine and other MQ scenarios are connected to the SCS framework [link](http://github.com/TencentBlueKing/bk-ci/issues/7443) +- [New] Enrich the audit function of pipeline-stage admission, support configuring roles or user groups as auditors [link](http://github.com/TencentBlueKing/bk-ci/issues/10689) +- [New] feat: MR event trigger support WIP [link](http://github.com/TencentBlueKing/bk-ci/issues/10683) +- [New] [PAC] feat: Draft version UI display [link](http://github.com/TencentBlueKing/bk-ci/issues/9861) + +##### Code Repository +- [New] feat: Worker bee MR trigger adds action=edit [link](http://github.com/TencentBlueKing/bk-ci/issues/11024) +- [New] feat: Support managing my OAUTH [link](http://github.com/TencentBlueKing/bk-ci/issues/10995) +- [New] feat: Add build interface for obtaining worker bees and github oauth url [link](http://github.com/TencentBlueKing/bk-ci/issues/10826) + +##### Store +- [New] feat: Support obtaining parent task ID in Post action [link](http://github.com/TencentBlueKing/bk-ci/issues/10968) +- [New] feat:java plugin supports running in a specified java environment [link](http://github.com/TencentBlueKing/bk-ci/issues/10978) +- [New] feat: Add default public plugin display to the plugin list in the plugin management menu [ link ](http://github.com/TencentBlueKing/bk-ci/issues/10472) +- [New] feat: Whether the sdk-related API is displayed in the application list and supports configurability [link](http://github.com/TencentBlueKing/bk-ci/issues/10840) + +##### Environmental Management +- [New] feat: Environment management optimization changes [link](http://github.com/TencentBlueKing/bk-ci/issues/11003) + +##### Log Service +- [New] When accessing the pipeline search log, the search bar above will disappear when querying the search log in the full-screen browser [link](http://github.com/TencentBlueKing/bk-ci/issues/11118) +- [New] [feat] Archive plugin logs 10w+ into a compressed package [link](http://github.com/TencentBlueKing/bk-ci/issues/11183) +- [New] Pipeline log supports AI repair [link](http://github.com/TencentBlueKing/bk-ci/issues/10913) + +###### Permission Center +- [New] feat: Optimized user personal perspective permission management [link](http://github.com/TencentBlueKing/bk-ci/issues/11138) +- [New] feat: Provide openapi interface related to project management [link](http://github.com/TencentBlueKing/bk-ci/issues/11231) +- [New] feat: Optimize the acquisition of user group members under the project [link](http://github.com/TencentBlueKing/bk-ci/issues/11221) +- [New] feat: Optimize user application to join group [link](http://github.com/TencentBlueKing/bk-ci/issues/11219) +- [New] feat: Environment supports resource-level permission management entry [link](http://github.com/TencentBlueKing/bk-ci/issues/11074) +- [New] feat: pipeline list display permission control [link](http://github.com/TencentBlueKing/bk-ci/issues/10895) +- [New] feat: Provides interfaces for obtaining the user groups and renewal of users [link](http://github.com/TencentBlueKing/bk-ci/issues/11136) +- [New] feat: auth service open class interface rectification [link](http://github.com/TencentBlueKing/bk-ci/issues/10403) +- [New] bug: Changes in the returned fields of the query department information interface cause exceptions [link](http://github.com/TencentBlueKing/bk-ci/issues/11151) +- [New] feat: Optimize the synchronization logic of user groups [link](http://github.com/TencentBlueKing/bk-ci/issues/11122) +- [New] feat: oauth2 adds password mode [link](http://github.com/TencentBlueKing/bk-ci/issues/10663) +- [New] feat: Create custom groups and grant group permissions [link](http://github.com/TencentBlueKing/bk-ci/issues/11026) +- [New] feat: Synchronize and store resource group permission data in separate tables [link](http://github.com/TencentBlueKing/bk-ci/issues/10964) +- [New] feat: Project members can be searched by expiration date/user group name [ link ](http://github.com/TencentBlueKing/bk-ci/issues/10892) + +##### project management +- [New] feat: Optimize query project interface [link](http://github.com/TencentBlueKing/bk-ci/issues/11276) +- [New] feat: Fix the invalid change of maximum authorized scope [link](http://github.com/TencentBlueKing/bk-ci/issues/11153) +- [New] feat: Active user record operations and times [link](http://github.com/TencentBlueKing/bk-ci/issues/10891) + +##### Stream +- [New] [stream] Project supports linking to operational products [link](http://github.com/TencentBlueKing/bk-ci/issues/9948) +- [New] [stream] Optimize the retention issue [link](http://github.com/TencentBlueKing/bk-ci/issues/11045) +- [New] feat: Notification method for stream stage review supports enterprise WeChat group [link](http://github.com/TencentBlueKing/bk-ci/issues/10796) + +##### Scheduling +- [New] feat: Optimize the dispatch-sdk dispatch logic's dependency on other services [link](http://github.com/TencentBlueKing/bk-ci/issues/10882) +- [New] feat: No compilation resource optimization environment dependency scheduling [link](http://github.com/TencentBlueKing/bk-ci/issues/11126) +- [New] feat: The builder triggers the user to be adjusted to the pipeline authority holder [link](http://github.com/TencentBlueKing/bk-ci/issues/11117) +- [New] AgentId reuse type conversion issue [link](http://github.com/TencentBlueKing/bk-ci/issues/10915) +- [New] Support for third-party build machine DockerUi interface [link](http://github.com/TencentBlueKing/bk-ci/issues/10962) + + +##### Agent +- [New] feat: pipeline/job concurrency and queue data landing [link](http://github.com/TencentBlueKing/bk-ci/issues/10997) +- [New] [bugfix] The bash plugin unconfigures and there is dirty data [link](http://github.com/TencentBlueKing/bk-ci/issues/11177) +- [New] feat: Enable worker to run in JDK17 [link](http://github.com/TencentBlueKing/bk-ci/issues/10412) +- [New] Worker and agent support Java 17 and Java 8 synchronous operation [link](http://github.com/TencentBlueKing/bk-ci/issues/10586) + +##### OpenApi +- [New] feat: OpenApi provides an interface for forwarding Turbo compilation to accelerate reporting of resource statistics data [link](http://github.com/TencentBlueKing/bk-ci/issues/10508) +- [New] feat: openapi filter optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10679) + +##### Uncategorized +- [New] API automation documentation optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11339) +- [New] feat: Health check optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11336) +- [New] feat: Upgrade openresty to 1.19 [link](http://github.com/TencentBlueKing/bk-ci/issues/11295) +- [New] OpenAPI adds document generation capability [link](http://github.com/TencentBlueKing/bk-ci/issues/7412) +- [New] feat: Upgrade undertow version to solve memory leak problem [link](http://github.com/TencentBlueKing/bk-ci/issues/11300) +- [New] feat: Organize the tag routing of the gateway [link](http://github.com/TencentBlueKing/bk-ci/issues/11050) +- [New] SQL doc document update [link](http://github.com/TencentBlueKing/bk-ci/issues/9974) +- [New] feat: Fix the startup problem of the open source version [link](http://github.com/TencentBlueKing/bk-ci/issues/11202) +- [New] feat: Added Hongmeng platform [link](http://github.com/TencentBlueKing/bk-ci/issues/11191) +- [New] feat: Adjust the helm image to support imageRegistry configuration [link](http://github.com/TencentBlueKing/bk-ci/issues/11171) +- [New] [feat] API documentation optimization-2024-10 batch [link](http://github.com/TencentBlueKing/bk-ci/issues/11107) +- [New] feat: Optimize AESUtil [link](http://github.com/TencentBlueKing/bk-ci/issues/11084) +- [New] feat: Changes in Blue Whale 7.2 version [link](http://github.com/TencentBlueKing/bk-ci/issues/10558) +- [New] feat: Remove the config ns configuration of the docker build plugin [link](http://github.com/TencentBlueKing/bk-ci/issues/10926) +- [New] feat: Newly started POD needs to be warmed up [link](http://github.com/TencentBlueKing/bk-ci/issues/10887) + + +#### optimization + +##### Pipeline +- [Optimization] pref: Optimize the query of installed plug-ins associated with pipelines under pipeline projects [link](http://github.com/TencentBlueKing/bk-ci/issues/11307) +- [Optimization] pref: The file operator related to the pipeline is adjusted to the authority holder of the pipeline [link](http://github.com/TencentBlueKing/bk-ci/issues/11016) +- [New] feat: Source material display optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10733) +- [New] feat: Trigger variable supplement [link](http://github.com/TencentBlueKing/bk-ci/issues/11002) +- [New] feat: When the strategy is "Lock Build Number", the execution interface can modify the current value [link](http://github.com/TencentBlueKing/bk-ci/issues/11089) +- [New] feat: Optimize the display of names in breadcrumbs on pipeline view page/edit page/build details interface [link](http://github.com/TencentBlueKing/bk-ci/issues/10800) +- [New] feat: Job concurrency supports Code configuration [link](http://github.com/TencentBlueKing/bk-ci/issues/10860) +- [New] feat: Third-party build machine jobs can reuse build environments and support Code configuration [link](http://github.com/TencentBlueKing/bk-ci/issues/10254) +- [Optimization] pref: The task before matrix splitting in the pipeline with matrix does not need to be written into the record table [link](http://github.com/TencentBlueKing/bk-ci/issues/10873) +- [Optimization] pref: Optimization of signature verification of sensitive interfaces in Stores [link](http://github.com/TencentBlueKing/bk-ci/issues/10759) + +##### Code Repository +- [Optimization] perf: repository service removes dependency on git command [link](http://github.com/TencentBlueKing/bk-ci/issues/11193) + +##### Credential Management +- [New] feat: My credential list shows creation and update information [link](http://github.com/TencentBlueKing/bk-ci/issues/11023) + +##### Store +- [Optimization] pref: The built-in packaging pipeline of the Store component is now under a unified platform project [link](http://github.com/TencentBlueKing/bk-ci/issues/10475) +- [Optimization] pref: The domain name of the nodejs installation package download address supports returning according to the deployment environment [link](http://github.com/TencentBlueKing/bk-ci/issues/11327) +- [Optimization] pref: Store universal interface encapsulation optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11049) +- [Optimization] perf: Optimize the default plugin query in the plugin management menu [link](http://github.com/TencentBlueKing/bk-ci/issues/11142) +- [Optimization] pref: Adjust the file storage path of the file upload interface [link](http://github.com/TencentBlueKing/bk-ci/issues/10919) +- [Optimization] perf: Store component indicator data field optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10219) +- [Optimization] pref: Optimize the error message when pulling the plugin task.json file content [link](http://github.com/TencentBlueKing/bk-ci/issues/10446) +- [Optimization] pref: Optimize the path and variable adjustment of the public build machine plugin cache area [link](http://github.com/TencentBlueKing/bk-ci/issues/10844) + +##### Environmental Management +- [Optimization] perf: Add some error codes [link](http://github.com/TencentBlueKing/bk-ci/issues/11279) + +##### Stream +- [New] [stream] Optimize the triggering time of large warehouse [link](http://github.com/TencentBlueKing/bk-ci/issues/10861) + +##### Scheduling +- [New] feat: Optimize resource scheduling priority when multiple builds are performed on the same pipeline [link](http://github.com/TencentBlueKing/bk-ci/issues/9897) + +##### project management +- [New] Issue: Fix the problem of querying the entire project table under sample authentication [link](http://github.com/TencentBlueKing/bk-ci/issues/10941) +- [New] feat: Project member management optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10927) + +##### Uncategorized +- [Optimization] perf: The version log date is adjusted to the second-level title [link](http://github.com/TencentBlueKing/bk-ci/issues/11162) +- [Optimization] perf: Change the application schema so that each version can set different configurations [link](http://github.com/TencentBlueKing/bk-ci/issues/10929) +- [New] feat: Interaction optimization when dependent services are not deployed [link](http://github.com/TencentBlueKing/bk-ci/issues/10612) + +#### Fixes + +##### Pipeline +- [Fix] bug: Fix pipeline event replay reporting 500 error [link](http://github.com/TencentBlueKing/bk-ci/issues/11333) +- [Fix] bug: GIT trigger single monitoring [new branch] does not work [link](http://github.com/TencentBlueKing/bk-ci/issues/11338) +- [Fix] fix: Fix the problem of plugin pop-up window being paused before execution [link](http://github.com/TencentBlueKing/bk-ci/issues/11296) +- [Fix] Bug: When saving a pipeline as a template, if the template name is the same as the pipeline name, it will report "The pipeline name is already in use" [link](http://github.com/TencentBlueKing/bk-ci/issues/11264) +- [Fix] bug: Failed to create pipeline group, causing the code base to open PAC and always show "synchronizing" [link](http://github.com/TencentBlueKing/bk-ci/issues/11253) +- [Fix] Bug: The plugin that was canceled due to heartbeat timeout did not refresh the front-end status [link](http://github.com/TencentBlueKing/bk-ci/issues/11265) +- [Fix] Bug: The directory under [PAC].ci has been deleted, but the associated pipeline group has not been deleted and cannot be deleted manually [link](http://github.com/TencentBlueKing/bk-ci/issues/11254) +- [Fix] Bug: When clicking Skip during finally stage execution, the failed job status will be stuck in the execution [link](http://github.com/TencentBlueKing/bk-ci/issues/11143) +- [Fix] feat: Template management-list supports display fields and sorting optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11056) +- [Fix] bug: fix github pull request id out of bounds [link](http://github.com/TencentBlueKing/bk-ci/issues/11146) +- [Fix] feat: Debug records and pipeline job view pages, support "login debugging" [link](http://github.com/TencentBlueKing/bk-ci/issues/10933) +- [New] feat: The trigger condition introduces ${{variables.xxx}} variables and cannot trigger the pipeline [link](http://github.com/TencentBlueKing/bk-ci/issues/10987) +- [Fixed] Bug: The CONTAINER_ID field value inserted into the T_PIPELINE_BUILD_RECORD_TASK table is incorrect in some build scenarios [link](http://github.com/TencentBlueKing/bk-ci/issues/11029) +- [Fix] Bug: The pipeline template was uploaded to the Store, but it could not be found in the "Store" tab when creating a new pipeline [link](http://github.com/TencentBlueKing/bk-ci/issues/10865) +- [Fix] bug: Failed retry display issue on new build details page [link](http://github.com/TencentBlueKing/bk-ci/issues/10735) + +##### Code Repository +- [Fix] bug: When PAC is enabled in the fixed code base, the git_project_id field is empty [link](http://github.com/TencentBlueKing/bk-ci/issues/11167) + +##### Store +- [Fix] Bug: Optimize the error code type attribution problem when the plugin fails to execute [link](http://github.com/TencentBlueKing/bk-ci/issues/11294) +- [Fix] Bug: After the latest version of the plugin is released using the historical version fix method, the branch released using the normal method will inherit the previous [link](http://github.com/TencentBlueKing/bk-ci/issues/11301) +- [Fix] Bug: When different language plugins generate startup commands for the same job, there may be conflicts due to system variables [link](http://github.com/TencentBlueKing/bk-ci/issues/11229) +- [Fix] bug: Optimize the log permissions for viewing Store components [link](http://github.com/TencentBlueKing/bk-ci/issues/11208) +- [Fix] Bug: Optimize the paging data query of the plugin installed in the project, and exclude the built-in pipeline associated with the plugin [link](http://github.com/TencentBlueKing/bk-ci/issues/11210) +- [Fix] bug: Optimize the upload and download of Store component package files [link](http://github.com/TencentBlueKing/bk-ci/issues/11115) +- [Fix] Bug: When updating component associated initialization project information, the old debug project records were not successfully cleared when adding debug project records [link](http://github.com/TencentBlueKing/bk-ci/issues/11011) +- [Fix] Bug: The plugin environment information query interface does not correctly handle the plugin test branch version number [link](http://github.com/TencentBlueKing/bk-ci/issues/10924) + +##### Quality Red Line +- [Fix] Bug: When using pipeline variables to pass in multiple reviewers, the approval does not take effect [link](http://github.com/TencentBlueKing/bk-ci/issues/11127) + +###### Permission Center +- [Fix] bug: Permission management - permission renewal data synchronization [link](http://github.com/TencentBlueKing/bk-ci/issues/11271) +- [Fix] Synchronize data when adding personnel to permission management user group template [link](http://github.com/TencentBlueKing/bk-ci/issues/11217) +- [Fix] feat: Support administrators to view project members [link](http://github.com/TencentBlueKing/bk-ci/issues/9620) + +##### Scheduling +- [Fix] feat: Third-party build machines support using dcoker to run build tasks [link](http://github.com/TencentBlueKing/bk-ci/issues/9820) + +##### Uncategorized +- [Fix] bugfix: Upgrading JDK17 causes worker to be unable to kill the process [link](http://github.com/TencentBlueKing/bk-ci/issues/11320) +- [Fix] bugfix: Agent will log infinitely if monitoring is not enabled [link](http://github.com/TencentBlueKing/bk-ci/issues/11274) +- [Fix] feat: Support viewing version log [link](http://github.com/TencentBlueKing/bk-ci/issues/10938) +- [Fix] bug: Version log pop-up window based on configuration control [link](http://github.com/TencentBlueKing/bk-ci/issues/11260) +- [Fix] bug: Remove illegal placeholder information in international description information [link](http://github.com/TencentBlueKing/bk-ci/issues/11182) +- [Fix] fix UnreachableCode [link](http://github.com/TencentBlueKing/bk-ci/issues/11172) +- [Fix] Bug: Optimize cluster name obtained based on Profile [link](http://github.com/TencentBlueKing/bk-ci/issues/11137) +- [Fix] Archive report plugin creation token is not implemented [link](http://github.com/TencentBlueKing/bk-ci/issues/10693) +- [Fix] Unify the style and content of the top bar drop-down box of the product [link](http://github.com/TencentBlueKing/bk-ci/issues/10939) + +# v3.1.0-rc.6 +## 2025-01-08 +### Changelog since v3.1.0-rc.5 +#### New + +##### Pipeline +- [New] feat: Export pipeline function optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11304) +- [New] feat: Recommended version number template optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11186) +- [New] feat: Git branch/Tag and Svn branch/Tag type variable optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10774) + +###### Permission Center +- [New] feat: Optimized user personal perspective permission management [link](http://github.com/TencentBlueKing/bk-ci/issues/11138) + +##### Uncategorized +- [New] feat: Support managing my OAUTH [link](http://github.com/TencentBlueKing/bk-ci/issues/10995) +- [New] API automation documentation optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11339) +- [New] feat: Health check optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11336) +- [New] [feat] Archive plugin logs 10w+ into a compressed package [link](http://github.com/TencentBlueKing/bk-ci/issues/11183) + +#### optimization + +##### Pipeline +- [Optimization] pref: Optimize the query of installed plug-ins associated with pipelines under pipeline projects [link](http://github.com/TencentBlueKing/bk-ci/issues/11307) + +##### Store +- [Optimization] pref: The built-in packaging pipeline of the Store component is now under a unified platform project [link](http://github.com/TencentBlueKing/bk-ci/issues/10475) + +#### Fixes + +##### Pipeline +- [Fix] bug: Fix pipeline event replay reporting 500 error [link](http://github.com/TencentBlueKing/bk-ci/issues/11333) +- [Fix] bug: GIT trigger single monitoring [new branch] does not work [link](http://github.com/TencentBlueKing/bk-ci/issues/11338) + +##### Store +- [Fix] Bug: Optimize the error code type attribution problem when the plugin fails to execute [link](http://github.com/TencentBlueKing/bk-ci/issues/11294) + +# v3.1.0-rc.5 +## 2024-12-23 +### Changelog since v3.1.0-rc.4 +#### New + +##### Pipeline +- [New] Plugin configuration supports linkage between fields [link](http://github.com/TencentBlueKing/bk-ci/issues/11251) +- [New] feat: Git branch/Tag and Svn branch/Tag type variable optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/10774) +- [New] feat: Optimize PUSH event pre-matching logic [link](http://github.com/TencentBlueKing/bk-ci/issues/11317) +- [New] AI big model integration [link](http://github.com/TencentBlueKing/bk-ci/issues/10825) +- [New] feat: copilot editor supports login-free [link](http://github.com/TencentBlueKing/bk-ci/issues/11290) +- [New] feat: Recommended version number template optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11186) +- [New] [Blue Shield - Reviewed by the Review Committee] [PAC] feat: Pipeline version management mechanism [link](http://github.com/TencentBlueKing/bk-ci/issues/8161) +- [New] feat: Runtime check whether the authority of the delegate has expired [link](http://github.com/TencentBlueKing/bk-ci/issues/10478) + +###### Permission Center +- [New] feat: Provide openapi interface related to project management [link](http://github.com/TencentBlueKing/bk-ci/issues/11231) + +##### project management +- [New] feat: Optimize query project interface [link](http://github.com/TencentBlueKing/bk-ci/issues/11276) + +##### Stream +- [New] [stream] Project supports linking to operational products [link](http://github.com/TencentBlueKing/bk-ci/issues/9948) + +##### Scheduling +- [New] feat: Optimize the dispatch-sdk dispatch logic's dependency on other services [link](http://github.com/TencentBlueKing/bk-ci/issues/10882) + +##### Uncategorized +- [New] feat: Upgrade openresty to 1.19 [link](http://github.com/TencentBlueKing/bk-ci/issues/11295) +- [New] OpenAPI adds document generation capability [link](http://github.com/TencentBlueKing/bk-ci/issues/7412) +- [New] feat: Upgrade undertow version to solve memory leak problem [link](http://github.com/TencentBlueKing/bk-ci/issues/11300) +- [New] SQL doc document update [link](http://github.com/TencentBlueKing/bk-ci/issues/9974) + +#### optimization + +##### Store +- [Optimization] pref: The domain name of the nodejs installation package download address supports returning according to the deployment environment [link](http://github.com/TencentBlueKing/bk-ci/issues/11327) +- [Optimization] pref: Store universal interface encapsulation optimization [link](http://github.com/TencentBlueKing/bk-ci/issues/11049) + +##### Environmental Management +- [Optimization] perf: Add some error codes [link](http://github.com/TencentBlueKing/bk-ci/issues/11279) + +#### Fixes + +##### Pipeline +- [Fix] fix: Fix the problem of plugin pop-up window being paused before execution [ link ](http://github.com/TencentBlueKing/bk-ci/issues/11296) + +##### Store +- [Fix] Bug: After the latest version of the plugin is released using the historical version fix method, the branch released using the normal method will inherit the previous [link](http://github.com/TencentBlueKing/bk-ci/issues/11301) + +##### Uncategorized +- [Fix] bugfix: Upgrading JDK17 causes worker to be unable to kill the process [link](http://github.com/TencentBlueKing/bk-ci/issues/11320) + +# v3.1.0-rc.4 +## 2024-12-05 +### Changelog since v3.1.0-rc.3 +#### New + +##### Pipeline +- [New] feat: Project settings support administrators to configure the naming conventions of pipelines under the project [link](http://github.com/TencentBlueKing/bk-ci/issues/11057) +- [New] feat: Support setting tags when creating pipelines [link](http://github.com/TencentBlueKing/bk-ci/issues/11055) +- [New] Pipeline plugin development custom UI hopes to get the jobid attribute of the container [link](http://github.com/TencentBlueKing/bk-ci/issues/11197) +- [New] feat: Custom trigger control callback of trigger adds event type [link](http://github.com/TencentBlueKing/bk-ci/issues/11196) + +##### Uncategorized +- [New] feat: Organize the tag routing of the gateway [link](http://github.com/TencentBlueKing/bk-ci/issues/11050) +- [New] feat: My credential list shows creation and update information [link](http://github.com/TencentBlueKing/bk-ci/issues/11023) +- [New] Worker and agent support Java 17 and Java 8 synchronous operation [link](http://github.com/TencentBlueKing/bk-ci/issues/10586) +- [New] feat: Engine and other MQ scenarios are connected to the SCS framework [link](http://github.com/TencentBlueKing/bk-ci/issues/7443) + +#### optimization + +##### Code Repository +- [Optimization] perf: repository service removes dependency on git command [link](http://github.com/TencentBlueKing/bk-ci/issues/11193) + +#### Fixes + +##### Pipeline +- [Fix] Bug: When saving a pipeline as a template, if the template name is the same as the pipeline name, it will report "The pipeline name is already in use" [link](http://github.com/TencentBlueKing/bk-ci/issues/11264) +- [Fix] bug: Failed to create pipeline group, causing the code base to open PAC and always show "synchronizing" [link](http://github.com/TencentBlueKing/bk-ci/issues/11253) +- [Fix] Bug: The plugin that was canceled due to heartbeat timeout did not refresh the front-end status [link](http://github.com/TencentBlueKing/bk-ci/issues/11265) +- [Fix] Bug: The directory under [PAC].ci has been deleted, but the associated pipeline group has not been deleted and cannot be deleted manually [link](http://github.com/TencentBlueKing/bk-ci/issues/11254) + +###### Permission Center +- [Fix] bug: Permission management - permission renewal data synchronization [link](http://github.com/TencentBlueKing/bk-ci/issues/11271) + +##### Scheduling +- [Fix] feat: Third-party build machines support using dcoker to run build tasks [link](http://github.com/TencentBlueKing/bk-ci/issues/9820) + +##### Uncategorized +- [Fix] bugfix: Agent will log infinitely if monitoring is not enabled [link](http://github.com/TencentBlueKing/bk-ci/issues/11274) +- [Fix] feat: Support viewing version log [link](http://github.com/TencentBlueKing/bk-ci/issues/10938) +- [Fix] bug: Version log pop-up window based on configuration control [link](http://github.com/TencentBlueKing/bk-ci/issues/11260) + # v3.1.0-rc.3 ## 2024-11-22 ### Changelog since v3.1.0-rc.2 @@ -110,6 +467,7 @@ - [Fix] bug: Remove illegal placeholder information in international description information [link](http://github.com/TencentBlueKing/bk-ci/issues/11182) - [Fix] fix UnreachableCode [link](http://github.com/TencentBlueKing/bk-ci/issues/11172) - [Fix] Bug: Optimize cluster name obtained based on Profile [link](http://github.com/TencentBlueKing/bk-ci/issues/11137) + # v3.1.0-rc.2 ## 2024-10-26 ## Changelog since v3.1.0-rc.1 diff --git a/CHANGELOG/zh_CN/CHANGELOG-3.0.md b/CHANGELOG/zh_CN/CHANGELOG-3.0.md index dbfae1cbd9c9..cceca5f70dee 100644 --- a/CHANGELOG/zh_CN/CHANGELOG-3.0.md +++ b/CHANGELOG/zh_CN/CHANGELOG-3.0.md @@ -1,8 +1,11 @@ +- [v3.0.12](#v3012) + - [Changelog since v3.0.11](#changelog-since-v3011) + - [v3.0.11](#v3011) - [Changelog since v3.0.0](#changelog-since-v300) -- [v3.0.1-v3.0.11] - - 因镜像版本与仓库版本没有统一,v3.0.1-v3.0.11已有镜像版本,但没有仓库版本,所以仓库这些版本直接跳过 +- [v3.0.1-v3.0.10] + - 因镜像版本与仓库版本没有统一,v3.0.1-v3.0.10已有镜像版本,但没有仓库版本,所以仓库这些版本直接跳过 - [v3.0.0](#v300) - [Changelog since v2.1.0](#changelog-since-v210) - [v3.0.0-rc.1](#v300-rc1) @@ -13,6 +16,14 @@ +# v3.0.12 +## 2025-01-08 +### Changelog since v3.0.11 +#### 修复 + +##### 未分类 +- [修复] bug: 修复v3.0版本打helm chart包时报错 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11391) + # v3.0.11 ## 2024-12-05 ### Changelog since v3.0.0 diff --git a/CHANGELOG/zh_CN/CHANGELOG-3.1.md b/CHANGELOG/zh_CN/CHANGELOG-3.1.md index 250a339f930d..5d468fff934a 100644 --- a/CHANGELOG/zh_CN/CHANGELOG-3.1.md +++ b/CHANGELOG/zh_CN/CHANGELOG-3.1.md @@ -1,4 +1,10 @@ +- [v3.1.0](#v310) + - [Changelog since v3.0.0](#changelog-since-v300) + +- [v3.1.0-rc.6](#v310-rc6) + - [Changelog since v3.1.0-rc.5](#changelog-since-v310-rc5) + - [v3.1.0-rc.5](#v310-rc5) - [Changelog since v3.1.0-rc.4](#changelog-since-v310-rc4) @@ -19,6 +25,266 @@ +# v3.1.0 +## 2025-01-08 +### Changelog since v3.0.0 +#### 新增 + +##### 流水线 +- [新增] feat:导出流水线功能优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11304) +- [新增] feat:推荐版本号模版优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11186) +- [新增] feat:Git分支/Tag和Svn分支/Tag类型的变量优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10774) +- [新增] 插件配置支持字段间联动 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11251) +- [新增] feat: 优化PUSH事件预匹配逻辑 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11317) +- [新增] AI大模型融入 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10825) +- [新增] feat: copilot 编辑器支持免登录 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11290) +- [新增] feat:项目设置支持管理员配置项目下流水线的命名规范 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11057) +- [新增] feat:创建流水线时支持设置标签 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11055) +- [新增] feat:流水线变量语法支持两种风格 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10576) +- [新增] [bugfix] okhttp3 Response 不主动关闭会有潜在的内存泄露问题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11234) +- [新增] 流水线插件开发自定义UI希望可以获取到container 的 jobid 属性 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11197) +- [新增] 【蓝盾-评审会已评审】【PAC】feat:流水线版本管理机制 [链接](http://github.com/TencentBlueKing/bk-ci/issues/8161) +- [新增] 【蓝盾-评审会已评审】【PAC】feat:新建/编辑流水线支持以 Code 方式编排流水线 [链接](http://github.com/TencentBlueKing/bk-ci/issues/8125) +- [新增] feat:下拉类型变量选项编辑优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10747) +- [新增] feat:流水线组管理去掉CI管理员相关信息 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11165) +- [新增] feat: 触发器的自定义触发控制回调增加事件类型 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11196) +- [新增] feat:流水线并发运行时,支持限制并发个数和排队 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10718) +- [新增] feat:推荐版本号优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10958) +- [新增] feat:流水线触发历史支持按照触发结果搜索 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11006) +- [新增] 增加构建详情的查看配置项,在构建详情界面点击插件时,默认进入的是 日志 or 配置 Tab页面。 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10808) +- [新增] feat:运行时校验权限代持人权限是否已失效 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10478) +- [新增] feat:Job 互斥组排队时,队列长度支持最长到 50 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10975) +- [新增] feat:流水线列表,增加标签展示 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11054) +- [新增] feat:社区版流水线完成通知,支持通知组 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10976) +- [新增] feat:触发事件重放操作权限控制 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11052) +- [新增] feat:通过子流水线调用触发的执行,支持重试 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11015) +- [新增] feat:stage 审核支持 checklist 确认场景 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10920) +- [新增] feat: UI方式下的「所有参数满足条件时执行」和「所有参数满足条件时不执行」转为Code 优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10930) +- [新增] feat:支持流水线指标监控 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9860) +- [新增] feat: 引擎等MQ场景接入SCS框架 [链接](http://github.com/TencentBlueKing/bk-ci/issues/7443) +- [新增] 丰富流水线-stage准入的审核功能,支持配置角色或用户组作为审核人 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10689) +- [新增] feat:MR 事件触发器支持 WIP [链接](http://github.com/TencentBlueKing/bk-ci/issues/10683) +- [新增] 【PAC】feat:草稿版本UI展示 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9861) + +##### 代码库 +- [新增] feat:工蜂 MR 触发增加 action=edit [链接](http://github.com/TencentBlueKing/bk-ci/issues/11024) +- [新增] feat:支持管理我的 OAUTH [链接](http://github.com/TencentBlueKing/bk-ci/issues/10995) +- [新增] feat: 增加获取工蜂和github oauth url的build接口 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10826) + +##### 研发商店 +- [新增] feat:Post action 中支持获取父任务ID [链接](http://github.com/TencentBlueKing/bk-ci/issues/10968) +- [新增] feat:java插件支持在指定的java环境下运行 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10978) +- [新增] feat: 插件管理菜单对应插件列表增加默认公共插件显示 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10472) +- [新增] feat:sdk相关的api是否显示在申请列表中支持可配置化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10840) + +##### 环境管理 +- [新增] feat: 环境管理优化改动 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11003) + +##### 日志服务 +- [新增] 访问流水线搜索日志,全屏浏览器查询搜索的日志,上方的搜索栏会消失 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11118) +- [新增] [feat] 插件日志10w+即归档为压缩包 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11183) +- [新增] 流水线日志支持AI修复 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10913) + +##### 权限中心 +- [新增] feat:用户个人视角 权限管理优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11138) +- [新增] feat:提供项目管理相关openapi接口 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11231) +- [新增] feat:获取项目下用户组成员优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11221) +- [新增] feat:用户申请加入组优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11219) +- [新增] feat:环境支持资源级别的权限管理入口 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11074) +- [新增] feat:流水线列表展示权限控制 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10895) +- [新增] feat : 提供 获取用户加入的用户组、续期接口 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11136) +- [新增] feat:auth服务 open类接口整改 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10403) +- [新增] bug:查询部门信息接口 返回字段变动导致异常 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11151) +- [新增] feat:同步用户组逻辑优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11122) +- [新增] feat:oauth2 增加密码模式 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10663) +- [新增] feat:创建自定义组并赋予组组权限 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11026) +- [新增] feat:同步并分表存储资源组权限数据 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10964) +- [新增] feat:项目成员支持按照过期时间/用户组名称搜索 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10892) + +##### 项目管理 +- [新增] feat:查询项目接口优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11276) +- [新增] feat:最大可授权范围更改无效修复 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11153) +- [新增] feat:活跃用户记录操作和次数 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10891) + +##### Stream +- [新增] [stream] 项目支持关联到运营产品 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9948) +- [新增] [stream] 存留问题优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11045) +- [新增] feat:stream stage 审核的通知方式支持企业微信群 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10796) + +##### 调度 +- [新增] feat:优化dispatch-sdk调度逻辑对其他服务的依赖 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10882) +- [新增] feat:无编译资源优化环境依赖调度 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11126) +- [新增] feat: 构建机触发用户调整为流水线权限代持人 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11117) +- [新增] AgentId复用类型转换问题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10915) +- [新增] 第三方构建机DockerUi界面支持 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10962) + + +##### Agent +- [新增] feat:流水线/Job并发和排队数据落地 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10997) +- [新增] [bugfix] bash插件取消配置<脚本返回非零时归档文件>存在脏数据 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11177) +- [新增] feat: 让worker支持在JDK17中运行 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10412) +- [新增] worker和agent支持java17和java8同步运行 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10586) + +##### OpenApi +- [新增] feat:OpenApi提供转发Turbo编译加速上报资源统计数据接口 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10508) +- [新增] feat: openapi filter 优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10679) + +##### 未分类 +- [新增] API自动化文档优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11339) +- [新增] feat: 健康检查优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11336) +- [新增] feat: 升级openresty到1.19 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11295) +- [新增] openapi新增文档生成能力 [链接](http://github.com/TencentBlueKing/bk-ci/issues/7412) +- [新增] feat: 升级undertow版本解决内存泄漏问题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11300) +- [新增] feat: 整理网关的tag路由 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11050) +- [新增] sql doc 文档更新 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9974) +- [新增] feat: 修复开源版启动问题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11202) +- [新增] feat: 新增鸿蒙平台 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11191) +- [新增] feat: 调整helm的镜像使其支持配置imageRegistry [链接](http://github.com/TencentBlueKing/bk-ci/issues/11171) +- [新增] [feat] API文档优化-2024-10批次 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11107) +- [新增] feat: 优化AESUtil [链接](http://github.com/TencentBlueKing/bk-ci/issues/11084) +- [新增] feat: 蓝鲸7.2版本的改动 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10558) +- [新增] feat: 把docker build插件的config ns配置给去掉 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10926) +- [新增] feat: 新启动的POD需要热身 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10887) + + +#### 优化 + +##### 流水线 +- [优化] pref:优化流水线项目下已安装插件关联流水线查询 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11307) +- [优化] pref:流水线相关的文件操作人调整为流水线的权限代持人 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11016) +- [新增] feat:源材料展示优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10733) +- [新增] feat: 触发器变量补充 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11002) +- [新增] feat:当策略为「锁定构建号」时,执行界面可以修改当前值 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11089) +- [新增] feat:流水线查看页面/编辑页面/构建详情界面 面包屑中的名字展示优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10800) +- [新增] feat:Job 并发支持 Code 配置 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10860) +- [新增] feat:第三方构建机 Job 间复用构建环境支持 Code 配置 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10254) +- [优化] pref:带矩阵的流水线运行矩阵分裂前的task任务无需写入记录表 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10873) +- [优化] pref:研发商店敏感接口签名校验优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10759) + +##### 代码库 +- [优化] perf: repository服务去掉对git命令依赖 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11193) + +##### 凭证管理 +- [新增] feat:我的凭证列表展示创建和更新信息 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11023) + +##### 研发商店 +- [优化] pref:研发商店组件内置打包流水线都归属到统一的平台项目下 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10475) +- [优化] pref:nodejs安装包下载地址域名支持按部署环境返回 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11327) +- [优化] pref:研发商店通用化接口封装优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11049) +- [优化] perf:优化插件管理菜单默认插件查询 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11142) +- [优化] pref:对文件上传接口的文件存储路径进行调整 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10919) +- [优化] perf:研发商店组件指标数据字段优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10219) +- [优化] pref:拉取插件task.json文件内容报错提示优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10446) +- [优化] pref:公共构建机插件缓存区路径和变量调整优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10844) + +##### 环境管理 +- [优化] perf: 增加部分错误码 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11279) + +##### Stream +- [新增] [stream] 优化大仓触发耗时 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10861) + +##### 调度 +- [新增] feat:同一流水线多次构建时资源调度优先级优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9897) + +##### 项目管理 +- [新增] issue: 修复sample鉴权下查project全表的问题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10941) +- [新增] feat:项目成员管理优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10927) + +##### 未分类 +- [优化] perf: 版本日志日期调整为二级标题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11162) +- [优化] perf: 应用Schema改为每个版本都可以设置不同的配置 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10929) +- [新增] feat:依赖的服务未部署时的交互优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10612) + +#### 修复 + +##### 流水线 +- [修复] bug: 修复流水线事件重放报500错误 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11333) +- [修复] bug: GIT触发器单独监听[新增分支]不生效 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11338) +- [修复] fix: 执行前暂停的插件弹窗问题处理 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11296) +- [修复] bug: 流水线另存为模版,模版名字与流水线名字一样,会报"流水线名称已被使用" [链接](http://github.com/TencentBlueKing/bk-ci/issues/11264) +- [修复] bug: 创建流水线组失败,导致代码库开启PAC一直显示同步中 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11253) +- [修复] bug: 心跳超时被取消的插件没有刷新前端状态 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11265) +- [修复] bug: [PAC].ci下的目录已经删除,但是关联的流水线组没有删除,也无法手工删除 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11254) +- [修复] bug: finally stage执行时点击跳过,失败的job状态会卡在执行中 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11143) +- [修复] feat:模版管理-列表支持展示字段和排序优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11056) +- [修复] bug: 修复github pull request id越界 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11146) +- [修复] feat: 调试记录和流水线 Job 查看页面,支持「登录调试」 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10933) +- [新增] feat: 触发器条件引入${{variables.xxx}}变量触发不了流水线 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10987) +- [修复] bug:某些构建场景下插入T_PIPELINE_BUILD_RECORD_TASK表的CONTAINER_ID字段值错误 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11029) +- [修复] bug:上架流水线模板到研发商店,但是新建流水线的时候在“研发商店”Tab搜不出来 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10865) +- [修复] bug: 新构建详情页的失败重试展示问题 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10735) + +##### 代码库 +- [修复] bug: 修复代码库开启PAC时,git_project_id字段为空 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11167) + +##### 研发商店 +- [修复] bug:插件执行失败时的错误码类型归属错误问题优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11294) +- [修复] bug:插件最新版本使用历史版本修复方式发布后,再用普通方式发布的分支会继承上一次的 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11301) +- [修复] bug:同一个job下不同语言的插件生成启动命令时可能会因为系统变量冲突 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11229) +- [修复] bug:研发商店组件上架查看日志权限优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11208) +- [修复] bug:优化项目下安装插件分页数据查询,排除与插件关联的内置流水线 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11210) +- [修复] bug:研发商店组件包文件上传下载优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11115) +- [修复] bug:修复更新组件关联初始化项目信息时,新增调试项目记录时未成功把旧的调试项目记录清理 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11011) +- [修复] bug:查插件环境信息接口未正确处理插件测试分支版本号情况 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10924) + +##### 质量红线 +- [修复] bug: 使用流水线变量传入多个审核人时,审批不生效 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11127) + +##### 权限中心 +- [修复] bug: 权限管理-权限续期数据同步 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11271) +- [修复] 权限管理用户组添加人员模板同步数据 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11217) +- [修复] feat:支持管理员查看项目成员 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9620) + +##### 调度 +- [修复] feat:第三方构建机支持使用 dcoker 运行构建任务 [链接](http://github.com/TencentBlueKing/bk-ci/issues/9820) + +##### 未分类 +- [修复] bugfix: 升级JDK17导致worker无法强杀进程 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11320) +- [修复] bugfix: Agent没有开启监控会无限打日志 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11274) +- [修复] feat:支持查看版本日志 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10938) +- [修复] bug: 版本日志根据配置控制弹框 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11260) +- [修复] bug: 去除国际化描述信息中的非法占位符信息 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11182) +- [修复] fix UnreachableCode [链接](http://github.com/TencentBlueKing/bk-ci/issues/11172) +- [修复] bug:根据Profile获取集群名称优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11137) +- [修复] 归档报告插件创建token没有实现 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10693) +- [修复] 产品的顶栏下拉框样式和内容统一规范 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10939) + +# v3.1.0-rc.6 +## 2025-01-08 +### Changelog since v3.1.0-rc.5 +#### 新增 + +##### 流水线 +- [新增] feat:导出流水线功能优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11304) +- [新增] feat:推荐版本号模版优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11186) +- [新增] feat:Git分支/Tag和Svn分支/Tag类型的变量优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10774) + +##### 权限中心 +- [新增] feat:用户个人视角 权限管理优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11138) + +##### 未分类 +- [新增] feat:支持管理我的 OAUTH [链接](http://github.com/TencentBlueKing/bk-ci/issues/10995) +- [新增] API自动化文档优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11339) +- [新增] feat: 健康检查优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11336) +- [新增] [feat] 插件日志10w+即归档为压缩包 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11183) + +#### 优化 + +##### 流水线 +- [优化] pref:优化流水线项目下已安装插件关联流水线查询 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11307) + +##### 研发商店 +- [优化] pref:研发商店组件内置打包流水线都归属到统一的平台项目下 [链接](http://github.com/TencentBlueKing/bk-ci/issues/10475) + +#### 修复 + +##### 流水线 +- [修复] bug: 修复流水线事件重放报500错误 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11333) +- [修复] bug: GIT触发器单独监听[新增分支]不生效 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11338) + +##### 研发商店 +- [修复] bug:插件执行失败时的错误码类型归属错误问题优化 [链接](http://github.com/TencentBlueKing/bk-ci/issues/11294) + # v3.1.0-rc.5 ## 2024-12-23 ### Changelog since v3.1.0-rc.4 diff --git a/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceGroupSyncService.kt b/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceGroupSyncService.kt index dd986dbebbda..477c5043982e 100644 --- a/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceGroupSyncService.kt +++ b/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceGroupSyncService.kt @@ -29,6 +29,7 @@ package com.tencent.devops.auth.provider.rbac.service import com.tencent.bk.sdk.iam.constants.ManagerScopesEnum import com.tencent.bk.sdk.iam.dto.V2PageInfoDTO +import com.tencent.bk.sdk.iam.dto.manager.GroupMemberVerifyInfo import com.tencent.bk.sdk.iam.dto.manager.dto.SearchGroupDTO import com.tencent.bk.sdk.iam.exception.IamException import com.tencent.bk.sdk.iam.service.v2.V2ManagerService @@ -161,10 +162,16 @@ class RbacPermissionResourceGroupSyncService @Autowired constructor( if (deptService.isUserDeparted(memberId)) { return@forEach } - val verifyResults = iamV2ManagerService.verifyGroupValidMember( - memberId, - groupInfos.joinToString(",") { it.iamGroupId.toString() } - ) + // 获取用户加入组的有效期 + val groupIds = groupInfos.map { it.iamGroupId } + val verifyResults = mutableMapOf() + groupIds.chunked(20).forEach { batchGroupIds -> + val batchVerifyGroupValidMember = iamV2ManagerService.verifyGroupValidMember( + memberId, + batchGroupIds.joinToString(",") + ) + verifyResults.putAll(batchVerifyGroupValidMember) + } verifyResults.forEach { (groupId, verifyResult) -> if (verifyResult.belong == true && verifyResult.expiredAt > LocalDateTime.now().timestamp()) { logger.info("The member of group needs to be renewed:$projectCode|$groupId|$memberId") diff --git a/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceMemberService.kt b/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceMemberService.kt index b0ad89bd2453..9c44f61526e1 100644 --- a/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceMemberService.kt +++ b/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionResourceMemberService.kt @@ -589,7 +589,7 @@ class RbacPermissionResourceMemberService( groupId: Int, memberRenewalDTO: GroupMemberRenewalDTO ): Boolean { - logger.info("renewal group member|$userId|$projectCode|$resourceType|$groupId") + logger.info("renewal group member|$userId|$projectCode|$resourceType|$groupId|${memberRenewalDTO.expiredAt}") val managerMemberGroupDTO = GroupMemberRenewApplicationDTO.builder() .groupIds(listOf(groupId)) .expiredAt(memberRenewalDTO.expiredAt) diff --git a/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionService.kt b/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionService.kt index 3523cbf55445..447bb9168ded 100644 --- a/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionService.kt +++ b/src/backend/ci/core/auth/biz-auth/src/main/kotlin/com/tencent/devops/auth/provider/rbac/service/RbacPermissionService.kt @@ -51,6 +51,7 @@ import com.tencent.devops.common.auth.rbac.utils.RbacAuthUtils import com.tencent.devops.common.client.Client import com.tencent.devops.common.service.trace.TraceTag import com.tencent.devops.common.service.utils.LogUtils +import com.tencent.devops.process.api.service.ServicePipelineViewResource import com.tencent.devops.process.api.user.UserPipelineViewResource import org.slf4j.LoggerFactory import org.slf4j.MDC @@ -360,6 +361,30 @@ class RbacPermissionService( projectCode = projectCode, resourceType = resourceType ) + + resourceType == AuthResourceType.PIPELINE_DEFAULT.value -> { + val authViewPipelineIds = instanceMap[AuthResourceType.PIPELINE_GROUP.value]?.let { authViewIds -> + client.get(ServicePipelineViewResource::class).listPipelineIdByViewIds( + projectId = projectCode, + viewIdsEncode = authViewIds + ).data + } ?: emptyList() + + val authPipelineIamIds = instanceMap[AuthResourceType.PIPELINE_DEFAULT.value] ?: emptyList() + val pipelineIds = mutableSetOf().apply { + addAll(authViewPipelineIds) + addAll( + getFinalResourceCodes( + projectCode = projectCode, + resourceType = resourceType, + iamResourceCodes = authPipelineIamIds, + createUser = userId + ) + ) + } + pipelineIds.toList() + } + // 返回具体资源列表 else -> { val iamResourceCodes = instanceMap[resourceType] ?: emptyList() diff --git a/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/pojo/ErrorType.kt b/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/pojo/ErrorType.kt index 1f453fec3be0..99db847acedd 100644 --- a/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/pojo/ErrorType.kt +++ b/src/backend/ci/core/common/common-api/src/main/kotlin/com/tencent/devops/common/api/pojo/ErrorType.kt @@ -36,6 +36,7 @@ enum class ErrorType( val typeName: String, val num: Int ) { + // 非常注意:此关联前端展示的图标,前端枚举需要同步更新 SYSTEM("system", 0), // 0 系统运行报错 USER("user", 1), // 1 用户配置报错 THIRD_PARTY("thirdParty", 2), // 2 第三方系统接入错误 diff --git a/src/backend/ci/core/log/api-log/src/main/kotlin/com/tencent/devops/log/api/print/ServiceLogPrintResource.kt b/src/backend/ci/core/log/api-log/src/main/kotlin/com/tencent/devops/log/api/print/ServiceLogPrintResource.kt index d0332cd1afaa..28f4142d9df1 100644 --- a/src/backend/ci/core/log/api-log/src/main/kotlin/com/tencent/devops/log/api/print/ServiceLogPrintResource.kt +++ b/src/backend/ci/core/log/api-log/src/main/kotlin/com/tencent/devops/log/api/print/ServiceLogPrintResource.kt @@ -127,7 +127,7 @@ interface ServiceLogPrintResource { executeCount: Int?, @Parameter(description = "插件的存储模式", required = false) @QueryParam("logStorageMode") - logStorageMode: LogStorageMode? = LogStorageMode.UPLOAD, + logStorageMode: LogStorageMode? = null, @Parameter(description = "job id", required = false) @QueryParam("userJobId") jobId: String?, diff --git a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/dao/LogStatusDao.kt b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/dao/LogStatusDao.kt index b9e7835141b5..e6c94a198d20 100644 --- a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/dao/LogStatusDao.kt +++ b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/dao/LogStatusDao.kt @@ -46,26 +46,27 @@ class LogStatusDao { subTags: String?, containerHashId: String?, executeCount: Int, - logStorageMode: LogStorageMode, + logStorageMode: LogStorageMode?, finish: Boolean, jobId: String?, stepId: String? ) { with(TLogStatus.T_LOG_STATUS) { - dslContext.insertInto(this) + val update = dslContext.insertInto(this) .set(BUILD_ID, buildId) .set(TAG, tag) .set(SUB_TAG, subTags) .set(EXECUTE_COUNT, executeCount) .set(JOB_ID, containerHashId) .set(FINISHED, finish) - .set(MODE, logStorageMode.name) + .set(USER_JOB_ID, jobId) .set(STEP_ID, stepId) - .onDuplicateKeyUpdate() + logStorageMode?.let { update.set(MODE, it.name) } + update.onDuplicateKeyUpdate() .set(FINISHED, finish) - .set(MODE, logStorageMode.name) - .execute() + logStorageMode?.let { update.set(MODE, it.name) } + update.execute() } } diff --git a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/event/LogStatusEvent.kt b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/event/LogStatusEvent.kt index 17e56c21fd3e..3b0e6e63e6a8 100644 --- a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/event/LogStatusEvent.kt +++ b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/event/LogStatusEvent.kt @@ -44,7 +44,7 @@ data class LogStatusEvent( val userJobId: String?, val stepId: String?, val executeCount: Int?, - val logStorageMode: LogStorageMode? = LogStorageMode.UPLOAD, + val logStorageMode: LogStorageMode?, override var retryTime: Int = 2, override var delayMills: Int = 0 ) : ILogEvent(buildId, retryTime, delayMills) diff --git a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/resources/ServiceLogPrintResourceImpl.kt b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/resources/ServiceLogPrintResourceImpl.kt index f03fc6dda1de..25a06feeea40 100644 --- a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/resources/ServiceLogPrintResourceImpl.kt +++ b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/resources/ServiceLogPrintResourceImpl.kt @@ -86,6 +86,7 @@ class ServiceLogPrintResourceImpl @Autowired constructor( subTag = subTag, jobId = containerHashId, executeCount = executeCount, + logStorageMode = null, userJobId = jobId, stepId = stepId ) diff --git a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/service/LogStatusService.kt b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/service/LogStatusService.kt index a7db4c0466fd..db2e6098ef99 100644 --- a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/service/LogStatusService.kt +++ b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/service/LogStatusService.kt @@ -63,7 +63,7 @@ class LogStatusService @Autowired constructor( subTags = subTag ?: "", containerHashId = containerHashId ?: "", executeCount = executeCount ?: 1, - logStorageMode = logStorageMode ?: LogStorageMode.UPLOAD, + logStorageMode = logStorageMode, finish = finish, jobId = jobId, stepId = stepId diff --git a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/util/ESIndexUtils.kt b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/util/ESIndexUtils.kt index 970eb05d63fd..2079606606a9 100644 --- a/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/util/ESIndexUtils.kt +++ b/src/backend/ci/core/log/biz-log/src/main/kotlin/com/tencent/devops/log/util/ESIndexUtils.kt @@ -56,9 +56,9 @@ object ESIndexUtils { .startObject("containerHashId").field("type", "keyword").endObject() .startObject("stepId").field("type", "keyword").endObject() .startObject("executeCount").field("type", "keyword").endObject() - .startObject("logType").field("type", "text").endObject() + .startObject("logType").field("type", "keyword").endObject() .startObject("message").field("type", "text") - .field("analyzer", "standard") + .field("index", false) .endObject() .endObject() .endObject() diff --git a/src/backend/ci/core/process/api-process/src/main/kotlin/com/tencent/devops/process/api/service/ServicePipelineViewResource.kt b/src/backend/ci/core/process/api-process/src/main/kotlin/com/tencent/devops/process/api/service/ServicePipelineViewResource.kt index 9f0a1cda35c7..13ac3deb1233 100644 --- a/src/backend/ci/core/process/api-process/src/main/kotlin/com/tencent/devops/process/api/service/ServicePipelineViewResource.kt +++ b/src/backend/ci/core/process/api-process/src/main/kotlin/com/tencent/devops/process/api/service/ServicePipelineViewResource.kt @@ -208,4 +208,14 @@ interface ServicePipelineViewResource { @PathParam("pipelineId") pipelineId: String ): Result> + + @Operation(summary = "根据视图ID获取流水线ID列表") + @POST + @Path("/pipelines/listPipelineIdByViewIds") + fun listPipelineIdByViewIds( + @PathParam("projectId") + projectId: String, + @Parameter(description = "按视图过滤", required = false) + viewIdsEncode: List + ): Result> } diff --git a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/api/ServicePipelineViewResourceImpl.kt b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/api/ServicePipelineViewResourceImpl.kt index cf6add53457a..906d239d5058 100644 --- a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/api/ServicePipelineViewResourceImpl.kt +++ b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/api/ServicePipelineViewResourceImpl.kt @@ -208,4 +208,13 @@ class ServicePipelineViewResourceImpl @Autowired constructor( pipelineViewGroupService.listViewIdsByPipelineId(projectId, pipelineId) ) } + + override fun listPipelineIdByViewIds( + projectId: String, + viewIdsEncode: List + ): Result> { + return Result( + pipelineViewGroupService.listPipelineIdsByViewIds(projectId, viewIdsEncode) + ) + } } diff --git a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/AbstractPipelinePermissionService.kt b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/AbstractPipelinePermissionService.kt index 0ddfb5f80d67..59bfb9489688 100644 --- a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/AbstractPipelinePermissionService.kt +++ b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/AbstractPipelinePermissionService.kt @@ -242,6 +242,6 @@ abstract class AbstractPipelinePermissionService constructor( } override fun isControlPipelineListPermission(projectId: String): Boolean { - return true + return false } } diff --git a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/RbacPipelinePermissionService.kt b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/RbacPipelinePermissionService.kt index e841cecf1f05..e56409ea909f 100644 --- a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/RbacPipelinePermissionService.kt +++ b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/permission/RbacPipelinePermissionService.kt @@ -186,43 +186,19 @@ class RbacPipelinePermissionService( } } - override fun getResourceByPermission(userId: String, projectId: String, permission: AuthPermission): List { - logger.info("[rbac] get resource by permission|$userId|$projectId|$permission") - val startEpoch = System.currentTimeMillis() - try { - // 获取有权限的流水线、流水线组、项目列表 - val instanceMap = authPermissionApi.getUserResourceAndParentByPermission( - user = userId, - serviceCode = pipelineAuthServiceCode, - projectCode = projectId, - permission = permission, - resourceType = resourceType - ) - return when { - // 如果有项目下所有该资源权限,返回项目下流水线列表 - instanceMap[AuthResourceType.PROJECT.value]?.contains(projectId) == true -> - getAllAuthPipelineIds(projectId = projectId) - - else -> { - // 获取有权限流水线组下的流水线 - val authViewPipelineIds = instanceMap[AuthResourceType.PIPELINE_GROUP.value]?.let { authViewIds -> - pipelineViewGroupCommonService.listPipelineIdsByViewIds(projectId, authViewIds) - } ?: emptyList() - // 获取有权限的流水线列表 - val authPipelineIds = instanceMap[AuthResourceType.PIPELINE_DEFAULT.value] ?: emptyList() - - val pipelineIds = mutableSetOf() - pipelineIds.addAll(authViewPipelineIds) - pipelineIds.addAll(authPipelineIds) - pipelineIds.toList() - } - } - } finally { - logger.info( - "It take(${System.currentTimeMillis() - startEpoch})ms to get resource by permission|" + - "$userId|$projectId|$permission" - ) - } + override fun getResourceByPermission( + userId: String, + projectId: String, + permission: AuthPermission + ): List { + return authPermissionApi.getUserResourceByPermission( + user = userId, + serviceCode = pipelineAuthServiceCode, + resourceType = resourceType, + projectCode = projectId, + permission = permission, + supplier = null + ) } override fun filterPipelines( diff --git a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/service/PipelineInfoFacadeService.kt b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/service/PipelineInfoFacadeService.kt index 1f6986a62fa5..a2884f87311f 100644 --- a/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/service/PipelineInfoFacadeService.kt +++ b/src/backend/ci/core/process/biz-process/src/main/kotlin/com/tencent/devops/process/service/PipelineInfoFacadeService.kt @@ -1084,6 +1084,18 @@ class PipelineInfoFacadeService @Autowired constructor( ) modelCheckPlugin.beforeDeleteElementInExistsModel(existModel, model, param) } + val templateId = model.templateId + + if (templateId != null) { + // 如果是根据模板创建的流水线需为model设置srcTemplateId + model.srcTemplateId = templateDao.getSrcTemplateId( + dslContext = dslContext, + projectId = projectId, + templateId = templateId, + type = TemplateType.CONSTRAINT.name + ) + } + val deployResult = pipelineRepositoryService.deployPipeline( model = model, projectId = projectId, diff --git a/src/backend/ci/core/project/biz-project/src/main/kotlin/com/tencent/devops/project/service/impl/AbsProjectServiceImpl.kt b/src/backend/ci/core/project/biz-project/src/main/kotlin/com/tencent/devops/project/service/impl/AbsProjectServiceImpl.kt index 31bed594fb25..3877d4fa72eb 100644 --- a/src/backend/ci/core/project/biz-project/src/main/kotlin/com/tencent/devops/project/service/impl/AbsProjectServiceImpl.kt +++ b/src/backend/ci/core/project/biz-project/src/main/kotlin/com/tencent/devops/project/service/impl/AbsProjectServiceImpl.kt @@ -59,6 +59,7 @@ import com.tencent.devops.common.auth.api.pojo.ProjectConditionDTO import com.tencent.devops.common.auth.api.pojo.ResourceRegisterInfo import com.tencent.devops.common.auth.api.pojo.SubjectScopeInfo import com.tencent.devops.common.auth.code.ProjectAuthServiceCode +import com.tencent.devops.common.auth.enums.SubjectScopeType import com.tencent.devops.common.client.Client import com.tencent.devops.common.client.ClientTokenService import com.tencent.devops.common.event.dispatcher.SampleEventDispatcher @@ -766,9 +767,27 @@ abstract class AbsProjectServiceImpl @Autowired constructor( beforeSubjectScopes: List, afterSubjectScopes: List ): Boolean { - val beforeIds = beforeSubjectScopes.map { it.id }.toSet() - val afterIds = afterSubjectScopes.map { it.id }.toSet() - return beforeIds != afterIds + val beforeUsernames = beforeSubjectScopes + .filter { it.type == SubjectScopeType.USER.value } + .map { it.username } + .toSet() + + val afterUsernames = afterSubjectScopes + .filter { it.type == SubjectScopeType.USER.value } + .map { it.username } + .toSet() + + val beforeDeptIds = beforeSubjectScopes + .filter { it.type != SubjectScopeType.USER.value } + .map { it.id } + .toSet() + + val afterDeptIds = afterSubjectScopes + .filter { it.type != SubjectScopeType.USER.value } + .map { it.id } + .toSet() + + return beforeUsernames != afterUsernames || beforeDeptIds != afterDeptIds } private fun updateApprovalInfo( diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/dao/MarketAtomDao.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/dao/MarketAtomDao.kt index cd1e195ea68e..fff26cae766e 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/dao/MarketAtomDao.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/dao/MarketAtomDao.kt @@ -48,6 +48,8 @@ import com.tencent.devops.store.pojo.atom.enums.AtomStatusEnum import com.tencent.devops.store.pojo.atom.enums.AtomTypeEnum import com.tencent.devops.store.pojo.atom.enums.MarketAtomSortTypeEnum import com.tencent.devops.store.pojo.common.enums.StoreTypeEnum +import java.math.BigDecimal +import java.time.LocalDateTime import org.jooq.Condition import org.jooq.DSLContext import org.jooq.Record @@ -57,8 +59,6 @@ import org.jooq.UpdateSetFirstStep import org.jooq.impl.DSL import org.jooq.impl.DSL.min import org.springframework.stereotype.Repository -import java.math.BigDecimal -import java.time.LocalDateTime @Suppress("ALL") @Repository @@ -733,14 +733,28 @@ class MarketAtomDao : AtomBaseDao() { } } - fun setupAtomLatestTestFlag(dslContext: DSLContext, userId: String, atomCode: String, atomId: String) { + fun setupAtomLatestTestFlagById( + dslContext: DSLContext, + userId: String, + atomId: String, + latestFlag: Boolean + ) { with(TAtom.T_ATOM) { dslContext.update(this) - .set( - LATEST_TEST_FLAG, - DSL.case_().`when`(ID.eq(atomId), true).otherwise(false) - ) + .set(LATEST_TEST_FLAG, latestFlag) .set(MODIFIER, userId) + .where(ID.eq(atomId)) + .execute() + } + } + + fun resetAtomLatestTestFlagByCode( + dslContext: DSLContext, + atomCode: String + ) { + with(TAtom.T_ATOM) { + dslContext.update(this) + .set(LATEST_TEST_FLAG, false) .where(ATOM_CODE.eq(atomCode)) .execute() } diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/AtomReleaseService.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/AtomReleaseService.kt index fef5be94c25a..8da7d89435f2 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/AtomReleaseService.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/AtomReleaseService.kt @@ -108,4 +108,6 @@ interface AtomReleaseService { * 结束分支版本测试 */ fun endBranchVersionTest(userId: String, atomCode: String, branch: String): Result + + fun updateAtomLatestTestFlag(userId: String, atomCode: String, atomId: String) } diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomHandleBuildResultServiceImpl.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomHandleBuildResultServiceImpl.kt index 4e6f387247c5..03a853f40689 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomHandleBuildResultServiceImpl.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomHandleBuildResultServiceImpl.kt @@ -85,23 +85,19 @@ class AtomHandleBuildResultServiceImpl @Autowired constructor( marketAtomService.setAtomBuildStatusByAtomCode( atomCode = atomCode, version = version, - userId = storeBuildResultRequest.userId, + userId = atomRecord.modifier, atomStatus = atomStatus, msg = null ) if (atomStatus == AtomStatusEnum.TESTING) { + RedisLock( redisOperation, "$STORE_LATEST_TEST_FLAG_KEY_PREFIX:$atomCode", 60L ).use { redisLock -> redisLock.lock() - marketAtomDao.setupAtomLatestTestFlag( - dslContext = dslContext, - userId = storeBuildResultRequest.userId, - atomCode = atomCode, - atomId = atomId - ) + atomReleaseService.updateAtomLatestTestFlag(atomRecord.modifier, atomCode, atomId) } // 插件errorCodes.json文件数据入库 atomReleaseService.syncAtomErrorCodeConfig( diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomPropServiceImpl.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomPropServiceImpl.kt index 049b9231146a..5424da5817dc 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomPropServiceImpl.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomPropServiceImpl.kt @@ -29,19 +29,22 @@ package com.tencent.devops.store.atom.service.impl import com.fasterxml.jackson.core.type.TypeReference import com.github.benmanes.caffeine.cache.Caffeine +import com.tencent.devops.common.api.auth.REFERER import com.tencent.devops.common.api.constant.CommonMessageCode import com.tencent.devops.common.api.exception.ErrorCodeException import com.tencent.devops.common.api.util.JsonUtil +import com.tencent.devops.common.api.util.ThreadLocalUtil import com.tencent.devops.common.util.RegexUtils +import com.tencent.devops.common.web.utils.BkApiUtil import com.tencent.devops.common.web.utils.I18nUtil import com.tencent.devops.model.store.tables.TAtom import com.tencent.devops.store.atom.dao.AtomDao import com.tencent.devops.store.atom.dao.AtomPropDao -import com.tencent.devops.store.pojo.atom.AtomProp import com.tencent.devops.store.atom.service.AtomPropService import com.tencent.devops.store.common.service.StoreI18nMessageService import com.tencent.devops.store.common.service.action.StoreDecorateFactory import com.tencent.devops.store.common.utils.StoreUtils +import com.tencent.devops.store.pojo.atom.AtomProp import com.tencent.devops.store.pojo.atom.enums.AtomStatusEnum import com.tencent.devops.store.pojo.common.ATOM_OUTPUT import com.tencent.devops.store.pojo.common.enums.StoreTypeEnum @@ -81,8 +84,10 @@ class AtomPropServiceImpl @Autowired constructor( var atomPropMap: MutableMap? = null // 从缓存中查找插件属性信息 var queryDbAtomCodes: MutableList? = null + val referer = BkApiUtil.getHttpServletRequest()?.getHeader(REFERER) ?: ThreadLocalUtil.get(REFERER)?.toString() + val refererHost = referer?.let { RegexUtils.splitDomainContextPath("$referer/")?.first } ?: "" atomCodes.forEach { atomCode -> - val atomProp = atomPropCache.getIfPresent(atomCode) + val atomProp = atomPropCache.getIfPresent("$refererHost:$atomCode") if (atomProp != null) { if (atomPropMap == null) { atomPropMap = mutableMapOf() @@ -124,7 +129,7 @@ class AtomPropServiceImpl @Autowired constructor( ) atomPropMap!![atomCode] = atomProp // 把数据放入缓存 - atomPropCache.put(atomCode, atomProp) + atomPropCache.put("$refererHost:$atomCode", atomProp) } } return atomPropMap diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt index 63a173ba4b20..9c181ab3f478 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/AtomReleaseServiceImpl.kt @@ -1458,13 +1458,30 @@ abstract class AtomReleaseServiceImpl @Autowired constructor() : AtomReleaseServ redisLock.lock() if (marketAtomDao.isAtomLatestTestVersion(dslContext, atomId) > 0) { val latestTestVersionId = marketAtomDao.queryAtomLatestTestVersionId(dslContext, atomCode, atomId) - marketAtomDao.setupAtomLatestTestFlag( - dslContext = dslContext, - userId = userId, - atomCode = atomCode, - atomId = latestTestVersionId ?: "" - ) + latestTestVersionId?.let { + updateAtomLatestTestFlag( + userId = userId, + atomCode = atomCode, + atomId = it + ) + } } } } + + override fun updateAtomLatestTestFlag(userId: String, atomCode: String, atomId: String) { + dslContext.transaction { configuration -> + val transactionContext = DSL.using(configuration) + marketAtomDao.resetAtomLatestTestFlagByCode( + dslContext = transactionContext, + atomCode = atomCode + ) + marketAtomDao.setupAtomLatestTestFlagById( + dslContext = transactionContext, + atomId = atomId, + userId = userId, + latestFlag = true + ) + } + } } diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/SampleAtomReleaseServiceImpl.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/SampleAtomReleaseServiceImpl.kt index e1d7949f49d6..e696d223c425 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/SampleAtomReleaseServiceImpl.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/atom/service/impl/SampleAtomReleaseServiceImpl.kt @@ -51,8 +51,8 @@ import com.tencent.devops.store.pojo.atom.MarketAtomCreateRequest import com.tencent.devops.store.pojo.atom.MarketAtomUpdateRequest import com.tencent.devops.store.pojo.atom.enums.AtomStatusEnum import com.tencent.devops.store.pojo.common.STORE_LATEST_TEST_FLAG_KEY_PREFIX -import com.tencent.devops.store.pojo.common.publication.ReleaseProcessItem import com.tencent.devops.store.pojo.common.enums.StoreTypeEnum +import com.tencent.devops.store.pojo.common.publication.ReleaseProcessItem import org.jooq.DSLContext import org.slf4j.LoggerFactory import org.springframework.stereotype.Service @@ -100,12 +100,7 @@ class SampleAtomReleaseServiceImpl : SampleAtomReleaseService, AtomReleaseServic 60L ).use { redisLock -> redisLock.lock() - marketAtomDao.setupAtomLatestTestFlag( - dslContext = dslContext, - userId = userId, - atomCode = record.atomCode, - atomId = atomId - ) + updateAtomLatestTestFlag(userId, record.atomCode, atomId) } } } diff --git a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/image/service/impl/ImageHandleBuildResultService.kt b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/image/service/impl/ImageHandleBuildResultService.kt index c38e3c5c58a9..3b098b03d0ea 100644 --- a/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/image/service/impl/ImageHandleBuildResultService.kt +++ b/src/backend/ci/core/store/biz-store/src/main/kotlin/com/tencent/devops/store/image/service/impl/ImageHandleBuildResultService.kt @@ -30,11 +30,11 @@ import com.tencent.devops.common.api.constant.CommonMessageCode import com.tencent.devops.common.api.pojo.Result import com.tencent.devops.common.pipeline.enums.BuildStatus import com.tencent.devops.common.web.utils.I18nUtil +import com.tencent.devops.store.common.service.AbstractStoreHandleBuildResultService import com.tencent.devops.store.image.dao.ImageDao +import com.tencent.devops.store.image.service.MarketImageService import com.tencent.devops.store.pojo.common.publication.StoreBuildResultRequest import com.tencent.devops.store.pojo.image.enums.ImageStatusEnum -import com.tencent.devops.store.common.service.AbstractStoreHandleBuildResultService -import com.tencent.devops.store.image.service.MarketImageService import org.jooq.DSLContext import org.slf4j.LoggerFactory import org.springframework.beans.factory.annotation.Autowired @@ -73,7 +73,7 @@ class ImageHandleBuildResultService @Autowired constructor( } marketImageService.setImageBuildStatusByImageId( imageId = imageId, - userId = storeBuildResultRequest.userId, + userId = imageRecord.modifier, imageStatus = imageStatus, msg = null ) diff --git a/src/frontend/devops-pipeline/src/components/ExecPipeline.vue b/src/frontend/devops-pipeline/src/components/ExecPipeline.vue index 51b4aee37270..b8f63c4d3195 100644 --- a/src/frontend/devops-pipeline/src/components/ExecPipeline.vue +++ b/src/frontend/devops-pipeline/src/components/ExecPipeline.vue @@ -358,8 +358,8 @@ errorList () { return this.execDetail?.errorInfoList?.map((error, index) => ({ ...error, - errorTypeAlias: this.$t(errorTypeMap[error.errorType].title), - errorTypeConf: errorTypeMap[error.errorType] + errorTypeAlias: this.$t(errorTypeMap[error.errorType]?.title ?? errorTypeMap[0]?.title), + errorTypeConf: errorTypeMap[error.errorType] ?? errorTypeMap[0] })) }, showErrorPopup () { diff --git a/src/frontend/devops-pipeline/src/utils/pipelineConst.js b/src/frontend/devops-pipeline/src/utils/pipelineConst.js index ea27e0ff6383..5b61b41a01a3 100755 --- a/src/frontend/devops-pipeline/src/utils/pipelineConst.js +++ b/src/frontend/devops-pipeline/src/utils/pipelineConst.js @@ -101,6 +101,10 @@ export const errorTypeMap = [ { title: 'pluginError', icon: 'error-plugin' + }, + { + title: 'containerError', + icon: 'error-node' } ] diff --git a/src/frontend/locale/pipeline/en-US.json b/src/frontend/locale/pipeline/en-US.json index 053bf3d0ea4a..d5c5291e0193 100644 --- a/src/frontend/locale/pipeline/en-US.json +++ b/src/frontend/locale/pipeline/en-US.json @@ -40,6 +40,7 @@ "systemError": "SYSTEM", "thirdPartyError": "THIRD_PARTY", "pluginError": "PLUGIN", + "containerError": "AGENT", "createTime": "Create time", "retry": "Retry", "resume": "Continue", diff --git a/src/frontend/locale/pipeline/zh-CN.json b/src/frontend/locale/pipeline/zh-CN.json index 1dc4ff7d68ec..22f353d54bbf 100644 --- a/src/frontend/locale/pipeline/zh-CN.json +++ b/src/frontend/locale/pipeline/zh-CN.json @@ -28,6 +28,7 @@ "systemError": "系统运行错误", "thirdPartyError": "第三方系统错误", "pluginError": "插件执行错误", + "containerError": "构建机执行错误", "create": "创建", "createTime": "创建时间", "add": "新建", diff --git a/src/frontend/pnpm-lock.yaml b/src/frontend/pnpm-lock.yaml index c0571b36689a..a1cdae491319 100644 --- a/src/frontend/pnpm-lock.yaml +++ b/src/frontend/pnpm-lock.yaml @@ -8274,7 +8274,7 @@ packages: engines: {node: '>=0.10'} es6-iterator@2.0.3: - resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} + resolution: {integrity: sha1-p96IkUGgWpSwhUQDstCg+/qY87c=} es6-promise@2.3.0: resolution: {integrity: sha512-oyOjMhyKMLEjOOtvkwg0G4pAzLQ9WdbbeX7WdqKzvYXu+UFgD0Zo/Brq5Q49zNmnGPPzV5rmYvrr0jz1zWx8Iw==} @@ -10031,7 +10031,7 @@ packages: engines: {node: '>=0.10.0'} is-wsl@1.1.0: - resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} + resolution: {integrity: sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=} engines: {node: '>=4'} is-wsl@2.2.0: @@ -10208,7 +10208,7 @@ packages: optional: true jsdom@7.2.2: - resolution: {integrity: sha1-QLQCdwwr2iNGkJa+6Rq2deOx/G4=} + resolution: {integrity: sha512-kYeYuos/pYp0V/V8VAoGnUc0va0UZjTjwCsldBFZNBrOi9Q5kUXrvsw6W5/lQllB7hKXBARC4HRk1Sfk4dPFtA==} jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} @@ -13897,7 +13897,7 @@ packages: resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} stackback@0.0.2: - resolution: {integrity: sha1-Gsig2Ug4SNFpXkGLbQMaPDzmjjs=} + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} stackframe@1.3.4: resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} @@ -16880,12 +16880,12 @@ snapshots: '@blueking/eslint-config-bk@2.1.0-beta.6(@babel/core@7.24.6)(@vue/cli-service@5.0.8(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.96.1)))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(prettier@2.8.8)(webpack@5.96.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.96.1)))': dependencies: '@babel/eslint-parser': 7.24.6(@babel/core@7.24.6)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4) '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) '@vue/eslint-config-standard': 6.1.0(@vue/cli-service@5.0.8(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.96.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.96.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.96.1))) '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 - eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) + eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) @@ -19437,24 +19437,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5)': - dependencies: - '@typescript-eslint/parser': 4.33.0(eslint@7.32.0)(typescript@4.9.5) - '@typescript-eslint/scope-manager': 5.20.0 - '@typescript-eslint/type-utils': 5.20.0(eslint@8.57.0)(typescript@4.6.4) - '@typescript-eslint/utils': 5.20.0(eslint@8.57.0)(typescript@4.9.5) - debug: 4.3.7 - eslint: 7.32.0 - functional-red-black-tree: 1.0.1 - ignore: 5.3.1 - regexpp: 3.2.0 - semver: 7.6.2 - tsutils: 3.21.0(typescript@4.6.4) - optionalDependencies: - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4)': dependencies: '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) @@ -22745,14 +22727,9 @@ snapshots: postcss: 7.0.39 timsort: 0.3.0 - css-declaration-sorter@6.4.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - css-declaration-sorter@6.4.1(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true css-declaration-sorter@7.2.0(postcss@8.4.47): dependencies: @@ -22789,12 +22766,12 @@ snapshots: css-loader@6.11.0(webpack@5.96.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.96.1))): dependencies: - icss-utils: 5.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) - postcss-modules-scope: 3.2.0(postcss@8.4.38) - postcss-modules-values: 4.0.0(postcss@8.4.38) + icss-utils: 5.1.0(postcss@8.4.47) + postcss: 8.4.47 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.47) + postcss-modules-scope: 3.2.0(postcss@8.4.47) + postcss-modules-values: 4.0.0(postcss@8.4.47) postcss-value-parser: 4.2.0 semver: 7.6.2 optionalDependencies: @@ -22802,12 +22779,12 @@ snapshots: css-loader@6.11.0(webpack@5.96.1(webpack-cli@4.10.0)): dependencies: - icss-utils: 5.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) - postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) - postcss-modules-scope: 3.2.0(postcss@8.4.38) - postcss-modules-values: 4.0.0(postcss@8.4.38) + icss-utils: 5.1.0(postcss@8.4.47) + postcss: 8.4.47 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.47) + postcss-modules-scope: 3.2.0(postcss@8.4.47) + postcss-modules-values: 4.0.0(postcss@8.4.47) postcss-value-parser: 4.2.0 semver: 7.6.2 optionalDependencies: @@ -22837,9 +22814,9 @@ snapshots: css-minimizer-webpack-plugin@4.2.2(webpack@5.96.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.96.1))): dependencies: - cssnano: 5.1.15(postcss@8.4.38) + cssnano: 5.1.15(postcss@8.4.47) jest-worker: 29.7.0 - postcss: 8.4.38 + postcss: 8.4.47 schema-utils: 4.2.0 serialize-javascript: 6.0.2 source-map: 0.6.1 @@ -22847,9 +22824,9 @@ snapshots: css-minimizer-webpack-plugin@4.2.2(webpack@5.96.1(webpack-cli@4.10.0)): dependencies: - cssnano: 5.1.15(postcss@8.4.38) + cssnano: 5.1.15(postcss@8.4.47) jest-worker: 29.7.0 - postcss: 8.4.38 + postcss: 8.4.47 schema-utils: 4.2.0 serialize-javascript: 6.0.2 source-map: 0.6.1 @@ -22974,39 +22951,6 @@ snapshots: postcss-svgo: 4.0.3 postcss-unique-selectors: 4.0.1 - cssnano-preset-default@5.2.14(postcss@8.4.38): - dependencies: - css-declaration-sorter: 6.4.1(postcss@8.4.38) - cssnano-utils: 3.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-calc: 8.2.4(postcss@8.4.38) - postcss-colormin: 5.3.1(postcss@8.4.38) - postcss-convert-values: 5.1.3(postcss@8.4.38) - postcss-discard-comments: 5.1.2(postcss@8.4.38) - postcss-discard-duplicates: 5.1.0(postcss@8.4.38) - postcss-discard-empty: 5.1.1(postcss@8.4.38) - postcss-discard-overridden: 5.1.0(postcss@8.4.38) - postcss-merge-longhand: 5.1.7(postcss@8.4.38) - postcss-merge-rules: 5.1.4(postcss@8.4.38) - postcss-minify-font-values: 5.1.0(postcss@8.4.38) - postcss-minify-gradients: 5.1.1(postcss@8.4.38) - postcss-minify-params: 5.1.4(postcss@8.4.38) - postcss-minify-selectors: 5.2.1(postcss@8.4.38) - postcss-normalize-charset: 5.1.0(postcss@8.4.38) - postcss-normalize-display-values: 5.1.0(postcss@8.4.38) - postcss-normalize-positions: 5.1.1(postcss@8.4.38) - postcss-normalize-repeat-style: 5.1.1(postcss@8.4.38) - postcss-normalize-string: 5.1.0(postcss@8.4.38) - postcss-normalize-timing-functions: 5.1.0(postcss@8.4.38) - postcss-normalize-unicode: 5.1.1(postcss@8.4.38) - postcss-normalize-url: 5.1.0(postcss@8.4.38) - postcss-normalize-whitespace: 5.1.1(postcss@8.4.38) - postcss-ordered-values: 5.1.3(postcss@8.4.38) - postcss-reduce-initial: 5.1.2(postcss@8.4.38) - postcss-reduce-transforms: 5.1.0(postcss@8.4.38) - postcss-svgo: 5.1.0(postcss@8.4.38) - postcss-unique-selectors: 5.1.1(postcss@8.4.38) - cssnano-preset-default@5.2.14(postcss@8.4.47): dependencies: css-declaration-sorter: 6.4.1(postcss@8.4.47) @@ -23039,7 +22983,6 @@ snapshots: postcss-reduce-transforms: 5.1.0(postcss@8.4.47) postcss-svgo: 5.1.0(postcss@8.4.47) postcss-unique-selectors: 5.1.1(postcss@8.4.47) - optional: true cssnano-preset-default@6.1.2(postcss@8.4.47): dependencies: @@ -23085,14 +23028,9 @@ snapshots: cssnano-util-same-parent@4.0.1: {} - cssnano-utils@3.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - cssnano-utils@3.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true cssnano-utils@4.0.2(postcss@8.4.47): dependencies: @@ -23105,20 +23043,12 @@ snapshots: is-resolvable: 1.1.0 postcss: 7.0.39 - cssnano@5.1.15(postcss@8.4.38): - dependencies: - cssnano-preset-default: 5.2.14(postcss@8.4.38) - lilconfig: 2.1.0 - postcss: 8.4.38 - yaml: 1.10.2 - cssnano@5.1.15(postcss@8.4.47): dependencies: cssnano-preset-default: 5.2.14(postcss@8.4.47) lilconfig: 2.1.0 postcss: 8.4.47 yaml: 1.10.2 - optional: true cssnano@6.1.2(postcss@8.4.47): dependencies: @@ -23907,11 +23837,11 @@ snapshots: eslint-plugin-n: 15.7.0(eslint@8.57.0) eslint-plugin-promise: 6.2.0(eslint@8.57.0) - eslint-config-tencent@1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8): + eslint-config-tencent@1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8): dependencies: '@babel/core': 7.24.6 '@babel/eslint-parser': 7.24.6(@babel/core@7.24.6)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4) '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-plugin-chalk: 1.0.0(eslint@8.57.0) @@ -25813,9 +25743,9 @@ snapshots: dependencies: postcss: 7.0.39 - icss-utils@5.1.0(postcss@8.4.38): + icss-utils@5.1.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 ieee754@1.2.1: {} @@ -28724,18 +28654,11 @@ snapshots: postcss-selector-parser: 6.1.0 postcss-value-parser: 4.2.0 - postcss-calc@8.2.4(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 - postcss-value-parser: 4.2.0 - postcss-calc@8.2.4(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-selector-parser: 6.1.0 postcss-value-parser: 4.2.0 - optional: true postcss-calc@9.0.1(postcss@8.4.47): dependencies: @@ -28788,14 +28711,6 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-colormin@5.3.1(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - caniuse-api: 3.0.0 - colord: 2.9.3 - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-colormin@5.3.1(postcss@8.4.47): dependencies: browserslist: 4.24.2 @@ -28803,7 +28718,6 @@ snapshots: colord: 2.9.3 postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-colormin@6.1.0(postcss@8.4.47): dependencies: @@ -28818,18 +28732,11 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-convert-values@5.1.3(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-convert-values@5.1.3(postcss@8.4.47): dependencies: browserslist: 4.24.2 postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-convert-values@6.1.0(postcss@8.4.47): dependencies: @@ -28891,14 +28798,9 @@ snapshots: dependencies: postcss: 7.0.39 - postcss-discard-comments@5.1.2(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-discard-comments@5.1.2(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true postcss-discard-comments@6.0.2(postcss@8.4.47): dependencies: @@ -28908,14 +28810,9 @@ snapshots: dependencies: postcss: 7.0.39 - postcss-discard-duplicates@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-discard-duplicates@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true postcss-discard-duplicates@6.0.3(postcss@8.4.47): dependencies: @@ -28925,14 +28822,9 @@ snapshots: dependencies: postcss: 7.0.39 - postcss-discard-empty@5.1.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-discard-empty@5.1.1(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true postcss-discard-empty@6.0.3(postcss@8.4.47): dependencies: @@ -28942,14 +28834,9 @@ snapshots: dependencies: postcss: 7.0.39 - postcss-discard-overridden@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-discard-overridden@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true postcss-discard-overridden@6.0.2(postcss@8.4.47): dependencies: @@ -29162,18 +29049,11 @@ snapshots: postcss-value-parser: 3.3.1 stylehacks: 4.0.3 - postcss-merge-longhand@5.1.7(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - stylehacks: 5.1.1(postcss@8.4.38) - postcss-merge-longhand@5.1.7(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 stylehacks: 5.1.1(postcss@8.4.47) - optional: true postcss-merge-longhand@6.0.5(postcss@8.4.47): dependencies: @@ -29190,14 +29070,6 @@ snapshots: postcss-selector-parser: 3.1.2 vendors: 1.0.4 - postcss-merge-rules@5.1.4(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - caniuse-api: 3.0.0 - cssnano-utils: 3.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 - postcss-merge-rules@5.1.4(postcss@8.4.47): dependencies: browserslist: 4.24.2 @@ -29205,7 +29077,6 @@ snapshots: cssnano-utils: 3.1.0(postcss@8.4.47) postcss: 8.4.47 postcss-selector-parser: 6.1.0 - optional: true postcss-merge-rules@6.1.1(postcss@8.4.47): dependencies: @@ -29220,16 +29091,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-minify-font-values@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-minify-font-values@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-minify-font-values@6.1.0(postcss@8.4.47): dependencies: @@ -29243,20 +29108,12 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-minify-gradients@5.1.1(postcss@8.4.38): - dependencies: - colord: 2.9.3 - cssnano-utils: 3.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-minify-gradients@5.1.1(postcss@8.4.47): dependencies: colord: 2.9.3 cssnano-utils: 3.1.0(postcss@8.4.47) postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-minify-gradients@6.0.3(postcss@8.4.47): dependencies: @@ -29274,20 +29131,12 @@ snapshots: postcss-value-parser: 3.3.1 uniqs: 2.0.0 - postcss-minify-params@5.1.4(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - cssnano-utils: 3.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-minify-params@5.1.4(postcss@8.4.47): dependencies: browserslist: 4.24.2 cssnano-utils: 3.1.0(postcss@8.4.47) postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-minify-params@6.1.0(postcss@8.4.47): dependencies: @@ -29303,16 +29152,10 @@ snapshots: postcss: 7.0.39 postcss-selector-parser: 3.1.2 - postcss-minify-selectors@5.2.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 - postcss-minify-selectors@5.2.1(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-selector-parser: 6.1.0 - optional: true postcss-minify-selectors@6.0.4(postcss@8.4.47): dependencies: @@ -29339,9 +29182,9 @@ snapshots: dependencies: postcss: 7.0.39 - postcss-modules-extract-imports@3.1.0(postcss@8.4.38): + postcss-modules-extract-imports@3.1.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-modules-local-by-default@2.0.6: dependencies: @@ -29349,10 +29192,10 @@ snapshots: postcss-selector-parser: 6.1.0 postcss-value-parser: 3.3.1 - postcss-modules-local-by-default@4.0.5(postcss@8.4.38): + postcss-modules-local-by-default@4.0.5(postcss@8.4.47): dependencies: - icss-utils: 5.1.0(postcss@8.4.38) - postcss: 8.4.38 + icss-utils: 5.1.0(postcss@8.4.47) + postcss: 8.4.47 postcss-selector-parser: 6.1.0 postcss-value-parser: 4.2.0 @@ -29361,9 +29204,9 @@ snapshots: postcss: 7.0.39 postcss-selector-parser: 6.1.0 - postcss-modules-scope@3.2.0(postcss@8.4.38): + postcss-modules-scope@3.2.0(postcss@8.4.47): dependencies: - postcss: 8.4.38 + postcss: 8.4.47 postcss-selector-parser: 6.1.0 postcss-modules-values@2.0.0: @@ -29371,10 +29214,10 @@ snapshots: icss-replace-symbols: 1.1.0 postcss: 7.0.39 - postcss-modules-values@4.0.0(postcss@8.4.38): + postcss-modules-values@4.0.0(postcss@8.4.47): dependencies: - icss-utils: 5.1.0(postcss@8.4.38) - postcss: 8.4.38 + icss-utils: 5.1.0(postcss@8.4.47) + postcss: 8.4.47 postcss-nested-ancestors@3.0.0(postcss@8.4.47): dependencies: @@ -29412,14 +29255,9 @@ snapshots: dependencies: postcss: 7.0.39 - postcss-normalize-charset@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-normalize-charset@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 - optional: true postcss-normalize-charset@6.0.2(postcss@8.4.47): dependencies: @@ -29431,16 +29269,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-display-values@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-display-values@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-display-values@6.0.2(postcss@8.4.47): dependencies: @@ -29454,16 +29286,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-positions@5.1.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-positions@5.1.1(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-positions@6.0.2(postcss@8.4.47): dependencies: @@ -29477,16 +29303,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-repeat-style@5.1.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@5.1.1(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-repeat-style@6.0.2(postcss@8.4.47): dependencies: @@ -29499,16 +29319,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-string@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-string@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-string@6.0.2(postcss@8.4.47): dependencies: @@ -29521,16 +29335,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-timing-functions@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-timing-functions@6.0.2(postcss@8.4.47): dependencies: @@ -29543,18 +29351,11 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-unicode@5.1.1(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-unicode@5.1.1(postcss@8.4.47): dependencies: browserslist: 4.24.2 postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-unicode@6.1.0(postcss@8.4.47): dependencies: @@ -29569,18 +29370,11 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-url@5.1.0(postcss@8.4.38): - dependencies: - normalize-url: 6.1.0 - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-url@5.1.0(postcss@8.4.47): dependencies: normalize-url: 6.1.0 postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-url@6.0.2(postcss@8.4.47): dependencies: @@ -29592,16 +29386,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-normalize-whitespace@5.1.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@5.1.1(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-normalize-whitespace@6.0.2(postcss@8.4.47): dependencies: @@ -29622,18 +29410,11 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-ordered-values@5.1.3(postcss@8.4.38): - dependencies: - cssnano-utils: 3.1.0(postcss@8.4.38) - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-ordered-values@5.1.3(postcss@8.4.47): dependencies: cssnano-utils: 3.1.0(postcss@8.4.47) postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-ordered-values@6.0.2(postcss@8.4.47): dependencies: @@ -29805,18 +29586,11 @@ snapshots: has: 1.0.4 postcss: 7.0.39 - postcss-reduce-initial@5.1.2(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - caniuse-api: 3.0.0 - postcss: 8.4.38 - postcss-reduce-initial@5.1.2(postcss@8.4.47): dependencies: browserslist: 4.24.2 caniuse-api: 3.0.0 postcss: 8.4.47 - optional: true postcss-reduce-initial@6.1.0(postcss@8.4.47): dependencies: @@ -29831,16 +29605,10 @@ snapshots: postcss: 7.0.39 postcss-value-parser: 3.3.1 - postcss-reduce-transforms@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - postcss-reduce-transforms@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 - optional: true postcss-reduce-transforms@6.0.2(postcss@8.4.47): dependencies: @@ -29924,18 +29692,11 @@ snapshots: postcss-value-parser: 3.3.1 svgo: 1.3.2 - postcss-svgo@5.1.0(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-value-parser: 4.2.0 - svgo: 2.8.0 - postcss-svgo@5.1.0(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-value-parser: 4.2.0 svgo: 2.8.0 - optional: true postcss-svgo@6.0.3(postcss@8.4.47): dependencies: @@ -29957,16 +29718,10 @@ snapshots: postcss: 7.0.39 uniqs: 2.0.0 - postcss-unique-selectors@5.1.1(postcss@8.4.38): - dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 - postcss-unique-selectors@5.1.1(postcss@8.4.47): dependencies: postcss: 8.4.47 postcss-selector-parser: 6.1.0 - optional: true postcss-unique-selectors@6.0.4(postcss@8.4.47): dependencies: @@ -31338,18 +31093,11 @@ snapshots: postcss: 7.0.39 postcss-selector-parser: 3.1.2 - stylehacks@5.1.1(postcss@8.4.38): - dependencies: - browserslist: 4.24.2 - postcss: 8.4.38 - postcss-selector-parser: 6.1.0 - stylehacks@5.1.1(postcss@8.4.47): dependencies: browserslist: 4.24.2 postcss: 8.4.47 postcss-selector-parser: 6.1.0 - optional: true stylehacks@6.1.1(postcss@8.4.47): dependencies: diff --git a/src/frontend/svg-sprites/pipeline/error-node.svg b/src/frontend/svg-sprites/pipeline/error-node.svg new file mode 100644 index 000000000000..d8ae47d46023 --- /dev/null +++ b/src/frontend/svg-sprites/pipeline/error-node.svg @@ -0,0 +1,6 @@ + + + + + +