More info on VF-1 updates ------------------------- In my recent post updating progress toward my various "Operation Blazing Star" goals, I mentioned that I had made a new VF-1 release (the first in over five years!!!). This post is to say a little more about that and the planned 1.0.0 release in the nearish future. It's been a long time since anybody wrote me an email about VF-1, or since I saw anybody mention it in their phlog. Which is perhaps not surprising, given that there hasn't been in a release in such a long time. But I remember fondly the days when it was newish, and this happened a lot then. I got really nice emails from people I'd never met before telling me how much they enjoyed using it, and it was very gratifying. I felt like VF-1 was a genuine success, that it was popular, that people liked it. I hope that's still true these days, that there exists a "VF-1 user community" not only in my head but also out there in the world. If there is, I hope this post reaches that community. If you think you can help make that happen by sharing the link via some channel, please do so. As I mentioned, the impetus behind this release is that I relocated the VF-1 source code repository from its original home at GitHub to my SourceHut account. The VF-1 repository was the only one I had associated with my account (I switched to tildegit.org for later projects), so moving it away allowed me to close the account. This aids my quest to simultaneously reduce both the absolute number of accounts I have anywhere on the internet and the proportion of them which are attached to large evil corporations. Or rather, this aided my quest, past tense. The account is deleted. I did it the day before it would anyway have been locked out of doing various things if I didn't set up 2FA. So here's the first important bit of information that I want widely propagated: Ye olde https://github.com/solderpunk/VF-1 is gone forever and the new authoritative location for the VF-1 codebase is https://git.sr.ht/~solderpunk/VF-1. If you have published links somewhere to the old address, please update them. If you have checked out working copies of the repository, you can use `git remote set-url` to update them (or, in grand git tradition, just the nuke the thing and clone afresh from the new location). The second important bit of information is that there is now an official VF-1 gopherhole! In retrospect, it is absurd that for so long there wasn't. Any self-respecting piece of Gopher-related software clearly ought to have a dedicated presence in Gopherspace. There is one now, at gopher://zaibatsu.circumlunar.space:70/1/~solderpunk/vf-1. You can e.g. use moku-pona to watch this page if you'd like to hear about future releases. So if your old links to https://github.com/solderpunk/VF-1 are in a Gopher menu and not on a webpage, it might make more sense to update it to link to here rather than to the SourceHut repo, which only displays the README file. Third, although the recent v0.0.12 release was largely made to the get the new repository URL into the PyPi system, it did include actual code changes as well. Mostly various small assorted bugfixes which were committed to the repo years ago but never made it into an official release, but there's a small number of more substantial ones too, including one compatibility breaking change which I am kind of hoping will not affect many people. These changes are detailed below after the fourth and final important bit of information. Finally, I would like to solicit extensive debugging assistance from the user community during the end of this year. I consider VF-1 essentially complete and long overdue for a 1.0.0 release. I am not interested in adding any new features. I use it regularly myself, of course, by I do not routinely use every single feature and I usually just visit the same relatively small number of Gopherholes each time. Those old commits which I made years ago but never released have certainly not been extensively stress tested by applying diverse usage patterns across a range of remote server configs. I would like to shake out any defects before making a 1.0.0 release sometime in December. So if you are a VF-1 user, or you are the admin of a pubnix community which has VF-1 users in it, please consider updating to v0.0.12 ASAP to help me kick the tyres. Noteworthy changes in VF-1 v0.0.12: * You can now invoke vf1 with `--download` or `--dl` followed by a gopher:// URL to download and save a Gopher-hosted resource to a local file, like you would use curl or wget for HTTP(S). You can optionally use `--output` or `-o` to specify the local filename, otherwise it will be derived from the URL. This interface mirrors the one which exists for AV-98. * When fetching files larger than 100 KiB, an animated ASCII spinner and a byte count is now shown (both in interactive use and when using --download). All the associated output is overwritten with the VF-1> prompt once the download is complete, so you only see it in the moment. This size limit was chosen so that this behaviour would basically never happen when browsing and reading phlogs, but will kick in quickly when e.g. downloading binary media files. This makes it clear that something is in fact happening, and gives the user the option to abort with ctrl-C if they are bandwidth limited. Previously, large/slow downloads had the look and feel of the program having "frozen". * The experimental TLS support has been substantially simplified to save the effort of debugging observed strange behaviour. You basically need to manually toggle TLS on and off with the `tls` command, and it will either always or never be used, correspondingly. The unofficial `gophers://` scheme for TLS-secured Gopher is no longer recognised. I expect that this will affect approximately nobody as Gopher-over-TLS has never been widespread or popular, and now that Gemini exists I feel like the incentive for experimenting with it is much reduced. * Here's the big one, the compatibility-breaking change. The command previously called `search`, which prints out only a subset of the active Gopher menu, showing those items whose names include the entered search term, has been renamed to `filter`. This command is super handy and I expect it is widely used, however I was not too reluctant to rename it because I also strongly suspect that very few people actually make use of it by typing out `search`, because you can also just prefix your search term with `/`. That's so much quicker and easier, and for vi(m) uses also leverages well-established muscle memory. The `/` abbreviation now triggers `filter` instead of `search`, and so if you rely on `/` then you will not notice any change. Why the change? Well, as previously, you can still use the `veronica` command to submit a search term to the Veronica-2 search engine. But you can now use the `search` command to submit search terms to a user-customisable endpoint (via `set search_url`). You can, for example, configure the `search` command to submit terms to Gopherpedia. My recommendation is that even if you want to search Veronica-2 more often than anything else, you still get in the habit of using the `search` command. This is more future-proof: if Veronica-2 disappears one day and/or a new Gopher search engine comes on the scene, you can modify your .vf1rc file to point `search` at that new resource easily, even if VF-1 is no longer being maintained.