TeamCity On-Premises 2026.1 Help

TeamCity 2026.1 发布说明

构建 222521,2026 年 5 月 11 日

功能

  • TW-92756 — 支持 MCP 协议以启用第三方集成

  • TW-82657 — GitHub 应用连接:为构建步进提供动态凭据

  • TW-96595 — 允许为自托管 GitLab 配置系统 Web 挂钩

  • TW-42994 — 应该可以在主构建的上下文中解析 reverse.dep.*** 参数的值

  • TW-99633 — 新增预设以创建只读令牌

  • TW-87288 — 允许在提交状态发布器参数描述中配置“构建名称”值

  • TW-77495 — Perforce Shelve 触发器/个人构建应运行 "p4 resolve"

  • TW-79126 — TeamCity Hashicorp Vault Google Cloud 认证方法

  • TW-77514 — 通过 REST API 支持对多个 Perforce Shelve 的取消搁置操作

  • TW-34709 — 支持 SAML 认证

  • TW-1858 — 如有更新变更或排队的构建,则取消已过时的正在运行构建

  • TW-43295 — 可通过 REST API 调用暂停构建队列

  • TW-97730 — 实现“同链”工件依赖项选项

任务

  • TW-93722 — 服务器和代理不再支持 21 以下版本的 Java

  • TW-93287 — 支持 SLNX 解决方案

  • TW-65203 — S3 默认启用虚拟主机地址

  • TW-93979 — 捆绑的 AWS 相关插件迁移至 SDK v2

  • TW-86630 — 请求使用时日志用户访问令牌的令牌名称

  • TW-96506 — 更新捆绑的 dotCover command Line Tools 至 2025.1.7 版本

  • TW-96509 — 更新 ReSharper 命令行工具至 2025.2.3 版本

  • TW-97421 — 在试用版 Enterprise 许可证中支持 AI Assistant

  • TW-98507 — Gradle 集成:使用 --version 命令检测 Gradle 版本

  • TW-98704 — Gradle 集成:去除对 GradleConnector 用法

  • TW-98869 — Gradle 集成:使用 MultiCommandBuildSessionFactory 以容器内运行多条顺序命令

  • TW-95056 — 为构建配置参数的磁盘大小添加最大限制

  • TW-79999 — SakuraUI:无法发送失败测试的链接

  • TW-94330 — 在 rest 变更实体中新增“提交日期”以补充“作者日期”

  • TW-98203 — 在 artifacts-migration-tool 的复制/删除操作中添加进度

  • TW-96441 — 为 PowerShell 检测命令添加重试机制

  • TW-97738 — 构建注释难以检索

  • TW-96827 — 为被忽略的测试实现批处理功能

  • TW-97332 — 更新默认 JaCoCo 工具版本

  • TW-97955 — 在 AI Assistant 中新增复制代码段的功能

  • TW-96267 — 使 TeamCity 代理脚本兼容 Java 24 & 25

  • TW-97446 — 构建修订计算改为使用 git 日志命令

  • TW-96384 — 支持可配置的 Git 浅克隆深度(如 --depth=2)

  • TW-96513 — 更新 Maven 工具至 3.9.11 版本

流水线增强功能

  • TW-92582 — 支持在流水线中使用来自父项目 VCS 根的多仓库

  • TW-96208 — 流水线总览

  • TW-98715 — 流水线作业新增 Swabra、可用磁盘空间、构建缓存、XML 报告处理等功能

  • TW-99230 — 支持在流水线中配置 VCS 托管构建功能

  • TW-95286 — 流水线快照依赖项

  • TW-94763 — 支持在 DSL 中以 Kotlin 对象形式定义流水线

  • TW-100134 — 为流水线运行自定义构建

  • TW-95544 — 合并流水线运行器:在 UI 中分组 dotnet 命令

  • TW-99770 — 为查找与仓库相关的构建配置/流水线提供更完善的 MCP 指南

  • TW-99308 — 如在流水线中选择捆绑 Maven 版本(服务器已有的版本),启动流水线时会显示“Cannot locate Maven”

  • TW-97361 — UI 与文档无法明确显示作业工件的发布位置

  • TW-98149 — 运行 YAML 有误的个人流水线会导致 500 错误和流水线运行页异常

  • TW-97481 — “保存”按钮的工具提示难以阅读(流水线编辑页面)

  • TW-98480 — 流水线构建运行器自动生成的 YAML 布尔值带有引用

  • TW-97647 — 流水线依赖项未显示操作弹出窗口

  • TW-97010 — 参数:尝试在流水线级别重写导入参数时,UI 显示错误

  • TW-96907 — 导入参数:多行输入时扩展名称和值的文本字段

  • TW-96436 — “取消运行”操作无确认提示

  • TW-96280 — 流水线调查:在构建日志中显示会打开问题选项卡

  • TW-96162 — 编辑仓库页面现有 VCS 根名称显示位置错误

  • TW-95598 — 在 UI 的作业编辑页保存更改后,流水线步进顺序会重置(流水线将按更改后的顺序运行)

  • TW-95437 — TCP 合并:作业输出被修改会导致带依赖项的流水线异常

  • TW-97524 — 选定流水线内的测试静音无效

  • TW-97389 — 若 Pipeline 级参数无法解析,流水线设置页面不会提示有不兼容的代理

  • TW-98826 — 问题树未正确显示流水线运行中的问题

  • TW-99146 — 若继承连接有问题,流水线编辑会异常且原因不明

  • TW-99104 — 流水线状态徽章显示“失败”状态和图标,而不是“无法启动”

  • TW-99105 — 流水线运行状态徽章未显示取消原因

  • TW-99008 — 辅助节点 REST API 返回已完成构建状态为 FAILURE 但无构建问题

  • TW-99466 — 流水线相关服务器健康错误中的“提供缺失安全值”应跳转到父项目“令牌”

  • TW-99249 — 并行测试时流水线运行页未显示“代理终端”按钮

  • TW-98922 — 点击横幅会关闭流水线设置面板

  • TW-99096 — 流水线中“自上次成功构建以来的更改”可用但返回 400 错误

  • TW-98935 — 流水线编辑器中的指示器被流水线名称遮挡

  • TW-99383 — 流水线作业中步进未被禁用

  • TW-94636 — 在不同 pipelines 之间未保留 YAML/可视化视图

  • TW-98827 — 测试树未正确显示流水线运行中的问题

  • TW-98974 — 更新所选流水线错误状态的颜色

  • TW-97704 — 创建流水线表单时跳转到流水线名称

  • TW-98864 — Safari 浏览器中流水线设置参数名称未对齐

  • TW-98769 — 在构建详情中展示流水线运行的依赖项

  • TW-97367 — 流水线使用 html url 创建新 VCS 根连接

  • TW-98237 — 已禁用和断开的代理在排队流水线作业中仍显示为兼容

  • TW-95622 — 对错误的流水线 url 打开场景进行更优处理

  • TW-97146 — 在流水线编辑器中显示 dotnet devenv 操作

  • TW-97424 — “配置无法访问 VCS 根”错误提示需兼顾流水线

  • TW-97292 — 流水线作业收起“输出”部分时会显示“共享文件: object Object”

  • TW-96674 — Docker/NPM 集成允许保存空 URL,导致作业执行时报错

  • TW-100111 — 保存包含循环依赖项的流水线会导致 CPU 持续高用法

  • TW-95431 — 作业级工件无法通过按钮下载

