Skip to content

Latest commit

 

History

History
137 lines (108 loc) · 5.56 KB

CHANGELOG.md

File metadata and controls

137 lines (108 loc) · 5.56 KB

Changelog

The format is based on Keep a Changelog.

CHANGES

Unreleased

  • fix: file stores draw permission ids from one sequence, and renumber repeated ids at startup
  • fix: file store user, group and permission reads hide revoked permissions, and a regrant gets a new id
  • fix: reject create conflicts and duplicate permission targets
  • fix(sql): seed ns export types coredns & native for 2.x upgrade
  • fix: server stop waits for the stores to disconnect
  • fix: GET /zone/{id}/ns reads nameservers through the zone store
  • fix(mysql): read v2 group permission rows, and save partial permission changes
  • fix: file store login checks the group in user@group
  • fix: zone record PUT keeps the rdata it is not given, and a type change drops the old rdata
  • create: allocate ids internally and reject caller-supplied ids
  • zone: nameservers holds the zone's nameserver ids on every store, and POST /zone defaults it to the group's usable nameservers
  • fix: one live zone per name, ignoring case and a trailing dot
  • fix(sql): lowercase existing zone names, and the zone in record names
  • fix: one random, self describing session row per login, expired ones swept at login, and mysql throttles the activity touch
  • fix: a token is valid only while its session row exists, so logout revokes it, and any authenticated request counts as activity
  • fix: destroying a group, user or zone on json or toml takes its nameservers, sessions or records with it, as mysql does
  • fix: moving a user moves their permission rows to the new group

3.0.3 - 2026-07-27

  • many updates for data stores and NS backends
  • feat(mysql): new NS columns: engine, listen, publisher, transport, dnssec
  • change: */store/toml -> */store/file
  • change(sql/*.sql): made setup non-destructive
  • feat: self describing password hashes (#56)

3.0.2 - 2026-07-25

  • dep(rr): bump version
  • fix: generate conf.d/http.toml on 1st start

3.0.0-alpha.13 - 2026-07-24

  • fix(sql): quote mysql 8 keyword rank
  • fix: subgroup searching
  • feat: paginate zone records (#53)

3.0.0-alpha.12 - 2026-04-14

  • toml backend (#49)
    • add: TOML stores for group, nameserver, permission, session (#47)
    • move mysql teardown/disconnect into mysql classes
  • fix: don't log sensitive information
  • routes file reorg (#46)
  • factories for groups (#44)
  • ci: remove local codeql config (#43)
  • ci: update permissions to be explicit (#42)
  • docker compose support + env var config overrides (#40)

3.0.0-alpha.11 - 2026-04-07

  • decorate user & group with permissions
  • add some missing PUT routes
  • better error handling validation errors
  • constraining views by GID
  • zone record factory & subclasses
  • zone factory & subclasses
  • user factory, toml, mysql, mongodb, elastic classes

3.0.0-alpha.10 - 2026-03-25

  • config: replace .yaml with .toml
  • zone_record can be empty, default 0
  • feat(zone records): create and delete

3.0.0-alpha.9 - 2026-03-15

  • feat(zone): use DataTable for list, added search/limit options
  • routes/zr: add extra data about ZR parse failures

3.0.0-alpha.8 - 2026-03-14

  • lib/zone: add limit option
  • lib/nameserver.js: handle null fields from DB
  • routes/zone: report zone name on validation failure

3.0.0-alpha.6 - 2025-04-08

  • dep(eslint): upgraded to v9
  • dep(*): bump versions to latest
  • feat(conf.d/http): added tls
  • feat(session): added JWT for session auth
  • feat(zone): removed location
  • feat(routes/zone_record): added, fixes #17
  • change(routes/users): result is always array
  • change(routes/ns): GET id is optional, result is always array
  • change(routes/zone): GET id is optional, result is always array

3.0.0-alpha.5 - 2024-03-06

  • feat(lib/zone): added, with tests, fixes #22
  • feat(lib/zone_record): added, with tests, fixes #23
  • feat: default GET sets deleted=false
    • group, nameserver, permission, user, zone
  • sql: return indicative boolean for delete
  • test(zr): added maps from NT SQL 2 to dns-rr std formats

3.0.0-alpha.4 - 2024-03-05

  • feat(lib/nameserver): added, with tests
  • feat(routes/nameserver): added, with tests

3.0.0-alpha.3

  • routes/permission: added GET, POST, DELETE
  • permission.get: default search with deleted=0
  • session.put: added
  • session: store user/group info in cookie (saves DB trips)
  • mysql(insert, select, update, delete): return just the query
  • lib/group.get: convert booleans
  • lib/user.get: convert booleans