On Wed, 15 Jul 2026 at 23:31, Daniel Sahlberg <[email protected]>
wrote:

> Den ons 15 juli 2026 kl 21:30 skrev Branko Čibej <[email protected]>:
>
>> On 15. 7. 2026 14:35, Evgeny Kotkov via dev wrote:
>>
>> Branko Čibej <[email protected]> <[email protected]> writes:
>>
>>
>> Your change adapted to this single specific modification of the section
>> headers. The next, slightly different modification will break the script
>> again.
>>
>> +1.
>>
>>
>> I really think the safest way is to always insert nominations before
>> "Approved changes" and to fail if that heading isn't there. If the headings
>> in the file make that insertion dubious, then the heading order should be
>> fixed anyway. In the meantime, review of the diff before commit is kind of
>> expected.
>>
>> A more complex alternative could be: prompt for the section to insert
>> the nomination into, excluding the "well-known" Veto-blocked and Approved
>> sections.  If there is only one candidate section, insert into it without
>> prompting.
>>
>>
>> Yes, I've looked at the script and I'm aware that the parsing code is opaque
>> and complex. I didn't say my proposal leads to a simple change. But it does
>> make the script more future proof.
>>
>> A bit off-topic, but do we really want to keep supporting such a complex
>> script that automates adding STATUS entries and casting votes for them?
>>
>> As I see it, the important part is having automation for _merging_ approved
>> STATUS entries (which we also have).  That's useful, because it automates
>> an error-prone operation that technically requires no manual steps once an
>> entry has been approved.
>>
>> Voting and editing STATUS, on the contrary, are supposed to be manual
>> operations, because they are all about verifying the change.  To my mind,
>> working with a plain text file containing a list of entries is already
>> quite convenient by itself and supports all possible kinds of interactivity.
>>
>>
>> I've never used nominate-backport.py and hardly ever the older
>> nominate.pl. I find it a waste of time to have to learn the quirks and
>> bespoke command line of those scripts, just to add some lines of text or
>> even just a +1 to a file. A simple nomination syntax checker would be
>> useful – I sometimes get the indentation wrong – but a script to automate
>> editing feels like overkill.
>>
>>
> nominate-backport.py is very simple, it just takes two arguments (revision
> and justification).
>
> manage-backports.py is more involved but it also takes care of a bit of
> the "error-prone operations" (quoting Evgeny above) of merging backports.
> It (interactively) offers to merge each backport (approved or not) so you
> can verify it merges properly and test it out, then reverts it and give you
> the opportunity to vote for it, updating STATUS as needed. Merging is done
> using the same code as the backport bot so it verifies STATUS is parsed
> properly.
>
> These two scripts are the ones I would expect us to remove.
>
> I am +1 to remove nominate-backport.py and manage-backports.py: the
complexity of managing these scripts is worth it.

The backport.py "library" is also used by detect-conflicting-backports.py
> (used in the backportbot GHA), release.py (when drafting a changelog) and
> merge-approved-backports.py (the script used by the backport bot). I expect
> these uses will remain, as well as the library itself.
>
I find  detect-conflicting-backports.py and  merge-approved-backports.py
somewhat useful, so I think they should remain.


>
> If we remove the scripts, README.backport must be updated. More or less
> reverting r1932433, 1925159, 1924264 (except the future removal of
> backport.pl) and 1924110.
>
> I would favor to remove backport.pl too for the same reason as
manage-backports.py: the complexity of managing these scripts is not worth
it.


> I have some time to do this tomorrow if decided. It also depends on
> Evgeny's timeline for rolling the next RC - I'd hate to see this being a
> release blocker but I'd also love to se it done before 1.15.0 so we could
> avoid releasing something we already consider removing.
>
>

-- 
Ivan Zhakov

Reply via email to