For those of you who may not have realized, the 0.6.0 release has been in development for 4 months with a bugfix-only release happening about halfway through that time in the form of the 0.5.6 release. We are nearing the end of the development cycle for 0.6.0 and hope to officially publish the release within a few weeks.
Many things have been done. Some smaller, some greater. If you'd like to review the complete changelog it is available on the website, however this post will cover all of the changes we are most proud of / what we think will be most appreciated.
Improved Translation Management
We've massively improved the translation management experience by providing the ability to disable translations as well as adding in a completion percentage for each available translations. Additionally, FOSSBilling will no longer include translations that are less than 25% complete (when updating, these won't be removed automatically).
Modernized Huraga Theme
The Huraga theme has been migrated to Bootstrap 5 and overall has had many bugfixes. We believe it is now the best theme available for FOSSBilling and intend to incrementally build on and improve it over time. Here's a few screenshots of how it looks now. Generally it should be very similar in terms of layout, but while being much more modern and with less bugs.
Improved Email Validation
We've replaced the email validation method with a newer one. This new method will correctly validate international domains and also includes DNS-based validation to validate that en entered domain is configured to receive emails. Additionally, if you enable the "Spam Checker" module and go into the module's settings, you can enable a new feature to prevent people from using email addresses which are associated with temporary or disposable email address services.
Feast your eyes on a new installer that's completely free of jQuery, easier on the eyes, and generally just a bit nicer to use! Additionally, this new installer will do a better job of validating your server's compatibility with FOSSBilling and communicating how it could be better.
Email Related Improvements
Emails within FOSSBilling have always been functional, but a bit less than ideal. This release will clean up many of the larger items with emails. Specifically:
- Rather than sending emails on-demand, they are instead sent to an email queue and sent via cron. This improves the performance FOSSBilling while performing actions such as creating tickets or submitting changes, reducing the time to perform these actions sometimes by multiple seconds. This queue did exist before, but went largely unused.
- The massmailer module will now function correctly including recipient filtering, uses the new email queue, and also allows you to preview the recipients for it before sending the message.
- Email delivery failure will no longer result in an email being logged multiple times in the DB.
- You can now view the email delivery queue.
- The test email functionality has been refactored for a better experience. It no longer emails all staff members and instead will only send it to the staff member who clicked the button. Additionally, any errors will now properly be displayed on the page.
We now include opt-in error reporting to help us develop FOSSBilling to be better, more stable, and ideally even give you better technical support. We actually have a page dedicated to this on our website if you'd like to learn more, but in the long term the addition of this should be invaluable for the project.
As part of the 0.6.0 release, we've made an effort to optimize the performance of FOSSBilling. The email queue will be the most significant of these, however there have been some other smaller items such as the better use of caching which all result in FOSSBilling being just generally a little faster and better optimized across the board.
Better Staff Permissions
0.6.0 will also introduce a new system for handle staff permissions. It's granular and any module may provide it's own permission keys to keep things flexible. This release doesn't include group level permissions, but it is planned.
Additionally the starting permission keys are smaller, but we will expand the default list based on feedback and testing.
There's more than what's listed here such as dependency updates, many bug fixes, code quality improvements, various enhancements, and new features, but we think these were some of the most interesting.
We look forward to getting this release published and if all goes to plan it should be out within a few weeks, but it all depends on what issues we find during regression testing. Thanks for following the project and we hope you all are doing well!