Julian Lam
0cca729a69
fix: leftover debug log
2026-04-14 13:00:59 -04:00
Julian Lam
b7ba11259e
fix: qwen's shitty test suite
2026-04-14 12:59:33 -04:00
Julian Lam
e751721aef
fix: fucking ai
2026-04-14 12:35:12 -04:00
Julian Lam
c9a0c3ff8d
fix: wrong var
2026-04-13 22:34:24 -04:00
Barış Soner Uşaklı
4c0efe53f5
fix: memberPostCids saving, closes #14170
...
validCids is an array of strings
if a group was named 3rd party devs, then the isNaN(parseInt()) check was failing
2026-04-13 21:14:45 -04:00
Julian Lam
55d7ab6f6b
feat: start recording ap send failures as well
2026-04-13 14:34:14 -04:00
Julian Lam
30774a8424
test: activitypub third-party blocklists
2026-04-13 12:55:35 -04:00
Barış Soner Uşaklı
5709a7b317
add mising await
2026-04-13 09:52:29 -04:00
Barış Uşaklı
ae16a44ad0
test: try undici 8 ( #14166 )
...
* test: try undici 8
* test: another test
* test: another test
* test: get rid of debug test
* test: don't fail on local, in dev mode or test
tests were failing on windows without this
* testing without setGlobalDispatcher
* Revert "testing without setGlobalDispatcher"
This reverts commit 6903e9f3ca .
2026-04-11 18:29:45 -04:00
Julian Lam
55ce9c07e4
feat: timestamp in ap errors page
2026-04-10 14:20:03 -04:00
Barış Uşaklı
3915790793
test: fix unread deleted topic test ( #14164 )
...
instead of posting and immediately deleting, add a deleted param to topics.post which deletes the topic before sending notifications
2026-04-10 13:05:29 -04:00
Julian Lam
ef2a17f25d
fix: remove reference to hallucinated schema, fix hideSave definitions
2026-04-09 20:15:42 -04:00
Julian Lam
080aac5114
fix: lint
2026-04-09 15:36:01 -04:00
Julian Lam
21c4fbc5f1
fix: rejig AP errors UX
2026-04-09 10:50:02 -04:00
Julian Lam
098ee291b4
refactor: ap error recording to also capture stack trace, prettify json on output
2026-04-08 15:17:46 -04:00
Julian Lam
621aaa0f35
fix: reverse args
2026-04-08 13:36:55 -04:00
Julian Lam
f097901f27
fix: revrange
2026-04-08 12:34:48 -04:00
Julian Lam
818d621de3
fix: wrong database key
2026-04-08 12:17:28 -04:00
Julian Lam
2699fd2278
feat: ap/errors acp page
2026-04-08 12:12:53 -04:00
Julian Lam
9a981145de
fix: analytics job
2026-04-08 11:32:49 -04:00
Julian Lam
bfe0df736e
feat: cron job to clear out old ap errors
2026-04-08 11:26:27 -04:00
Barış Soner Uşaklı
9b702addf0
Merge branch 'master' into develop
2026-04-08 11:24:29 -04:00
Barış Soner Uşaklı
9592c1762b
dont set isAPI, it is done by middleware.prepareAPI
2026-04-08 11:24:19 -04:00
Barış Soner Uşaklı
71a27d81e9
Merge branch 'master' into develop
2026-04-08 11:19:23 -04:00
Barış Soner Uşaklı
55290da01a
refactor: use renderHeaderType instead of two variables
...
add middleware.admin.buildHeaderAsync so it can be called manually with await middleware.admin.buildHeaderAsync(req, res)
2026-04-08 11:19:13 -04:00
Julian Lam
188e2b10e9
feat: integrate ap.inErr analytics into federation analytics chart
2026-04-08 11:18:15 -04:00
Julian Lam
684f03db08
fix: alpha sort instances
2026-04-08 11:18:15 -04:00
Dirk Plate
4366bdd0d8
fix: use file.exists instead of try/catch to detect missing email logo ( #14154 )
...
The previous ENOENT check in getLogoSize never worked because image.size
passes the path directly to sharp, which throws a plain Error with message
"Input file is missing" rather than a Node.js ENOENT error. This caused
saving any admin settings to fail when brand:logo was set but the x50 file
was missing (e.g. after a fresh deployment).
2026-04-07 09:11:54 -04:00
Barış Soner Uşaklı
62b65e69ab
fix: closes #14151 , handle null req.body
2026-04-06 17:20:06 -04:00
Barış Soner Uşaklı
5d5490d36a
fix: closes #14151 , handle null req.body
2026-04-06 17:19:55 -04:00
Julian Lam
d74e5fabbe
refactor: activitypub inbox to throw errors directly, move reject to internal method, handle errors at controller level by calling internal reject method to bounce back an AP Reject, closes ##14150
2026-04-06 09:54:23 -04:00
Barış Soner Uşaklı
4dfbd8d51f
fix: remove optional
2026-04-03 22:05:08 -04:00
Barış Soner Uşaklı
20e751f0e8
fix: remove optional
2026-04-03 22:04:59 -04:00
Barış Soner Uşaklı
0568ef4310
fix : #14147 , dont create wrong backlinks
...
syncBacklinks expects raw post content, html was passed to it from onNewPost since it was switched to use getPostSummary
backlinkRegex was matching ${nconf.get('url')}/topic/1aef954c-d0dc-45cf-acf2-e3a59f6cc134/foo and return tid=1 instead of the uuid
remove useless if check in syncBacklinks
fixed parseInts on tids
current - remove are both arrays use .length
2026-04-03 21:54:18 -04:00
Barış Soner Uşaklı
a09192d486
fix : #14147 , dont create wrong backlinks
...
syncBacklinks expects raw post content, html was passed to it from onNewPost since it was switched to use getPostSummary
backlinkRegex was matching ${nconf.get('url')}/topic/1aef954c-d0dc-45cf-acf2-e3a59f6cc134/foo and return tid=1 instead of the uuid
remove useless if check in syncBacklinks
fixed parseInts on tids
current - remove are both arrays use .length
2026-04-03 21:54:05 -04:00
Barış Soner Uşaklı
e145330c37
perf: convert expireAt index to partial
...
no need to store null in index for all documents
2026-04-03 20:17:06 -04:00
Barış Soner Uşaklı
072b1e864d
dont escape viewport meta tag
2026-04-03 17:01:48 -04:00
Barış Soner Uşaklı
f66317b7a7
add extension to name, when upload profile pictures
2026-04-03 12:03:46 -04:00
Julian Lam
b3600e0b7f
fix: add in a deduplication guard after calling contexts.getItems
2026-04-02 15:31:45 -04:00
Julian Lam
5a04916879
fix: off-by-one error in helpers.generateCollection, fixed incorrect totalItems count between pages in Actors.topic
2026-04-02 14:48:00 -04:00
Julian Lam
531d20af3e
fix: wrap batch processing behind setImmediate() so that it runs on the next iteration of the event loop
2026-04-02 12:16:50 -04:00
Julian Lam
6371528f2a
fix: pre-calculate payload digest earlier in chain so that it is not unnecessarily done once per recipient
...
re: #14138
2026-04-02 11:59:28 -04:00
Julian Lam
448a76e1c4
refactor: replace old createSign/createVerify methods with more modern sign/verify, called asynchronously, add lru cache to public key fetches so that a received activity does not kick off a network request unnecessarily
2026-04-02 11:39:58 -04:00
Julian Lam
be44247339
fix: dynamically calculate batch size and interval when sending AP messages, based on CPU count, #14138
2026-04-02 11:39:58 -04:00
Julian Lam
f008a65ea2
feat: record AP parsing failures, save activity in db for 24h
2026-04-01 15:08:53 -04:00
Julian Lam
fa0b72e2a2
fix: wrong set name
2026-04-01 14:41:39 -04:00
Julian Lam
54893c81b4
feat: hourly and daily terms for ap analytics
2026-04-01 14:32:50 -04:00
Julian Lam
ab3c39eb62
fix: bad args sent to activitypub.record.send
2026-04-01 14:09:59 -04:00
Julian Lam
a58771ed8a
fix: rename 'activities' to 'received' in federation analytics
2026-04-01 14:03:00 -04:00
Julian Lam
0b80cf1c92
feat: track and show sent activities as well
2026-04-01 14:03:00 -04:00