错误

  • TW-97326 — Perforce 虚拟流:仅检测到两次提交中的最新更改

  • TW-93185 — 无法创建主应用程序 servlet:ReadOnlyException:根据 TeamCity 节点限制,禁止写入文件“/storage/system/pluginData/cloudProfileIdx”

  • TW-94700 — 改进版本化设置错误健康报告

  • TW-99684 — 构建配置依赖项无法访问的报错处理方式不明确

  • TW-99821 — p4 unshelve:运行 p4 clean 可能会删除不希望移除的文件

  • TW-100013 — 构建 VCS 变更计算时报“找不到节点”错误

  • TW-99243 — 启动步进失败不会阻止后续步进运行

  • TW-96398 — Swabra 构建功能在与 Bootstrap 构建步进一起使用时,会在签出源码前创建签出目录快照

  • TW-95293 — 如果依赖关系仅在 DSL 功能分支中定义,则依赖构建无法加载构建设置

  • TW-80432 — Kubernetes 插件无法配置到集群的代理

  • TW-85749 — 并行测试和矩阵构建的虚拟依赖项未应用个人补丁

  • TW-99775 — 添加构建类型到收藏夹失败

  • TW-95112 — 重命名 Docker 仓库 -> Docker 注册表

  • TW-94020 — TCP 合并:代理启动时,不兼容代理中未列出云镜像

  • TW-99275 — 在 Firefox 中配置自定义代理要求时,参数名称消失

  • TW-99022 — 优化图表上的条形卡在顶部边缘

  • TW-94106 — “在 TeamCity 服务器上保存”按钮无反馈

  • TW-95358 — TCP 合并:多行脚本步进的文本区太窄

  • TW-97451 — 更改值类型密钥大小写,可能导致数据库中缺失统计值

  • TW-96950 — 如果选择了“Uploaded key”但密钥无效,VCS 根将使用服务器 .ssh/config 中指定的 SSH 密钥

  • TW-98038 — 当启用“限制构建访问权限”并且 AWS 连接使用 IAM 角色时,继承的 S3 存储在子项目中无法访问

  • TW-96881 — 删除最后一次运行导致表为空且链接无法使用

  • TW-77853 — 对于仅有“View build configuration settings”而没有“Edit project”权限的用户,版本化设置变更日志选项卡为空

  • TW-97745 — 如果启用 keepArtifactsNewCache,旧工件清理器缓存文件会保留在数据目录中

  • TW-97791 — 如果参数只在要求该参数存在的步进中使用,则不要将该参数显示为未解析

  • TW-98071 — 通过 UI 编辑参数时,会为 select 添加补丁

  • TW-96738 — AWS 连接:使用“轮换密钥”按钮时,旧访问密钥未从 AWS 移除

  • TW-95821 — OAuth 认证在 Idea 内置服务器默认端口下不起作用

  • TW-96429 — 通过避免在可能情况下启动 PowerShell 可执行文件,优化 Windows 下的 PowerShell 检测

  • TW-96434 — 修复 Windows 下 PowerShell Core 版本的 PowerShell 检测

  • TW-97531 — 云实例同步线程无法将部分云实例保存到数据库

  • TW-100496 — 针对 HEAD 方法生成的 S3 预签名 URL 不正确

  • TW-82851 — 错误:编译构建时无枚举常量 javax.lang.model.element.Modifier.SEALED

  • TW-77295 — 如果在 java 16 及以上运行,IntelliJ IDEA 项目运行器无法工作:方法签名 org.codehaus.groovy.tools.RootLoader.getPackage() 不适用于实参类型:(java.lang.String)

  • TW-99919 — Azure Pat 连接:创建构建配置时无法识别 TFS 根

  • TW-94482 — “无法启动新实例。” 配额超限" 警告消息显示在云镜像 - K8S

  • TW-87567 — 使用 IAM 角色的 AWS 连接无法访问父项目的连接

  • TW-99407 — 如果有大量未解析输出参数,结束构建时会出现异常

  • TW-100380 — 如果在测试历史页面按状态排序,测试状态显示不正确

  • TW-100102 — 如果构建附加的 VCS 根在另一个项目中也是设置 VCS 根,则构建错误地报告“构建在分支 ... 触发,但该分支不对应于构建 VCS 根监控的任何分支...”并失败

  • TW-92128 — Simplify 定位在执行超时时报告的线程转储

  • TW-98160 — K8S 执行器:执行器要求模板镜像在 /opt/java 中安装了 java

  • TW-97967 — K8s 执行器:通过 env. 配置要求。 变量解析不正确

  • TW-99639 — 更新 AI 禁用反馈

  • TW-99267 — 尚未启动的构建参数解析不正确

  • TW-99137 — 如果 teamcity-server.sh 找不到最小 Java,原因不明确服务器未启动

  • TW-99604 — Sakura 代理页面:杂项部分缺失

  • TW-95473 — 测试历史页面项目弹出窗口中出现无关项目

  • TW-19752 — VCS 根“Test connection”在 Perforce 中每次只显示一个失败的映射

  • TW-99922 — Azure TFS VCS 根无法连接到仓库

  • TW-100061 — Windows Docker 镜像:dotCover { … } 步骤因非标准 ACL 而失败。

  • TW-82689 — Jira 集成的 Jira 服务器不支持个人访问令牌

  • TW-97024 — 自动中断长时间运行的 HTTP 请求

  • TW-67712 — 在 Amazon 云配置文件中更改 AMI 时,即使实例正在运行构建,也会终止使用旧 AMI 运行的实例

  • TW-98671 — 提交状态发布器构建功能描述未显示正确且充分的信息

  • TW-93456 — 矩阵构建:矩阵构建未解析反向依赖项

  • TW-99640 — 管理员选择"保持 AI Assistant 禁用"后,反馈表单未显示

  • TW-95465 — Sakura UI 中快照依赖项的链接不正确

  • TW-96694 — 经典 UI 中缺少“暂停构建队列/恢复构建队列”

  • TW-99757 — 移除垂直滚动条

  • TW-93396 — K8S 云配置 Windows Pod 模板可能损坏

  • TW-99478 — teamcity-agent.log 中不断出现"未能在路径中找到 telegraf 可执行文件"的警告

  • TW-95283 — Perforce:来自构建参数的 forceTrust 选项在某些情况下被忽略

  • TW-97821 — S3 错误码 0 的重试机制:请检查是否已覆盖所有可能场景

  • TW-96602 — 经典 UI 中“停止构建”按钮部分被遮挡

  • TW-98442 — 如果指定自定义值,密码提示参数将以加密形式提供

  • TW-95561 — 如果所有脚本均可见,则步进设置中可能会显示“(还有 0 行)”

  • TW-99128 — 虚拟配置可以继承默认模板中的触发器

  • TW-97951 — 检查主导航的空状态

  • TW-98197 — 对很少访问服务器的用户,重大更新后不要显示 CSAT

  • TW-99203 — 可用磁盘空间 UI:为该功能预填默认 3gb 值

  • TW-91601 — Node.js Runner:步进自动检测建议为 eslint 提供已弃用软件包,会导致构建问题

  • TW-98865 — 在 HTTP 服务器的下拉菜单中移除“复制测试链接”

  • TW-52584 — SBuild.getFailureReasons() 顺序(为构建问题添加时间戳以便排序)

  • TW-99023 — 登录按钮被固定在左侧边缘

  • TW-93063 — 当 TeamCity 自动为 XML 文件中没有 ID 的需求集添加 ID 时,版本化设置会忽略“自定义路径”

  • TW-99075 — assignRolesDialogContent_jsp 内部出现 NullPointerException

  • TW-99021 — 分支名称过长会超出区块边界

  • TW-98176 — 删除 Node.js runner 中节点指定版本的硬编码

  • TW-98967 — 当用户离开页面时,依赖项预览状态会保留

  • TW-97394 — 如果 CSAT 被禁用,“复制答案”按钮将被隐藏

  • TW-97351 — 如果用户点击太快,FUS 事件可能会丢失

  • TW-96093 — Benchmark 插件:因新建代理与服务器之间的连通性无法验证,性能基准测试卡住

  • TW-98092 — 令牌刷新期间出现“未找到仓库”错误

  • TW-95159 — 如果发送消息失败,Slack 通知器应报告为系统问题

  • TW-98101 — 复制来自 AI Assistant 的代码段时显示回应

  • TW-93646 — “镜像目标池无效”不应导致整个云配置文件失败

  • TW-98746 — 为提交状态发布器参数描述中的“构建名称”值创建 Kotlin DSL 设置

  • TW-97668 — 部分 EC2 启动模板在云镜像设置中缺失

  • TW-91965 — 在 EC2 UI 上重新添加项目池选项

  • TW-97753 — Sakura 中项目变更日志仅显示两页

  • TW-95537 — GitHub Enterprise API 的文档链接在 GitHub 发布构建步进和提交状态发布器设置中失效

  • TW-98123 — 当代理在 Java 21 上运行时,代理临时目录可能未被正确设置

  • TW-98622 — 比较构建时,同一测试显示在不同列

  • TW-94858 — Kubernetes 云配置文件镜像设置有时在 web UI 中不可用

  • TW-89324 — KeepArtifactsCleanerCache 占用大量磁盘空间

  • TW-97344 — Kubernetes 云镜像:只读项目无法查看镜像设置

  • TW-97337 — 删除镜像对话框在 K8s 云配置文件中为空

  • TW-97343 — Kubernetes 云镜像:对于只读项目不显示“Delete image”链接

  • TW-97630 — 400 状态并连接已重置

  • TW-98113 — 排队构建页面的链接不正确

  • TW-97729 — 仅在共享资源可用时检查可复用的构建

  • TW-97259 — 次节点日志中存在大量“解析前端分析事件时发生错误”警告

  • TW-98251 — 更新后不显示重新加密健康报告

  • TW-97318 — 使用错误 token 从 git URL 创建项目/配置时出现晦涩错误

  • TW-98252 — 如果上一次重新加密已被标记为成功,则允许使用相同密钥运行再次加密

  • TW-97854 — 日志中偶尔出现与构建范围 token 相关的信息

  • TW-96844 — 只读次节点无法生成新的加密密钥

  • TW-78885 — 构建概览的“Expand all”测试按钮无法全部展开

  • TW-97731 — 获取 VCS 授权 token 时,若浏览器 URL 与服务器 URL 不一致,将出现“不明确的错误 '参数"state"缺失'”

  • TW-97874 — 点击变更弹出窗口中的问题链接无反应

  • TW-94894 — StatisticsPublisher 类中的执行器没有队列上限

  • TW-98055 — Normal Executor RejectedExecutionException 后构建一直运行未终止

  • TW-97896 — 使用带有 --no-show-forced-updates 选项的 git fetch

  • TW-94397 — Jira 集成抛出 No Content to Map 异常

  • TW-98048 — 修复 Firefox 中“New Project”按钮的宽度

  • TW-98073 — TestName 比较器异常

  • TW-97739 — Jira Cloud 状态将日志消息发布到 teamcity-server.log

  • TW-97345 — 新建构建流程:从其他仓库 URL 创建重复 VCS 根时会转到连接创建页面

  • TW-94572 — 更新到 2025.07 后在 teamcity-server.log 中出现 "无法读取 \"usage-statistics\" 插件状态" 错误

  • TW-97094 — S3 存储:引入 acl 转换器

  • TW-80951 — 新 UI 中构建问题的顺序不正确

  • TW-66822 — 创建云配置文件。 无法使用 Magic Wand 设置 Kubernetes 命名空间。

  • TW-97582 — 构建统计信息延迟发布在 build_data_storage

  • TW-97612 — 等待原因显示为“Other”,未显示详细资源/代理信息

  • TW-90524 — Protocol.ResponseProcessCookies - Cookie 页眉无效

  • TW-96021 — 分支规范的自动补全和悬停解析无效

  • TW-95973 — TCP 在 Docker 中运行:搜索时自动补全卡住

  • TW-86142 — Sakura UI:变更日志选项卡中含有合并请求的记录无法选中文本

  • TW-96057 — Docker(Dockerfile)环境运行:切换到路径模式后,执行仍然使用命令行内容

  • TW-95188 — 如果无法通过 UI 修改项目设置,则不要跳过 VCS 修订更新

  • TW-96954 — 无法从 VCS 加载 perforce 稀疏流的构建设置

  • TW-96402 — 由于工件预处理输出被阻止

  • TW-2209 — Agent 可出现“检测到部分插件已过时”消息并变为过时状态

  • TW-97449 — 含有长描述的等待原因值可能因描述被截断而丢失

  • TW-79391 — 版本化设置状态在次节点上的更新有延迟

  • TW-96916 — 插件构建因 java.lang.ClassNotFoundException 失败

  • TW-96926 — 不要自动为超时构建分配静音/调查

  • TW-94936 — 如果默认分支中没有构建,则设置中的更改不会从某个构建配置中分离

  • TW-97274 — 当重新运行自动生成构建链时,自定义构建对话框打开缓慢

  • TW-94903 — 在检出期间取消构建可能导致“无法读取文件 C:\Users\builduser\.config\jgit\config”的错误和 Git 镜像损坏

  • TW-96994 — Matrix Builds 和并行测试的构建日志块以大写字母开头

  • TW-96453 — 如果引用已删除的构建推广,则不允许将构建链添加到队列

  • TW-96899 — Matrix 构建功能未遵循最大运行构建设置

  • TW-96781 — Web 挂钩 + 拉取请求:VCS 日志中出现奇怪警告

  • TW-96065 — 若未启用“Use gradle wrapper”,则隐藏“Gradle wrapper path”字段

  • TW-96833 — 触发器可能会触发来自 DSL 仓库分支的构建

