]> git.mxchange.org Git - fba.git/log
fba.git
11 months agoContinued:
Roland Häder [Tue, 4 Jul 2023 11:55:23 +0000 (13:55 +0200)]
Continued:
- PLATFORM documented

11 months agoContinued:
Roland Häder [Tue, 4 Jul 2023 11:49:38 +0000 (13:49 +0200)]
Continued:
- unique and primary keys on single columns can be moved into table definition

11 months agoContinued:
Roland Häder [Tue, 4 Jul 2023 11:43:07 +0000 (13:43 +0200)]
Continued:
- also check og:platform
- dont' set None for detected software type, maybe the website is just down for
  maintenance

11 months agoContinued:
Roland Häder [Tue, 4 Jul 2023 10:47:48 +0000 (12:47 +0200)]
Continued:
- used domain_helper.raise_on(domain) instead

11 months agoContinued:
Roland Häder [Tue, 4 Jul 2023 10:03:00 +0000 (12:03 +0200)]
Continued:
- first (if needed) acquire lock, then check (if needed) api_domain
- also check host name (components.netloc) for feed in fetch_fba_rss command

11 months agoContinued:
Roland Häder [Tue, 4 Jul 2023 08:39:50 +0000 (10:39 +0200)]
Continued:
- renamed column apis.hostname to apis.api_domain
- added apis.fetch()
- check if fetching an URL from fedilist.com was successful

11 months agoContinued:
Roland Häder [Mon, 3 Jul 2023 22:37:31 +0000 (00:37 +0200)]
Continued:
- added command fetch_instances_social to fetch new instances from
  instances.social
- you need to get an API key from them, please don't lower api_last_access to
  much, your API key/IP address might get banned!
- added table `apis` which keeps track of "API" accessed, including github
  and wikis, this is to lower traffic on these sites, again: please DO NOT
  overdose these requests! Your IP/API key might get blocked!

11 months agoContinued:
Roland Häder [Mon, 3 Jul 2023 21:30:15 +0000 (23:30 +0200)]
Continued:
- rewrote a bit to get lesser nested blocks
- "href" might not be set while "rel" is set ... to much broken
  /.well-known/nodeinfo replies!

11 months agoContinued:
Roland Häder [Mon, 3 Jul 2023 18:04:45 +0000 (20:04 +0200)]
Continued:
- renamed /api/index.json to /api/top.json
- count each checked domain and calculate percentage

11 months agoContinued:
Roland Häder [Mon, 3 Jul 2023 12:19:39 +0000 (14:19 +0200)]
Continued:
- reset software, detection mode and nodeinfo URL to None when redirection is
  done to other domain
- yes, some people have moved their instance to a sub domain and now redirect
  their traffic to there
- still this had caused another instance under a wrong domain name to be
  registered
- this fix solves this, please run ./fba.py update_nodeinfo
- added config key recheck_nodeinfo

11 months agoContinued:
Roland Häder [Mon, 3 Jul 2023 03:09:49 +0000 (05:09 +0200)]
Continued:
- some people have broken /.well-known/nodeinfo links (href), some contain
  scheme, but no netloc (host name)

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 23:12:14 +0000 (01:12 +0200)]
Continued:
- better word

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 20:34:28 +0000 (22:34 +0200)]
Continued:
- also don't output a warning for "application/jrd+json"
- same for "application/activity+json"

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 20:27:48 +0000 (22:27 +0200)]
Continued:
- acquire lock as this command changes database

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 19:19:58 +0000 (21:19 +0200)]
Continued:
- log response.content when used
- variable blocker or block["blocker"] ? The later one.

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 18:49:58 +0000 (20:49 +0200)]
Continued:
- return whole nodeinfo dict, including "json"
- also need to handle this for pleroma

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 18:29:28 +0000 (20:29 +0200)]
Continued:
- issue a warning when determined software type has changed

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 18:16:01 +0000 (20:16 +0200)]
Continued:
- command update_nodeinfo() now supports --domain and --software parameter
- without them only out-dated instances are being check
- also determined software is being updated

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 17:26:16 +0000 (19:26 +0200)]
Continued:
- added command update_nodeinfo(), please only execute this when you have
  trouble in federation

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 08:42:23 +0000 (10:42 +0200)]
Continued:
- update total blocks in any command that handles instance blocks

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 07:41:39 +0000 (09:41 +0200)]
Continued:
- added column instances.total_blocks which stores total blocks found from
  instance
- also expose it in /infos view

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 07:24:45 +0000 (09:24 +0200)]
Continued:
- added parameter --all to include also already registered instances

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 07:09:30 +0000 (09:09 +0200)]
Continued:
- added command fetch_fedilist()
- please don't overdose these commands, fetching instances is limited to only
  not recently fetched but from static websites like fediverse.observer is NOT
  limited!)
