mr-karan/doggo
:dog: Command-line DNS Client for Humans. Written in Golang
π Release asset changes
- CLI release archives now use stable, versionless asset names such as `doggo-linux-x86_64.tar.gz`, with the `doggo` binary at the archive root and tar entries owned by `root/root`.
- This makes `releases/latest/download/...` URLs usable for scripted installs. Existing scripts that download the old versioned asset names like `doggo_1.1.7_Linux_x86_64.tar.gz` should be updated.
β¨ New Features
- 58781f277db95ff7d67bdb60a184b1a64d22096b: feat: add --authoritative/-A flag to query the domain's authoritative nameserver (@nopolabs)
π Bug fixes
- 8a97e5719466b21221a5f52ed0a99e42ce7326b7: fix(app): use delegated NS RRset for authoritative queries (@nopolabs)
π¦ Others
- 72663bd8f1c54c9345eeacff11dd5af816393386: Merge pull request #240 from nopolabs/feat/authoritative-nameserver (@mr-karan)
- 506eabe846ba66a5cdb703c552ef96e989a4eaac: Merge pull request #241 from Souvlaki42/main (@mr-karan)
- 4c3bf3d68955e3988af287cfeb1b7aa41d787fb0: chore(ci): use patched Go toolchain (@mr-karan)
- 86ff8f4ad38fccbfb01396737ce2c40cb27a19f7: chore(release): prepare v1.2.0 artifacts (@mr-karan)
- 7dbf63360142228c2c5ad069623fdf34a26dea3d: docs(README): change arch package name (@Souvlaki42)
β¨ New Features
- be6729796893d05acd3c916b7d4c13c291c15dab: feat(app): debug-log nameserver strategy application (@mr-karan)
- 622bd7f17bce98e274dba70bf01fe938a368c17e: feat(resolvers): tag lookup errors with nameserver and support partial success (@mr-karan)
π Bug fixes
- af1fa7f2ba30457fbd6e82a2a90173a44d594a3b: fix(resolvers): apply strategy to nameserver overrides (#238) (@mr-karan)
- dd88d6e035054ea45206c9121e32b208630df69f: fix(resolvers): avoid invalid root search queries (#239) (@mr-karan)
- da5d86ae81634e293a65d89ec37a0f627239a9d0: fix(resolvers): preserve completed work when context expires mid-flight (@mr-karan)
- b400c464b445c79805a9987475f862357ce7f49d: fix(web): preserve partial resolver results in API handler (@mr-karan)
π¦ Others
- dea30ad1711d73feaf5dcfe3a77af08a1f74f913: chore: bump Go to 1.26.3 for stdlib security fixes (@mr-karan)
π Bug fixes
- 7ea250d5ff72272a8aa13d1fad728d2fa5be42e6: fix(edns): default UDP buffer size to 1232 per DNS Flagday 2020 (@mr-karan)
π¦ Others
- 802e38b33700504c0dddcafa5f4dc0e3894bdf88: Fix "DNS over QUIC" sidebar anchor text (@isker)
- 79dee5c1e0c90a3713fdf960db2d5e0540f5e92e: Merge pull request #236 from isker/patch-1 (@mr-karan)
- 2bcf2f719d2017db2d525cd8b31c65f4b8b54e69: chore(deps): upgrade Go to 1.26 and bump dependencies (@mr-karan)
π Bug fixes
- 68018a9366fd1d8a49c4f176b1b53d6dabde62c7: fix(resolvers): stop search-list iteration on NODATA responses (@mr-karan)
π¦ Others
- c1e6f89eca428a69529223fffb088bdc31264310: Merge pull request #235 from mr-karan/fix/search-list-nodata (@mr-karan)
- f74ecf2b628da5bd13da7607eb12cf5ba9d39836: chore(deps): upgrade go dependencies (@mr-karan)
π Bug fixes
- 8ea55b6c0b0225227eba44898133222b37a244bf: fix(darwin): filter out scoped, Supplemental and domain-specific resolvers from scutil (@mr-karan)
π¦ Others
- 84808d48aff88dadfbb8a28c0f473d05fd8ced00: chore(deps): update dependencies (@mr-karan)
- b0c0e89f633951485b69872a5fa053cf6de09d04: chore(web): add umami analytics script (@mr-karan)
β¨ New Features
- 23fdfe1cd9d66ac893659f94d6cd90d19fc302e9: feat(web): add SEO meta tags and FAQ page (@mr-karan)
- 39bae49c51a5ca15135ddd1ada18535ee42dbd82: feat: add macOS SystemConfiguration DNS support and internal strategy (#193) (@phrawzty)
π Bug fixes
- 15d6c347314429b9ae13b271a037557bcb2d327d: fix: restore table text wrapping and respect -4/-6 flags for query types (@mr-karan)
π¦ Others
- 46a1de3ae6ee61267b678e7493a52657fde1bf74: chore: upgrade go dependencies (@mr-karan)
- 47136e4e49103ec626ea2ba83dd46cbcf3bfb968: docs(README): add mise alternative method installation (@jylenhof)
- d1091e36cd1625d5009b410313504b1707975928: refactor: address PR #227 review feedback (@phrawzty)
π Bug fixes
- 032da72b2c03736b1d4f429d3d67ff8c81a29bda: fix: installer: better arch detection for 32bit ARM systems (@mxlje)
- deea9773d44d72aae73d5b5f033e747306c51134: fix: remove left padding and improve column spacing in borderless table output (@mr-karan)
π¦ Others
- 1f180dcdb1e03f63004fb913035e012e32fa4b1a: chore: installer: donβt log extraction progress (@mxlje)
π Bug fixes
- 9ffd9522fc9e08752e2945586ca287d2cfacf992: fix: correct typo in install.sh file command check (@mr-karan)
- 285c14b680ae6e0a4fa753e1ad1ca9d7960ecd6a: fix: restore compact borderless table output for narrow terminals (@mr-karan)
β¨ New Features
- 94cf59130032b1c83adef3b364926609f3414820: feat: add DNS Additional section support (glue records) (@mr-karan)
- ee380c403253f5a3e110562f718e62394873ccc7: feat: add EDNS response parsing and display (@mr-karan)
- c2aed51520e7923a1e4b7842b5152d7f1cae8028: feat: add EDNS0 options and ECS support (@mr-karan)
- ffa1d0525ae82b48c38cc6e965b617beefb23bbc: feat: enhance web interface with TerminalCSS and privacy-focused DNS providers (@mr-karan)
π Bug fixes
- 172b438c377671c5fdd2296eb6c16615a3a4f220: fix: add missing --any and query flags to shell completions (@mr-karan)
- db20c6431b67cdd6d878324e57bc69b2e67d064a: fix: add support for internationalized domain names (IDN) with punycode conversion (@mr-karan)
- 25bb955e4665d6183302b4605d6247cb4e7be3e0: fix: added a test to file command ( <>)
- 754d0ed328dee7f4acb9c03a1659639efbe90854: fix: display Unicode domain names in output instead of punycode (@mr-karan)
- 88a841ce7ce72903de15ceb3c472f8addd29ef55: fix: filter system nameservers by IP version when -4 or -6 flags are used (@mr-karan)
- 32ee7ad656a034df6d855c5948742b1f6379f41d: fix: improve DNS-over-QUIC TLS hostname verification (@mr-karan)
- 53399fa3a9098a2a3c8107c1ba58e689bbc8a144: fix: prevent panic in DoQ resolver when server returns empty response (@mr-karan)
- 26e829bc4e3298a9cb8334ed0616b755bc5502d8: fix: support bare IPv6 addresses without brackets like dig (@mr-karan)
π¦ Others
- 432b5e699498d93cac4db90f0a646d5beba03c92: Fix slow DNS queries over quic (@sylr)
- a646d8f45b52793817430cc4abe904b8abbf24c9: Update README.md (@mr-karan)
- a8ae3de1bbce854f18ea82355bd10a2cf021f483: When no query types are asked for, default to A & AAAA (@nogweii)
- fc48667fde06437f8f22287a9c56e4db0a40b9be: chore(deps): upgrade all dependencies to latest versions (@mr-karan)
- 2acd03bd49ce855e3aca41959388175f3596ca65: chore: remove non-working DNS0.eu DoH and DoT endpoints (@mr-karan)
β¨ New Features
- 020d3dea199f50499161ab70b5f811aed8eb0669: feat: integrate Globalping API for global network diagnostics (@radulucut)
π Bug fixes
- 6f1382d6ed5ed9209190461f7c7d309c39131daa: fix(logger): Change log destination to stderr (@gabe565)
- 6dc6fc43df2c14f8fb85594c2e80b87702042972: fix: change DefaultResolvConfPath to var instead of const (@cions)
π¦ Others
- a73aada1b1dadd43fb790853878416cf61d3f5a5: Update README.md (@dflock)
- 24dadc0c9d9c7b301f51b0cc7f3ff62a63d4b9fb: Update README.md (@sindastra)
- 5aee2d2c605045ab19618b50f76625d07219ed0a: add support for --json, --short && update docs (@radulucut)
- 44818dda6a1801fd13633f7f0f8c4b01f6f837c8: chore: document completions subcommand in --help output (@mundry)
- 16ba284a136354fb4f11fd4d566db9b4364e9a32: chore: upgrade deps (@mr-karan)
- 6666e976c5bd853420ca2094c6e436f965b4be97: fix fishCompletion (@radulucut)
- ea74e1f99c2fa0faa661695fdc9a554474986253: update args (@radulucut)
- 4efa45bcca8ffb813a77c5e4dd4aea93f7d5a436: update globalping client (@radulucut)
π Bug fixes
- bac855567c203714c35586f026b91e4caf687636: fix: add ca-certificates in doggo-web (@mr-karan)
π¦ Others
- 38246f69cc00fe6bdd366ae332f5a73fe80a2cdb: Fix zsh completions (@jatinderjit)
- be42d5324e1004517e88b27b6f34edfb40209c03: Updating canonical URL (@gavinanderegg)
β¨ New Features
- a6447cfac39b45c93ffae33a85573bdc64b5c8ad: feat: Refactor DNS resolvers for concurrent lookups (@mr-karan)
- 96242dcbecc22f6ad7d773b110a1e5ff6544c2a8: feat: add ctx cancellation while resolving records (@mr-karan)
- adfd23a7371f66bbdad9eec5d515b2ab0c199ced: feat: add support for common query types (@mr-karan)
π¦ Others
- f07b749cfbc4b86f67e23b75063da06c8c74ecd1: chore: fix docs link (@mr-karan)
- 52ba95b5935ca43d2550b4c33426cf6c88589c53: chore: fix help text (@mr-karan)
- 7ad134e12722dbd481690352e1760cf061a84922: chore: revamp README (@mr-karan)
- 5d62e73c3e68ce8a41e77dd25d3b6455a5517086: chore: upgrade deps (@mr-karan)
π¦ Others
- cd3dc9ff4f671367ad39c8e507a5df499fed73c8: chore: add FUNDING.yml (@mr-karan)
- d8e62fceced54c8c10cf8793d0b95d5bfde750d9: chore: add sponsorship doc (@mr-karan)
- a63ff6e88ac6abf711cb7e8a0948c5efdb545886: refactor: move main package to cmd/doggo for proper binary naming (@mr-karan)
β¨ New Features
- 4821589c65dafe88285dd6eb5dee0dd54717b553: feat: add bash completion support (@mr-karan)
- b512e3f1c0c0840a39cbad4b607a0a9218df378e: feat: add completions command (@mr-karan)
- 24ec17e616f5530869406c351d5be40281fc0f7b: feat: add docs (@mr-karan)
- a831f7709e33f76a4cf0d2aa39d1422813e46041: feat: add single install script (@mr-karan)
- 05c0ac4971ebf01255238675dc466c8fb5c8d326: feat: add support for more platforms and targets (@mr-karan)
- 2e5cd01329bdbf568e5037f7fbd6137ad29ceb08: feat: add support for query flags (@mr-karan)
- 9d9b9b1e2791a41767b637a108fecd2a8bb0b84b: feat: improve docs (@mr-karan)
π Bug fixes
- b2d58c7a37f2b591a855146ae10d79fcb1d131d6: fix: cleanup docs (@mr-karan)
- 51e78c51d78af4674e8fa02792ecea7763f64a7e: fix: completions (@mr-karan)
- a01e4519ababf4688777c88dcee44f26461a6007: fix: install script (@mr-karan)
- 8f60428f6ae154918d9df19202b22810863fec37: fix: proper alignment of help text (@mr-karan)
- 86d9e37dd1a7b30929363f6a2c0ee658cf0557dc: fix: send proper json error responses (@mr-karan)
π¦ Others
- db09be7648bc4c06b5ef8194e9b7d2bf7dccef49: Added dependabot (@Neo2308)
- 8e6797fcdc0f87b9e7ff200404c1761952a102ed: Fix syntax error in ZSH completion (@molikuner)
- 43688b77a47a2fa6b6533e933a0cd0627d9a4660: Update ZSH completion to include all current options (@molikuner)
- 89224c72d85c2cf942895c9a583c2811af0ac0e0: added tls client configuration for doh and doq ( <>)
- b659dec8e4e7b1e2ae18ff8c0a10f0862ac34368: chore(deps): bump actions/checkout from 2 to 4 (@dependabot[bot])
- 498601d0a53247a34cca351c84f117bacbb7b9ab: chore(deps): bump docker/login-action from 1.10.0 to 3.0.0 (@dependabot[bot])
- dc30b22d3059b801bfe1cf44a0492cb4a9ba34a1: chore(deps): bump github.com/fatih/color from 1.13.0 to 1.15.0 (@dependabot[bot])
- eca1e155cb5998747bfea228654929fe07bd8e78: chore(deps): bump github.com/go-chi/chi from 1.5.4 to 4.1.2+incompatible (@dependabot[bot])
- + 16 more
β¨ New Features
- 4821589c65dafe88285dd6eb5dee0dd54717b553: feat: add bash completion support (@mr-karan)
- e03f75215ba768a4b488bae1929a2206d3b75b0c: feat: add completions command (@mr-karan)
- 554a0279733497bfd9596be09dc0bfffcfe222a6: feat: add docs (@mr-karan)
- 9868951397db631e6a6f00eadde44eb4e4acb3f2: feat: add single install script (@mr-karan)
- 0500bfed928509dc81e21caf768e0be11ad26ada: feat: add support for more platforms and targets (@mr-karan)
- 51edb41d33b51d397eab50d28281970dfcd032e6: feat: add support for query flags (@mr-karan)
- 07ed0e9c46415a95772148c8910992ff50bbcc39: feat: improve docs (@mr-karan)
π Bug fixes
- 3004a37fdac0f7e85b937f29ba94d2d40daeef07: fix: cleanup docs (@mr-karan)
- 383a121ffa4e60c53693e45a1e344d2e90340405: fix: completions (@mr-karan)
- 856cf30809250ad5f4ae6f13ee78510396994075: fix: install script (@mr-karan)
- 3298b1806fa6bd7afaa5526024d22bed6592c730: fix: send proper json error responses (@mr-karan)
π¦ Others
- db09be7648bc4c06b5ef8194e9b7d2bf7dccef49: Added dependabot (@Neo2308)
- 8e6797fcdc0f87b9e7ff200404c1761952a102ed: Fix syntax error in ZSH completion (@molikuner)
- 43688b77a47a2fa6b6533e933a0cd0627d9a4660: Update ZSH completion to include all current options (@molikuner)
- 89224c72d85c2cf942895c9a583c2811af0ac0e0: added tls client configuration for doh and doq ( <>)
- b659dec8e4e7b1e2ae18ff8c0a10f0862ac34368: chore(deps): bump actions/checkout from 2 to 4 (@dependabot[bot])
- 498601d0a53247a34cca351c84f117bacbb7b9ab: chore(deps): bump docker/login-action from 1.10.0 to 3.0.0 (@dependabot[bot])
- dc30b22d3059b801bfe1cf44a0492cb4a9ba34a1: chore(deps): bump github.com/fatih/color from 1.13.0 to 1.15.0 (@dependabot[bot])
- eca1e155cb5998747bfea228654929fe07bd8e78: chore(deps): bump github.com/go-chi/chi from 1.5.4 to 4.1.2+incompatible (@dependabot[bot])
- + 15 more
π Changelog
- c72c2ef Updated to go 1.21
- 9818c32 Update quic-go to v0.37.4
π Changelog
- 8994efc ci: yaml stupidity
- 76b45d2 Bump goreleaser to v4
- d181e06 Migrate to github.com/quic-go/quic-go for Go 1.20 & 1.21
- 0dcabea Use go 1.20 in GitHub workflow
π Changelog
- 8492ccd chore: build for go 1.19
- 88c63d6 Support literal IPv6 nameservers
- c21f90c docs: add scoop installation note
- 3409971 chore: fix typo in nameserver flag
- 9386c58 feat(cli): Add dig compatible error exit code 9
- 0da9178 Update README.md
- 5e611d9 chore: upgrade go.mod
- 711cb96 help.go - Clean up Grammar + Technical Terms
- + 1 more
π Changelog
- 2cf9e7b fix: Correctly print colored text on Windows
- 218eb02 docs: add homebrew installation note
- c5d0020 license: add GPL license header
- 96e11c0 Update doq.go
- 2008cd9 chore: impl rfc9250 DoQ client
π Changelog
- ea7cb3c fix: fallback to tcp if response is truncated
π Changelog
- 53f7b70 feat: add tls config for dot lookups
- 0ce04d0 fix: rtt time should include tcp.Dial
- 8d70524 chore: update docs
π Changelog
- eec8374 feat: Add short output flag
- 7619cbd feat: add strategy flag
π Changelog
- 79c5fc7 ci: fix release
- a855ec4 chore: fix docker image tags
- f753e70 chore: fix docker tag
- 7ce6ea7 chore: upgrade for go 1.18
- da13887 docs: use go install
π Changelog
- 3d7b4a9 debug logs DOH response headers
- ddbf40d Update the dnscrypt module to version 2
- 6b42a5e chore: Restructure package directories
- 68fd19d fix: Rename CLI binary
- 9e3656f feat: Add support for reverse DNS lookups
- e5acf12 fix: prevent app from quitting if one resolver failed
- f1a1e3a refactor: use switch instead of if
- d7e7362 chore: delete unused files (api)
- + 1 more
π Docker images
- `docker pull ghcr.io/mr-karan/doggo:v0.4.1`
- `docker pull ghcr.io/mr-karan/doggo:v0.4.1-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.4.1-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.4.1`
π Changelog
- 8dc23ce DoH: fallback to GET if a 405 HTTP status code is returned
- 9da51ad Full stop
- b7e0b49 Print the server IP address instead of a full DNS stamp
- 6d2eae4 Add support for DNS stamps and for DNSCrypt servers
- 48fd5bb chore: update docs
π Docker images
- `docker pull ghcr.io/mr-karan/doggo-api:v0.4.0`
- `docker pull ghcr.io/mr-karan/doggo-api:latest`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.4.0-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:v0.4.0`
- `docker pull ghcr.io/mr-karan/doggo:latest`
- `docker pull ghcr.io/mr-karan/doggo:v0.4.0-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:latest-arm64v8`
π Changelog
- 7b858c5 feat: Add shell completions for zsh,fish
π Docker images
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.9`
- `docker pull ghcr.io/mr-karan/doggo-api:latest`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.9-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:v0.3.9-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:v0.3.9`
- `docker pull ghcr.io/mr-karan/doggo:latest`
π Changelog
- 45dd2e2 chore: add URL to README
- 6d6e69b fix: center elements in page
π Docker images
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.8-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:v0.3.8`
- `docker pull ghcr.io/mr-karan/doggo:latest`
- `docker pull ghcr.io/mr-karan/doggo:v0.3.8-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo:latest-arm64v8`
π Changelog
- 50b8093 fix: custom line-height for headers
π Docker images
- `docker pull ghcr.io/mr-karan/doggo-cli:v0.3.7-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:v0.3.7`
- `docker pull ghcr.io/mr-karan/doggo-cli:latest`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.7-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.7`
- `docker pull ghcr.io/mr-karan/doggo-api:latest`
π Changelog
- d09eb90 fix: line-height for responsive screens
- 3dbfb0a chore: fix goreleaser hooks
- 3da7852 fix: Add spacing on label and form fields
- b8ba782 Refactor web frontend and remove unnecessary dependencies.
- 0dc61ac feat: remove redundant map for nameserver
- 27fa414 chore: fix styles
- 9b7c926 chore: bg color fix
π Docker images
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.6`
- `docker pull ghcr.io/mr-karan/doggo-api:latest`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.6-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:v0.3.6-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:v0.3.6`
- `docker pull ghcr.io/mr-karan/doggo-cli:latest`
π Changelog
- cda2d04 feat: jazz up form ui
π Docker images
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.5-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-api:v0.3.5`
- `docker pull ghcr.io/mr-karan/doggo-api:latest`
- `docker pull ghcr.io/mr-karan/doggo-cli:v0.3.5-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:latest-arm64v8`
- `docker pull ghcr.io/mr-karan/doggo-cli:v0.3.5`
- `docker pull ghcr.io/mr-karan/doggo-cli:latest`
