aboutsummaryrefslogtreecommitdiff
path: root/cache.go
AgeCommit message (Collapse)Author
2026-01-22all: refactoring, use single struct to represent LinkShulhan
Previously, have [jarink.Link], [brokenlinks.Broken], and [brokenlinks.linkQueue] to store the metadata for a link. These changes unified them into struct [jarink.Link].
2026-01-22brokenlinks: refactoring the logic, simplify the codeShulhan
Previously, we made the scan logic to run in multiple goroutine with one channel to push and consume the result and another channel to push and pop link to be processed. The logic is a very complicated code, making it hard to read and debug. These changes refactoring it to use single goroutine that push and pop link from/to a slices, as queue.
2025-06-27brokenlinks: implement caching for external URLsShulhan
Any succesful fetch on external URLs, will be recorded into jarink cache file, located in user's home cache directory. For example, in Linux it would be `$HOME/.cache/jarink/cache.json`. This help improve the future rescanning on the same or different target URL, minimizing network requests.