github-tools / github-tools/github-release-notes

Allow manual changes to persist across --override

Aperta
#139 3 commenti 1 reazione 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
JavaScript
Stelle
897
Fork
313
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hello,

We've been happily using GREN on an enterprise Github instance to generate release notes based on PR data. We have a use-case where we'd like to add additional, hand-crafted release notes on top of the GREN-generated data that could be persisted even when using `--override`. This would be really useful in adding migration guides for major/breaking releases. We often end up regenerating the GREN release notes in order to add clarifications to PR titles.

Would it be possible to have the GREN-generated data live in a special block that GREN could replace rather than overwriting the entire body?

e.g., for the following release body:

```markdown
// Hand-crafted release notes here
# Migration Guide
...

// Generated GREN data goes here

```

When using `--override`, GREN would only replace/regenerate the contents between the `GREN-BEGIN` and `GREN-END` comment blocks so that any manual additions to the release notes are not overwritten. Since these blocks are just HTML comments, they wouldn't end up visible in the overall release page.

FWIW, here's the `.grenrc` that we're using. Unfortunately I can't share the specific repo data because enterprise 😕

```js
module.exports = {
dataSource: 'prs',
prefix: '',
onlyMilestones: false,
groupBy: {
'💥 Breaking Changes 💥': ['Major (Breaking Change)'],
'✨ Non-Breaking New Features ✨': ['Minor (New Feature)'],
'🛠️ Bug Fixes + Misc 🛠️': ['Patch (Bug Fix)']
},
changelogFilename: 'CHANGELOG.md'
};
```

Thanks!

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start by tracing the --override entry point and how GREN generates the release body, using the example .grenrc and CHANGELOG.md setting as context. Check how existing release content is fetched and replaced, then define behavior for the GREN-BEGIN and GREN-END markers, including what happens when they are absent. Done means manual content remains intact while only the generated block is refreshed.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
release
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.