Skip to content

Commit

Permalink
Merge pull request #1412 from zonemaster/develop
Browse files Browse the repository at this point in the history
Merge develop branch into master (Engine)
  • Loading branch information
matsduf authored Dec 9, 2024
2 parents b889bcb + 8cb771b commit c29b7db
Show file tree
Hide file tree
Showing 137 changed files with 7,686 additions and 5,750 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,12 @@ jobs:
- name: Install Zonemaster::LDNS (latest)
if: ${{ matrix.compatibility == 'latest' }}
run: |
cpanm --sudo --notest Module::Install Zonemaster::LDNS
cpanm --sudo --notest Module::Install ExtUtils::PkgConfig Zonemaster::LDNS
- name: Install Zonemaster::LDNS (develop)
if: ${{ matrix.compatibility == 'develop' }}
run: |
cpanm --sudo --notest Devel::CheckLib Module::Install Module::Install::XSUtil
cpanm --sudo --notest Devel::CheckLib Module::Install ExtUtils::PkgConfig Module::Install::XSUtil
git clone --branch=develop --depth=1 https://github.com/zonemaster/zonemaster-ldns.git
perl Makefile.PL # Generate MYMETA.yml to appease cpanm .
( cd zonemaster-ldns ; cpanm --sudo --notest . )
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Contribution to this repository is welcome. Contribution can be either an issue
report or a code or a documentation update. Also see the information in the
[main README][Zonemaster/Zonemaster README] in the main Zonemaster respository.
[main README][Zonemaster/Zonemaster README] in the main Zonemaster repository.

## Issue

Expand Down
59 changes: 48 additions & 11 deletions Changes
Original file line number Diff line number Diff line change
@@ -1,6 +1,43 @@
Release history for Zonemaster component Zonemaster-Engine


v7.0.0 2024-12-09 (part of Zonemaster v2024.2 release)

[Release information]
- Translations have not been fully updated in this release. They will
be updated in an upcoming extra release.

