Skip to content

v2.1.0 release#859

Merged
liquidsec merged 46 commits intomainfrom
dev
Apr 16, 2026
Merged

v2.1.0 release#859
liquidsec merged 46 commits intomainfrom
dev

Conversation

@liquidsec
Copy link
Copy Markdown
Collaborator

@liquidsec liquidsec commented Mar 26, 2026

Summary

blastdns migration

  • Replace dns.asyncresolver with blastdns.Client throughout (DNSManager, CLI, modules)
  • Shared blastdns.Client instance passed via dns_client parameter
  • dispatchDNS uses resolve_multi_full for parallel record type resolution
  • DNSWalk optimized: glue record extraction, parallel a_resolve, tighter timeouts

Poetry to uv migration

  • Replace poetry with uv for dependency management
  • Switch build backend from poetry-core to hatchling
  • Add baddns/version.py for version management
  • All CI workflows updated to use uv sync / uv run / uv build
  • cli.print_version() uses importlib.metadata instead of dist-info scanning

Test compatibility

  • Normalize mock DNS values to zone-file format in create_mock_client() (TXT quoting, MX priority prefix, NSEC via monkeypatch)
  • Handle >255 byte TXT records via chunk splitting
  • 363 tests, 100% coverage

Other

  • Replace MODERATE confidence level with MEDIUM to match BBOT
  • Fix false positives when TXT records reference service root domains
  • Remove requests dependency (was only used in dead test SSL patches)
  • Bump version to 2.1.0
  • Dependency updates (ruff, pyfakefs, pytest-cov, pygments, blastdns 1.9.1)

dependabot bot and others added 14 commits March 19, 2026 08:24
Bumps [pyfakefs](https://github.com/pytest-dev/pyfakefs) from 6.1.4 to 6.1.6.
- [Release notes](https://github.com/pytest-dev/pyfakefs/releases)
- [Changelog](https://github.com/pytest-dev/pyfakefs/blob/main/CHANGES.md)
- [Commits](pytest-dev/pyfakefs@v6.1.4...v6.1.6)

---
updated-dependencies:
- dependency-name: pyfakefs
  dependency-version: 6.1.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.7.5 to 9.7.6.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](squidfunk/mkdocs-material@9.7.5...9.7.6)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-version: 9.7.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…mkdocs-material-9.7.6

Bump mkdocs-material from 9.7.5 to 9.7.6
…pyfakefs-6.1.6

Bump pyfakefs from 6.1.4 to 6.1.6
Bumps [pytest-cov](https://github.com/pytest-dev/pytest-cov) from 7.0.0 to 7.1.0.
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](pytest-dev/pytest-cov@v7.0.0...v7.1.0)

---
updated-dependencies:
- dependency-name: pytest-cov
  dependency-version: 7.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…pytest-cov-7.1.0

Bump pytest-cov from 7.0.0 to 7.1.0
Replace MODERATE confidence level with MEDIUM to match BBOT
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Mar 26, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (373abc9) to head (20989a0).
⚠️ Report is 6 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##              main      #859    +/-   ##
==========================================
  Coverage   100.00%   100.00%            
==========================================
  Files           24        25     +1     
  Lines         1796      1899   +103     
==========================================
+ Hits          1796      1899   +103     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Fixed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Fixed
@liquidsec liquidsec marked this pull request as draft March 26, 2026 15:39
@liquidsec liquidsec marked this pull request as draft March 26, 2026 15:39
@liquidsec liquidsec marked this pull request as draft March 26, 2026 15:39
liquidsec and others added 5 commits March 26, 2026 11:48
optimize dnswalk: glue records, parallel a_resolve, tighten timeouts …
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.7 to 0.15.8.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.15.7...0.15.8)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.15.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
liquidsec and others added 22 commits March 27, 2026 16:54
…ruff-0.15.8

Bump ruff from 0.15.7 to 0.15.8
Bumps [cryptography](https://github.com/pyca/cryptography) from 46.0.5 to 46.0.6.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@46.0.5...46.0.6)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-version: 46.0.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [pygments](https://github.com/pygments/pygments) from 2.19.2 to 2.20.0.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](pygments/pygments@2.19.2...2.20.0)

---
updated-dependencies:
- dependency-name: pygments
  dependency-version: 2.20.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [poetry](https://github.com/python-poetry/poetry) from 2.3.2 to 2.3.3.
- [Release notes](https://github.com/python-poetry/poetry/releases)
- [Changelog](https://github.com/python-poetry/poetry/blob/main/CHANGELOG.md)
- [Commits](python-poetry/poetry@2.3.2...2.3.3)

---
updated-dependencies:
- dependency-name: poetry
  dependency-version: 2.3.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
…tography-46.0.6

Bump cryptography from 46.0.5 to 46.0.6
…ry-2.3.3

Bump poetry from 2.3.2 to 2.3.3
…ents-2.20.0

Bump pygments from 2.19.2 to 2.20.0
Fix false positives when TXT records reference service root domains
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.8 to 0.15.9.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.15.8...0.15.9)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.15.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…ruff-0.15.9

Bump ruff from 0.15.8 to 0.15.9
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.9 to 0.15.10.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.15.9...0.15.10)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.15.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [pyfakefs](https://github.com/pytest-dev/pyfakefs) from 6.1.6 to 6.2.0.
- [Release notes](https://github.com/pytest-dev/pyfakefs/releases)
- [Changelog](https://github.com/pytest-dev/pyfakefs/blob/main/CHANGES.md)
- [Commits](pytest-dev/pyfakefs@v6.1.6...v6.2.0)

---
updated-dependencies:
- dependency-name: pyfakefs
  dependency-version: 6.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…ruff-0.15.10

Bump ruff from 0.15.9 to 0.15.10
…pyfakefs-6.2.0

Bump pyfakefs from 6.1.6 to 6.2.0
Normalize mock DNS values to zone-file format in create_mock_client():
- TXT: auto-quote bare strings, split >255 bytes into chunks
- MX: add priority prefix and trailing dot to bare hostnames
- NSEC: handle via DNSManager monkeypatch since hickory refuses
  zone-file NSEC parsing

Bump blastdns dependency to 1.9.1.
…quoting

Fix test compatibility with blastdns 1.9.1
- Replace poetry with uv for dependency management
- Switch build backend from poetry-core to hatchling
- Add baddns/__version__.py for version management
- Update CI workflow to use uv
- Update cli.print_version() to use importlib.metadata
- UNKNOWN record type handling in DNSManager.process_answer
- DnsWalk.extract_glue_records with A records
- DnsWalk.a_resolve with glue hit/miss paths
- __version__ module import
Comment thread tests/dnsmanager_test.py Dismissed
Comment thread tests/dnsmanager_test.py Dismissed
@liquidsec liquidsec marked this pull request as ready for review April 16, 2026 14:05
@liquidsec liquidsec merged commit 85fffda into main Apr 16, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants