There aren‘t many user-visible changes though; most of the effort was spent improving things internally. Dennis van der Schagt and bogdasar1985 continue to make progress on various fronts, which should eventually bring us a new key-bind system, help fix the long-standing issue with non-UTF-8 content in old cache.db files, and more.
Docs also received some updates and polish. Lysander Trischler continues to play a vital role here, reviewing all the docs-related changes and helping authors improve them even further. Incidentally, I don‘t mention any of this work in the changelog; should I?
Hope you‘ll find this new release at least as good as the previous one. We‘re already working on the next, better one :) Merry Christmas to those who celebrate today, and a happy New Year!
Here are the files: tarball, its signature, the docs, and the changelog.
]]>There are a few smaller fixes too, which you can discover by yourself by downloading a fresh tarball from the links below ;)
Tarball, its signature, the docs, and the changelog.
]]>--export-to-opml2
, which finally allows to
export feed URLs along with their tags. There was also a bit of
work on the existing facilities, like the behaviour of
goto-feed
operation and Newsboat’s support for enclosures
in Mastodon feeds; please
see the changelog
for the full list.
I (Alexander Batischev) was again pretty much absent from the development, but I feel like the break did me some good, and I’m enthusiastic about getting back into the thick of things. I’m also very happy to see that the project didn’t simply grind to a halt when I stepped back. To me, this indicates that we’re in a better position than Newsbeuter ever was, which is nice because it was one of the goals of this fork. Still have ways to improve of course :)
Anyway, enough of this navel-gazing! Go compile something from the tarball (checking its signature beforehand, of course), glance through the docs (or maybe don’t — they didn’t change :), and see if anything in the changelog affects your workflow.
]]>BTW, we could definitely use more help with, um, helping users. If you ever read more than a paragraph of Newsboat docs, you are definitely qualified! Please feel welcome to join #newsboat on Libera.Chat, subscribe to our mailing list at newsboat@googlegroups.com, or watch our issue tracker on GitHub. (Sorry for the reliance on Big Tech; but email hosting scares me, and FediForge isn’t here yet.)
And while you wait for an IRC question that will pique your interest, maybe try this little program that lets you read news via a single inerface ;) Download the tarball and its signature from our site, read docs, and peruse the changelog entry.
]]>Please get the update from our site: the tarball and its signature, docs, and the changelog entry.
P.S. I prepare this news feed by hand, and I messed up article GUIDs in the last update. Don't worry if your newsreader tells you the 2.29 release entry was updated, or if you see the 2.30 announcement only now — this is an expected result of my mistake.
]]>The new version can be downloaded from our site: the tarball and its signature, docs, and the changelog entry.
]]>If you’re verifying our GPG signatures (as you should), please re-download our key as we bumped its expiry date.
That’s it for now. As usual, you can get everyting from our site: the tarball and its signature, docs, and the changelog entry.
]]>Ability to go back to previous set of search results.
We’ve all been there: searched for something, then searched
again with a more specific query, refined it once more, but then
we made a typo or picked wrong words — and bam, the results
we’re looking at aren’t what we wanted to see. Before 2.28,
the only recourse was to start the process anew. With 2.28, all
one has to do is press z, which will bring back the
previous results. Pressing it once more will of course go further
back, until we’re at the very first set of results again. This
change is accompanied by a new placeholder for
searchresult-title-format
setting,
%s
,
which is replaced by the current search term; you won’t get
lost in the searches, promise!
Enqueueing podcasts straight from the article list.
Such a simple feature, yet it took this long to notice
that it’s missing. As a bonus, articlelist-format
now supports %e
placeholder which is replaced by the
URL of the enclosure; that way, you can see what you’re going
to enqueue.
If an article has multiple links,
open-in-browser
will open the HTTP(S) one. This
is about the link you see at the top of the article, prefixed by
"Link:". The standards allow an article to have multiple such
links, but Newsboat only supports one, and it now tries to pick
more intelligently. If the article doesn’t specify any HTTP(S)
links, the last one to appear in the source code will be
picked.
That’s it for now. Please download Newsboat 2.28 from the usual place: the tarball, its signature and docs, the changelog entry.
]]>We’ve added just one new feature: ignore-article
can now be applied to feeds that match a particular regular
expression. This should help you DRY your configs, or improve
performance if you were already doing something like feedurl
=~ "https://example.com/feed/.*"
.
Another highlight —a literal highlight— of this release are our manpages. We added some formatting (bold font and underlining) to make the settings and options easier to spot. Hopefully this improves the readibility and makes the manpages even more useful!
Oh, and we also fixed some bugs. Please see the changelog for details on that.
That’s about it. Go get 2.27 now: the tarball, its signature and docs, the changelog entry.
]]>This development cycle was even quieter than the previous one.
We added a new setting, confirm-mark-feed-read
,
to prevent users from accidentally marking an entire feed as read.
Search results no longer show ignored articles (d’oh!) We’ve taken
away ability to switch away from file- and dirbrowser, which closes
an entire set of possible bugs.
Happy holidays everyone, and a happy New Year!
You can find the source code and everything else on our site: the tarball, its signature and docs, the changelog entry.
]]>We also fixed three crashes and two performance regressions, so that’s good too.
Not a groundbreaking release by any means, but it’s still worth upgrading I think :)
You can find everything on our site: the tarball, its signature and docs, the changelog entry. Please note that the expiry date of our PGP key was extended; don’t forget to fetch an updated key from us or your favourite keyserver.
]]>You can find everything on our site: the tarball, its signature and docs, the changelog entry.
]]>You might’ve heard of the drama around Freenode, the IRC network. Their volunteer staff quit, and the new-ish management started making really weird moves (see here and here). For the past week, we on #newsboat were discussing where to move. The deadline was set to June 5th, but today, our hand was forced: Freenode revoked my access to the channel, muted everyone in it, and changed the topic to suggest using ##newsboat instead. Presumably, this is a reaction to us considering the move.
Luckily the decision was all but sealed at that point: half our IRC users were already on Libera.Chat, and there was no votes against moving there entirely. Libera currently lacks a Matrix bridge and a webchat, but those things are being worked on, and aren’t blockers in the long run.
Please update your mental bookmarks: next time you want to chat, join #newsboat on irc.libera.chat. See you there!
]]>Everything is available on our site at the usual locations: the tarball, its signature and docs, the changelog entry.
]]>swap-title-and-hints
is enabled;maybe-uninitialized
warning which -Werror
turns into an error.Sorry about those. Apparently our master
branch
doesn’t get enough testing, so if you can run a version built from
Git and report problems early, please do!
Download this release here: the tarball, its signature and docs, the changelog entry.
]]>You all deserve a present, and Newsboat 2.22 contains two! One, it finally learned to ask you for confirmation before marking all feeds as read. No more data loss! (But please make backups anyway.) Another, is a bugfix that should make the infamous "an instance is already running, PID 0" error go away. It's replaced by another error *sigh*, but that one is more descriptive at least.
Aside from that, this release contains a bunch of smaller, but still very nice, features and bug fixes, so please take a look at the changelog, and then take the new version for a spin!
Download it here: the tarball, its signature and docs, the changelog entry.
]]>It feels way less than that. Three years is a lot of time, yet I didn’t manage to grok all the corners of the codebase. I also didn’t make any architectural changes (except for starting the Rust porting, perhaps — by the way, that effort has been going for two years now!). Even after three years of doing this, it feels like I’m just getting started.
It also feels far longer than that. Multiple high-volume contributors came and went, each marking an era of sorts. A total of 78 people submitted pull requests, a few emailed patches. Many more reported bugs, discussed new features, described their use-cases. I remember many of those interactions, and it feels surprising that we fit all of them into just three years.
Even just looking at 2.21’s changelog, I am taken aback by the amount of stuff that we managed to accomplish over the last three months. And the changelog doesn’t even tell the whole story, as we also did quite a lot of refactoring.
It’s as good a time as any to say thank you. Thanks to all the users who run Newsboat, report bugs, and help us with debugging and testing. Thanks to all the developers who fix and improve things, and spend time addressing all my nitpicks during code review. The project wouldn’t be here without all of you! (That’s a cliche thing to say, but it is actually true: just look how many bugs contributors fix, and notice that my commit activity is correlated with other’s work).
Okay, enough of my rambling. Go get yourself a shiny new feed reader: the tarball, its signature and docs, the changelog entry. Oh, and do fetch an updated GPG key 4ED6CD61932B9EBE; I bumped the expiry date by a year.
]]>make install
was broken on BSDs because we used
a GNU-only flag;g
and G
keys.These are all fixed by this release, so please upgrade.
We added more tests now, so the first two bugs won't happen again. But the other two can only be caught by vigilant users for now, so if you can, please build directly from Git and report everything that's broken.
Thanks for your patience with us even as we break something every other release!
Download the tarball and its signature from our site, view the docs there, and check out the changelog entry over on GitHub.
]]>We didn’t set out to make it like that, but the new release is balanced in every way. There are as many visible changes as behind-the-scenes refactorings, and the visible changes are split evenly between bugfixes, improvements, and new features. I’m happy to report that, despite the current world situation, Newsboat’s development chugs along as usual.
Download the tarball and its signature from our site, view the docs there, and check out the changelog entry over on GitHub.
Please stay safe and watch out for each other, folks!
]]>Over the last few months, we squashed a truckload of bugs. In that regard this release can even rival our debut 2.10. So do look through the changelog; I bet you’ll find something that used to affect you ;)
Download the tarball and its signature from our site, view the docs there, and check out the changelog entry over on GitHub.
Stay safe, folks, and don't forget to wash your hands!
]]>Code-wise, this is a pretty uneventful one. Most of the work
was related to upkeep — slight refactorings, fixes, tweaks to
the infrastructure. But we did manage to squeeze a couple
bugfixes in there, too: unbind-key -a
no longer
breaks command line, and Newsboat no longer ignores browser’s
exit code when marking article as read.
Perhaps the most user-visible change this time around is the logo. That’s right: a user by the name of noobilanderi sat down with Inkscape and drew us a logo. This is now used everywhere: site’s favicon, GitHub avatar, and the Snap Store.
Download the tarball and its signature from our site, view the docs there, and check out the changelog entry over on GitHub.
Merry Christmas, everyone, and a happy New Year!
]]>Users who set max-items
(to limit the number of
articles that Newsboat stores) found that no feeds are updated
anymore. That was an unintended consequence of the “slight
performance improvement” I mentioned in the previous entry;
I thought Newsboat is doing useless work, when in fact that
work was necessary for the max-items
setting to
function properly. The “improvement” was partially
reverted to amend this.
The second, no less severe, regression prevented Newsboat from
loading configs that used #
character for anything
but comments, e.g. as part of a regular expression for
highlight-article
. This was a result of another
bugfix, where I failed to consider if the hash sign can occur
in the middle of a config string. We couldn’t simply revert
this one, so I implemented yet another bugfix, that hopefully
squashes both the original bug and the regression, while not
introducing any new ones.
Sorry about the mess. Please download the bugfix release from out site: the tarball, its signature, and the docs. The changelog is on GitHub as usual.
]]>save-all
operation (it’s not bound to any
key by default). There’s also a few bug fixes, and even
a slight performance improvement.
The codebase is now 18.7% Rust (according to GitHub). I think we picked most of the low-hanging fruit by now. I expect the rewrite to progress more slowly from here on, as we need to untangle dependencies between sub-systems.
Grab the release from our site—the tarball, its signature, and the docs, and view the changelog on GitHub.
]]>The very next thing I’m going to do is finally set up a CI for FreeBSD, and see if i386 can be added to Travis pipeline.
I’m sorry about the mess and the noise, folks. Won’t make this particular mistake again.
You can download the hotfix release here: the tarball, its signature, and the docs, and the changelog is on GitHub.
]]>But the bulk of the work is under the hood. Newsboat is now 13.4% Rust (by GitHub's count), which is almost double compared to the previous release. If we sustain the 6.5%-per-release momentum, the rewrite will be done in three and a half years—without any loss of functionality, but with a lot more bugs fixed.
Download it from our site: the tarball, its signature, and the docs, and the changelog is on GitHub.
]]>2.14.1 was released just over a month ago, and stole many of the features meant for 2.15. As a result, this release is quite slim. The only new features are a way to shuffle a feed, and “delete all items” that now works in query feeds. The rest is the usual crop of bugfixes.
The Rust rewrite is progressing slowly but steadily. This release could be bigger have I not chosen to hold off a big chunk of code that hasn’t been field-tested yet. (Believe it or not, we do test some of the stuff before the release). If GitHub is to be believed, 6.9% of our code is now in Rust.
Download the new release from our site: the tarball, its signature, and the docs, and the changelog is on GitHub.
]]>Turns out Newsboat 2.14.1 fails to build with Rust 1.25. That's the oldest Rust release we support; it was published at the end of March 2018. Rust 1.26 and newer work fine.
This is entirely my fault: I bumped our crates' versions without updating the Cargo.lock. Rust 1.25 trusts the lock file blindly, and fails when it can't find the old crate versions specified there.
The problem has been fixed in the master branch. See
this
patch. You can generate a more conservative version (that
doesn't update third-party crates) with cargo update
--package libnewsboat --package libnewsboat-ffi
.
With just one compiler version affected, I don't feel this is important enough for another point release, so I won't be issuing any.
If this inconveniences you in any way, I'd like to hear from you! I'm genuinely interested in how old a Rust compiler I should support. I arrived at 1.25 lower bound in a totally unsystematic way: picked what Debian stable had, then bumped one version up because of some crate I added as a dependency. Please get in touch if you're using anything older than latest stable.
]]>Download it from our site: the tarball, its signature, and the docs, and the changelog is on GitHub.
]]>For package maintainers, this is an exceptional release because it adds a new dependency—Rust. As was mentioned in earlier release notes, please contact us via our issue tracker, mailing list (newsboat@googlegroups.com), or IRC channel (#newsboat on Freenode) if you run into any problems with building and/or packaging Newsboat. We’d like to fix as many of those problems as possible upstream, and just help you out if you’re new to Rust.
As always, the tarball, its signature, and all the docs can be found on our server, and the changelog is on GitHub.
Happy newsreading, everyone, and a happy New Year!
]]>First of all, it marks an anniversary: exactly a year ago, we forked from Newsbeuter to bring the program back into shape. We partially succeeded: many bugs were fixed, a number of rough corners were smoothed, and the atmosphere around the project improved noticeably.
Second, this release is going to be the last purely-C++ one. As I explain in #89, I believe that C++ is a death by a thousand cuts for this project. This discourages me from working on it. It’s as much a personal problem as it is technical one, and I’m absolutely not sure that I’m doing the right thing, but: I’m rewriting Newsboat in Rust.
In the short term, this means we will be introducing bugs instead of fixing them, and features will be much harder to add while we’re moving. Please bear with us!
Package maintainers will have to spend time figuring out how to package Newsboat now. I’m sorry about that. If you’re a maintainer, and you run into any problems, please get in touch via the issue tracker, mailing list (newsboat@googlegroups.com), or IRC (#newsboat on Freenode). I want to fix or forestall any problems upstream, so you don’t have to suffer as much.
Despite all this, I believe that long-term benefits outweigh any temporary discomfort. A rewrite should straighten out a few of the nastier corners of the codebase, and put us in a better position to actually evolve the project.
If you’re interested in helping out, please watch the project on GitHub; soon, I will be opening issues about components that can be rewritten. I can provide guidance around our codebase, plus some general mentoring (I’m not ready to teach Rust, since I’m still learning it myself, but I’ll share what I know). In short, if you know a bit of Rust and can read C++, you’re qualified; please come!
In the meantime, you’ll probably need a feed reader; you can get one here: the tarball, its signature, and the changelog for 2.13 release.
Thank you for using Newsboat, and happy newsreading!
— Alex
As always, you can find the tarball and its signature on our server.
Happy newsreading, everyone!
]]>newsboat --version
report a wrong version number.
This has been spotted by a few users and packagers, and is now
fixed.
Other than that, 2.11.1 contains no functional changes. The tarball and its signature are in their usual places.
Once again, sorry about all the noise and
messups,
—Alex.
This release contains less new stuff than the previous one, but I still decided to bump the minor version because we have new features. Should’ve done this with 2.10.2 too, but oh well—what’s done is done.
As usual, the tarball and its signature can be found on our server, and the full changelog is on GitHub.
Happy newsreading!
Addendum: I messed up during the release process and pushed a Git tag pointing to an earlier version. If you updated your Newsboat clone in the last 30 minutes, please do the following:
$ git tag --delete r2.11 $ git fetch origin tag r2.11 $ git rev-parse r2.11
That last command should return 971fe6a596d871073ff34c42854e2c9f50e683ba. Sorry about the noise, folks!
]]>As usual, the tarball and its signature can be found on our server, and the full changelog is on GitHub.
Merry Christmas and happy New Year!
]]>$XDG_DATA_DIR/newsboat
wasn’t created for first-time users, resulting in cache
lock failure.Please grab the tarball (signature) and tell us what you think!
With my best regards,
—Alex
Nikos Tsipinakis prodded me into implementing automatic
migration of Newsbeuter configuration, so if you don’t have
include
s or scripts stored in your Newsbeuter
directory, switching should be hassle-free for you. If any
problems do come up, don’t hesitate to contact us via
IRC, mailing list or issue tracker.
Happy newsreading everyone,
Alex
If you’ve got any questions, write to us via mailing list, GitHub issue tracker, or on IRC (#newsboat on Freenode; webchat).
]]>