Skip to content

Tags: yodatoshicom/dott

Tags

v0.6.9

Toggle v0.6.9's commit message
v0.6.9: faster source builds

trim tokio to the features actually used (was "full") and switch
release LTO from fat to thin — much quicker cargo install, no runtime
difference for a network-bound CLI.

v0.6.8

Toggle v0.6.8's commit message
README: restore Homebrew install instructions

v0.6.7

Toggle v0.6.7's commit message
v0.6.7: faster search, opportunistic update notice, restored esc hint

- size search_and_print semaphore to tld_list.len() so all TLDs run in one
  batch — recovers wall-clock time lost when ALL_TLDS grew to 20
- print "update available" opportunistically after each interactive search
  once the check has finished, not only at exit
- restore "esc to quit" hint in the startup banner
- clippy cleanup: and_then(parse_date), let-chains, slice::from_ref, etc.

v0.6.6

Toggle v0.6.6's commit message
v0.6.6: update .co price, collapse rdap_url match arms

- .co: $25.03 → $27.09 (Porkbun, May 2026)
- collapse rdap_url cases that share an endpoint via |-patterns

v0.6.5

Toggle v0.6.5's commit message
v0.6.5: add 6 TLDs, fix DNS empty-Answer false positive, stream per-r…

…ow spinner

- add .live, .computer, .sh, .fm, .fyi, .work (RDAP/WHOIS endpoints, prices, ranks)
- dns_check: require actual NS records, not just Status=0 — some registries
  (e.g. .fm) return NOERROR with empty Answer for non-existent domains and
  were flagging them as taken
- spawn WHOIS cancellably; only await if RDAP came back Unknown
- streaming per-row spinner: each TLD pinned to a fixed row, finished rows
  hold their result while pending rows keep animating
- ignore /future scratch dir

v0.6.3

Toggle v0.6.3's commit message
v0.6.3: harden release pipeline and install paths

- release.yml: curl -fsSL with --retry for asset downloads, set -euo pipefail in download step; quoted --title arg; previously a missing release asset (timing or build fail) would silently pass an HTML 404 through sha256sum and ship a broken hash to the brew tap
- add aarch64-unknown-linux-gnu build target (native ubuntu-24.04-arm runner) + on_arm/on_intel split under on_linux in the generated formula, so brew install works on Linux ARM (Graviton, Pi, etc.)
- publish .sha256 sidecars alongside each tarball in the release workflow
- install.sh now downloads to a temp file, fetches and verifies the .sha256 sidecar before extracting, handles aarch64 Linux, and prefers /opt/homebrew/bin on Apple Silicon
- print_update inspects current_exe() and only suggests 'brew upgrade dott' when the binary actually lives under a brew prefix; otherwise points at the releases page, so curl/cargo installers aren't told to run a command they don't have
- delete in-repo Formula/dott.rb — it's been stale (0.1.0 / placeholder hashes) and the yodatoshicom/homebrew-dott tap is the single source of truth

v0.6.2

Toggle v0.6.2's commit message
v0.6.2: share Client, drop input poll, cache recent checks

- build one reqwest::Client in main() and thread it through search_and_print / cmd_watch / cmd_background_check / check_for_update, so the connection pool + TLS session are reused across interactive REPL iterations instead of being torn down per search
- read_input now blocks on event::read() instead of polling every 100ms; input feels snappier and the thread stops waking 10x/sec while the prompt is idle
- add a 60s in-session cache keyed on (name, tld) for interactive mode, so typing 'foo' then 'foo+' reuses prior RDAP/WHOIS/DNS results instead of re-fetching

v0.6.1

Toggle v0.6.1's commit message
v0.6.1: fix dedup and launch-agent staleness

- generate_suggestions used Vec::dedup, which only removes consecutive duplicates — switched to a HashSet pass so order is preserved and all duplicates are dropped
- install_launch_agent short-circuited whenever the plist existed, leaving launchd pointing at a stale binary path after moves/upgrades — now compares the existing plist against current_exe() and re-loads if it drifted

v0.3.0

Toggle v0.3.0's commit message
v0.3.0: domain dates, spinner, suggest, WHOIS expansion

- DomainDates struct carries registered/updated/expires from RDAP + WHOIS + DNS
- parse_date() extracts YYYY-MM-DD; expiry colored by proximity (<90d orange, <365d yellow)
- spinner animates while checking, clears before results
- 's' command suggests prefix/suffix variants for last searched name
- WHOIS servers added: io, co, ai, me, so
- column-aligned output with tld_rank sort; .com always floats first

v0.2.4

Toggle v0.2.4's commit message
v0.2.4: add --plain flag for LLM/script use