性能问题

  • TW-96974 — 移除 agent 过程过慢且持有多个锁

  • TW-98373 — 复制构建步进操作卡住(后端无慢请求)

  • TW-100420 — VCS 修改清理器在移除不可达提交时会产生运行缓慢的查询

  • TW-99549 — 如果报告 VCS 问题,概览控制器会消耗过多内存

  • TW-99557 — 允许控制错误时写入 VcsException 的文本大小

  • TW-99747 — 每次检查变更时都执行了可能不必要的 Git ls-remote 操作

  • TW-88121 — swagger.json 请求处理占用过多内存

  • TW-73554 — 考虑在 REST API 请求中禁用获取所有字段

  • TW-98259 — 由于返回的拉取请求顺序不同,CommonBranchSpec 中执行了不必要的计算

  • TW-98287 — 当仓库中分支数量达到 200 时,TeamCity 立即使用 ^refs/tags/,+refs/ :refs/* refspec 进行 fetch

  • TW-97164 — 版本化设置应用过程(仓库变更后)会为项目层次结构带来大量状态更新

  • TW-98341 — agent 页面上存在严重性能问题

  • TW-98185 — 应在 SecuredBuildHistory::findEntries 方法中预加载来自 DB 的构建推广

  • TW-98083 — 移除大型项目树过程缓慢(ProblemMutingServiceImpl.projectRemoved 监听器较慢)

  • TW-97495 — 打开终端链接会因 isLocal agent 检查而拖慢 agent 详情页部分内容显示速度

  • TW-94867 — 使用 AWS 连接的 S3 存储性能明显低于 static 凭据

  • TW-97990 — 禁止直接从 'lodash' 导入

  • TW-90056 — 打开“Promote build”对话框缓慢

  • TW-97168 — PullRequestsBranchSpecsConflict 健康报告中大量计算导致高 CPU 用法

  • TW-97300 — performUptodateCheck 方法产生的 custom_data 表流量很大

  • TW-96958 — 因 VirtualAgentsManagerImpl.getStartingAgentsNum 导致次节点上的 app/metrics 指标请求过慢(需数分钟)

  • TW-93850 — 在 getCurrentState API 中移除 Git 镜像目录的读锁

安全性

已修复了 21 个安全问题。 要了解更多与 TeamCity 直接相关的已修复漏洞,请查看我们的 安全公告

安全公告通常会在发布日期后几天发布。

2026年 8月 6日