Unfortunately this isn't a fun or sexy release with a bunch of new features, but it's a much needed one. Since there hasn't been a new release of DomainMOD for a little while now, some of the underlying software version requirements got a bit out-of-date. Some of the newest versions of MariaDB and MySQL had compatibility issues, and would throw errors in certain situations.
I've spent a bunch of time in v4.20 updating DomainMOD to work with all of the currently-supported versions of PHP*, MariaDB, and MySQL, and the newest DomainMOD version requirements are as follows:
MariaDB: 10.4-11.1.2 or MySQL 5.7-8.1.0
If you're planning to upgrade DomainMOD, you should make sure that your server meets the above requirements. If it's still running PHP 8.0, you should wait until you can upgrade your server to PHP 8.1 or higher before you upgrade to DomainMOD v4.20.
* - Although PHP 8.0 is technicaly being supported for a couple more months, some of DomainMOD's dependencies now require PHP 8.1, so we've had to retire PHP 8.0 support a little bit early.
Since launching our new Support Portal & Roadmap, we've had two features stand out as the most requested and upvoted, the ability to import domains using a CSV file, and support for Cloudflare's API. Well I'm happy to announce that as of DomainMOD v4.19.0, which was released yesterday, both of these features have now landed.
A CSV importer has been requested a bunch of times, even before the Roadmap existed, and I've always known that it's something I wanted to implement, it just hadn't happened yet. I think one of the reasons I was hesitant to start on the CSV Importer is because I knew what a big project it was going to be in the end, and how much time was going to be involved, at least for the final version that I kept picturing in my head. I started thinking about the CSV Importer again recently and it dawned on me... who cares about the final version? I just needed to build a first version, and things will grow from there. So that's exactly what I did, I buckled down in my spare time over the past week and I came up with a CSV Importer that I think is both functional and flexible, and should handle most use cases.
Now one of the fastest ways to get your domains into DomainMOD is to use the CSV Importer. You simply download the sample CSV template, enter as little or as much of your domain data into the CSV file as you want, and then import it, it's that simple. Although you should keep in mind that if you only enter your domains (the minimum requirement to submit a CSV import request), the system is going to create some default assets for you so that it has something to link your domains to, and these assets will probably need some cleanup done to them later on. We generally recommend that you take the time to enter as much information as you can into the CSV file, that way you'll have the most complete picture of your domain data as possible.
And the second most requested and upvoted feature recently, support for Cloudflare's API, is also here. Now if you use Cloudflare as a domain registrar you can use their API to import your domains and their details into DomainMOD. Cloudflare didn't always offer domain registrations, just incoming transfers, and they didn't always expose domain details via an API, so it just wasn't previously possible to incorporate Cloudflare into DomainMOD. Luckily some things have changed and Cloudflare now had everything we needed to implement their API, so it's finally been done!
Where to start, where to start. Well, I guess I'll start by saying that what v4.18 lacks in quantity, it definitely makes up for in quality. You see, there were only a handful of line items for this version release, however it was a pretty massive update in a couple ways.
Big update number one, which is probably the one that most users will be interested in, is that DomainMOD has had a complete redesign. The majority of the layout itself hasn't changed, so the UI will still feel familiar, however the graphical elements have been updated and should feel more modern.
There's also another exciting thing that's come along with the redesign, something that's basically a must-have these days but DomainMOD has been missing. Some of you have probably already guessed what the feature is, but for the others I'll just spit it out. It's dark mode. DomainMOD FINALLY has a dark mode. Now when you're up way too late working on your domains, you can help reduce eye strain simply by flipping the dark mode switch.
The second big update, which most people probably won't care much about (at least not as much as dark mode!), are a bunch of security enhancements that have been made. We recently signed up for a penetration testing service so that we could get actionable recommendations on how to increase the overall security of DomainMOD, and we've worked hard to implement as many of those recommendations as possible. In fact, we initially went a little overboard and locked things down a bit too much, but we've already rolled that change back :)
Also, although not directly related to this version release, we do have a couple other updates to share with you as well.
First, our website has also undergone a complete redesign. After we redesigned DomainMOD we felt that the website seemed a bit dated, so of course that had to be redone as well. We're also going to be working on a complete redesign of our User Guide, so stay tuned for that.
And last, but definitely not least, is our new Support Portal. Not only does the new portal allow users to submit feedback, questions, and issues, but users can then vote on the items that are most important to them, which helps us prioritize what should be worked on next. There's also a built-in Roadmap, which will allow users to follow DomainMOD's development progress.
Oops! Apparently I completely failed at posting about DomainMOD v4.16, so this post is about both versions v4.16 (released November 2nd, 2020) and v4.17 (released today, June 26th, 2021).
The worst part is, v4.16 was a highly anticipated release, and one I was really happy to get out into the world. You see, after quite a few requests, v4.16 finally brought multilingual support to DomainMOD. It was a pretty big overhaul to the software as a whole, but it's finally complete, and I couldn't be happier!
As of today, DomainMOD supports Dutch, English (CA), English (US), French, German, Italian, Polish, Portuguese, Russian, and Spanish. We're always looking to improve our translations, as well as add more languages, so if you're interested in contributing head on over to our translations repository.
As for v4.17, which was just released today, it was mostly a security and maintenance release, however there are still a couple items that are worth mentioning.
First, we've added a new URL custom field type, which allows you to keep track of various URLs related to your domains and SSL certificates, such as webmail clients, control panels, etc. Although this field works pretty much just like a regular text field does, the system will recognize it as a URL and treat it a bit differently.
Second, we've once again had to change the currency converter that we use. Unfortunately, free currency converters with an API that don't require an account are pretty scarce these days, and they don't seem to stick around for very long. Every provider we've used in the past has either disappeared or changed their requirements, but we've implemented a new one that seems to be working well, so if you've been having issues with currency conversions lately you may want to give v4.17 a try.
I recently found myself learning a bit of Docker in order to create a development environment, and I realized how easy it would be to setup a Docker-based version of DomainMOD, which I'm sure some users would appreciate. After a little bit of digging (I mean a very little bit, Docker is pretty straightforward), it is done!
To install DomainMOD using Docker just head on over to the Download page for the full details.
If you already have DomainMOD installed but you want to switch to the Docker version, luckily that's now super easy using our Backup & Restore feature. You simply export your current database with one click, install the Docker version of DomainMOD, and then with one more click you can restore your previous database.
After what seems like forever, as of DomainMOD v4.15, support has been added for Gandi's API. Gandi has been our highest requested API integrations by far, so it's nice to finally be able to make it happen.
We've personally wanted to implement Gandi's API for many, many years, as we're a fan of Gandi, however their old API required the use of an outdated PHP library which hadn't been worked on in years and could potentially have security vulnerabilities, and this is in addition to the fact that the API usage was a bit of a nightmare.
Well, luckily none of that matters anymore! Gandi recently implemented a new API, one that was very easy to implement, and it didn't require any 3rd party libraries that could potentially become oudated.
In other API news, a fix has been implemented for the Namecheap API that prevented you from importing more than 100 domains. Thanks to amasmuggleavocados on GitHub for the fix!
Lastly, due to some increased password security measures that were recently implemented, which are not compatible with PHP v5.3 and v5.4, we have made the decision to deprecate support for these PHP versions. We try to make DomainMOD work well on older PHP versions, however these two PHP versions reached their official end-of-life 5+ years ago, so it didn't make sense to keep supporting them at the cost of decreased password security.
We're happy to announce that DomainMOD now has built-in Backup & Restore support, which allows you to, quickly and easily, completely backup your DomainMOD database into a single file, and just as quickly and easily restore that database from a single file. This is helpful if you want to perform regular backups of your data, you need to move DomainMOD to a new server, or if you want to change your installation method.
Some other updates in this release are that the Name.com API has been upgraded to v4, you can now customize the signature on emails sent by the system, and the Free Currency Converter API has been removed as a currency conversion API option, as they've changed their system and you now need to register for an API key in order to perform conversions.
On the security front, we've applied some updates that fix some potential vulnerabilities, and the way the system handles passwords at login and in the database has been updated to offer more security.
A feature that we've been asked about quite a few times, and a feature that I've wanted for a long time myself, is the ability to display Custom Fields on the main Domain and SSL Certificate pages, and I'm happy to announce that as of v4.13, this is now possible!
Although implementing this feature was nowhere near as difficult as I thought it was going to be, it's still not quite done, but the main functionality is at least there now. This feature currently only works if you're not using Large Mode, and the advanced filters don't work on Custom Fields, however you are able to search the data. If you need to do advanced filtering on Custom Fields, your best bet is to export your domain data and use a program that accepts CSV files, as every bit of your domain data is included in the export.
In addition to the Custom Field updates, v4.13 also now includes multiple currency converters. There have been a few times where the currency converter has experienced some downtime, causing the conversions to be incorrect and sometimes show up as zeros, so now users have the option to switch to a different currency converter, which will help ensure that conversions are always up-to-date.
We've also fixed a long-standing bug with Segment filtering. Previously when you tried to filter your domains based on a Segment that didn't contain any active domains, you would be given an Internal Server Error, however this issue has now been resolved.
Although v4.10 was released primarily to fix a couple potential security vulnerabilities, we've also modified the Date Picker to be a lot more user-friendly, and we've updated DomainMOD to use it everywhere that a date field or range is required. We were never fully satisfied with how the Date Picker functioned, but these newest updates change that.
Regarding the potential vulnerabilities (CVE-2018-11403 & CVE-2018-11404), we were notified of these issues a few days ago and immediately began investigating a solution, which was implemented in v4.10.
We recommend that you upgrade your DomainMOD installation ASAP in order to patch these potential vulnerabilities and secure your system.
Although there are quite a few updates in this release, most of them are to the inner workings of DomainMOD, so there's not much you'll notice while using the software itself.
One of the exceptions to this is the new installation process, which has been completely redone. Not only does the installation process have a new look, including a section that checks your web server for the minimum requirements, but the code has been completely cleaned up and is now in a much better position for future expansions to the process.
Another big change is that we've now published an official Code of Conduct, which lets you know what is and isn't acceptable within the DomainMOD community. We recommend that everyone gives this a read.
We also had to move away from Fixer.io for currency conversions, as they no longer allow API lookups without having an account. We're now using Currency Converter API for these conversions.
As I mentioned, most of the other changes are behind-the-scenes, but here is a list in case you're curious:
- Added Requirements to README
- Added Code of Conduct to README
- Added PHP mail() wrapper
- Added logging to email sends
- Expanded the installation process
- Updated Composer (1.4.1 -> 1.4.2)
- Updated PHPMailer (5.2.25 -> 5.2.26)
- Updated PHP Cron Expression Parser (1.2.0 -> 1.2.1)
- Switched from Fixer.io to Currency Converter API
- Updated Email Send code
- Updated remote file retrieval code
- Updated System Information page with more data
- Updated logging to include more information
- Updated Registrar API writeups
- Various fixes & code cleanup
One of the first things you'll probably notice about v4.07 is that the Dashboard has been updated to include some more information panels, giving you additional insight into your data as soon as you login to DomainMOD.
The Dashboard panels now display the following information (if applicable):
Total SSL Certificates
Total Sold Domains
Expiring SSL Certificates
Pending Domain Renewals
Pending Domain Registrations
Pending Domain Transfers
Pending Domains (Other)
Pending SSL Certificate Renewals
Pending SSL Certificate Registrations
Pending SSL Certificates (Other)
Domain Queue (Pending)
Domain Queue (Processing)
Domain Queue (Finished)
And now for the geeky stuff! If you don't care what goes on behind the scenes you can ignore the rest of this post.
Two big changes have been implemented in v4.07. The first, which has literally been years in the making, is that DomainMOD no longer uses the MySQL or MySQLi PHP extensions, and instead uses only PDO (PHP Data Objects). This means that in the future it will be possible to add support for additional database types. The full list of databases that could potentially get support in the future is located here.
The other big change with v4.07 is that we've converted the backend database from MyISAM to InnoDB, allowing us to implement transactions, which will help ensure the integrity of your data. Transactions do this by making sure multiple related queries get rolled back if one of them fails, instead of inserting partial information into your database.
v4.07 also contains some code fixes and optimizations, so even if the above new features don't appeal to you it's still recommended that you upgrade at your earliest convenience.
Although v4.04 is primarily a maintenance release, we've also added a couple new data types to DomainMOD's Custom Fields. In addition to Check Boxes, Text Fields, and Text Areas, you can now add Date (YYYY-MM-DD) and Time Stamp (YYYY-MM-DD HH:MM:SS) custom fields.
Regarding the maintenance part of the release, pretty much everything is behind-the-scenes, but if you're curious this is what we updated:
- Updated the 3rd party libraries (Composer, PHP Cron Expression Parser, PHPMailer)
- Changed encoding on emails from iso-8859-1 to UTF-8
- Updated the upgrade scripts to be able to be run from the command line
- Optimized database queries
- Cleaned up various code system-wide