Release

RenderCache 0.2.0 Runs on Linux, macOS and Windows

The alphas ran on Linux only. 0.2.0 adds macOS on Apple silicon and Windows on amd64, and it’s the first stable release, so the download links on this site now point at it and will keep pointing at whatever comes next.

Same rules on every system

The data directory works the same everywhere. RenderCache opens its files without following links, one process owns the directory through a lock, and a refresh replaces a snapshot only with a complete copy. On Windows a refresh can replace a snapshot while a crawler is still reading it, which needed its own test. One difference is real and documented: Windows can’t flush a directory to disk, so after a power cut the most recent refresh may be gone. The previous snapshot is still there and still served.

A gap closed

Earlier releases refused a link pointing out of the data directory but followed one that stayed inside it. Go’s directory API resolves such links on its own, and the old test only tried the outward kind. Now every link is refused, and the test includes the inward kind.

Crawler traffic can’t render without limit

Pages that crawlers ask for outside the sitemap get their own allowance, request_page_limit. In alpha 2 a new URL could push out the least recently requested page as soon as the allowance was full. That meant a stream of made-up URLs could keep Chrome busy and fill the snapshot quota. Now a page has to go an hour without a request before it can lose its slot, and when it does, its snapshot is deleted. So crawler traffic can start at most request_page_limit new renders an hour, and request-driven snapshots never take more disk than the allowance.

Smaller changes

Purge and compare drop the same tracking parameters that crawler requests do, so they act on the snapshot a crawler actually gets. The container example no longer trusts the whole Docker address range for forwarding headers.

How it ships now

Nobody builds a release by hand. When the version number changes and CI passes on all three systems, a workflow builds every archive twice and requires identical checksums. It then runs each archive against real Chrome on its own system, and only then publishes. How RenderCache is tested has the numbers from those runs.

Download 0.2.0 or read the release notes.