LedgerSMB Community overview 2023
As the year-end approaches, it's time to provide an overview of what our community has achieved over the past year. At the end of last year, I wished everybody a healthy and prosperous 2023 and now is a time to look back and see how we did.
== Community interest ==
After years of decline in the number of hits on our website, last year saw an unexpected upswing in hits. Unfortunately, it didn't last long: this year hits dropped again. The increase in number of Stars and Forks on GitHub (Stars went up from 304 on 16 January 2022 to 348 today - in line with the increase last year), we can conclude that there is still interest in the project. This is supported by the fact that we see new people attend the ledgersmb chat channel on Matrix, with many contributing their bugs and experience.
== Releases ==
With the release of 1.11.0 on 03 October 2023, we realized our goal to release 1.11 in the second half of the year, close to a year after 1.10. With releases in the third quarter, we aim to provide mature software before year-end -- when most companies close their books. Despite the short release cycle, we were able to include a sizeable list of new functionalities, changes and (code) cleanups through 806 commits, 711 files changed, 234,664 added lines and 162,575 removed lines of code (and comments) between 1.10.0 and 1.11.0.
With 34 releases across 3 maintenance branches in 2023, the project was able to increase the pace of 2022 (which had 37 releases across *4* branches):
1.9 (8): 1.9.23 - 1.9.30 1.10 (19): 1.10.9 - 1.10.27 1.11 (7): 1.11.0 - 1.11.6
Which excludes the alpha, beta and release candidate releases.
== Development progress ==
This year saw lower numbers of commits than last year. Although the number of commits was lower, the number of pull requests (720) is higher than last year (620) but still lower than the year before (827). The number of active developers - derived from accepted commits - went was lower than last year (7) by 1 (6 this year).
This year, too, we were able to close a number of long-standing bugs/issues, continuing last year's focus to close as many issues as possible in the 7-year-and-older range: * #1346: Barcode entry on the invoice screen broken (regressed in 2016) * #2657: Upgrades may fail for 1.3."not latest" to 1.5+ * #2661: Empty inventory reports not showing in search results
All from 2017 and 2016, just to name a few.
Project commits on all branches (excluding merges): 672 Erik Huelsmann 72 Yves Lavoie 15 Aung Zaw Win 6 Christian Eriksson 6 Neil Tiffin 1 John Locke
By comparison, these are the figures for 2022: 927 Erik Huelsmann* 132 Yves Lavoie* 10 Aung Zaw Win* 6 Neil Tiffin* 5 Jeff Shelley* 3 Hugh Esco 2 Chris Travers
Please note that the number of commits is in no way a measure of time spent on the project. Also note that these numbers don't include the time spent by those taking the effort to report their problems and taking the time to respond to developer questions as well as helping to test solutions when developers think they solved the problem. Similarly, there was a lot of activity with respect to issues:
Number of open issues at 2023-01-01: 148 of which remain open today: 99
Issues closed: 114 of which created before 2023-01-01: 49
Issues created: 85 of which still open: 20
Number of open issues today: 119
This amount of development activity triggers many CI/CD jobs. To run our test workloads, we have been using GitHub Actions as well as CircleCI, each set up to test different aspects.
The main thing in the 1.12 Changelog that we spent time on which hasn't been released as part of 1.11 is the migration experience from 1.3 through 1.7 to 1.12. Areas that we're currently spending time on, include:
* Implementation of an API to create orders along the same lines as the invoices API * Documentation of the status quo of the code base in Architecture Decision Records (ADRs)
The 148 issues that are open today summarize into these statistics:
* 5 bite-sized: issue ideal to start with our code base * 5 help-wanted: these are issues we need someone to get involved * 5 sponor-wanted: these will be developed when someone helps out by footing bills * 61 type:enhancement: generally requests for new or improved features
(Note that an issue may fall into more than one category or none at all.)
== New functionality and improvements ==
1.11 improves on 1.10's use of workflows to manage invoices and orders, moving GL transactions to the same infrastructure. At the same time, it's banking on the new functionality to consistently and predictably show buttons for available actions on orders, invoices and transactions. The same functionality is what enables the higher granularity document action history that 1.11 features.
== Looking forward to 2024 ==
In 2024, we'll likely release 1.12 around the third quarter; again in a release cycle a bit shorter than a year. This year the 1.10 release branch will reach End-Of-Life status on 08 October.
And last but not least, I'm hoping for 1 or 2 new contributors (not necessarily developers; translators, testers, documentation writers or UI artists are all greatly appreciated!). If you want to contribute, but don't know where to start, please contact me.
== In closing ==
Thanks to everybody who contributed to any of the above in any way, especially to
Neil Tiffin for taking the time to discuss (and thereby sharpen) planned changes Computerisms.ca for hosting our DNS Freelock.com for hosting our website and mailing lists Efficito.com for hosting our mailing list archive, apt repository, release and download server GitHub.com, CircleCI and coveralls.io for hosting our development workflow
My special personal thanks go to my GitHub Sponsors for supporting me for time, efforts and (financial) resources dedicated to the project!
Leaves me only to wish everybody in our community - and their loved ones - happy holidays and a safe and productive 2024!
participants (1)
-
Erik Huelsmann