mapbox / mapbox/github-release-tools

Monorepo-style tags break latest release detection

Open
#4 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
16
Forks
5
PR merge metrics
No merged PRs in 30d

Description

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

Contributor guide

Open the contributing guide

Research direction

Start with src/get-latest-release.js and the latest-semver call linked in the issue. Trace how command-line options are parsed, then determine where platform filtering and prefix removal belong. Done means a platform option lets the tool identify the latest release from mapbox-gl-native-style tags without breaking existing tag handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
cli, release
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.