Linkify issues, PR, and commit references in release notes

I usually include issue, PR, and commit references in my release notes to give users more context, which are linkified on GitHub, but not on Tidelift. Would be great if Tidelift could also linkify these.

Example:

Breaking:
- Rename `pkg` property to `package` (#10)  1c15896

Here, #10 should be linkified to the PR and 1c15896 to the commit.

1 Like

Thanks, Sindre! We’re working on making the task completion experience better and easier. More suggestions like this are definitely welcome!

In my release notes I normally use shortcut reference links, and those are correctly autolinked to GitHub PRs and issues for me. They do not work when I link to contributor profiles, though.

For example, the following properly linkifies the PR reference, but does not linkify the user reference:

Breaking:
- Rename `pkg` property to `package` ([#10] by [@perry_mason])

[#10]: https://github.com/deivid-rodriguez/my-project/pull/10
[@perry_mason]: https://github.com/perry_mason

We currently post our changelog both in markdown (The “[linktext](url)” variant) as well as in straight HTML (we compile the markdown into HTML as part of our website build). Either is fine with us.

NB: We haven’t gotten around to adding ‘send changelog to tidelift’ to the release build process, but it’s on the agenda :slight_smile:

I would consider it very odd if Tidelift’s Markdown rendering assumed that #10 meant a link to a GitHub issue. Why isn’t it a GitLab issue? Or BitBucket? I recommend that you make your links explicit to where you want them to go. This has the advantage that it already works today.

@nedbat They wouldn’t be assuming. They already know my package is connected to GitHub because I specify the URL to my GitHub repo in package.json (npm package). And they already take advantage of that information by auto-filling new release notes in Tidelift from GitHub Releases.

1 Like

Thank you for continuing to share your thoughts! As @jeff mentioned, we’re working to improve this experience, so this feedback is super helpful.

1 Like

I’d like to second what @sindresorhus mentioned regarding the assumption part. Tidelift can already extract that information from a package’s metadata file. Furthermore, if Tidelift is unable to extract the URL, there’s a task that will appear under Tasks asking you to verify your URL (Specifically to verify your GitHub URL, which I only know about because I’m on GitLab :sweat_smile: ).

I currently do this in my personal projects on GitLab. A link to a commit appears as:

([4a16126](https://gitlab.com/hyper-expanse/open-source/parse-repository-url/commit/4a16126))

Personally, it’s my hope Tidelift can continue to support Markdown URLs, if only because, first, I’m concerned that not all platforms support automatic linking like GitHub and GitLab, and because many projects use changelog generation tools that still embed the URLs into changelog. (I know the later case well because I also use one of those tools)

Eventually I plan on migrating away from hard-coding the URL inside of the changelogs. Relying on GitHub/GitLab functionality simplifies my release tooling, and it acknowledges that my projects occasionally migrate between SCM platforms.

For interest, the package that does the GitHub compatible linkify processing for npmjs package READMEs is https://github.com/npm/marky-markdown

1 Like

Thought I’d chime in here as I’m busy working on a project that takes the content from the changelog.md (using keepachangelog format) and automatically renders all issue and PR links, also supporting reference links.

It’s not public anywhere yet, as I’d like to include the suggestion by @sindresorhus regarding the commit links and also start exploring GitLab.

Hope to get something up soon for anybody who is willing to give it a spin.

3 Likes

Hi @noplanman – welcome to the forum! I’m excited to hear about what you’re working on and would love to check it out when you’re ready. We don’t have any immediate plans to begin linkifying release notes, PRs, etc, through Tidelift, so a tool like yours sounds like it could be useful for others in the community.

1 Like