Releases: mackuba/bluesky-feeds-rb
Releases · mackuba/bluesky-feeds-rb
0.4 (Jul 2025)
- updated Skyfall to the latest version (0.6), ActiveRecord to 8.x and SQLite gem to 2.7
- use filtered Jetstream as the data source instead of
bsky.networkrelay - enable "heartbeat" in Skyfall to reconnect if the websocket gets stuck
- added comment about setting a user agent in the Skyfall instance
- delete all posts of a user when an account is deleted
- in "save all" mode, posts are saved in batches of 100 for efficiency
- save cursor on firehose client shutdown
- improved stream error handling
- config enables YJIT automatically if possible
- added some validations and helpers in the models
- replaced BuildInPublic feed with Kit feed in the example feeds
- support for video feeds
- added option to
bin/firehoseto restart from a specific cursor by passing e.g.-r100000 - added index on
post_idtofeed_postsand on (repo,time) toposts - fixed possible AR exception in development
- longer default timeout in sqlite adapter in production
- faster feed rebuilding and better output
bluesky:publishRake task automatically looks up the PDS hostname- added an easy way to enable AR logs
- added several new sections to the readme
0.3 (Oct 2023)
- updated
skyfallto 0.2.3 - fixes encoding of CIDs and binary strings into JSON - switched firehose to the BGS server at
bsky.network textand$typefields are stripped from the JSON indatacolumn to save space- posts with date in the past (e.g. imported from Twitter) are ignored
- FeedPosts are deleted when the post they reference is deleted
- added some helpers (
Post.find_by_at_uriand#at_uri,Utils.handle_from_didand.did_from_handle) - added info in comments about how to do feed authentication
- added another sample feed, "Build in Public"
- added
app/server.rbfile for extending the server component (with examples)- by default, the root URL returns a simple web page with a welcome message and a list of available feeds
- feed rebuilding:
- much faster rebuilding in larger datasets
- asks for confirmation before rebuilding a feed
- rebuild with
ONLY_EXISTINGprints deleted posts - added
UNSAFEoption to rebuild without using a transaction - added
DRY_RUNoption to rebuild a feed in memory without saving
- other Rake tasks:
- added
delete_feed_itemtask to remove a post from a feed - added
cleanup_poststask to delete old posts - added
test_feedtask to test loading a feed via HTTP - Rake tasks from
Rakefilehave been split into.rakefiles inlib/tasks
- added
firehose.rbandserver.rbscripts have been moved tobin/firehoseandbin/server- switched development server from Webrick to Thin
- various fixes and improvements in Rake tasks, deploy script, sample feeds and logging
0.2 (Aug 2023)
- updated
skyfallto 0.2.1 - much faster firehose processing withfaye-websocket - updated
blue_factoryto 0.1.4 - firehose cursor is saved and used on reconnect to replay missed events
- highlighting of matched keywords in
print_feedtask output - options to only reprocess existing feed entries or to only append new items in
rebuild_feedtask - option to stop updating some published feeds
- added index on time to posts
- added more keywords to Linux feed
- various fixes and improvements in logging, deploy script and rake tasks
0.1 - initial version (Jun 2023)
First published version of the template:
- hosts the XRPC service for a Bluesky feed generator, using the
blue_factorygem (0.1.2) - subscribes to the AtProto firehose to listen for new posts, using the
skyfallgem (0.1.2) - saves posts to an SQLite database
- Linux and Star Wars sample feeds
- rake tasks to print feed contents for debugging and to rebuild feed contents from scratch
- Capistrano config for deploying to a server
- sample configuration for systemd and nginx