Skip to content

Release v1.2.0#26

Merged
msimerson merged 1 commit into
mainfrom
release-1.1.9
Apr 20, 2026
Merged

Release v1.2.0#26
msimerson merged 1 commit into
mainfrom
release-1.1.9

Conversation

@msimerson

@msimerson msimerson commented Apr 20, 2026

Copy link
Copy Markdown
Collaborator
  • feat(index): add tokenizeQuoted, ~10x faster char/quote/comments
  • feat(zone): this.recordKeys Set for O(1) duplicate detection
  • feat(maradns): parse CAA records from RAW
  • fix(dns-zone): in invalid arg, show usage
  • change: replace some regex with native string functions
  • doc(README): wordsmithed
  • fix(bind): better error message when SOA is missing fields
  • fix(bind): don't limit TTL to 5 num chars
  • fix(bind): add path traversal guard
  • change: lib/{bind,maradns,tinydns}.js — added ctx parameter (default: zoneOpts)
  • change: class ZONE no longer extends Map
  • change: iterate directly on strings
  • change: serialByDate, remove first unused param (start)
  • change: str.substr() -> str.slice
  • test: add tinydns end-to-end coverage
  • fix: two typos uncovered by testing
  • coverage reporter updates
  • test: convert test runner & coverage to node:test
  • deps: bump versions to latest

Comment thread test/dns-zone.js Dismissed
Comment thread test/dns-zone.js Dismissed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release-focused update that modernizes parsing/validation internals, improves performance, strengthens $INCLUDE handling, and migrates tests to node:test, alongside new/updated fixtures and docs.

Changes:

  • Refactor parsers/validators (ctx-driven parsing, ZONE no longer extends Map, faster quote/comment handling, duplicate detection via Set).
  • Add/expand end-to-end + directive coverage (tinydns, MaraDNS, CLI export paths) and migrate test runner to node:test.
  • Release metadata updates (package version/scripts, changelog/readme/CI tweaks).

Reviewed changes

Copilot reviewed 18 out of 20 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
lib/bind.js Parser refactor + $INCLUDE recursion/guard changes and directive handling updates
lib/maradns.js Parser refactor (ctx), RAW→CAA parsing, improved parsing robustness
lib/tinydns.js Parser refactor (ctx), SOA defaults, PTR formatting fix, AAAA+PTR parsing adjustment
lib/zone.js ZONE refactor (no longer Map), duplicate detection via recordKeys, error collection
index.js Faster quoted-token scanning helpers; serialByDate signature change; string API updates
bin/dns-zone.js CLI arg error handling improvements, stdin ingestion refactor, validation error aggregation, JSON newline output
package.json Version bump to 1.1.9, switch to node --test, new coverage scripts, dependency bumps
test/zone.js Port to node:test and remove mocha this usage
test/bind.js Port to node:test + new $INCLUDE-skipping test
test/maradns.js Port to node:test + enable RAW CAA test + new directive/PTR tests
test/tinydns.js New tinydns end-to-end tests for many record types and fixtures
test/index.js New unit tests for valueCleanup and serialByDate
test/dns-zone.js New CLI end-to-end export/usage coverage
README.md Expanded usage/docs and programmatic API examples
CHANGELOG.md New release entry added
CONTRIBUTORS.md Regenerated contributor commit count
.gitignore Coverage artifact ignore tweaks
.github/workflows/publish.yml Added explicit permissions for publish workflow
.github/FUNDING.yml Removed funding metadata

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CHANGELOG.md
Comment thread test/tinydns.js Outdated
Comment thread README.md
Comment thread lib/bind.js Outdated
Comment thread lib/bind.js Outdated
Comment thread lib/bind.js Outdated
@msimerson msimerson changed the title Release v1.1.9 Release v1.2.0 Apr 20, 2026
@msimerson msimerson marked this pull request as ready for review April 20, 2026 05:26
- deps: bump versions to latest
- test: add tinydns end-to-end coverage
- fix: two typos uncovered by testing
- fix(bind): better error message when SOA is missing fields
- fix(bind): don't limit TTL to 5 num chars
- fix(bind): add path traversal guard
- fix(dns-zone): in invalid arg, show usage
- change: lib/{bind,maradns,tinydns}.js — added ctx parameter (default: zoneOpts)
- change: class ZONE no longer extends Map
- change: iterate directly on strings
- change: serialByDate, remove first unused param (start)
- change: str.substr() -> str.slice
- feat(index): add string fns, ~10x faster char/quote/comments
- feat(zone): this.recordKeys Set for O(1) duplicate detection
- feat(maradns): parse CAA records from RAW
- feat(bind): support generic record format, RFC 3597
- change: replace some regex with native string functions
- doc(README): wordsmithed
- fix(maradns): eliminate polynomial backtracking
- change: move BIND INCLUDE processing into library
- feat: NDJSON import
- fix: more polynomial regex fixes
- maradns: replace regex with parser
- style: es2024 updates
@msimerson msimerson merged commit 61f148a into main Apr 20, 2026
11 checks passed
@msimerson msimerson deleted the release-1.1.9 branch April 20, 2026 06:52
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.

3 participants