TeamCity 2024.07 发布说明
构建 160569,2024 年 7 月 18 日
功能
TW-75072 — 在 Git 仓库中提交所有配置更改
TW-71572 — Sakura UI:项目、构建配置和失败测试报告选项卡
TW-70264 — 允许在创建项目/VCS 根的 URL 页面上传 SSH 密钥
TW-84463 — 创建 GitHub Checks API 触发器
TW-32570 — 添加关闭递归 git 子模块初始化的功能
TW-58812 — 在存储库中为版本化设置指定自定义路径
TW-6141 — 能够更改 Perforce/P4 的 VCS 标签描述
TW-86474 — 为队列中无法分配的构建添加 prometheus 计数器
TW-14646 — 能够在代理上检出分支之前运行自定义任务(引导步骤)
TW-49274 — REST:允许将密码映射到可用于设置的字符串
TW-85645 — 为版本化设置执行线程添加 prometheus 指标
TW-88290 — 允许通过 REST API 使用自定义上限修订版触发带有检出规则的构建
错误
TW-88410 — “始终,即使已发出停止构建命令”步骤未按预期执行
TW-87486 — 无法在模板中声明时覆盖 hashiCorpVaultParameter
TW-85376 — 项目副本未保留子项目的存档状态
TW-86876 — 在非默认分支上触发并具有并行测试构建功能时,构建未被重用
TW-74238 — 当成功完成的构建被标记为失败时,Commit Status Publisher 不会更改提交状态
TW-54361 — 在 git 中强制推送后,待处理更改和历史构建令人困惑
TW-59643 — 支持 Perforce Ditto Mappings
TW-87246 — “构建需要我的批准”通知电子邮件未发送给来自重试触发器和重新运行操作的构建
TW-87670 — 使用令牌且没有用户名从存储库 URL 创建新项目失败,显示“匿名身份验证失败”
TW-88864 — 从 VCS 应用设置时发生死锁
TW-88200 — 文件名中带有 '%' 符号的工件依赖
TW-85982 — 在自定义加密密钥重新生成后编辑现有凭据不会重新加密当前值
TW-88820 — JB 许可证:如果无法解析损坏的 JWT 令牌,服务器无法启动
TW-88240 — 无法使用配置文件运行 telegraf
TW-88845 — 默认情况下使 Build.isChangesCollectingInProgress 懒加载
TW-88728 — 在快速前进合并的情况下,构建被错误地标记为历史
TW-85221 — PerfMon 中出现 java.lang.ArrayIndexOutOfBoundsException
TW-87723 — 如果 Pull Request 源分支包含括号且 VCS 根分支规范不为空,则更改未被收集
TW-88772 — 矩阵构建因父构建的禁用代理要求而无法启动
TW-88131 — TeamCity 可能因多个未缓存请求对云提供商造成过多负载
TW-88309 — 无法使用 Kotlin DSL 配置依赖缓存构建功能
TW-84028 — 在使用不正确设置的情况下改进 GitHub App 测试连接的错误消息
TW-86092 — 如果项目是从头创建的,则访问令牌未保存
TW-74537 — 用户没有公开电子邮件时,通过 GitLab Auth 首次登录时出现异常
TW-82002 — 在不存在的测试页面上出现无限加载
TW-85803 — Perforce Helix Swarm:Commit Status Publisher 仅在审查处于打开状态时发布评论
TW-85490 — 如果我们收到非零退出代码,SSH Exec 步骤应失败
TW-87278 — 在辅助节点上发送验证电子邮件不起作用
TW-87892 — Converter DownloadedArtifactsIndexesConverter 在从 TeamCity 7.x 更新到 2024.03.x 时失败
TW-88359 — 不要合并 TestOutputMergingIterator 中不同流的测试输出
TW-88358 — 下载构建日志时对齐多行消息
TW-88357 — 下载构建日志时支持 flowAware 模式
TW-88534 — 在参数化设置 VCS 根的情况下无法收集更改错误
TW-83884 — 在 TeamCity 服务器 URL 较长的情况下改进 GitHub App 手动创建对话框
TW-84326 — Mercurial 插件不支持更新的共享扩展行为
TW-87108 — 容器信息选项卡:将列名从 Image 更改为 Digest
TW-83901 — 在“添加新参数对话框”中垂直调整大小的值字段在字段内移动光标时跳到较小的大小
TW-88299 — 解析无效 Space 初始化负载状态时出现 NPE
TW-88441 — 对于由旧服务器生成的某些构建,BuildLog 无法正确显示
TW-87489 — “构建设置尚未最终确定”持续数小时
TW-87244 — 重试/重新运行的构建不会将不受信任的构建记录到构建日志
TW-88036 — 在多节点环境中关闭代理可能导致无法启动父级
TW-84536 — 如果 Commit Status Publisher 因服务器 URL 不正确而未能发布状态,则日志中没有构建问题或错误消息
TW-84271 — 自定义报告中的复制到剪贴板
TW-88133 — Git 凭据助手无法处理缺失的密码
TW-88251 — java.lang.InstantiationException:范围内未找到 bean historyPager
TW-80103 — 代理终端不支持在不重启服务器的情况下重新加载
TW-86594 — Docker-compose runner 无法与 podman-compose 一起工作
TW-87293 — 在 podman 代理上运行的 Docker Compose 构建中出现“发生内部错误”
TW-86820 — 重新设计“添加新参数”对话框:当参数不可编辑时,禁用“删除外观设置”按钮
TW-88041 — 修复 teamcity-caches-cleanup-plugin 中白名单属性分隔符
TW-88252 — 令牌名称似乎消失了
TW-85187 — 在修订重置后使用之前的上限修订检查更改
TW-88075 — Space 身份验证模块可能选择不合适的连接
TW-87387 — BuildTypeImpl.getAdditionalBranchSpecs 可以发送 HTTP 请求
TW-87432 — Lens 插件在与 OTEL 收集器的连接中断时不会重新建立新连接
TW-88096 — 令牌表不允许按所有可用连接进行筛选
TW-87896 — 如果构建链中有构建的构建配置不存在,则检查更改任务将无法完成
TW-63400 — 即使用户未勾选“使用实验性 UI”选项,某些链接仍会在新 UI 中打开 href 页面
TW-71871 — 构建日志:在 Safari 中滚动时出现过多的空白
TW-85340 — 升级的代理可以运行已删除版本工具的构建
TW-87859 — 分支名称不适合其元素
TW-87614 — 从默认分支获取构建缓存不起作用
TW-86570 — 在新的代理池 UI 中未显示已归档的项目
TW-87264 — Lens 插件:未处理的异常
TW-86647 — getBuildResultingProperties Rest API 的描述错误
TW-87777 — 在 Classic UI 中测试元数据中的测试工件不正确(相同测试名称,不同元数据)
TW-87497 — 在 TeamCity Cloud 中查找 JetBrains 托管代理的文档存在困难
TW-87274 — Bitbucket 服务器:OAuth 登录可能无法获取当前用户
TW-87134 — 由于将大量 refspec 传递给 git fetch 操作,导致更改收集失败
TW-63051 — 测试选项卡应包括测试总计数器及其摘要持续时间
TW-87084 — 如果 Space 连接应用程序具有无效的客户端服务密钥,则 eApplicationInformationManager 会发出多次警告
TW-87182 — 图表中有黑线,显著影响统计数据的可见性
TW-87413 — 重置密码页面在辅助服务器节点上不起作用
TW-82543 — 当“teamcity.ui.runButton.caption”设置为空值时,Promote Build 对话框中的 UI 损坏
TW-85720 — 如果缓存估算器无法初始化,可能会记录大量 NPE
TW-82895 — 在 Git VCS 根中使用不兼容的 fetch 和 push URL 会导致令人困惑的错误
TW-87360 — 在计算覆盖 VCS 根的修订时未考虑检出规则
TW-86315 — 无法在代理上执行签出操作:代理上签出时出现问题:java.lang.IllegalStateException: @NotNull method jetbrains/buildServer/vcs/perforce/ClientNameBuilder.getWorkspaceName must not return null
TW-85768 — 测试操作菜单中的大小写不一致
TW-85777 — 测试操作菜单:“在构建日志中显示”不应是链接
TW-85021 — 清理设置:“Periodical” -> “Periodic”
TW-85837 — 构建更改选项卡上未显示“显示来自依赖项的更改”复选框
TW-87131 — 在 DSL 中定义的检出规则中的空格字符可能导致错误检测构建配置的版本控制设置更改
TW-85991 — 构建配置未填写当前项目信息
TW-84998 — 设置选项卡提示:将“Show more >>”更改为“Show all >>”
TW-87115 — 如果构建具有非空分支规范,则避免生成自动分支标签
TW-86200 — 在安装缺失的非默认工具版本后,代理看起来不兼容,直到重新保存构建步骤设置
TW-86793 — Lens 插件忽略测试数据事件限制
TW-86258 — Len 插件 S3 事件名称未与 OTEL 约定对齐
TW-86576 — 从重试构建触发器中移除启动失败构建的限制
TW-79776 — 在标记构建源时未对使用的值进行转义
TW-84589 — 身份验证模块在个人资料页面显示“放弃更改”警告
任务
TW-39885 — 添加测试总持续时间统计指标
TW-86140 — 确定存储库的可见性并缓存信息
TW-87305 — R# 检查:自 2024.1 起需要明确指定输出格式
TW-88521 — 支持反斜杠作为分支规范的默认转义序列
TW-86894 — 移除为从 GitHub 创建的 VCS 根生成的密码弃用健康报告
TW-86496 — 更新 JDBC 驱动程序到较新版本
TW-87172 — 在自动生成的 REST API 文档中提供字段的允许值列表
TW-84382 — 移除 ReSharper CLT 捆绑工具并在 TeamCity 服务器启动后安装
TW-78795 — 改进页面 "personal-build.html"
TW-86185 — 在 Gradle Runner 中支持带有 gradle enterprise 插件的 testRetry
TW-84380 — 移除 dotCover 捆绑工具并在 TeamCity 服务器启动后安装
TW-86054 — 在 Gradle 插件中将 Gradle Tooling API 更新到最新版本
性能问题
TW-88527 — 自动线程转储经常包含多个 /app/perforce/commitHook 线程
TW-88306 — 作为后台标签打开的页面在访问前未渲染
TW-87138 — 加速包含 .teamcity 目录的主存储库中的构建启动
TW-73505 — 由于磁盘使用初始化每个新注册构建配置的数据,新生成的构建类型加载非常慢
TW-84245 — REST API 请求获取部署构建速度慢
TW-88178 — Sakura 中的更改页面加载需要一段时间且无进度
TW-88123 — 低效的 DBVcsModificationHistory.getModificationsInVersionsRange() 减慢了 REST API 调用
TW-88113 — 清理导致一次卸载过多提交可能极大地减慢事件处理
TW-87805 — 设置持久队列的处理可能非常慢
TW-78253 — 触发器处理速度慢,可能是因为某些 VCS 提交由于过旧而从缓存中卸载
TW-84069 — 如果为用户找到许多收藏的构建,收藏构建页面加载缓慢
TW-87477 — 如果存在具有大量选项的 "select" 参数类型,RawParameterImpl 和 ParameterUtil$2 可能占用大量内存
TW-84141 — TestFailureRateCollector 线程占用 Normal 执行线程池
TW-63877 — 单个慢触发器可能会阻止其他构建配置触发,即使配置了多个触发器执行线程
TW-87192 — 改善多节点任务处理的性能
TW-86911 — Change.isVersionedSettings 中的低效代码可能导致更高的 CPU 使用率
安全性
已修复了 19 个安全问题。 此数字包括原生 TeamCity 问题和在 TeamCity 所依赖的第三方库中找到的漏洞。 上游库问题通常占总数的大部分,通常通过将这些库更新到最新版本来迅速解决。
要了解更多与 TeamCity 直接相关的已修复漏洞,请查看我们的 安全公告。 新版本的安全公告通常会在发布日期后的几天内发布。