- flush pending data here, too

11 months agoContinued:
Roland Häder [Sun, 2 Jul 2023 03:47:52 +0000 (05:47 +0200)]
Continued:
- flush instance data when an error has happened

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 17:35:35 +0000 (19:35 +0200)]
Continued:
- how to maintain (check for bad entries in `instances`) added

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 17:01:15 +0000 (19:01 +0200)]
Continued:
- improved/added some debug logger messages

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 16:41:06 +0000 (18:41 +0200)]
Continued:
- if --software parameter is given, no need to fetch whole software list from
  fediverse.observer

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 06:23:02 +0000 (08:23 +0200)]
Continued:
- added command check_nodeinfo which checks if domain is part of nodeinfo_url
- first loop through nodeinfo IDs to find newest nodeinfo first

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 04:25:34 +0000 (06:25 +0200)]
Continued:
- update 'nsfw' to 'media_nsfw':
  UPDATE blocks SET block_level='media_nsfw' WHERE block_level='nsfw';
- don't allow block_level='nsfw'

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 03:55:47 +0000 (05:55 +0200)]
Continued:
- should be federated_timeline_removal

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 03:20:33 +0000 (05:20 +0200)]
Continued:
- unwrap data["json"] so more instances can be fetched

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 03:06:11 +0000 (05:06 +0200)]
Continued:
- parsed more headers for more block lists

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 02:34:06 +0000 (04:34 +0200)]
Continued:
- skip empty domains
- rewrote handling of blocklist from pleroma

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 01:18:39 +0000 (03:18 +0200)]
Continued:
- skip empty domains after tidyup.domain()

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 01:06:57 +0000 (03:06 +0200)]
Continued:
- need to set detection_mode and nodeinfo_url to None to avoid false instance
  data
- setters may accept None now

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 00:42:34 +0000 (02:42 +0200)]
Continued:
- fixed handling returned `data` dict
- added some debug log messages

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 00:17:30 +0000 (02:17 +0200)]
Continued:
- fixed exception when pleroma block reason is None

11 months agoContinued:
Roland Häder [Sat, 1 Jul 2023 00:06:20 +0000 (02:06 +0200)]
Continued:
- blacklisted `activitypub-proxy.cf` as this fakes instances and is currently
  offline
- blacklisted `netlify.app` as this is a mass-hoster with many fake sub domains

11 months agoContinued:
Roland Häder [Fri, 30 Jun 2023 23:58:37 +0000 (01:58 +0200)]
Continued:
- more error codes since redirects are now no longer accepted

11 months agoTesting:
Roland Häder [Fri, 30 Jun 2023 23:37:25 +0000 (01:37 +0200)]
Testing:
- allow no redirects as normal Fediverse instances should neve redirect
- send_bot_post() accepts as 2nd parameter a list, not a dictionary

11 months agoContinued:
Roland Häder [Fri, 30 Jun 2023 23:21:47 +0000 (01:21 +0200)]
Continued:
- moved json_from_response() to fba.helpers.json.from_response()

11 months agoContinued:
Roland Häder [Fri, 30 Jun 2023 22:49:36 +0000 (00:49 +0200)]
Continued:
- rewrote fetch_observer() to dynamically load software list
- 'dolphin' is another alias for 'misskey'

11 months agoContinued:
Roland Häder [Fri, 30 Jun 2023 13:22:08 +0000 (15:22 +0200)]
Continued:
- try/except for fetching peers

11 months agoContinued:
Roland Häder [Fri, 30 Jun 2023 11:38:43 +0000 (13:38 +0200)]
Continued:
- lhr.life and localhost.run provide some tunnel service with tons of sub
  domains which causes the 'instances' table to flood
- command 'fetch_fbabot_atom' is originating from ryona.agency

11 months agoContinued:
Roland Häder [Fri, 30 Jun 2023 10:30:58 +0000 (12:30 +0200)]
Continued:
- if domain wasn't found domain_data is None
- treat empty JSON replies as errors
- debug level is enough

11 months agoContinued:
Roland Häder [Thu, 29 Jun 2023 22:07:47 +0000 (00:07 +0200)]
Continued:
- takahe supports peer retrieval through /api/v1/instances
- peertube does NOT support retrieval of block list (yet)

11 months agoContinued:
Roland Häder [Thu, 29 Jun 2023 09:47:03 +0000 (11:47 +0200)]
Continued:
- introduced new view "/infos"
- changed indexed row array to associative e.g. row[0] had become row['domain']

11 months agoContinued:
Roland Häder [Thu, 29 Jun 2023 07:52:06 +0000 (09:52 +0200)]
Continued:
- daemon.py can be easily executable
- also need to rename it in __main__

