FreshBSD now has support for word lightlighting in Split diffs.
This makes it much easier to notice small changes between two versions of a
file, such as fixing a typo or changing a version number.
Effort is made to stop it being too noisy, so not every change will be
highlighted, only lines that would otherwise be sufficiently similar. This
may need some tuning.
This does break my with_optional_linebreaks
helper that prevented wide diffs
from making the page extend off too far into the horizontal, but this should
be relatively rare.
Fixing that, and adding support for Unified diff view are on the TODO.
A quick rollup of changes since the new server a few months ago:
Support for HTTP/3
The web server has been advertising HTTP/3
support to clients for months now, but because port 443 was only opened for TCP
connections by my firewall
configuration, it didn’t actually work.
I’ve rectified this, and will keep and eye on whether it’s actually getting used.
There’s currently a roughly 60:40 split between HTTP/1 and HTTP/2 requests,
respectively.
Diff line numbers disabled on small displays
Line numbers take up quite a significant chunk of space on mobile devices, so they
are now suppressed on displays of less than 800 pixels. If you’re on your phone
and need them back, flip it to landscape mode.
Thanks to Mina Galić for requesting this feature.
Titles now include a commit summary
When a single commit is being viewed, the first line of the commit message is now
added to the page title to make it more useful for remote link summaries.
Commit IDs are also shortened to the first 7 characters so long Git commit IDs
are a bit less overwhelming.
This was also requested by Mina Galić.
Short git hash links
You can now link to git commits by shortened hashes. i.e. instead of:
https://freshbsd.org/freebsd/src/commit/1dc1f6bd3138760a9e96e13017cc3c05e5e1b1e9
You can provide a link with just the first 5 or more characters:
https://freshbsd.org/freebsd/src/commit/1dc1f
This is an alias to a prefix search query:
https://freshbsd.org/freebsd/src?q=commit%3A1dc1f*
Which is what you’ll see in the URL bar after the page loads. Perhaps not entirely
ideal?
Thanks to Daniel Ebdrup for requesting this improvement.
My contact details are at the bottom of every page, so if you have any requests
of your own please do get in touch.
You may have noticed a couple of hours downtime today, bringing our current 90 day uptime stat to a shameful 99.854%. But this was for a good cause – working within the venerable guts of the server in order to rip out and replace components long past their prime.
Previously we were powered by a pair of Xeon L5639’s providing 12 Westmere-EP cores running at 2.13GHz, attached to 192GB of memory. They’ve served well, but with their underwhelming performance in the modern era and an idle power of 170W during an eye-watering energy crisis, it’s time for them to join the e-waste/ebay pile.
Their replacement is a single solitary AMD Ryzen 5 5700X – 8 Zen 3 cores at 3.4GHz – with a more modest but hopefully sufficient 64GB of ECC memory. Paired with an Asrock Rack X570D4U motherboard, I also finally have remote management capabilities, woo.
Preliminary tests suggest a very welcome performance uplift of 2-3x across a wide range of workloads, including FreshBSD page generation. Typical front-page loads now take closer to 10ms instead of 20ms, and I measured drilling down to FreeBSD/src taking just 50ms, down from 130ms. Nice, if not exactly life-changing.
More importantly, power – testbench runs measured an idle consumption of just 30W, which is about what I expected. Sadly rehomed in the old Supermicro server case with its redundant hot-swap PSUs, a few more fans and a couple more hard disks, it’s somehow eating 100W. Better than nothing, but clearly more work is needed.