[Breaking change]
- Refactors ASNLookup code and documentation (#1257)

[Features]
- Changes default settings of queries (#1397)
- Updates DNSSEC10 implementation (#1396)
- Updates global cache and makes the feature being supported and not
experimental (#1394)
- Lowers the levels of ASN related messages from test case Connectivity03
(#1388)
- Updates MethodsV2 method to match new algorithm in test
case Basic01 (#1373)
- Adds CNAME followage in recursive lookups (#1288)
- Updates profile function (#1356)

[Fixes]
- Fixes abort condition for undelegated tests in the Basic module (#1401)
- Adds Try::Tiny in zonemaster-cli runtime Docker container (#1399)
- Fixes CDS and CDNSKEY RRsets comparison in test case DNSSEC15 (#1383)
- Removes test case Nameserver14 (never implemented) (#1390)
- Updates Connectivity04 implementation (#1393)
- Updates test case Delegation05 to include QNAME and QTYPE in diagnostics for
failed queries (#1392)
- Removes obsolete document (#1359)
- Resolves IP addresses directly from Engine for out-of-bailiwick names in fake
delegations (#1389)
- Fixes spelling errors (external contribution from @emollier) (#1378)
- Fixes barewords (external contribution from @emollier) (#1380)
- Fixes misspellings (external contribution from @jsoref) (#1366)


v6.0.0 2024-07-01 (part of Zonemaster v2024.1 release)

[Release information]
Expand Down Expand Up @@ -79,7 +116,7 @@ v4.7.2 2023-08-07 (public fix version)
- Fixes bug (regression) in test case BASIC01 that made all tests of
zone names that start with the same letters as the whole first label
of the parent zone fail, e.g. "NOrid.NO" and "FRance.FR". The bug
was introduced in version v4.7.1 in release v2023.1.1. (#1270)
was introduced in version v4.7.1 in release v2023.1.1. (#1270)


v4.7.1 2023-07-24 (public fix version)
Expand Down Expand Up @@ -138,7 +175,7 @@ v4.6.1 2023-01-31 (public fix version)
- Updates translations (#1180, #1167)
- Fixes a bug that made implementation of ADDRESS01 crash (#1181)
- Fixes a bug that made implementation of NAMESERVER11 create false error
when server returned legimate EDNS OPTION-CODE (#1173, #1177)
when server returned legitimate EDNS OPTION-CODE (#1173, #1177)
- Removed unneeded binary dependency from installation instruction for
Ubuntu and Debian (#1176)
- Fixes a bug that made implementation of ZONE01 crash when more than
Expand Down Expand Up @@ -388,7 +425,7 @@ v3.1.2 2020-05-22

[Fixes]
- Comparison in Zone10 on SOA owner name was done in case
senstive manner which created false ERRORs for some zones
sensitive manner which created false ERRORs for some zones
and depending on the case of input zone name (#734, #737)


Expand All @@ -405,7 +442,7 @@ v3.1.0 2020-04-30
- Allow installation of new LDNS on Debian 9 (#667)
- Add more meaningful message for unsupported algorithms in
DNSSEC test cases (#641, #632)
- Improved the hanling of "fuzzy" PO files (#640, #598, #600, #596)
- Improved the handling of "fuzzy" PO files (#640, #598, #600, #596)
- Implementation of revised version of DNSSEC10 (#633, #618, #632)
- Implementation of revised version of DNSSEC01 (#627, #616, #308)
- Implementation of revised version of DELEGATION05 (#628, #617, #236)
Expand Down Expand Up @@ -554,9 +591,9 @@ v3.0.0 2019-01-25 (pre-release version)
support #462
- Various #481, #485
- Fixes
- Uppdated formatting of msgid tables #402
- Updated formatting of msgid tables #402
- Fixed broken tests #412
- All link references on Github now to zonemaster/zonemaster instead
- All link references on GitHub now to zonemaster/zonemaster instead
of old dotse/zonemaster #406
- Updated manifest #422
- Updated travis conf to match supported perl versions (#426, #463)
Expand Down Expand Up @@ -628,7 +665,7 @@ v2.0.0
- Updated translations (#127, #196, #216, #248, #249, #291)
- Incremented VERSION of internal packages (98868cb)
- Other changes
- Fixed Commonmark rendering for Github (cc7a28a)
- Fixed Commonmark rendering for GitHub (cc7a28a)
- Switch msgfmt implementation to pure Perl (#223, #224)
- New Unit tests infrastructure. 896 tests kept, 2 removed, will be added back later (#310)

Expand All @@ -644,7 +681,7 @@ v1.1.0 2017-04-04 Public pre-release
- Solved Duplicate tag in en.po (#252)
- Solved Update documentation for logfilters (#221)
- add Ed25519 (15) and Ed448 (16) algorithms (#290)
- Solved Not-existent name server doesn't cause a failure (#278)
- Solved Nonexistent name server doesn't cause a failure (#278)

v1.0.16 2016-12-12

Expand Down Expand Up @@ -683,7 +720,7 @@ v1.0.14 2016-06-15
- Would be nice to add a count of name servers #453
- Partly resolved "JSON/JSON::XS usage and requirement", see issue #165
- nameserver03 test should not perform network requests, issue #168
- Locale files are not generated nor installed #173
- Locale files are neither generated nor installed #173
- ASN test should only look at authoritative nameservers at the child, issue #441
- Modify the "Notice" information when DNSSEC not signed, issue #193
- Implement updated test case dnssec02, issue #187
Expand Down Expand Up @@ -719,7 +756,7 @@ v1.0.8 2015-11-16

v1.0.7 2015-10-01
- ASN in logs are now arrays
- Make test witout IPv6 connectivity works, fixes #121
- Make test without IPv6 connectivity works, fixes #121
- Now requires Net::Socket::IP
- Fixes malformed log messages

Expand Down Expand Up @@ -762,7 +799,7 @@ v1.0.3 2015-04-07
- Refer to overview page from Zonemaster page.
- Fix missed corner case in parent-finding algorithm.
- CNAME handling accidentally left outside check for packet existence.
- Clearer message when failling signature checks because GOST support is
- Clearer message when failing signature checks because GOST support is
not present.

v1.0.2 2015-02-24
Expand Down
5 changes: 3 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM zonemaster/ldns:local as build
FROM zonemaster/ldns:local AS build

RUN apk add --no-cache \
# Only needed for CPAN deps
Expand Down Expand Up @@ -61,4 +61,5 @@ RUN apk add --no-cache \
perl-mailtools \
perl-module-install \
perl-net-ip \
perl-text-csv
perl-text-csv \
perl-try-tiny
60 changes: 14 additions & 46 deletions MANIFEST
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
Changes
CONTRIBUTING.md
docs/Implementing_Tests.pod
docs/Translation-translators.md
docs/Translation.pod
inc/Module/Install.pm
inc/Module/Install/Base.pm
Expand Down Expand Up @@ -74,7 +73,8 @@ t/asn.data
t/asn.t
t/dnsname.t
t/logger.t
t/manifest.t
t/methodsv2.data
t/methodsv2.t
t/nameserver-axfr.data
t/nameserver-axfr.t
t/nameserver.data
Expand Down Expand Up @@ -143,6 +143,8 @@ t/profiles/Test-syntax08-only.json
t/profiles/Test-zone-all.json
t/recursor.data
t/recursor.t
t/recursor-A.data
t/recursor-A.t
t/Test-address.data
t/Test-address.t
t/Test-basic.data
Expand All @@ -159,58 +161,22 @@ t/Test-connectivity03.data
t/Test-connectivity03.t
t/Test-connectivity04.data
t/Test-connectivity04.t
t/Test-connectivity04-A.data
t/Test-connectivity04-A.t
t/Test-consistency.data
t/Test-consistency.t
t/Test-consistency05-F.data
t/Test-consistency05-F.t
t/Test-consistency05.data
t/Test-consistency05.t
t/Test-consistency06-B.data
t/Test-consistency06-B.t
t/Test-consistency06.data
t/Test-consistency06.t
t/Test-delegation.data
t/Test-delegation.t
t/Test-delegation01-A.data
t/Test-delegation01-A.t
t/Test-delegation01-B.data
t/Test-delegation01-B.t
t/Test-delegation01-C.data
t/Test-delegation01-C.t
t/Test-delegation01-D.data
t/Test-delegation01-D.t
t/Test-delegation01-E.data
t/Test-delegation01-E.t
t/Test-delegation01-F.data
t/Test-delegation01-F.t
t/Test-delegation01-G.data
t/Test-delegation01-G.t
t/Test-delegation01-H.data
t/Test-delegation01-H.t
t/Test-delegation01-I.data
t/Test-delegation01-I.t
t/Test-delegation01-J.data
t/Test-delegation01-J.t
t/Test-delegation01-K.data
t/Test-delegation01-K.t
t/Test-delegation01-L.data
t/Test-delegation01-L.t
t/Test-delegation01-M.data
t/Test-delegation01-M.t
t/Test-delegation02-A.data
t/Test-delegation02-A.t
t/Test-delegation02-B.data
t/Test-delegation02-B.t
t/Test-delegation02-C.data
t/Test-delegation02-C.t
t/Test-delegation02-D.data
t/Test-delegation02-D.t
t/Test-delegation03-A.data
t/Test-delegation03-A.t
t/Test-delegation03-B.data
t/Test-delegation03-B.t
t/Test-delegation03-C.data
t/Test-delegation03-C.t
t/Test-delegation01.data
t/Test-delegation01.t
t/Test-delegation02.data
t/Test-delegation02.t
t/Test-delegation03.data
t/Test-delegation03.t
t/Test-dnssec-more.data
t/Test-dnssec-more.t
t/Test-dnssec.data
Expand All @@ -237,6 +203,8 @@ t/Test-dnssec05-I.data
t/Test-dnssec05-I.t
t/Test-dnssec05-J.data
t/Test-dnssec05-J.t
t/Test-dnssec10.data
t/Test-dnssec10.t
t/Test-dnssec16.data
t/Test-dnssec16.t
t/Test-nameserver.data
Expand Down
7 changes: 5 additions & 2 deletions MANIFEST.SKIP
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
^\.perltidyrc$
^\.travis\.yml$
^util/
^share/update-po$ # PO files are exluded from dist, which makes this script meaningless in dist
^share/update-po$ # PO files are excluded from dist, which makes this script meaningless in dist
^share/Zonemaster-Engine.pot$
^t/po-files.t$ # PO files are excluded from dist, so we cannot test them
^Dockerfile$
Expand Down Expand Up @@ -71,9 +71,12 @@
^MYMETA\.
#!end included /usr/share/perl/5.20/ExtUtils/MANIFEST.SKIP

# For Github action
# For GitHub action
^\.github/

# Debian packaging
^debian/
^.pc/

# Avoid MANIFEST test
t/manifest.t
3 changes: 2 additions & 1 deletion Makefile.PL
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ requires 'Email::Valid' => 0;
requires 'File::ShareDir' => 1.00;
requires 'File::Slurp' => 0;
requires 'IO::Socket::INET6' => 2.69;
requires 'List::Compare' => 0;
requires 'List::MoreUtils' => 0;
requires 'Locale::TextDomain' => 1.20;
requires 'Log::Any' => 0;
Expand All @@ -33,7 +34,7 @@ requires 'Net::IP::XS' => 0.21;
requires 'Readonly' => 0;
requires 'Text::CSV' => 0;
requires 'YAML::XS' => 0;
requires 'Zonemaster::LDNS' => 4.000002; # For v4.0.2
requires 'Zonemaster::LDNS' => 4.001000; # For v4.1.0

test_requires 'Locale::PO' => 0;
test_requires 'Pod::Coverage' => 0;
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ For participation, contact and bug reporting, please see
## License

This is free software under a 2-clause BSD license. The full text of the license can
be found in the [LICENSE](LICENSE) file included in this respository.
be found in the [LICENSE](LICENSE) file included in this repository.


[CPAN site]: https://metacpan.org/pod/Zonemaster::Engine
Expand Down
1 change: 0 additions & 1 deletion docs/Translation-translators.md

This file was deleted.

10 changes: 5 additions & 5 deletions 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("v6.0.0");
use version; our $VERSION = version->declare("v7.0.0");

BEGIN {
# Locale::TextDomain (<= 1.20) doesn't know about File::ShareDir so give a helping hand.
Expand Down Expand Up @@ -37,7 +37,7 @@ my $init_done = 0;

sub init_engine {
return if $init_done++;
Zonemaster::Engine::Recursor::init_recursor;
Zonemaster::Engine::Recursor::init_recursor();
}

sub logger {
Expand Down Expand Up @@ -141,7 +141,7 @@ sub add_fake_delegation {
if ( !@{ $href->{$name} }
&& !$class->zone( $domain )->is_in_zone( $name ) )
{
my @ips = Zonemaster::LDNS->new->name2addr( $name );
my @ips = map { $_->ip } Zonemaster::Engine::Recursor->get_addresses_for( $name );
push @{ $href->{$name} }, @ips;
if ( !@ips ) {
$incomplete_delegation = 1;
Expand Down Expand Up @@ -252,7 +252,7 @@ This manual describes the main L<Zonemaster::Engine> module. If what you're afte
=item init_engine()
Run the inititalization tasks if they have not been run already. This method is called automatically in INIT block.
Run the initialization tasks if they have not been run already. This method is called automatically in INIT block.
=item test_zone($name)
Expand Down Expand Up @@ -289,7 +289,7 @@ Returns the global L<Zonemaster::Engine::Logger> object.
=item all_tags()
Returns a list of all the tags that can be logged for all avilable test modules.
Returns a list of all the tags that can be logged for all available test modules.
=item all_methods()
Expand Down
Loading

0 comments on commit c29b7db

Please sign in to comment.