Commit graph

345 commits

Author SHA1 Message Date
asonix
73bf4d1597 Remove unneeded .into_iter() 2023-03-23 14:37:33 -05:00
asonix
2cb5ad9917 Replace Double with Fanout 2023-03-23 13:51:32 -05:00
asonix
a1ea5d676c Rework misskey fetch to reuse deliver plumbing
Only count server errors towards failed breakers
2023-02-25 15:02:16 -06:00
perillamint
667d586160 Send dummy JSON when trying Misskey API endpoint
From Misskey 13, Misskey expects valid JSON (does not care its content
though) in POST body. To workaround this, send empty JSON object when
requesting Misskey API endpoint
2023-02-25 14:34:38 -06:00
perillamint
4a7775b56d Misskey metadata support
This commit implements misskey metadata support and corresponding test
for From<MskyMeta> implementation

Also, it is good to note that, Misskey does not return 404 but 200 OK
when they poked at nonexistant endpoint, so the implementation should
handle for invalid json case
2023-02-25 14:34:22 -06:00
asonix
a952b528df Use transpose in a couple places 2023-02-05 21:09:47 -06:00
asonix
f9cad61049 Add healthcheck for db, new clippy lints 2023-01-29 13:21:36 -06:00
asonix
34dc1a2281 Update rsa 2023-01-23 08:56:18 -06:00
asonix
9cdebeae4c Update base64, ructe 2023-01-23 08:38:55 -06:00
asonix
662620be46 Only show open_registrations: false when restricted mode is enabled 2023-01-23 08:29:32 -06:00
asonix
f0a8862922 Don't prometheus exporter for relay client 2023-01-02 12:43:32 -06:00
asonix
3a14242a91 Apply patch from perillamint on github
Accept REPOSITORY_COMMIT_BASE envvar to build repository url
2023-01-01 10:28:52 -06:00
asonix
f5fed2fce1 Apply patch from perillamint on github
One missing bit Debug implementation for source_url
2023-01-01 10:19:11 -06:00
asonix
5faeaf6371 Revert "Apply patch from perillamint on github"
This reverts commit f291b24269.
2023-01-01 10:01:39 -06:00
asonix
f291b24269 Apply patch from perillamint on github
Show repository URL with commit reference
2023-01-01 09:47:21 -06:00
asonix
5f5c34640f Apply patch from perillamint on github
use git hash to describe version number
2023-01-01 09:46:44 -06:00
asonix
fafba69258 Add optional prometheus scrape endpoint 2022-12-26 10:57:16 -06:00
asonix
88b0383084 Keep track of when servers were last seen 2022-12-21 16:51:17 -06:00
asonix
943f679a69 Allow activities without IDs, fetch actor unchecked 2022-12-19 22:24:58 -06:00
asonix
4e5fabce5f Also debug Kind in inbox 2022-12-19 21:45:52 -06:00
asonix
40eb12258d Record id in inbox route 2022-12-19 21:05:53 -06:00
asonix
675fddcfeb Support Remove activity, forward verbatim 2022-12-19 16:08:39 -06:00
asonix
565a94d756 clippy 2022-12-19 12:23:06 -06:00
asonix
cf7a25f935 Consider NoSignature a BadRequest 2022-12-19 11:44:50 -06:00
asonix
b56bddccb4 Allow Signature to be missing if kind is Delete, return early without additional processing 2022-12-19 11:39:30 -06:00
asonix
886c7d0ac6 Apply patch from perallamint on github
Temporary fix: allow signing bypass for 410 gone actors
DIRTY FIX: implement sigcheck_bypass for 410'ing actors
2022-12-19 09:44:04 -06:00
asonix
430ebec810 Improve tracing, immediately stringify spantrace, remove join macros 2022-12-13 23:36:40 -06:00
asonix
43b70f88a7 Apply patch from perallamint on github
clippy: unnecessary lifetime annotation on static strings