11 months agoContinued:
Roland Häder [Thu, 29 Jun 2023 07:49:17 +0000 (09:49 +0200)]
Continued:
- renamed api.py -> daemon.py as this runs as a "daemonized" Python script
- please use check-daemon.sh for starting it in a screen

11 months agoContinued:
Roland Häder [Thu, 29 Jun 2023 05:24:40 +0000 (07:24 +0200)]
Continued:
- some block entries seem to contain https:// at the start, also try this
  varriant

11 months agoContinued:
Roland Häder [Thu, 29 Jun 2023 04:11:00 +0000 (06:11 +0200)]
Continued:
- command recheck_obfuscation now accepts parameter --domain and --software
- encapsulated aliasing unwanted block_level into function
  utils.alias_block_level()

11 months agoContinued:
Roland Häder [Wed, 28 Jun 2023 11:32:14 +0000 (13:32 +0200)]
Continued:
- /api/info.json doesn't need to return slogan while it can be taken directly
  from configuration
- exclude empty origins, not software

11 months agoContinued:
Roland Häder [Wed, 28 Jun 2023 04:43:21 +0000 (06:43 +0200)]
Continued:
- update instance data just before exiting federation.fetch_instances()

11 months agoContinued:
Roland Häder [Wed, 28 Jun 2023 04:28:05 +0000 (06:28 +0200)]
Continued:
- only mark instances having obfuscated block entries when at least one cannot
  be deobfuscated

11 months agoContinued:
Roland Häder [Tue, 27 Jun 2023 14:42:47 +0000 (16:42 +0200)]
Continued:
- also "ignore" (skip) these TLDs

11 months agoContinued:
Roland Häder [Tue, 27 Jun 2023 03:19:30 +0000 (05:19 +0200)]
Continued:
- added or processed? ;-)

11 months agoContinued:
Roland Häder [Tue, 27 Jun 2023 03:17:18 +0000 (05:17 +0200)]
Continued:
- count() > 0 or find() >= 0 ?

11 months agoContinued:
Roland Häder [Tue, 27 Jun 2023 02:44:15 +0000 (04:44 +0200)]
Continued:
- 'blocked' is the deobfuscated one, ops

11 months agoContinued:
Roland Häder [Mon, 26 Jun 2023 21:56:06 +0000 (23:56 +0200)]
Continued:
- response.headers.get("content-type") might be None and should be reported, too

11 months agoContinued:
Roland Häder [Mon, 26 Jun 2023 20:40:14 +0000 (22:40 +0200)]
Continued:
- strip of charset while checking for received content-type
- but add it when sending it

11 months agoContinued:
Roland Häder [Mon, 26 Jun 2023 19:26:56 +0000 (21:26 +0200)]
Continued:
- fixed error messages, missed adding the actual variables being logged
- logged count of updated fields
- log header (mostly bs4.element.Tag)

11 months agoContinued:
Roland Häder [Mon, 26 Jun 2023 18:32:38 +0000 (20:32 +0200)]
Continued:
- fixed some lint issues
- logged type of variable 'tag'
- changed single -> double quotes

11 months agoContinued:
Roland Häder [Mon, 26 Jun 2023 17:47:41 +0000 (19:47 +0200)]
Continued:
- no <br /><br /> when you can use <p> instead
- adding lang="en" as the language is currently static English
- fixed some HTML errors

11 months agoContinued:
Roland Häder [Mon, 26 Jun 2023 17:16:48 +0000 (19:16 +0200)]
Continued:
- added command recheck_obfuscation() to recheck if returned instance's
  obfuscated blocked peers can be de-obfuscated
- I use array["fop"] outside strings and array['foo'] inside

11 months agoFixed:
Roland Häder [Mon, 26 Jun 2023 05:44:26 +0000 (07:44 +0200)]
Fixed:
- content can sometimes be a tag, not a string

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 22:52:07 +0000 (00:52 +0200)]
Continued:
- re-run fetch_instances 3-5 times, not fetch_fbabot_atom

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 20:18:22 +0000 (22:18 +0200)]
Continued:
- TOR .onion instances are not analyzed here, maybe later a switch --onion will
  add TOR-only support?

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 18:07:43 +0000 (20:07 +0200)]
Continued:
- introduced utils.process_block() to encapsulate handling adding/updating blocks

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 16:41:05 +0000 (18:41 +0200)]
Continued:
- if peers list is empty, try to fetch from /instances

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 16:01:02 +0000 (18:01 +0200)]
Continued:
- fixed exception

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 15:43:56 +0000 (17:43 +0200)]
Continued:
- debug message added

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 10:32:07 +0000 (12:32 +0200)]
Continued:
- if lemmy's API doesn't work or returns zero rows, try /instances instead

