Regressions
A hledger regression bug is something that used to work, that broke without notice, in a released version of hledger.
We aim for zero regressions; but in a project with this level of features, flexibility, and level of funding, that’s not easy! So we try to detect them quickly, repair them quickly, and reduce their frequency.
Here are all the regressions found since 2020 (and old related bounties, discussed below). This page has a shortcut url: regressions.hledger.org.
| New regressions | Fixed in | Finder bounty | Fixer bounty |
|---|---|---|---|
| 1.19 2020-09-01 | — | — | — |
| #1568 | 1.22 | jolmg (N/A) | N/A |
| #1688 | 1.23 | Simon Michael (N/A) | N/A |
| #1698 | 1.23 | David Lowe | N/A |
| #1745 | 1.24 | Arne Schlüter | N/A |
| #1800 | 1.25 | Chuck Holmes | N/A |
| 1.20 2020-12-05 | — | — | — |
| #1439 | 1.20.3 | apauley (N/A) | N/A |
| #1468 | 1.21 | Simon Michael (N/A) | N/A |
| #1566 | 1.22 | benwebber (N/A) | N/A |
| 1.21 2021-03-10 | — | — | — |
| #1508 | 1.22 | edlanglois (N/A) | N/A |
| #1523 | 1.22 | Simon Michael (N/A) | N/A |
| #1526 | 1.22 | lestephane (N/A) | N/A |
| #1527 | 1.22 | lestephane (N/A) | N/A |
| #1656 | 1.23 | Stephen Morgan | N/A |
| #2284 | 1.41 | lakshayg | GLaknovik (donated) |
| #2302 | 1.42 | lowercasename | Simon Michael |
| 1.22 2021-07-03 | — | — | — |
| #1597 | 1.22.1 | Simon Michael | N/A |
| #1607 | 1.22.1 | Simon Michael | N/A |
| #1625 | 1.22.1 | Julian Klode | N/A |
| #1736 | 1.24 | Romain Gehrig | N/A |
| #1851 | 1.26 | Eric Langlois | N/A |
| 1.22.1 2021-08-02 | — | — | — |
| #1638 | 1.22.2 | Yann Büchau | N/A |
| #1642 | 1.22.2 | Simon Michael (N/A) | N/A |
| 1.23 2021-09-21 | — | — | — |
| #1933 | 1.32 | Simon Michael | N/A |
| #2071 | 1.33 | William Pierce | Simon Michael |
| 1.24 2021-12-01 | — | — | — |
| #1782 | 1.24.1 | Simon Michael (N/A) | N/A |
| 1.25 2022-03-04 | — | — | — |
| #2032 | 1.32 | Simon Michael | N/A |
| #2196 | 1.33.1 | Pranesh Prakash | Simon Michael, Bas van Dijk #2224 (donated) |
| 1.26 2022-06-04 | — | — | — |
| 1.27 2022-09-01 | — | — | — |
| #1932 | 1.27.1 | Andras Fabian | N/A |
| #2018 | 1.29.2 | Allan Odgaard | N/A |
| #2469 | Quả Cầu | Simon Michael (N/A) | |
| 1.28 2022-12-01 | — | — | — |
| 1.29 2023-03-11 | — | — | — |
| #2012 | 1.32 | Simon Michael (N/A) | N/A |
| #2020 | 1.32 | Pablo Mora | N/A |
| #2023 | 1.32 | Simon Michael | N/A |
| #2034 | 1.32 | Simon Michael (N/A) | N/A |
| #2045 | 1.32 | Pranesh Prakash | N/A |
| #2153 | 1.32.3 | markokocic (donated) | N/A |
| 1.30 2023-06-01 | — | — | — |
| #2072 | 1.32.3 | Simon Michael, usaAmch (#2137, donated), ipvych (#2150) | Simon Michael |
| 1.31 2023-09-03 | — | — | — |
| #2091 | 1.32 | Petr Slansky | N/A |
| #2115 | 1.32 | usaAmch (donated) | N/A |
| 1.32 2023-12-01 | — | — | — |
| #2125 | 1.32.1 | Simon Michael (N/A) | N/A |
| #2127 | 1.32.2 | Rajeev N | N/A |
| #2130 | 1.32.2 | Simon Michael (N/A) | N/A |
| #2134 | 1.32.2 | pepe_pecas (donated) | N/A |
| #2156 | 1.32.3 | ishmaelavila (donated) | Simon Michael |
| #2254 | 1.41 | akanshaG42 (donated) | Simon Michael |
| #2407 | 1.43.2 | Simon Michael (N/A) | Simon Michael (N/A) |
| 1.32.1 2023-12-07 | — | — | — |
| #2444 | 1.50 | Simon Michael (N/A) | Simon Michael (N/A) |
| 1.33 2024-04-18 | — | — | — |
| #2227 | 1.41 | Henning Thielemann | Henning Thielemann |
| 1.34 2024-06-01 | — | — | — |
| 1.40 2024-09-09 | — | — | — |
| #2225 | 1.41 | Bas van Dijk (donated) | Henning Thielemann |
| 1.41 2024-12-09 | — | — | — |
| 1.42 2025-03-07 | — | — | — |
| #2352 | 1.42.1 | Matt Gass | N/A |
| #2386 | 1.42.2 | Simon Michael (N/A) | N/A |
| #2389 | 1.42.2 | Simaex | Simon Michael |
| 1.43 2025-06-01 | — | — | — |
| #2396 | 1.43.1 | aragaer (donated) | Simon Michael |
| #2397 | 1.43.1 | Dmitry Astapov (donated) | Simon Michael |
| #2405 | 1.43.2 | Simon Michael (N/A) | Simon Michael (N/A) |
| #2406 | 1.43.2 | Wojciech Geisler | Simon Michael |
| #2417 | 1.50 | Frank Schmidt | Simon Michael |
| #2478 | 1.50.3 | dotlambda | Simon Michael |
| 1.50 2025-09-03 | — | — | — |
| #2452 | 1.50.1 | Samim Pezeshki | Stephen Morgan (N/A) |
| #2454 | 1.50.1 | Nic Mollel | Stephen Morgan (N/A) |
| #2465 | 1.50.2 | Paul Dest | Simon Michael (N/A) |
| #2479 | 1.50.3 | Simon Michael | Simon Michael |
| #2493 | 1.50.3 | Simon Michael (N/A) | Simon Michael (N/A) |
| #2498 | 1.50.4 | Peter Sagerson (donated) | Simon Michael (N/A) |
| #2512 | 1.51.2 | amano-kenji (donated) | Simon Michael (N/A) |
| #2564 | 1.52 | Juliano Solanho | Juliano Solanho |
| 1.50.2 2025-09-26 | — | — | — |
| #2495 | 1.50.3 | alix-aspersa | Simon Michael |
| 1.50.3 2025-11-18 | — | — | — |
| #2514 | 1.51.2 | Simon Michael (N/A) | Simon Michael (N/A) |
| 1.51 2025-12-05 | — | — | — |
| #2503 | 1.50.5, 1.51.1 | Simon Michael (N/A) | Simon Michael (N/A) |
| 1.51.2 2026-01-08 | — | — | — |
| #2553 | 1.52 | pierovera | Simon Michael (N/A) |
| 1.52 2026-03-20 | — | — | — |
| #2642 | Simon Michael (N/A) | Simon Michael (N/A) |
Old regression bounties
From 2021 to 2026-07, we offered bounties for finding or fixing regressions. This was a good project discipline and good marketing. But,
- The bounties did not measurably cause regressions to be produced less, or found faster. In practice regressions are produced and found at a fairly steady rate, mostly correlated with how ambitious a release is.
- The regression finder bounty was therefore somewhat redundant. Regressions get reported for free, because users want them fixed.
- From 2026, bounties strongly increase the rate of AI-assisted or fully AI-generated-and-discussed submissions, often of low quality, duplicative, or not following our AI policy.
- Managing bounties, and AI submissions, consumes maintainer (and contributor) time that can be better spent elsewhere.
- Finding/fixing regressions isn’t our bottleneck; reviewing new code is. So we should use our funds for incentivising that instead.
Here’s the old description of the regression bounties, for the record:
Regression finder bounty
Before 2026-07 we offered a $50 bounty for newly reported regression bugs (arising any time in the past, still affecting latest main). (original announcement)
Regression fixer bounty
Before 2026-07 we offered a separate $50 bounty for regression bug fixes landed in main. (If you caused the regression, there’s no bounty, though we do appreciate you reporting or fixing it.)
Is there a time limit ?
Yes - once the bounty is confirmed, please claim it within 7 days. If not, it will be automatically converted to a project donation at that time. This reduces wasteful admin work.
Should I claim the bounty ?
If you don’t want the bounty, you can choose to donate it back to the project treasury, by saying so or simply by not claiming it within the time limit. But consider claiming - it’s good for the project in several ways.
How to claim the bounty
- Discover a new regression and report it in the hledger bug tracker. And/or, fix an open issue which has the
regressionlabel.- Wait for confirmation from the issue manager (SM).
- Send an expense reimbursement request to hledger’s open collective. Note this might reveal your real name. Here’s the procedure:
- at hledger’s open collective, click Submit Expense. (If you are logged in, this will be under the ACTIONS menu.)
- choose Invoice; choose a Payout method; click Next
- Expense title: Regression (finder / fixer / finder & fixer) bounty for #NNNN
- Description: (Found / Fixed) ISSUEURL, WORKDATE(S)
- Date: today’s date (you may need to click and select it to make it work)
- Amount: USD 50 (or 100 if you found and fixed). Or convert to another currency with today’s rate (and mention that rate in Description).
- Next, Submit Expense
- Wait for the finance manager (SM) to get the email notification and approve it. This should not take more than a day or two. (For fastest response, mention on the issue page or in chat that you’ve submitted.)
- Wait for Open Collective to pay it. This should happen within a week (payouts happen twice a week).