2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-22 01:59:26 +00:00
Clone
0
BIND 9.19 Planning: CHANGES
Matthijs Mekking edited this page 2021-11-03 21:30:31 +00:00

Back to agenda: https://gitlab.isc.org/isc-projects/bind9/-/wikis/BIND-9.19-Plan

Attendees: Matthijs, Vicky, Mark, Suzanne, Michał K., Petr, Artem, Aram, Cathy, Ondrej, Michal N., Chuck, Evan.

There are different views/opinions about the usefulness of CHANGES. See https://gitlab.isc.org/isc-projects/bind9/-/issues/2942 for a longer discussion.

Can we reach a rough consensus that some other mechanism can replace CHANGES?

How much should we care about the quality of CHANGES? Can it be considered an internal resource? Is a missing CHANGES entry a documentation bug?

Context: QA & Marketing spends hours each month polishing CHANGES, to ensure:

  • correctness/accuracy
  • completeness
  • style
  • formatting
  • matching contents with corresponding release notes

Sometimes, ensuring the above requires going through an issue/MR and verifying that the entry matches the code changes.

Is this useful work? Is that time well spent?

Looking at others

How does Kea does it? Kea team drafts marketing-style release notes (which marketing edits) in a wiki page and then pastes change log entries below the "highlights". (So release notes INCLUDES the change log). There is no haggling or fine-tuning of the changelog itself, but if you really object to something in the changelog you can dress it up in the release note highlights. Link to the Rel Notes in the wiki is pasted into the repo tag for the release.

NSD and PowerDNS does both release notes and changes.

Unbound does just release notes and they are very terse (but with links to both issue and MR).

Knot resolver also has very terse release notes (stored on the release tags in the repo)no changes afaik.

Thoughts

Matthijs: "nice sweet spot" camp. would like to keep it, but doesn't understand why we care so much about the detail. I think QA can care a bit less about CHANGES.

Evan: agrees wrt level of detail

Ondrej: who are the "technical users" that cannot use Git?

Matthijs: It is just convenient to have a local file. Easy place to start looking.

Ondrej: What goes into CHANGES that cannot go into Release Notes?

Evan: Lots of example on the issue #2942 but another example: dispatch work - 30 commits, long verbose explanations, CHANGES is a concise summary; a summary CHANGES file is a good thing. It helps to get a rough idea of a time frame of a given change; likes the ordered nature and cross-branch nature; is often asked "why is BIND behaving this way?"

Suzanne: Why maintain it if it doesn't need to be the same quality as release notes?

Matthijs: Because it contains information that does not go into release notes.

Cathy: example from yesterday; frustrated because the CHANGES log didn't have a removal of build options by name (--enable-ipv6, --enable-threads) - GitLab didn't answer that directly

Ondrej: that's a great example of why CHANGES is broken; we have 3 sources of information (release notes, CHANGES, commit messages);

Matthijs: CHANGES is not perfect but easy start. If I can't find it there I can start looking into git. I don't think Cathy's example is a "great example of why CHANGES is broken", it is an incidental bad CHANGES entry.

Ondrej: we could try putting high-level information into the merge commit messages (GitLab feature)

Evan: we can start doing that, but we have 22 years of history done the other way

Ondrej: that's inertia, which we're trying to remove from the project.

Matthijs: likes the proposal of having the MR description being used to generate the CHANGES or a replacement file.

Vicky: also uses CHANGES a lot - people don't need to find the repo to get access to it; especially if you skip between a lot of versions while upgrading; Kea: the release notes are highlights, then they paste the change log underneath that

Ondrej: let's either do the release note or the CHANGES note; we currently have three "levels of abstraction".

Matthijs: disagrees with "either release notes or CHANGES"; the discussion shows they are not a substitute.

Evan: In the past, it wasn't SWENG's responsibility to write release notes - it was written by a technical editor or support, but that was hard to complete on time

Vicky: the reason we have this problem is we have 10 people writing stuff first and 2 people reviewing/reworking them at the end; strongly objects to hiring another person to write release notes; if we spent that much time on the ARM, that would be time better spent

Vicky: Compared to other open source vendors, our Release notes and CHANGES is like poetry. We do a pretty good job in this respect.

Cathy: We should set a minimum standard (for CHANGES and Release Notes)

Petr: Why can't we just append whatever all minor CHANGES to release notes?

Ondrej: agrees - one extra document we should get rid of.

Cathy: CHANGES goes all the way back to the beginning (Evan agrees).

Ondrej: But that's for historians, not software engineers; we need a single document for upgrading across multiple major versions.

Cathy: What if people need to jump multiple versions?

Ondrej: What if it has to be done in lockstep?

Petr: Why do we have a text file without any links to other parts of the documentation? that sounds like an outdated approach

Evan: Biggest irritation with writing CHANGES is the constant need to rebase because something has been merged in the meantime.

Ondrej: Can we drop the incremental numbering from the CHANGES?

Mark: There are issues in private. Also GitLab issues can cover multiple MRs.

Matthijs, Evan: Both don't have an issue with dropping the incremental numbering.

Takeaways

Treat CHANGES more lightweight.

We can research generate the CHANGES file.