Since string literal constant already has static lifetime, it is not
necessary to explicitly annotate it with 'static.
2022-12-13 10:39:25 -06:00
asonix
a0dc2363f6 Add support for Add activity - forward verbatim 2022-12-13 10:35:16 -06:00
asonix
f4db90b699 Use sync RwLock for lru access 2022-12-09 17:47:45 -06:00
asonix
a0fbf9d236 Bump activitystreams again 2022-12-06 18:53:19 -06:00
asonix
b9dba28207 Bump activitystreams 2022-12-06 18:21:55 -06:00
asonix
b5dc3e7c08 Wrap whole main in actix_rt, fixes opentelemetry 2022-12-06 17:55:02 -06:00
asonix
39b8b1d3fa Add compression middleware - not zstd 2022-11-23 12:57:56 -06:00
asonix
96eb028145 Revert "Add compression middleware"
This reverts commit aa8ddfa637.
2022-11-23 12:50:46 -06:00
asonix
aa8ddfa637 Add compression middleware 2022-11-23 12:30:17 -06:00
asonix
c6adc9f77b Propogate Span into bcrypt verify 2022-11-23 11:58:44 -06:00
asonix
149ec1d14f Minify HTML 2022-11-23 11:51:51 -06:00
asonix
d7a720b6c4 clippy, replace indexmap with btreemap 2022-11-23 11:25:13 -06:00
asonix
e9f312bed5 Measure bcrypt, change DashMap to RwLock<HashMap for collector 2022-11-23 11:13:30 -06:00
asonix
1a638f7f8d Improve debug middleware 2022-11-23 10:44:11 -06:00
asonix
ed0ea6521e Improve Timings middleware 2022-11-23 10:44:01 -06:00
asonix
ab7d940de9 Improve error in signature verification (again) 2022-11-22 15:25:42 -06:00
asonix
5cd0b21ae3 Improve error in signature verification 2022-11-22 15:11:56 -06:00
asonix
b53ec4d980 More useful default logging 2022-11-21 23:12:31 -06:00
asonix
88329a79e2 clippy 2022-11-21 14:25:24 -06:00
asonix
a77a4cde22 Add an 'About' section to the relay 2022-11-21 14:23:37 -06:00
asonix
5043892981 Fix compile issue 2022-11-21 11:28:25 -06:00
asonix
8afc16786d WIP: Don't collect path-based metrics for 404, 405 2022-11-21 11:27:22 -06:00
asonix
9133dd7688 Add optional footer blurb 2022-11-21 11:16:21 -06:00
asonix
d8f3f1d0e9 Add one more log in TLS config 2022-11-20 22:47:20 -06:00
asonix
205e794b9e Add more logging around TLS config issues 2022-11-20 22:46:20 -06:00
asonix
5d33dba103 Add support for binding TLS 2022-11-20 21:42:38 -06:00
asonix
a3eb785b9e Update defaults to be more prod friendly 2022-11-20 16:25:27 -06:00
asonix
13cd308358 clippy 2022-11-20 12:09:17 -06:00
asonix
162dd1cb0e Add more launch logging 2022-11-20 12:07:27 -06:00
asonix
df3063e75f Improve concurrency for larger systems 2022-11-20 12:06:10 -06:00
asonix
7ec56d2af2 clippy 2022-11-19 23:44:35 -06:00
asonix
3500f85f44 Move blocking setup out of actix systems 2022-11-19 23:35:00 -06:00
asonix
9ede941ff7 Increase concurrency 2022-11-19 22:38:58 -06:00
asonix
9272ba0d4c More logging when ending main 2022-11-19 21:51:04 -06:00
asonix
787c8312bc Make better use of cores for jobs 2022-11-19 21:32:45 -06:00
asonix
cecc35ae85 Add timings metrics middleware 2022-11-19 20:35:45 -06:00
asonix
4e1a782bea Fix merge 2022-11-19 18:57:34 -06:00
asonix
99c3ec0b75 Improve presentation of stats 2022-11-19 18:26:47 -06:00
asonix
f892a50f2c Add metrics printer 2022-11-19 17:45:01 -06:00
asonix
c322798ba3 Add metrics collector, admin route 2022-11-19 17:28:15 -06:00
asonix
902ce5d3c2 New module structure 2022-11-19 14:47:32 -06:00
asonix
a0dc917dfe Prioritize open-reg servers on index page 2022-11-18 19:00:45 -06:00
asonix
e9303ad9f6 Remove media caching, just proxy 2022-11-17 22:39:26 -06:00
asonix
959201fa97 Remove errors when our signature is rejected 2022-11-17 19:28:17 -06:00
asonix
9ac7854081 clippy 2022-11-17 14:16:21 -06:00
asonix
ebdc739c84 Make admin API & client work 2022-11-17 14:13:41 -06:00
asonix
fe844a807f Start work on admin API 2022-11-17 13:14:45 -06:00
asonix
08374d0382 Merge branch 'cmdline-ls' 2022-11-16 14:59:35 -06:00
asonix
448a907ab0 Reset breakers when receiving activities 2022-11-16 14:29:57 -06:00
asonix
2dd1dfe43f Factor more bookkeeping into check_response 2022-11-16 12:38:34 -06:00
asonix
f55ea0a550 Check for signature errors, record signing strings 2022-11-16 11:23:36 -06:00
asonix
7e01cbfc41 Increase http timeout 2022-11-15 22:56:38 -06:00
asonix
e1137fadd8 Handle other request in nodeinfo job 2022-11-15 22:10:15 -06:00
asonix
25e8b5a673 Don't print parsed activity on inbox 2022-11-15 21:26:13 -06:00
asonix
0768cb6ac6 Don't fail jobs for fine scenarios
- dont fail contact for breaker
- dont fail instance for not found
2022-11-15 20:53:55 -06:00
asonix
5011e05c3d Clean tracing a bit more 2022-11-15 19:56:19 -06:00
asonix
e46c9e230b Add boolish to nodinfo, add tests 2022-11-15 13:47:31 -06:00
asonix
a4cb7934b1 Add test for Boolish 2022-11-15 13:12:16 -06:00
asonix
6ca6a19178 Parse akkoma registration weirdness 2022-11-15 13:06:57 -06:00
asonix
881654fed9 Try to be a bit more clear about what object is being delivered 2022-11-14 19:18:09 -06:00
asonix
373072c482 Don't log server list in deliver many 2022-11-14 19:11:10 -06:00
asonix
3358ae0461 Simplify debug info for jobs 2022-11-13 13:58:30 -06:00
Maxime Augier
cb7187a096 Merge remote-tracking branch 'upstream/main' into cmdline-ls 2022-11-11 10:18:07 +01:00
Maxime Augier
3b0e9fddc0 Add -l option for dumping existing allow/block lists 2022-11-11 10:00:41 +01:00
asonix
fac40c1853 Don't fail deliver for 400 Bad Request 2022-11-08 13:50:08 -06:00
asonix
64d06f210a Parse masto 4.0 nodeinfo 2022-11-07 21:07:46 -06:00
asonix
4ae7e435eb Ensure proper parsing for masto instance struct on 4.0.0 2022-11-07 19:31:32 -06:00
asonix
d7e9e58de2 Prefer short_description, add more telegram meta commands 2022-11-07 18:49:19 -06:00
asonix
1f87c0f913 Make telegram actually work 2022-11-02 18:57:08 -05:00
asonix
645e6b498a Use String instead of IriString for domain in telegram bot 2022-11-02 18:04:57 -05:00
asonix
bd172753fb Add basic administration via telegram 2022-11-02 17:58:52 -05:00
asonix
a2bd41a00f Improve concurrency 2022-11-02 13:55:45 -05:00
asonix
32f5a0670f Keep a couple more fields out of logs 2022-11-01 16:50:23 -05:00