Hi,
As the year-end approaches, it's time to provide an overview of what our
community has achieved over the past year. At the beginning of the year, in
last year's overview, the hope was expressed that the MC branch would be
merged this year and that the 1.7 release cycle would turn out shorter
again than the previous ones.
== Community interest ==
The hits on our web site show a stable line month-on-month, although lower
than last year. Consensus has it that traditional websites get lower
numbers of hits than several years ago because of mobile and other (social)
media. Hits seem to be pretty stable now.
During the year, we've seen the number of Watchers, Stars and Forks on
GitHub slowly but steadily increase.
Traffic seems to be slightly up on our mailing lists, the users mailing
list especially, with questions from new users installing and configuring
LedgerSMB.
The number of active developers is a bit lower, than last year; some hang
around in our chat channel to help evaluate changes submitted by active
members, though.
All in all, the community seems to be on-boarding potential and new users
and experiencing its regular in- and outflux of developers.
== Releases ==
Last year we hoped to release 1.7 in the first half of the year. With the
release of 1.6.0 on June 10 2018, we hoped to be able to start doing
yearly releases. We also expressed the hope to land the MC branch on
master. We ended up releasing 1.7 on October 4 2019, a little less than 16
months after 1.6.0. We did reduce the release cycle, but not by as much as
we'd hoped.
In part, the longer-than-hoped-for release cycle was caused by the fact
that the MC branch did land on master, which warranted additional test
effort, especially of the database migration scripts against real-world
data.
All in all we released around the same number of times as we did in 2018:
* 10 stable releases: 1.7.0 - 1.7.6 & 1.6.10 - 1.6.12
* 11 old-stable releases: 1.6.13 - 1.6.17 & 1.5.25 -1.5.30
== Packaging and installation ==
In preparation for the 1.7 release, some work was done on the Docker images
to run on Debian Buster. However, we found that Buster deprecated the ssmtp
package which we depended on and it was too late in our own release cycle
to do any fundamental changes to our e-mail functionality. We ended up
going back to Stretch to run 1.7 on. Further work will be required to make
sure 1.8 offers similar functionality without depending on ssmtp.
The Debian ledgersmb package for 1.6 transitioned to Buster. Which is great
as Debian Stable now has a non-deprecated version in its package
repository. Last week we found that the package unfortunately misses a few
files. We hope to fix that really soon.
== Development progress ==
Over the course of 2019, 40 issues were created, 19 of which remain open at
this point. All 19 issues were created by the development team, many in the
process of doing code reviews or development work. A total of 73 issues
were closed in 2019, including issues created in prior years.
From these numbers, we can see that now that the MC branch has been merged,
there's time or room to work on issues not directly related to MC or the
creation of infrastructure to support MC development.
The development work spun off 304 pull requests on the LedgerSMB
repository. The number of pull requests is a lot lower than in 2018 when
the number was around 480. The 304 PRs triggered nearly 1000 builds on
Travis CI.
During the first half of the year, we developed large numbers of new tests,
push coverage up from 34% in last year's report to 41% now. Although 41%
still is by far not enough, we started to run into the limits of what
Travis CI was able to provide us (which is: maximum of 50 minutes of
run-time on each test job). We evaluated a number of other CI providers,
including the option to run our own. We ended up going for CircleCI; to
their service we moved our longest running test job (we left the others at
TravisCI), because they account the total time to be spent by a project
differently.
Areas that we're currently spending time on, include:
* Selection of a new translation engine which supports more than 2 plural
forms
* Building on last year's separation between printed-document templates
and UI templates,
moving more printed documents into the framework
* Gradual polishing of 1.7 through regular fixes of issues left to be
polished after 1.7.0 release
* Polishing of the technical implementation and user experience of
payments and receipts
The 334 issues that are open today summarize into these statistics:
* 71 are marked bite-sized; this means they should be good places to start
for new-comers
* 188 are marked as desirable enhancements
* 43 are marked as being in our queue of design work
(Note that an issue may fall into more than one category.)
== New functionality and improvements ==
A long-standing desire was to remove code duplication in templates to
generate output tables. This year, we managed to move all code using the
old report table infrastructure to the new code base. While doing so, we
also cleaned up fixed assets code.
Another topic that we spent time on, is research on how other PostgreSQL
based projects structure their authentication. One project that drew our
attention was Graphile (https://www.graphile.org/). From their approach,
we've come up with an approach that may help us simplify setting up the
database connections and managing / reporting password expiry on login.
== Looking forward to 2020 ==
In 2020, we'll likely release 1.8 in the second half of the year. I
personally hope that we can shorten the release cycle to get to yearly
releases around the middle of the year. With that schedule it'll leave a
number of patch releases until the end of the year, allowing users to
migrate to a stable release after closing their books at the end of the
year (if they didn't migrate earlier already).
For 2020, I'm also hoping that the idea to work concentrate on specific
topics, moving from topic to topic to improve the software, leads to an
attractive 1.8 release. The various topics have been grouped into GitHub
"projects" (https://github.com/ledgersmb/LedgerSMB/projects). Topics that
have my personal priority are "Payment/payment_link support for all parts
of the code base" and "Polish cash and payments". The first is rather
technical in nature and a prerequisite to address the issues collected into
the second. For 2020, I'm hoping to complete at least one, but hopefully
both projects.
For 2020, I'm hoping for 1 or 2 new contributors (not necessarily
developers; translators, testers, documenters or UI artists are all greatly
appreciated!). If you want to contribute, but don't know where to start,
please contact me.
Leaves me only to wish everybody in our community - and their loved ones -
a very good, healthy and prosperous 2020!
--
Bye,
Erik.
http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.
The LedgerSMB development team is happy to announce yet another new
version of its open source ERP and accounting application. Please note
that this release fixes an important translation bug that was introduced
in 1.7.0, where only the menu was translated, instead of the entire UI.
This release contains the following fixes and improvements:
Changelog for 1.7.6
* Disallow rate entry for the default currency (#4236)
* Fix formatting on-hand (OH) column on orders to follow user settings (#3334)
* Fix UI translation other than the menu, regressed from 1.6 (#4293)
* Fix missing 'Entered At' date in contact notes (#2822)
* Fix removal of lines from orders and vendor invoices on entry (#3703)
For installation instructions and system requirements, see
https://github.com/ledgersmb/LedgerSMB/blob/1.7.6/README.md
The release can be downloaded from our download site at
https://download.ledgersmb.org/f/Releases/1.7.6
The release can be downloaded from GitHub at
https://github.com/ledgersmb/LedgerSMB/releases/tag/1.7.6
Or pulled from Docker Hub using the command
$ docker pull ledgersmb/ledgersmb:1.7.6
These are the sha256 checksums of the uploaded files:
9faa2df90c9d91610b754ec2d716e222c81f88b3dec11bff63625b7a50f2fc3f ledgersmb-1.7.6.tar.gz
4866c96a3d2e293b2585e8a5b1d30efe4ec8d579b36b9a4f5428d7f24d80793a ledgersmb-1.7.6.tar.gz.asc
The LedgerSMB development team is happy to announce yet another new
version of its open source ERP and accounting application.
This release contains the following fixes and improvements:
Changelog for 1.6.17
* Allow uploading of attachments with unknown mime-types (Erik H)
* Fix formatting on-hand (OH) column on orders to follow user settings (Erik H)
* Fix migration of assembly data from SQL Ledger 3.2 (Yves L)
Erik H is Erik Huelsmann
Yves L is Yves Lavoie
For installation instructions and system requirements, see
https://github.com/ledgersmb/LedgerSMB/blob/1.6.17/README.md
The release can be downloaded from our download site at
https://download.ledgersmb.org/f/Releases/1.6.17
The release can be downloaded from GitHub at
https://github.com/ledgersmb/LedgerSMB/releases/tag/1.6.17
Or pulled from Docker Hub using the command
$ docker pull ledgersmb/ledgersmb:1.6.17
These are the sha256 checksums of the uploaded files:
162c1acf684a2a207ddc2042e28e2db29793855d6e8f2755ba42247b97ebeb5f ledgersmb-1.6.17.tar.gz
fa5ed1d5dbf5956924086daa0c40a897caa34fa9dcbb0c496972b88824433197 ledgersmb-1.6.17.tar.gz.asc
Hi,
apart from these, I've started quite a few other modules too.
One problem I'm seeing is that, using OpenBSD's PostgreSQL testing
module (which I'm only just now getting aquainted with) is that I'm
having to patch the tests for get past the skip_all. They pass the tests
just fine, except that they both try to drop the test database while
it's still open.
I'll ask about this on the OpenBSD mailling list. I may be doing
something wrong. I want to be sure and test everything with the
database. Kind of important. :-}
Is there a kink in the test programs or am I just doing something wrong?
I can just patch things on the OpenBSD side, which is pretty commonly
needed. That's not a problem.
I'll get back. Been working on things in spurts. Many modules started.
Now I'm working on finishing up on them one by one.
Regards,
Chris Bennett
I'm sending notice that the 1.5 release line will reach End-Of-Life by
Monday 23 December - next week. As per our community policy, there will be
no further fixes applied to the 1.5 series of releases. After its initial
release on December 23, 2016 and 30 patch releases - the latest released
just 16 days ago on November 29 - the 1.5 release line will have received 3
years of support.
Note that even though the community won't provide further releases, the
software is considered highly stable and will keep working as it has. This
End-Of-Life announcement has no impact on migration paths to newer versions
of LedgerSMB: upgrades from 1.5 to more recent versions will remain
supported for years to come. (While I'm writing this, I find that we don't
currently have a policy in place governing this type of backward
compatibility.)
Should you want to keep running 1.5 and be in need of support or
maintenance, you could try contacting one of the parties listed on the page
for commercial support: https://ledgersmb.org/content/commercial-support.
They may be able to provide support beyond the community commitment.
Available options for versions with community support are the 1.6 release
line which will receive community releases until June 10, 2021 or the 1.7
release line which will see community support until October 04, 2022.
--
Bye,
Erik.
http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.
Hi,
Yesterday, I created infrastructure to customize and run Balance sheet,
P&L, trial balance and "generic list" reports (in their downloadable
versions) on a per-company basis. To support this use-case, they will need
to be uploaded to the database, just like the invoice, order and other
templates.
For our code base, it's an either/or situation that we support the
in-database templates (or remain with the ones on-disk). Personally, I see
benefits in moving to the in-database templates, mostly because they then
become customizable by end users with sufficient rights, not just system
admins.
Now, I'm looking for a suitable way to make the switch for everybody who
already has a pre-1.8 system running when we release this functionality
with 1.8. I see several options to get templates into their databases:
1. Create an SQL database upgrade script with the templates embedded
This has the benefit that the templates will be there after the database
is upgraded. However, when the templates change over time, the script can't
be updated to include the updated templates, because that's the way our SQL
schema change management works.
2. Do nothing, but fail with an error about the import needing to happen
when the templates are missing upon output generation
This is probably the easiest way to go by, but the error might end up
with users who won't be able to address the issue themselves.
3. Create new infrastructure to test "company configuration sanity" which
can be run from setup.pl at the end of the migration
This solution is a lot of additional work, but can be used to indicate
configuration and database health issues to admins after upgrades. One such
issue would be that the templates are missing. This functionality can be
used independently from upgrades as well and would address the issue that
we have wanted to land database integrity/sanity checks (but didn't have
anywhere to do so).
Comments? Other ideas?
Regards,
--
Bye,
Erik.
http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.
Hi,
As promised on my GitHub Sponsors account (
https://github.com/sponsors/ehuelsmann) I've drawn up a selection of bugs
that I'm ready to take on. The community will be offered an opportunity to
help select the bug that adds most value when being solved.
Today, I'm sending out my first mail with a list of bugs I think I can take
on and solve in the upcoming weeks:
* Rate entry allowed for default currency
Currently, when entering a rate in 1.7, the user needs to choose the
currency for which this rate is being entered. Unfortunately, the default
currency is included in that list.
https://github.com/ledgersmb/LedgerSMB/issues/4236
* Barcode scanning on invoices/orders broken by parts drop-down
Before 1.5, hitting enter in the part number field would update the
invoice screen
and advance the entry to the next line (for a next scan). Currently, all
this is broken.
https://github.com/ledgersmb/LedgerSMB/issues/1584
* New <invoice|order|...> buttons on Credit Account screen should populate
customer
Currently, these buttons don't populate the customer, instead returning
the user an
empty screen.
https://github.com/ledgersmb/LedgerSMB/issues/932
Please provide your feedback as to which of these bugs adds the most value
to you by Tue 17 Dec. Please note that sponsors get an actual vote; all
others provide advisory feedback.
If your most-wanted bug isn't in this list, please mail me directly about
that and I'll check to see if I can add it to the list on its next
iteration. Before you mail me, please make sure your bug is registered as a
bug on GitHub (https://github.com/ledgersmb/LedgerSMB/issues).
--
Bye,
Erik.
http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.
Hi,
As promised on my GitHub Sponsors account (
https://github.com/sponsors/ehuelsmann) I've drawn up a selection of bugs
that I'm ready to take on. The community will be offered an opportunity to
help select the bug that adds most value when being solved.
Today, I'm sending out my first mail with a list of bugs I think I can take
on and solve in the upcoming weeks:
* Remove restriction on file types that can be uploaded
Currently, only files with a MIME type already known to LedgerSMB can be
uploaded
With this issue fixed, files of all MIME types will be accepted
https://github.com/ledgersmb/LedgerSMB/issues/1949
* Make contact type names translatable
Currently, the names of contact types (Vendor, ...) are presented
straight from the database
without ways to translate them.
https://github.com/ledgersmb/LedgerSMB/issues/2315
* 'setup.pl' shows system databases in the list of company databases
Currently, when logging into 'setup.pl' without a named database, a list
of databases is shown.
This list includes databases not available for logging in, such as
postgres, template0
and template1. Resolving this bug will remove these common databases from
this list.
* The "Internal notes" field on the invoice isn't scrollable
https://github.com/ledgersmb/LedgerSMB/issues/3203
* Contact Notes has empty Author and Entered At fields
https://github.com/ledgersmb/LedgerSMB/issues/2822
Please provide your feedback as to which of these bugs adds the most value
to you by Tue 2 Dec. Please note that sponsors get an actual vote; all
others provide advisory feedback.
If you most-wanted bug isn't in this list, please mail me directly about
that and I'll check to see if I can add it to the list on its next
iteration. Before you mail me, please make sure your bug is registered as a
bug on GitHub (https://github.com/ledgersmb/LedgerSMB/issues).
--
Thanks!
Erik.
http://efficito.com -- Hosted accounting and ERP.
Robust and Flexible. No vendor lock-in.
The LedgerSMB development team is happy to announce yet another new
version of its open source ERP and accounting application.
This release contains the following fixes and improvements:
Changelog for 1.7.5
* Fix failure to save tax forms (#4252)
* Fix failure to undo database edits when surrounding code fails (#4253)
* Allow uploads of files with MIME types unavailable in the database (#1949)
* Fix failure to render (AR/AP) aging report (#4259, #4260)
* Separate authentication domains for setup.pl and login.pl (#4247)
For installation instructions and system requirements, see
https://github.com/ledgersmb/LedgerSMB/blob/1.7.5/README.md
The release can be downloaded from our download site at
https://download.ledgersmb.org/f/Releases/1.7.5
The release can be downloaded from GitHub at
https://github.com/ledgersmb/LedgerSMB/releases/tag/1.7.5
Or pulled from Docker Hub using the command
$ docker pull ledgersmb/ledgersmb:1.7.5
These are the sha256 checksums of the uploaded files:
443e8b12eea99361dcb4479c2c62e8d54d54716f3755193df0735c1082ebfb32 ledgersmb-1.7.5.tar.gz
539caf56f8f4f8e4252b3bae7ac0ec618b4f481222308a85b27e05caa7feef2d ledgersmb-1.7.5.tar.gz.asc
Please ignore...
We've just moved the mailing lists to a new mail server, making sure it
delivers and archives correctly...
Cheers,
John Locke
Freelock (host for ledgersmb.org)