TritonDataCenter / TritonDataCenter/node-triton

CHANGES.md management results in all patches conflicting

Open
#161 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
60
Forks
36
Avg merge
3d 8h
Merged PRs (30d)
1

Description

For node-triton we currently manually maintain a human readable CHANGES.md file that includes almost all commits. Because node-triton isn't packaged as part of Triton proper it is not included in the Triton changelog (nor does it follow the bi-weekly release process). Since CHANGES.md is modified in about the same place in every commit, every change conflicts with every other. This is a source of friction for contributors and reviewers alike.

Technical Solutions
  • Create a bunch of placeholder headings after each release, change a "random" one for each change.

  • Use the union merge driver for CHANGES.md. This appears to mostly work locally (minor newline cleanup required), but is not supported by JGit/Gerrit (342372, 418149).

  • Place the changelog entries in a folder.

Less-Technical
  • Increase the threshold for how "big" a change should be before meriting a call out in the changelog, put more of the onus on writing the changelog on the releaser, or both.

With merge=union a non-option for now, my personal view is that quirky folders or placeholders are more friction than the original conflict problem.

Contributor guide

No contributing guide indexed for this repository

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 CHANGES.md and review the listed placeholder, union-merge, folder, and release-process alternatives, including the Gerrit/JGit limitation. Done means the project has an agreed changelog-management approach that avoids recurring conflicts and fits its release workflow.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, javascript, node.js
Domain
cli, developer-experience, release
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.