Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
ba7bacf
Merge pull request #1541 from zonemaster/master
matsduf Jun 29, 2026
6904c13
Improve cmp overloads for Nameservers and DNSNames
marc-vanderwal Aug 6, 2026
3e056e4
Update CNAME resolution
tgreenx Apr 7, 2026
bf3d307
Apply suggestions from code review
tgreenx Apr 7, 2026
917cba3
Update unit test
tgreenx May 12, 2026
bf674f0
Handle NODATA responses for in-bailiwick names
tgreenx Jun 9, 2026
f7d10eb
Address review comments: fix case-sensitiveness of CNAME records, doc…
tgreenx Sep 1, 2026
24d87b8
Add missing DNSKEY/DS algorithm comparison
tgreenx Sep 15, 2026
d10225c
Merge pull request #1551 from tgreenx/fix-dnssec02
tgreenx Sep 22, 2026
8e4eafe
Introduce Zonemaster::Engine::NameserverSet
marc-vanderwal Jul 27, 2026
c35c1a1
MethodsV2: align methods with their specifications
marc-vanderwal Aug 6, 2026
e6d7842
Add documentation for CNAME message tags
tgreenx Sep 22, 2026
61e08fb
Update lib/Zonemaster/Engine/Recursor.pm
tgreenx Sep 22, 2026
18842f3
Apply batched suggestions from code review
tgreenx Sep 24, 2026
37e4068
Merge pull request #1546 from marc-vanderwal/bugfix/#1545
marc-vanderwal Sep 24, 2026
84a79c8
TestMethodsV2: return Nameserver objects, not IPs
marc-vanderwal Jul 28, 2026
9626c8a
Test DSL: fix bug in fake_ns for root zone
marc-vanderwal Aug 5, 2026
5ce2c45
Consistency05: complete rewrite of implementation
marc-vanderwal Jul 8, 2026
20c8b3c
More documentation for CNAME message tags
tgreenx Sep 24, 2026
5706eb3
Merge pull request #1547 from marc-vanderwal/bugfix/consistency05
marc-vanderwal Sep 25, 2026
ccd7141
Rewrite Zone09 fully after specification update
marc-vanderwal Jul 20, 2026
aa333e0
Don’t run Zone09 in t/Test-zone.t
marc-vanderwal Jul 20, 2026
7271ac8
Refactor Zone11 a little bit
marc-vanderwal Jul 20, 2026
b6e0b3a
Merge pull request #1543 from marc-vanderwal/bugfix/zone09-false-warn…
marc-vanderwal Sep 25, 2026
d2d86d5
Merge pull request #1518 from tgreenx/update-cname
marc-vanderwal Sep 25, 2026
8a560cb
Preparation for v2026.1.2 release
matsduf Sep 25, 2026
ce762dd
Merge pull request #1555 from matsduf/prepare-release-2026.1.2
matsduf Sep 30, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions Changes
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
Release history for Zonemaster component Zonemaster-Engine

v9.0.1 2026-09-30 (part of Zonemaster v2026.1.2 release)

[Fixes]
- Updates the CNAME resolution (#1518)
- Rewrites test case Zone09 implementation (#1543)
- Rewrites test case Consistency05 implementation (#1547)
- Fixes MethodsV2 when dealing with fake delegation (#1546)
- Adds missing DNSKEY/DS algorithm comparison in DNSSEC02 (#1551)


v9.0.0 2026-06-29 (part of Zonemaster v2026.1 release)

[Breaking changes]
Expand Down
4 changes: 2 additions & 2 deletions MANIFEST
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ lib/Zonemaster/Engine/Nameserver/Cache/LocalCache.pm
lib/Zonemaster/Engine/Nameserver/Cache.pm
lib/Zonemaster/Engine/Nameserver/Cache/RedisCache.pm
lib/Zonemaster/Engine/Nameserver.pm
lib/Zonemaster/Engine/NameserverSet.pm
lib/Zonemaster/Engine/Normalization/Error.pm
lib/Zonemaster/Engine/Normalization.pm
lib/Zonemaster/Engine/NSArray.pm
Expand Down Expand Up @@ -80,6 +81,7 @@ t/nameserver-axfr.data
t/nameserver-axfr.t
t/nameserver.data
t/nameserver.t
t/nameserverset.t
t/normalization.t
t/packet.t
t/pod-coverage.t
Expand Down Expand Up @@ -237,8 +239,6 @@ t/Test-zone01-A.data
t/Test-zone01-A.t
t/Test-zone01-B.data
t/Test-zone01-B.t
t/Test-zone09-1.data
t/Test-zone09-1.t
t/Test-zone09.data
t/Test-zone09.t
t/Test-zone11-1.data
Expand Down
2 changes: 1 addition & 1 deletion lib/Zonemaster/Engine.pm
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package Zonemaster::Engine;
use v5.16.0;
use warnings;

use version; our $VERSION = version->declare("v9.0.0");
use version; our $VERSION = version->declare("v9.0.1");

BEGIN {
# Locale::TextDomain (<= 1.20) doesn't know about File::ShareDir so give a helping hand.
Expand Down
18 changes: 11 additions & 7 deletions lib/Zonemaster/Engine/DNSName.pm
Original file line number Diff line number Diff line change
Expand Up @@ -99,13 +99,17 @@ sub str_cmp {
# Treat undefined value as root
my $other = $_[1] // q{};

if ( blessed $other and $other->isa( 'Zonemaster::Engine::DNSName' ) ) {
return $me cmp uc( $other->{_string} // $other->string() );
}
else {
# Assume $other is a string; remove trailing dot except if only character
return $me cmp uc( $other =~ s/.\K [.] \z//xr );
}
my $comparison = do {
if ( blessed $other and $other->isa( 'Zonemaster::Engine::DNSName' ) ) {
$me cmp uc( $other->{_string} // $other->string() );
}
else {
# Assume $other is a string; remove trailing dot except if only character
$me cmp uc( $other =~ s/.\K [.] \z//xr );
}
};

return $_[2] ? -$comparison : $comparison;
}

sub next_higher {
Expand Down
15 changes: 14 additions & 1 deletion lib/Zonemaster/Engine/Nameserver.pm
Original file line number Diff line number Diff line change
Expand Up @@ -577,7 +577,20 @@ sub string {
sub compare {
my ( $self, $other, $reverse ) = @_;

return $self->string cmp $other->string;
my $comparison = do {
if ( ref $other and $other->isa('Zonemaster::Engine::Nameserver') ) {
$self->name cmp $other->name ||
$self->address->version <=> $other->address->version ||
$self->address->intip <=> $other->address->intip;
}
else {
$self->string cmp $other
}
};

$comparison = -$comparison if $reverse;

return $comparison;
}


Expand Down
Loading
Loading