What's Fixed
RFC2136 DNS Account Editing (#85)
- HTTP 405 on edit resolved — Added
PUT /api/dns/{provider}/accounts/{account_id}handler to both the REST API (DNSAccountDetailresource) and the web routes layer. Attempting to save changes to any DNS provider account (RFC2136 in particular) previously returnedHTTP 405 Method Not Allowed. - Credential preservation on edit — The update handler merges incoming data with the existing account config, skipping any field whose value is the masked placeholder
'********'. This prevents accidental corruption of secrets that are intentionally hidden in the UI. - RFC2136
configuredstatus now correct — Extended the credential key list used to determine whether an account is configured to include RFC2136-specific fields (nameserver,tsig_key,tsig_secret). Previously these accounts always showed as not configured.
Files Changed
modules/api/resources.py— newput()method onDNSAccountDetailmodules/web/settings_routes.py— PUT support added toapi_dns_account_detailmodules/core/dns_providers.py— RFC2136 keys added toconfiguredcheck
Testing
All 153 unit tests + 12 UI tests pass.