summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2024-08-07Improve the variable namingMark Felder
2024-08-07Extract the logic from the mapMark Felder
2024-08-04StreamerView: Do not leak follows count if hiddenmarcin mikołajczak
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-08-02Gun: Publisher job behavior improvementMark Felder
Gun's connection pool also returns an error if duplicate workers are launched simultaneously. Snooze on this error as well, and lower the snooze to 3 seconds with the optimism that the connection will still be open by then and the delivery can be completed quickly. The original setting of 30 seconds is pretty high and means there's an unnatural lag between deliveries of activities destined to the same server that were created at nearly the same time. This configuration should be more efficient.
2024-07-31Fix User.disclose_client never working correctlyMark Felder
Our test environment cheats by constructing a conn with a custom oauth_access/2 function. This assigns a :token to the conn but due to the way it is constructed it has the :user preloaded. When the OAuth Plug fetches a token it does not preload the user, so the check for user.disclose_client was always nil and assumed to be false. Preloading the :user ensures the test environment matches reality.
2024-07-30Merge branch 'oban/simpler-publish' into 'develop'feld
Publisher job simplification See merge request pleroma/pleroma!4194
2024-07-29Merge branch 'oban/backup' into 'develop'feld
Backups Refactoring See merge request pleroma/pleroma!4158
2024-07-29Revert unintended change to the Logger metadata tag nameMark Felder
2024-07-29Fix cancelling jobsMark Felder
2024-07-29Remove actor and actor_id from the job as it can be inferred by the activityMark Felder
2024-07-28Publisher job simplificationMark Felder
Publisher jobs now store the the activity id instead of inserting duplicate JSON data in the Oban queue for each delivery.
2024-07-25Safer string concatenationMark Felder
2024-07-25Improve specs and matchingMark Felder
2024-07-25Merge remote-tracking branch 'origin/develop' into oban/backupMark Felder
2024-07-25Add test to fetch and validate an activity that originally failed signatureMark Felder
2024-07-25Extract validate_signature/2 from the HTTPSignaturePlugMark Felder
This logic only exists in the Plug, so attempting to validate the signature by calling the library function HTTPSignature.validate_conn/2 directly will never work because we do not attempt to construct the (request-target) and @request-target headers with both the commonly misinterpreted and correct implementation of this field. Therefore all attempts to validate a signature from an Oban Job will fail.
2024-07-25Fix Optimistic Inbox for failed signaturesMark Felder
When signatures fail on incoming activities we put the job into Oban to be processed later instead of doing the user fetching and validation inline which is expensive and increases latency on the incoming POST request. Unfortunately we did not retain the :method, :request_path, and :query_string parameters from the conn so the signature validation and Oban Job would always fail. This was most obvious when Mastodon sends Deletes for users your server has never seen before.
2024-07-24Fix RichMedia negative cache entriesMark Felder
The negative cache entry was a nil value, but that is an expected response when the cache is missing an entry so it didn't work as intended.
2024-07-24Consider errors during HTTP GET and HEAD to be unrecoverable and insert a ↵Mark Felder
negative cache entry This is for a normal HTTP error response or timeout while receiving the data. A hard error from a process crash, DNS lookup failure, etc should produce a different response than {:ok, %Tesla.Env{}} and the request/job will be retryable.
2024-07-24Pad RichMediaWorker timeout to be 2s longer than the Rich Media HTTP timeoutMark Felder
2024-07-24Pleroma.HTTP: permit passing through custom Tesla Middlware for requestsMark Felder
2024-07-23Make backup timeout configurableMark Felder
2024-07-23Extend the backup job time limit to 30 minutesMark Felder
2024-07-23Better random tempdir formatMark Felder
2024-07-23Limit backup jobs to 5 minutesMark Felder
2024-07-23Refactor backups to be fully controlled by ObanMark Felder
2024-07-23Fix dialyzer errorMark Felder
lib/pleroma/application.ex:1:pattern_match The pattern can never match the type true.
2024-07-22Fix order of args for show_reblogs/2Mark Felder
2024-07-22Fix order of args for hide_reblogs/2Mark Felder
2024-07-22Fix order of args for unfollow/2Mark Felder
2024-07-22Fix order of args for follow/2Mark Felder
2024-07-22Fix order of args for unblock/2Mark Felder
2024-07-22Fix order of args for block/2Mark Felder
2024-07-22Fix order of args for vote/3Mark Felder
2024-07-22Fix order of args for thread_muted?/2Mark Felder
2024-07-22Fix order of args for add_mute/2Mark Felder
2024-07-22Fix order of args for remove_mute/2Mark Felder
2024-07-22Fix order of args for update/2Mark Felder
2024-07-22Fix order of args for favorite/2Mark Felder
2024-07-22Annotate public functions with typespecs and mark some functions as privateMark Felder
2024-07-22Add missing typeMark Felder
2024-07-22Merge branch 'oban/more-improvements' into 'develop'feld
Oban: more improvements See merge request pleroma/pleroma!4187
2024-07-21Fix the ObjectValidator error matchingMark Felder
2024-07-20Fix OpenGraph and Twitter metadata providers when parsing objects with no ↵Mark Felder
content or summary fields.
2024-07-20Increase timeout for background, remote fetcher, and user refresh jobsMark Felder
2024-07-20Improved detecting unrecoverable errors for incoming federation jobsMark Felder
2024-07-20PollWorker jobs will not retry if the activity no longer exists.Mark Felder
2024-07-20Publisher jobs will not retry if the error received is a 400Mark Felder
2024-07-21Merge branch 'transmogrifier/handle-non-validate-delete-errors' into 'develop'feld
Transmogrifier: handle non-validate errors on incoming Delete activities See merge request pleroma/pleroma!4185
2024-07-20 Support cancelling jobs when UnreactingMark Felder