11 months agoFixed:
Roland Häder [Sun, 25 Jun 2023 10:13:23 +0000 (12:13 +0200)]
Fixed:
- some lemmy instances uses a table, instead of an unsorted list for their
  /instances view

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 09:22:28 +0000 (11:22 +0200)]
Continued:
- added command fetch_joinfediverse() to fetch domain blocks from
  climatejustice.social's wiki

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 07:01:38 +0000 (09:01 +0200)]
Continued:
- tpzo fixed

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 06:47:13 +0000 (08:47 +0200)]
Continued:
- let's be nice and only fetch instances/blocks from not recently (aka.
  out-dated) records so we keep bandwidth low on these servers

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 05:28:14 +0000 (07:28 +0200)]
Continued:
- exclude instances with no nodeinfo URL

11 months agoFixed:
Roland Häder [Sun, 25 Jun 2023 05:22:42 +0000 (07:22 +0200)]
Fixed:
- don't provide software in advance, this prevents nodeinfo being fetched

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 05:05:47 +0000 (07:05 +0200)]
Continued:
- basic theme support added
- please note that the StaticFiles class handles them!

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 03:53:04 +0000 (05:53 +0200)]
Continued:
- introduced software helper with function alias()

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 02:40:14 +0000 (04:40 +0200)]
Continued:
- also don't allow/ignore URLs with /tag/ in it
- ops, hash wasn't provided to instances.deobfuscate()

11 months agoContinued:
Roland Häder [Sun, 25 Jun 2023 01:13:38 +0000 (03:13 +0200)]
Continued:
- ops, forgot to also check everything here, too

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 21:27:46 +0000 (23:27 +0200)]
Continued:
- clear cookies after federation.fetch_instances() has finished or failed
  its job
- logger messages a bit rewritten

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 19:00:14 +0000 (21:00 +0200)]
Continued:
- some CSS beautifications
- scoreboard navigation is now a list not just links with <br />

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 18:39:28 +0000 (20:39 +0200)]
Continued:
- h3 is enough here

11 months agoOne week per instance fetch is already enough.
Roland Häder [Sat, 24 Jun 2023 15:56:17 +0000 (17:56 +0200)]
One week per instance fetch is already enough.

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 12:13:23 +0000 (14:13 +0200)]
Continued:
- metrics wasn't the right word here, statistics is more proper
- renamed links.tpl -> links.html

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 12:10:09 +0000 (14:10 +0200)]
Continued:
- maximum API limit (500) now as a configuration key

11 months agoNotation applied:
Roland Häder [Sat, 24 Jun 2023 12:01:29 +0000 (14:01 +0200)]
Notation applied:
- decimals in lazy strings with %d
- strings with '%s'

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 11:33:15 +0000 (13:33 +0200)]
Continued:
- moved rss.xml, robots.txt to views/ directory as these are actual views

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 11:31:56 +0000 (13:31 +0200)]
Continued:
- fixed rss.xml view
- also maybe search for hash (only mastodon provide it)

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 10:41:19 +0000 (12:41 +0200)]
Continued:
- include all block levels

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 10:37:13 +0000 (12:37 +0200)]
Continued:
- count all found records, output message if requested amount is same
- renamed template variable blocks -> blocklist so it is the same as in api.py

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 10:21:22 +0000 (12:21 +0200)]
Continued:
- rewrote api.py's router functions in a more flexible way: mode,value,amount
- for now only a few modes are supported: domain, reverse, reason, block_level

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 09:21:15 +0000 (11:21 +0200)]
Continued:
- upper-case on start
- None could also mean erroneous instance (e.g. not found/deactivated API)

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 07:39:12 +0000 (09:39 +0200)]
Continued:
- check if domain is wanted before trying to deobfuscate it

11 months agoContinued:
Roland Häder [Sat, 24 Jun 2023 07:24:01 +0000 (09:24 +0200)]
Continued:
- multi-fetch for fetch_txt
- always write pending updates after a domain has been worked on

11 months agoContinued:
Roland Häder [Fri, 23 Jun 2023 19:07:52 +0000 (21:07 +0200)]
Continued:
- paths is not a dict, it must be a list (ops)
- some JSON APIs don't response with a list of peers, but a dict instead

11 months agoContinued:
Roland Häder [Fri, 23 Jun 2023 18:12:47 +0000 (20:12 +0200)]
Continued:
- added command 'fetch_pixelfed_api' to fetch instances from pixelfed.org's API

11 months agoContinued:
Roland Häder [Fri, 23 Jun 2023 17:37:44 +0000 (19:37 +0200)]
Continued:
- renamed "indexed" to "supported" as this is more obvious (and true, too)