Skip to content

Update policy and implementation for changelog entries #16569

Open

Description

@taldcroft

What is the problem this feature will solve?

This is jumping off of the discussion in #16562. The specific question there is whether the addition of type annotations should merit a changelog entry.

The current policy is basically that only user-facing changes should be highlighted with a changelog entry. That has been interpreted so that documentation updates or adding type annotations do not get changelogs. However, "user-facing" can reasonably be interpreted more liberally as changes that enhance the user or developer experience with astropy.

I would argue that #16562 is both a substantial amount of manual effort and substantially improves the user experience using the stats package. People reading the changelog should be made aware of this.

Being more self-serving, my own #16561 documentation update was at least 16 hours work and it would give me a good feeling to see that effort showing up in the changelog.

We are always trying to find ways to reward new contributors, but if they improve the documentation then that PR goes essentially unnoticed.

Describe the desired outcome

If a contributor wants a changelog entry associated with their PR, then it is allowed. For new-ish contributors, adding a changelog would be the default instead of opt-in.

Add a documentation changelog category to recognize this important category of contributions.

Additional context

No response

Activity

  1. Cadair commented on Jun 14, 2024

    @Cadair
    Member

    +1 to documentation changelog entries, we have them in sunpy land and I think they deserve being called out.

  2. jeffjennings commented on Jun 14, 2024

    @jeffjennings
    Contributor

    +1 from me too to everything proposed. The more easily people's contributions are recognized, the more I think they'll continue to contribute. And their effort deserves to be recognized in general. Thanks for opening the issue, Tom!

  3. pllim commented on Jun 14, 2024

    @pllim
    Member

    v7.0.dev work is already well underway without this category. Adding it now would be unfair to the doc stuff already merged. Unless someone has time to dig those all up for v7.0, might be better to wait till we branch off v7.0.dev (i.e., after v7.0 release) to start.

    That said, sometimes we also backport doc changes. Though big doc changes (e.g., dev doc overhaul and typing; does typing count as doc?) would not be backported anyway.

  4. pllim commented on Jun 14, 2024

    @pllim
    Member

    If a contributor wants a changelog entry associated with their PR, then it is allowed.

    Within reason? What if a new contributor comes and fix a minor typo but demands a change log? Where do we draw the line?

    Also this sounds very subjective. How do you even automate the rules or ensure people implement this policy consistently?

  5. mhvk commented on Jun 15, 2024

    @mhvk
    Contributor

    I am 👎 on making changelog entries a form of credit, but 👍 on most of the actual suggestions to give more visibility.

    For the reasoning: I feel strongly the logic for a changelog entry should remain that it is for the benefit of users/developers, not for assigning credit in any way, so am 👎 on adding entries that are not relevant for users, independent of who made the contribution. I do think giving credit is important, and that, e.g., as discussed in the coordination meeting, we should do more than adding a * for first-time contributors (maybe split those out to a separate subsection?). Furthermore, as also discussed in the coordination meeting, we could add a section of people who raised (first?) issues -- which is also a really relevant contribution -- and perhaps similarly a list reviewers (if easy to scrape). One might also think of adding number of PRs or loc changed, though to me that goes a bit too far, and can be looked up on github anyway.

    I think a nice way to give credit to people who did more major pieces of work is to mention them in the what's new section. Indeed, for those pieces it may be particularly relevant to also credit reviewers; the best pieces merged often involved a lot of jointly figuring out how to do things. With what's new entries, that would be quite doable (i.e., not too much work). So, concretely I'd suggest adding something like "Contributed by XXX, {in collaboration with|reviewed by} YYY and ZZZ." to what's new entries (I think python does "contributed by" bits).

    More directly on the changelog: I agree it is useful to both users and developers to be aware of bigger changes in documentation and typing, so I'm very much in favour of adding those (could be new related categories, i.e., entries of the form NNNN.typing.rst and NNNN.doc.rst, though using "other" may be fine since these are never going to be very common). Both PRs that triggered this issue are obvious candidates - to some users, it will be very relevant that stats is completely typed (indeed, I think this warrants a what's new entry): people can try using it and report bugs, others may become aware astropy is adding typing and will start to help, etc,. etc. And it is similarly very relevant that the developer documentation has been revamped (also should have a what's new): people might think that perhaps this is something to check out to see if they can contribute; or they go see whether things can be done more simply than they thought.

    p.s. I don't think we've had any overhauls at the level of these two PRs, so am not too worried about missing changelog entries or what's new's for 7.0. At least, I think most other typing changes were not user-visible. Except perhaps that for cosmology? @nstarman, @eerovaher?

  6. mhvk commented on Jun 15, 2024

    @mhvk
    Contributor

    On the changelog entry type: I see that #16562 used .feature.rst. I can see the logic for that, but I'd really rather not later have bugs in typing have .bugfix.rst - unless they are in an altogether separate typing category, i.e., typing/NNNNN.bugfix.rst. But that breaks the bond with the relevant subpackage (also for docs). So, maybe still NNNNN.other.rst?

  7. neutrinoceros commented on Jun 15, 2024

    @neutrinoceros
    Contributor

    I feel like moving the list of contributors from the bottom of a What's New page to the top would indeed make more sense than adding changelog entries to every doc change. How about we add an opt-out check-box for crediting PR authors in the markdown template ? By default, everyone authoring a change makes the list (unless they expressly request to be excluded), and we keep documenting only user-facing changes. We may need need infrastructure code to keep track of authors alongside changelog fragments, but this seems feasible and worth it to me.

    p.s. I don't think we've had any overhauls at the level of these two PRs, so am not too worried about missing changelog entries or what's new's for 7.0.

    +1 on this point

  8. nstarman commented on Jun 15, 2024

    @nstarman
    Member

    At least, I think most other typing changes were not user-visible. Except perhaps that for cosmology?

    Cosmology has had some user-visible changes, but nothing on the level of stats. So probably not what's new worthy.

  9. jeffjennings commented on Jun 18, 2024

    @jeffjennings
    Contributor

    On the changelog entry type: I see that #16562 used .feature.rst. I can see the logic for that, but I'd really rather not later have bugs in typing have .bugfix.rst - unless they are in an altogether separate typing category, i.e., typing/NNNNN.bugfix.rst. But that breaks the bond with the relevant subpackage (also for docs). So, maybe still NNNNN.other.rst?

    That makes sense, other seems best then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions