Releases: dvdstelt/hyperhawk
Release list
1.11.0
What's Changed
- 🐛 Make broken external link URL clickable in review comments by @dvdstelt in #27
- ✨ Add controls for relative link checking and suggestion depth by @dvdstelt in #28
Full Changelog: v1.10.0...v1.11.0
1.10.0
What's Changed
- Skip suggestions in issue templates, add skip-code-blocks and report-only-changed by @dvdstelt in #26
Full Changelog: v1.9.0...v1.10.0
1.9.0
What's Changed
- Fix URL extraction for links with balanced parentheses by @dvdstelt in #24
- Suggest fixing blob/tree mismatch in same-org links by @dvdstelt in #23
Full Changelog: v1.8.5...v1.9.0
1.8.5
What's Changed
Full Changelog: v1.8.3...v1.8.5
1.8.3
What's Changed
- Ascii banner because they are awesome by @dvdstelt in #20
- Treat GitHub user-attachment assets as always valid by @dvdstelt in #19
Full Changelog: v1...v1.8.3
v1.8.2
Summary
GitHub's web UI silently redirects master -> main, but the API returns 404. When a file is not found at the URL's ref, retry on the repo's default branch and suggest updating the link if the file is found.
PRs involved
Full Changelog: v1.8.1...v1.8.2
Fuzzy matching same repo fix
Bug Fixes
- Fuzzy matching for same-repo GitHub URLs. When a full GitHub URL pointing to the current repository referenced a non-existent file (e.g. docs/configuraton.md), HyperHawk suggested the raw extracted path instead of searching for a close match. It now applies the same exact-filename and fuzzy-stem logic used for internal links, correctly suggesting /docs/configuration.md. (#17)
PRs involved
Full Changelog: v1.8.0...v1.8.1
v1.8.0
Bug Fixes
- Per-file+line dedup for review comments. Previously, HyperHawk deduplicated PR review comments by URL alone. When the same URL appeared on multiple lines or in different files, only the first occurrence received a comment. The dedup key is now file:line:url, so each unique location gets its own review comment. Old-format markers (URL only) are still recognized for backward compatibility. (#15)
PRs involved
Full Changelog: v1.7.0...v1.8.0
v1.7.0
Auth-walled and private URLs
- HTTP 401 treated as valid: Private resources like Google Sheets and OneDrive return 401, which was previously reported as a broken link. Now treated the same as 403/429 (auth-wall/bot-block).
- Cross-domain redirect suppression: Redirect suggestions are no longer generated when the redirect crosses to a different hostname. This prevents suggesting login/SSO page URLs (e.g., github.com/login) as link replacements.
Same-repo link improvements
- Broken same-repo links now suggest local paths: When a full GitHub URL points to the current repository but the file doesn't exist, HyperHawk now suggests the root-relative local path instead of the generic "verify the repository name" message.
- Improved suggestion messages: Same-repo links that do resolve locally now produce clearer suggestions.
PRs involved
- Detect redirected external links and suggest updated URLs by @dvdstelt in #10
- Treat auth-walled URLs as valid and suppress cross-domain redirect suggestions by @dvdstelt in #12
- Suggest local paths for same-repo GitHub URLs by @dvdstelt in #13
Full Changelog: v1.6.0...v1.7.0
Hyperhawk 1.6.0
Redirect Detection for External Links
When checking external links, HyperHawk now detects redirects and suggests updating the URL to point directly to the final destination.
This helps keep documentation links current as upstream URLs change over time.
What's new
- Redirect suggestions: External links that redirect (301, 302, 303, 307, 308) are reported as suggestions with the final URL, both in
PR review comments and step summary annotations - Fragment preservation: When a redirect drops the URL fragment (e.g., #section), it is re-attached to the final URL. If the server
provides its own fragment, it takes priority - Redirect loop detection: Circular redirects are reported as broken with a clear "Too many redirects" message instead of a generic
network error - Separate reporting: The step summary now shows redirect suggestions and root-relative suggestions in distinct tables
Robustness improvements
- Malformed Location headers no longer cause misleading "Network error" messages
- Bot-blocked responses (403/429) after redirects no longer suggest updating to what may be a WAF/captcha page
- Response bodies are properly discarded during redirect chains to prevent connection pool exhaustion
- URL replacement in suggestions uses safe string substitution to avoid corruption from $ characters in URLs
Testing
- Added a local HTTP test server to the snapshot test suite covering 301 chains, 302, redirect loops, fragment handling, 403 bot-block,
and 404 scenarios
Full Changelog: v1.5.0...v1.6.0