'peertube' , 'takahe' , 'gotosocial', 'brighteon', 'wildebeest' , \
'bookwyrm' , 'mitra' , 'areionskey', 'mammuthus', 'neodb' , \
'smithereen', 'vebinet' , 'toki' , 'snac' , 'biblioreads', \
- 'wordpress' , 'oolong' , 'diaspora' , 'appy' \
+ 'wordpress' , 'oolong' , 'diaspora' , 'appy' , 'neko' \
)) AS supported_instances, \
(SELECT COUNT(blocker) FROM blocks) AS total_blocks, \
(SELECT COUNT(domain) FROM instances WHERE last_error_details IS NOT NULL) AS erroneous_instances")
elif mode == "obfuscator":
database.cursor.execute("SELECT software AS data, COUNT(domain) AS score FROM instances WHERE has_obfuscation = 1 GROUP BY software ORDER BY score DESC LIMIT ?", [amount])
elif mode == "obfuscation":
- database.cursor.execute("SELECT has_obfuscation AS data, COUNT(domain) AS score FROM instances WHERE software IN ('pleroma', 'lemmy', 'mastodon', 'misskey', 'friendica') GROUP BY has_obfuscation ORDER BY score DESC LIMIT ?", [amount])
+ database.cursor.execute("SELECT has_obfuscation AS data, COUNT(domain) AS score FROM instances WHERE has_obfuscation = 1 GROUP BY has_obfuscation ORDER BY score DESC LIMIT ?", [amount])
elif mode == "block_level":
database.cursor.execute("SELECT block_level AS data, COUNT(rowid) AS score FROM blocks GROUP BY block_level ORDER BY score DESC LIMIT ?", [amount])
else:
elif args.only_none:
# Check only entries with total_blocked=None
logger.debug("Checking only entries with total_blocked=None ...")
- database.cursor.execute("SELECT domain, software, origin, nodeinfo_url FROM instances WHERE software IN ('pleroma', 'mastodon', 'lemmy', 'friendica', 'misskey', 'piefed', 'typecho') AND nodeinfo_url IS NOT NULL AND total_blocks IS NULL ORDER BY last_blocked ASC, total_blocks DESC")
+ database.cursor.execute("SELECT domain, software, origin, nodeinfo_url FROM instances WHERE software IN ('pleroma', 'mastodon', 'lemmy', 'friendica', 'misskey', 'piefed', 'typecho', 'neko') AND nodeinfo_url IS NOT NULL AND total_blocks IS NULL ORDER BY last_blocked ASC, total_blocks DESC")
else:
# Re-check after "timeout" (aka. minimum interval)
logger.debug("Checking any federating software with possible blocklist ...")
- database.cursor.execute("SELECT domain, software, origin, nodeinfo_url FROM instances WHERE software IN ('pleroma', 'mastodon', 'lemmy', 'friendica', 'misskey', 'piefed', 'typecho') AND nodeinfo_url IS NOT NULL ORDER BY last_blocked ASC, total_blocks DESC")
+ database.cursor.execute("SELECT domain, software, origin, nodeinfo_url FROM instances WHERE software IN ('pleroma', 'mastodon', 'lemmy', 'friendica', 'misskey', 'piefed', 'typecho', 'neko') AND nodeinfo_url IS NOT NULL ORDER BY last_blocked ASC, total_blocks DESC")
# Load all rows
rows = [dict(row) for row in database.cursor.fetchall()]
'peertube' , 'takahe' , 'gotosocial', 'brighteon', 'wildebeest' , \
'bookwyrm' , 'mitra ', 'areionskey', 'mammuthus', 'neodb' , \
'smithereen', 'vebinet' , 'toki' , 'snac' , 'biblioreads', \
- 'wordpress' , 'oolong' , 'diaspora' , 'appy' \
+ 'wordpress' , 'oolong' , 'diaspora' , 'appy' , 'neko' \
) \
ORDER BY total_peers DESC, last_response_time ASC, last_updated ASC"
)