release runner: refuse a changelog entry that a second Prettier pass changes

Open Beginner friendly
#588 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
javascript, node.js
Domain
tooling

Research direction

Start in scripts/release-please-runner.js and read formatChangelogMarkdown, then check the related guidance in scripts/README.md and DEVELOPMENT.md. Reproduce the issue with the provided snippet after npm --prefix scripts ci; add coverage for never-settling entries with and without *. Done when the runner refuses the entry and names the first changed line, and the guidance no longer claims which texts settle.

Written by the indexing model from the issue text.

Description

needs-triage

The release runner can write a changelog entry that a second Prettier pass changes.

Defect. scripts/release-please-runner.js formats the new CHANGELOG entry with one Prettier pass. For some entries a second pass changes the text again. mise run format-check then fails on the release PR, and mise run format changes the words of the entry.

Reproduction (main, after npm --prefix scripts ci):

const r = require("./scripts/release-please-runner.js");
const a = r.formatChangelogMarkdown("## [0.4.0]\n\n- Fixed open_in_new_tab when *focus* is false\n");
// a, line 3:           "- Fixed open_in_new_tab when _focus_ is false"
// second pass, line 3: "- Fixed open*in_new_tab when \\_focus* is false"
r.formatChangelogMarkdown(a) === a; // false

#567 only documents this: its refusal message, scripts/README.md and DEVELOPMENT.md tell a maintainer to review the diff, fix such a line by hand, and run mise run format until it changes nothing.

Planned fix. Run the formatter a second time on the new entry and refuse with an error that names the first line the second pass changes (one more Prettier call per update). Trim the README and refusal text so they claim nothing about which texts settle. Test with a never-settling entry with and without *.

Owner: the next change to the release runner. Deferred from the README verification run with the maintainer's agreement.


Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: high

Dominant language
Lua
Stars
3.2k
Forks
223
Avg merge
6h 7m
Merged PRs (30d)
210

Getting set up

Open in Codespaces

Starts the project's dev container in your browser, under your own GitHub account.

  • No Dockerfile or Docker Compose file
  • No pull request template
  • No 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.

More from coder/claudecode.nvim

All issues in coder/claudecode.nvim

Similar issues

More Lua issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.