mapbox / mapbox/github-release-tools

Monorepo-style tags break latest release detection

未关闭
#4 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
JavaScript
星标
16
派生
5
PR 合并指标
30 天内没有已合并 PR

描述

The mapbox-gl-native repository uses [a non-semver-compliant tag naming scheme](https://github.com/mapbox/mapbox-gl-native/wiki/Versions-and-tagging) that prepends a platform identifier to an otherwise semver-compliant version number, since the various libraries developed in that monorepo are versioned independently. This tool relies on the `latest-semver` package, which is unable to understand these version numbers on its own:

https://github.com/mapbox/github-release-tools/blob/8d88e10b6fedf3f34f8d3929287148088e65709c/src/get-latest-release.js#L13

Fortunately, I think we can make the tool compatible with mapbox-gl-native by filtering tags by platform and stripping off the platform identifiers before calling `latestSemver()`. The tool would need a new command line option to specify a platform.

/cc @anandthakker

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 src/get-latest-release.js 和 issue 中链接的 latest-semver 调用开始。跟踪命令行选项的解析方式,然后确定平台过滤和前缀移除应放在哪里。当平台选项能够让工具从 mapbox-gl-native-style 标签中识别最新 release,且不破坏现有标签处理时,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
javascript
领域
cli, release
Issue 类型
功能
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。