-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Web: don't allow sites without feed or webmentions #1458
Comments
This is needed to do #1403 for web users. |
I have a start on this in a stash, |
Does a site's RSS feed always have to be the site's index? Obviously the fetch can't know if an RSS feed does exist, but in a different page, i.e. |
I don't know how Bridgy Fed does this, but generally speaking |
Right! More broadly, Bridgy Fed only supports whole web sites right now, ie not specific pages or paths. |
Why are direct RSS feed URLs not supported ? |
(^ answered in #1527) |
Once this is done, I'd also like to backfill it, ie go through all existing bridged web sites and disable the ones that don't have a feed or webmentions. |
ie for web sites that don't have RSS or Atom feed or webmentions for #1458
Currently backfilling this, ie deactivating (and removing DNS! #1268) for matching web sites, with: ids = []
for w in Web.query(Web.copies.protocol == 'atproto'):
if w.status and not w.manual_opt_out:
ids.append(w.key.id())
print(len(ids), w.key.id())
try:
did = w.get_copy(ATProto)
repo = arroba.server.storage.load_repo(did)
if not repo.status:
arroba.server.storage.deactivate_repo(repo)
ATProto.remove_dns(w.handle_as('atproto'))
except:
logging.exception('') |
Done, removed 3362 DNS entries. Now doing ActivityPub, will follow up in #1268 |
We get a number of sites now that have no RSS or Atom feed or mf2, and are unlikely to post via webmention. It's awkward to bridge those if we'll never bridge any posts for them.
We can easily tell if there's an RSS or Atom feed right now, and we know if a site has already sent us a webmention or not, but we don't distinguish where profile info comes from, ie mf2 vs mf1 vs metaformats.
Maybe the most likely thing to do hwere would be to try to detect mf2 at fetch time and store it in a new
Web.has_mf2_hcard
property, and either backfill or only block a site if we fetched their homepage after we launch that.The text was updated successfully, but these errors were encountered: