bug#81116: 31.0.60; [FR] ELPA: Include changelog in the Atom feeds

Philip Kaludercic <[email protected]> Sat, 01 Aug 2026 16:16:15 +0000
Newsgroups gmane.emacs.bugs
Message-ID <[email protected]>
Daniel Mendler <[email protected]> writes:

> Philip Kaludercic <[email protected]> writes:
>
>>> But indeed, I wouldn't worry too much, and if the snapshot feeds are not
>>> great, so be it. I usually write "* Development" headers in my
>>> changelog, so if you scan for headers including the string "devel" it
>>> would work.
>>
>> To be clear, I was not thinking about just scanning headers, but using
>> `org-export-select-tags'.  We should probably get some Org people in for
>> ideas if we decide to go this way.
>
> Okay, yes, but I am not in favor of requiring :tags: in changelogs.

I would be interested to hear why not.  It would of course not be
required in general, just to get the "better" changelog support

>>>> My suggestion would be to come up with some "privileged" formats for
>>>> changelog files and only include the changelogs from those files in the
>>>> RSS feeds.  To get the ball rolling, I would suggests the simplest
>>>> format would be to use org-mode as you suggested and extract only the
>>>> sections with a "release" tag for ELPA-regular and "devel" for
>>>> ELPA-devel.  If we think it is necessary/helpful, we can use properties
>>>> to annotate the specific versions of each release.
>>>
>>> Let's please not fix an overspecific format. My suggestion would be to
>>> scan for "^[*]+.*<version>.*$" lines, and then include that part up to
>>> the next header of the same level. For development scan for
>>> "^[*]+.*devel.*$" lines. This should work in Org. For Markdown use [#]
>>> instead, in case Markdown is supported too.
>>
>> I don't think that is so much more complicated, in fact if we were to
>> restrict ourselves to org-mode files, the entire extraction logic is
>> already implemented.  If we search for sections like you suggest, it
>> seems more brittle as we are more likely to miss the right headers or
>> confuse code blocks that might contain something that looks like a
>> heading.
>
> We could use the Org parser to iterate over the headings
> (org-map-entries) and then search the title for the version or devel
> string.

I wasn't aware that Org exposed that API, that would make it easier
indeed.  We would then still have to go through all the entries, filter
out those that match the regular expresion, parse out the version number
and then pick the newest one.

> But I wonder - is Org the only supported format? I am okay with Org of
> course and I prefer it, but I had assumed that Markdown or plain text
> works as well. This is why I suggested the regexp approach.

I think it is better to just fix a single format for these improve
changelogs, as that will make it easier for us in the future, and I'd
say Org is better to that end than Markdown let alone plain text since
it has an authoritative parser and good extensibility, if we do decide
that we need something that property drawers could be useful for in the
future.

>>>>> Daniel