v0.5.0
happyDomain v0.5.0: Disjoint Records and Services
Over the past few months, we have been reworking how the zone abstraction works.
One of the main caveats of happyDomain was its previous workflow: it first analyzed a domain, extracted metadata from DNS records, and then regenerated all records from that metadata. As a result, immediately after a first import, users could be told that dozens of changes (sometimes more than 42!) needed to be applied. This was often caused by minor differences such as formatting variations (for example, extra spaces) that did not match happyDomain’s expected format.
We went back to the drawing board.
Services, which aim to provide a logical abstraction of a zone, no longer store derived metadata. Instead, they now store the raw DNS records directly. As a result, a fresh import no longer triggers unexpected changes.
The simplified forms to edit records and services are still available. However, instead of editing (backend) metadata, the web interface now parses the raw records on the fly, preserving a convenient editing experience while avoiding unintended rewrites.
Storing raw records in the database also enables a new way to display zones: a plain list of DNS records, similar to what you would find in advanced DNS zone editors. In this view, there is no abstraction layer: you can edit each record exactly as you wish:
While best efforts have been made to migrate zones from previous versions, the new service model may lead to unexpected migration issues. If you encounter any migration errors or abnormal behavior after upgrading, please open an issue.
New Contributors
Full Changelog: v0.4.1...v0.5.0