Skip to content

Latest commit

 

History

History
306 lines (231 loc) · 10 KB

CHANGELOG.md

File metadata and controls

306 lines (231 loc) · 10 KB

Changelog

Notable changes to this project are documented in this file.

Unreleased

1.2.2 - 2024-11-17

  • dep(eslint): update to v9 & config
  • chore: tighten up fromBind regex
  • packaging tweaks (#43)

1.2.1 - 2024-03-10

  • fix(nsec3param): fixed setHash fname typo
  • feat(SVCB,HTTPS): add record support (#29)
  • feat(OPENGPGPKEY): improved bindline parser, added test
  • feat(throwHelp): far more useful error messages (#41)
  • feat(A,MX,AAAA,CAA,IPSECKEY): added getCanonical

1.2.0 - 2024-03-07

  • feat(index): export typeMap (lookup table for type to id)
  • feat(NXT): added bind support
  • feat(TSIG, WKS): added stub class
  • doc(README): move synopsis section into table (#38)
  • chore(style): set up prettier

1.1.6 - 2022-06-21

  • doc(sshfp): added RFC 7479, 8709

1.1.5 - 2022-06-03

  • ci: auto-populate node LTS versions to run CI tests with

1.1.4 - 2022-05-29

  • doc(README): improved develop notes
  • doc(CHANGELOG): make version numbers links

1.1.3 - 2022-05-29

  • chore: publish npm package in @nictool namespace

1.1.2 - 2022-05-28

  • chore(ci): replace .release with submodule
  • chore(ci): use GHA with shared workflows

1.1.1 - 2022-04-28

  • feat(DNSKEY): expanded algo from 1-5 to 1-16 (RFC 8624)
    • warn if outside that range, not error
  • feat(HINFO): added to/from tinydns
  • test(dnskey): update fail test

1.1.0 - 2022-04-22

  • feat(tinydns): add ipv4toOctal, octalToIPv4, base64toOctal, octalToBase64
  • feat(DNSKEY,DS,IPSECKEY,TLSA): added to/fromTinydns support
  • feat(NAPTR): finished fromTinydns
  • feat(bindline & tinyline): pass in opts (was only line), so defaults (serial, ttl, etc) can be passed in.
  • fix(SSHFP): algo & fptype are 1 byte, not 2
  • fix:(cname): fully qualify the target
  • test: add tinydns.unpackDomainName, ipv4toOctal, octalToIPv4
  • test(SRV): add another test case (found a bug in NicTool 2)
  • test(IPSECKEY): expand test coverage
  • tinydns.unpackdomain: return fqdn + length, for RRs where the FQDN is part of the byte stream

1.0.1 - 2022-04-19

  • feat(IPSECKEY): added basic support
  • doc(README): update for ES module usage
  • fix: call is[8|16]BitInt() correctly
  • style: replace this.constructor with class name
  • test: show more results in test output
  • test(CERT): added two test cases
  • test(KEY): added valid test

1.0.0 - 2022-04-18

  • style: move rr/index to ./rr
  • test: add base.getRdataFields
  • style(esm): convert from CJS to ESM (ES6 module)
  • test: add base.getRdataFields

0.9.9 - 2022-04-14

  • feat: parser improvements (DNSKEY, HINFO, NAPTR, SOA, TLSA, TXT)
  • CAA: more robust fromBind parser
  • SOA: leave $TTL and $ORIGIN to dns-zone
  • test/base: improve invalid tests, check error message against expected
  • test/rr: update tests with expected error messages
  • README: move some content to web links

0.9.8 - 2022-04-07

  • url updates
  • fix: txt records
  • feat: add index.citeRFC
  • docs: updates

0.9.7 - 2022-03-29

  • index
    • previousName -> previousOwner
    • export a TYPE_MAP (id => name)
  • isValidHostname: allow \ char
  • add the word 'RFC' in error messages citing RFCs
  • when rejecting hostname, show the rejected character
  • maradns: add export support
  • add index.citeRFC

0.9.6 - 2022-03-27

  • rr*: rename name -> owner (not overloaded)
  • RFC 4034: letters in DNS names are lower cased
  • README: added definitions
  • repo: move from msimerson -> NicTool org
  • add macos testing
  • add CERT, KEY, NSEC, NSEC3, NSEC3PARAM, OPENPGPKEY, SIG

0.9.5 - 2022-03-26

  • README: add docs for getRFCs()
  • dnskey: fix copy/paste errors
  • HINFO: add fromBind
  • RR.owner: if owner is same as previous, suppress (when sameOwner option is set)
  • master: NODE_ENV=cov when running coverage
  • TXT: pass along zone_opts

0.9.4 - 2022-03-24

  • add: getComment
  • zone_opts, for influencing output of toBind
  • normalize hostnames to lower case
  • add tests: fullyQualify, getFQDN
  • AAAA
    • compress: rewrote per RFC 5952, added tests
    • internally store address in expanded notation
  • fromTinydns: apply correct semantics for 'x' handling
  • fullyQualify
    • special handling for @
    • consider $ORIGIN
  • add uc hex chars to ip6 compress

0.9.3 - 2022-03-22

  • hasValidLabels: remove trailing dot, else split returns empty string
  • rename fullyQualified -> isFullyQualified
  • rename validHostname -> isValidHostname
  • set('type') no longer falls back on constructor.name (didn't reliably inherit)
  • new fns: getTinyFQDN, fullyQualify, getPrefix, getFQDN
  • when loading RR classes, ignore files that don't end with .js
  • rr/txt: support data as array (improves idempotency)
  • fromTinydns: fully qualify hostnames
  • toTinydns: strip trailing . upon export
  • rename getCommonFields -> getPrefixFields
  • TXT: import BIND format w/o mangling WS
  • SPF inherits from TXT

0.9.2 - 2022-03-18

  • mx: weight -> preference
  • ds: keytag -> key tag (consistent naming)
  • mx: add null MX test
  • more use of this.getRFCs in error messages
  • added getTinydnsGeneric
  • on index.is* functions which throw, use declaratively
  • class: add NONE and ANY
  • validHostname: allow / char
  • use __dirname to find RR mods

0.9.1 - 2022-03-14

  • TLSA, SMIMEA: add BIND support #13

0.9.0 - 2022-03-10

  • added null object instantiation
  • added getTypeId, getDescription, getRdataFields, getQuotedFields
  • tinydns: refactored fromTinydnsGeneric
  • add RR.toBind() for most
  • spf: corrected RFC IDs
  • rr/*: refactor init into RR.constructor
  • ds,dnskey: add to/from BIND support
  • README: significant expansion
  • tests: more signal, less noise
  • tests: import tests from nictool 2

0.8.1 - 2022-03-08

  • use RFC example IPs and zone names

0.8.0 - 2022-02-01

  • fromBind for: A, AAAA, CNAME, TXT, CNAME, TXT, LOC, MX, NS, SOA, PTR, SPF, SSHFP, URI, CAA, DNAME, NAPTR
  • add fromTinydns: LOC
  • rr/*: add getFields

0.7.0 - 2021-10-26

  • tinydns: added octalToHex, octalToUInt16, unpackDomainName, octalToInt8
  • AAAA: added fromTinydns, compress, expand
  • CAA, CNAME, DNAME, SPF, SSHFP, SRV, URI: added fromTinydns
  • add tests for getRFCs

0.6.0 - 2021-10-25

  • tinydns: added octalToChar
  • A, MX, NS, PTR, SOA, TXT: added fromTinydns

0.5.1 - 2021-10-25

  • LOC: added toTinydns
  • tinydns: add UInt32toOctal
  • SRV: added support

0.5.0 - 2021-10-24

  • NAPTR: add toTinydns
  • tinydns: remove sprintf-js dependency

0.4.0 - 2021-10-22

  • CAA, DNAME, SSHFP, URI: add toTinydns
  • lib/tinydns: added packHex and UInt16AsOctal

0.3.1 - 2021-10-21

  • update index.js to also export RR sub classes
  • update README examples

0.3.0 - 2021-10-21

  • add getRFCs to all RR types
  • populate this.id with IANA type ID
  • toBind: use tabs for exported WS
  • CAA, DNAME, NAPTR, SSHFP, URI: add toBind, tests

0.2.3 - 2021-10-21

  • refactored classes into separate files
  • TXT, SOA, MX, CNAME, PTR, SRV: add toBind and toTinydns
  • SOA: add setMinimum
  • lib/tinydns: added escapeOct & packDomainName
  • PTR, SRV: added tests

0.2.2 - 2021-10-20

  • add tests/*
  • A, AAAA, add toBind and toTinydns()
  • add .release

0.2.1 - 2021-10-16

  • additional RR formats started, weakly validated

0.2.0 - 2021-10-16

  • initial release & name grab

References