mapbox / mapbox/github-release-tools

Monorepo-style tags break latest release detection

Open
#4 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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 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

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

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.