Re: Structured Changelogs for ELPA packages

Stéphane Marks <[email protected]> Sun, 2 Aug 2026 16:16:44 +0200
Newsgroups gmane.emacs.devel
Message-ID <CAN+1HbpXP9WxYxA8qeWAx9EDQ_CpZT_ijzMFK+dJkxyzFUGm2g@mail.gmail.com>
--000000000000f17b560658111249
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Sun, Aug 2, 2026 at 10:07=E2=80=AFAM Andrew Hyatt <[email protected]> wro=
te:

> Daniel Mendler via "Emacs development discussions." <[email protected]>
> writes:
>
> Philip Kaludercic <[email protected]> writes:
>>
>> Hmm, [1] is actually a lot more formal than anything we had discussed in
>>> the bug report I mentioned since it prescribes how the contents of the
>>> section should be formatted. Also, it explicitly says "Changelogs are f=
or
>>> humans, not machines." which, while I agree in principle, is the opposi=
te
>>> direction of what we were trying to solve, since we want to have a
>>> machine-friendly and predictable way to detect and extract only the
>>> relevant section from a NEWS.org file.
>>>
>> I know this will be controversial, but if we want to maintain that
> changelogs are for humans and not machines, the solution is to use an LLM
> to produce a standardized changelog from the freeform changelog. I really
> don't see a downside to this; this kind of operation is pretty reliable.
>

An LLM does not do constrained decoding on its own.  One needs a driver
and/or harness that is structured-output aware and those are not LLMs, per
se.

--000000000000f17b560658111249
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon=
t-family:monospace"><span style=3D"font-family:Arial,Helvetica,sans-serif;b=
ackground-color:transparent">On Sun, Aug 2, 2026 at 10:07=E2=80=AFAM Andrew=
 Hyatt &lt;<a href=3D"mailto:[email protected]">[email protected]</a>&gt; wro=
te:</span></div></div><div class=3D"gmail_quote gmail_quote_container"><blo=
ckquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left=
:1px solid rgb(204,204,204);padding-left:1ex"><p>
Daniel Mendler via &quot;Emacs development discussions.&quot;
&lt;<a href=3D"mailto:[email protected]" target=3D"_blank">emacs-devel@gn=
u.org</a>&gt; writes:
</p>

<p>
</p><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bor=
der-left:1px solid rgb(204,204,204);padding-left:1ex">

<div>Philip Kaludercic &lt;<a href=3D"mailto:[email protected]" target=3D"=
_blank">[email protected]</a>&gt; writes:
</div>
<div>
<br></div>
<div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bo=
rder-left:1px solid rgb(204,204,204);padding-left:1ex">

<div>Hmm, [1] is actually a lot more formal than anything we had discussed =
in
the bug report I mentioned since it prescribes how the contents of the
section should be formatted.  Also, it explicitly says &quot;Changelogs are
for humans, not machines.&quot; which, while I agree in principle, is the
opposite direction of what we were trying to solve, since we want to
have a machine-friendly and predictable way to detect and extract only
the relevant section from a NEWS.org file.

</div></blockquote>

</div></blockquote>
<p></p>

<p>
I know this will be controversial, but if we want to maintain that
changelogs are for humans and not machines, the solution is to use an
LLM to produce a standardized changelog from the freeform changelog. I
really don&#39;t see a downside to this; this kind of operation is pretty
reliable.</p></blockquote><div><br></div><div class=3D"gmail_default" style=
=3D"font-family:monospace">An LLM does not do constrained decoding on its o=
wn.=C2=A0 One needs a driver and/or harness that is structured-output aware=
 and those are not LLMs, per se.</div></div></div>

--000000000000f17b560658111249--