mirror of
https://github.com/timothymiller/cloudflare-ddns.git
synced 2026-05-06 17:53:42 -03:00
Release v2.1.2
Patch release: case-insensitive Cloudflare DNS record matching (#255), Pushover URL parsing fix for canonical shoutrrr format (#258), and Gotify URL parsing fix for ?token= query and ?disabletls=yes (#262). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -92,7 +92,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "cloudflare-ddns"
|
||||
version = "2.1.1"
|
||||
version = "2.1.2"
|
||||
dependencies = [
|
||||
"if-addrs",
|
||||
"rand",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "cloudflare-ddns"
|
||||
version = "2.1.1"
|
||||
version = "2.1.2"
|
||||
edition = "2021"
|
||||
description = "Access your home network remotely via a custom domain name without a static IP"
|
||||
license = "GPL-3.0"
|
||||
|
||||
48
RELEASE_NOTES_2.1.2.md
Normal file
48
RELEASE_NOTES_2.1.2.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# cloudflare-ddns v2.1.2 — Notification & Domain Casing Fixes
|
||||
|
||||
This patch release fixes three bugs reported on GitHub.
|
||||
|
||||
## Bug fixes
|
||||
|
||||
- **Mixed-case domains now match existing DNS records (#255).**
|
||||
In env-var mode, configuring a domain with mixed casing (for example
|
||||
`ExaMple.com`) caused every update cycle to attempt a duplicate record
|
||||
create and fail with Cloudflare error `81058: An identical record already
|
||||
exists.` Cloudflare normalizes record names to lowercase server-side, so
|
||||
the lookup is now case-insensitive.
|
||||
|
||||
- **Pushover notifications work again (#258).**
|
||||
The shoutrrr-style URL `pushover://shoutrrr:TOKEN@USER` (the canonical form
|
||||
from `containrrr/shoutrrr`) was being parsed with the literal `shoutrrr:`
|
||||
username included in the API token, which Pushover rejected. The parser
|
||||
now strips the optional `<user>:` prefix from the token segment, restoring
|
||||
the v2.0.7 behavior. Optional shoutrrr query parameters (`?devices=...`,
|
||||
`?priority=...`) are tolerated.
|
||||
|
||||
- **Gotify notifications now produce a valid request URL (#262).**
|
||||
The Gotify URL parser blindly appended `/message` after any query string,
|
||||
producing malformed webhook URLs like
|
||||
`https://host:9090?token=XYZ/message`. The parser now follows shoutrrr's
|
||||
canonical layout — token as the final path segment or `?token=` query —
|
||||
and supports `?disabletls=yes` to switch the resulting webhook from HTTPS
|
||||
to HTTP for typical home-LAN setups, plus the `gotify+http://` /
|
||||
`gotify+https://` aliases.
|
||||
|
||||
## Already addressed (closing #257)
|
||||
|
||||
The robust public-IP discovery enhancements requested in #257 (multi-endpoint
|
||||
trace fallback, strict address-family validation, API request timeouts,
|
||||
duplicate record cleanup) were already folded into the Rust port shipped in
|
||||
v2.0.8 — see `src/provider.rs` (`CF_TRACE_PRIMARY` / `CF_TRACE_FALLBACK`,
|
||||
`validate_detected_ip`, `build_split_client`) and `src/cloudflare.rs`
|
||||
(`set_ips` dedup behavior, per-request `timeout`).
|
||||
|
||||
## Upgrade
|
||||
|
||||
```bash
|
||||
docker pull timothyjmiller/cloudflare-ddns:2.1.2
|
||||
# or
|
||||
docker pull timothyjmiller/cloudflare-ddns:latest
|
||||
```
|
||||
|
||||
No configuration changes are required.
|
||||
Reference in New Issue
Block a user