Commit Graph

428 Commits (b06f3eb32e3f981917bd5eb5cd82e995288ceb91)

Author SHA1 Message Date
Nutomic c6ac606f60
Test pleroma follow (#1988)
* Add test case for Pleroma follow activity (ref #1984)

* Use WithContext in apub tests where possible
2021-12-11 21:39:18 -05:00
Riley 0ed3856ef1
Remove awc (#1979)
* Remove unused awc dep

* Replace awc pict-rs client with reqwest

* Reinstate 30 second pict-rs timeout
2021-12-08 10:56:43 -05:00
Aode (lion) 5b3d707d8f Use from_message for static error string 2021-12-07 17:17:19 -06:00
Aode (lion) 97ebf2f6f3 Consolidate reqwest clients, use reqwest-middleware for tracing 2021-12-06 16:54:34 -06:00
Riley 35cbae61bc
Don't drop error context when adding a message to errors (#1958)
* Respond directly with LemmyError

Instrument Perform implementations for more precise traces
Use ApiError to format JSON errors when messages are present
Keep SpanTrace output in LemmyError Display impl

* Hide SpanTrace debug output from LemmyError

* Don't log when entering spans, only when leaving

* Update actix-web

* Update actix-rt

* Add newline after error info in LemmyError Display impl

* Propogate span information to blocking operations

* Instrument apub functions

* Use skip_all for more instrument attributes, don't skip 'self' in some api actions

* Make message a static string

* Send proper JSON over websocket

* Add 'message' to LemmyError display if present

* Use a quieter root span builder, don't pretty-print logs

* Keep passwords and emails out of logs

* Re-enable logging Login

* Instrument feeds

* Emit our own errors

* Move error log after status code recording

* Make Sensitive generic over the inner type

* Remove line that logged secrets
2021-12-06 09:54:47 -05:00
Dessalines 4e9ecb2632
Allow comment replies from blocked users. Fixes #1793 (#1969)
* Allow comment replies from blocked users. Fixes #1793

* Clearer check block.
2021-12-05 17:45:40 +00:00
Dessalines 040770d7ba
Fix retry infinite loops. Fixes #1964 (#1967)
* Fix retry infinite loops. Fixes #1964

* Moving retry_limit to settings
2021-12-05 10:03:13 -05:00
Colin Reeder e2baed9a6d
Add lotide activities to tests 2021-12-02 22:44:52 -07:00
Colin Reeder a91c0c8feb
Allow single item for to, cc, and @context 2021-11-26 21:55:33 -07:00
Dessalines ad76c75821
Trying to add docker:latest. Fixes #1959 (#1960)
* Trying to add docker:latest. Fixes #1959

* Version 0.14.4-rc.3

* Trying to fix clippy on crate build

* Version 0.14.4-rc.4
2021-11-26 12:38:55 +00:00
Dessalines be65b6869f
Merge pull request #1937 from LemmyNet/disable-edit-email-notifications
Dont send email notifications for edited comments (fixes #1925)
2021-11-25 13:00:26 -05:00
Dessalines e765b42d46
Adding a captcha rate limit. Fixes #1755 (#1941)
* Adding a captcha rate limit. Fixes #1755

* Changing to post rate limit.
2021-11-25 13:04:19 +00:00
Felix Ableitner 27a687bcd0 Dont send email notifications for edited comments (fixes #1925) 2021-11-24 22:29:29 +01:00
Dessalines 97b8b9c255 Version 0.14.3 2021-11-23 14:39:55 -05:00
Dessalines 7f01d8cde6 Version 0.14.2 2021-11-23 11:48:49 -05:00
Dessalines b1f7bad0a3 Version 0.14.2-rc.1 2021-11-23 11:12:46 -05:00
Dessalines 46c7429429
Fixing duped report view for admins. Fixes #1933 (#1945)
* Fixing duped report view for admins. Fixes #1933

* Fixing tests.
2021-11-23 15:54:30 +00:00
Dessalines d2e28e5f38
Adding a GetComment endpoint. Fixes #1919 (#1944) 2021-11-23 15:53:48 +00:00
Dessalines 451818749b
Fix min title char count for post titles. Fixes #1854 (#1940)
* Fix min title char count for post titles. Fixes #1854

* Adding more newline checks for actors.

* Adding helper function
2021-11-23 15:52:58 +00:00
Dessalines 86b2901e8c
Adding MarkPostAsRead to API. Fixes #1784 (#1946)
* Adding MarkPostAsRead to API. Fixes #1784

* Adding error
2021-11-23 14:15:43 +00:00
Riley 1579ee566f
background-jobs 0.11 (#1943) 2021-11-23 12:20:01 +00:00
Riley 3fea5645f8
Add tracing (#1942) 2021-11-23 12:16:47 +00:00
Dessalines 88c7b95d03
Remove pointless community follower sort. (#1939) 2021-11-23 12:05:09 +00:00
Dessalines 3e062a9959
Merge pull request #1938 from LemmyNet/once_cell
Use once_cell instead of lazy_static
2021-11-22 14:27:08 -05:00
Felix Ableitner e88106cef4 Use once_cell instead of lazy_static 2021-11-22 19:58:31 +01:00
Dessalines 3d08e6c1fc
Adding unique constraint for activity ap_id. Fixes #1878 (#1935)
* Adding unique constraint for activity ap_id. Fixes #1878

* Removing is_activity_already_known
2021-11-22 18:57:03 +00:00
Dessalines 05d43150bc Making public key required. Fixes #1934 2021-11-22 10:10:18 -05:00
Dessalines 209829e1f3
Merge pull request #1926 from LemmyNet/replace-activitystreams-lib
Replace activitystreams crate with activitystreams-kinds
2021-11-22 08:47:46 -05:00
Felix Ableitner afccd5cf69 Replace activitystreams crate with activitystreams-kinds 2021-11-22 14:28:57 +01:00
Nutomic 88e81dce6b
Merge pull request #1921 from LemmyNet/fix_login
Fix login ilike bug. Fixes #1920
2021-11-22 13:05:57 +00:00
Alexander Batischev d53d229c49
Change NodeInfo `links` to an array
NodeInfo spec[1] says that _.well-known/nodeinfo_ is a JSON Resource
Descriptor (JRD) document. That is specified in RFC 7033, where §4.4[2]
mandates that `links` is an array.

1. https://nodeinfo.diaspora.software/protocol.html
2. https://datatracker.ietf.org/doc/html/rfc7033#section-4.4
2021-11-21 20:10:39 +03:00
Dessalines e58c2048ed Fixing fuzzy_search to escape like chars. 2021-11-19 15:07:20 -05:00
Felix Ableitner 3e4fe89a45 Fix build error in #1914 2021-11-19 18:05:23 +01:00
Dessalines 6d35508f08
Merge pull request #1914 from LemmyNet/dont-announce-note
Dont announce comments, edited posts to Pleroma/Mastodon followers
2021-11-19 11:48:47 -05:00
Dessalines 4ce01f8bb4 Fix login ilike bug. Fixes #1920 2021-11-18 20:58:11 -05:00
Dessalines 712dabd16b
Merge pull request #1918 from LemmyNet/fix-smithereen-webfinger
Fix Smithereen webfinger, remove duplicate webfinger impl (fixes #1916)
2021-11-18 14:47:34 -05:00
Dessalines e756e85da7
Merge pull request #1917 from LemmyNet/outbox-announce
Community outbox should only contain activities sent by community
2021-11-18 14:31:47 -05:00
Felix Ableitner da89ea22fb Fix Smithereen webfinger, remove duplicate webfinger impl (fixes #1916) 2021-11-18 19:28:53 +01:00
Felix Ableitner aeb34199f5 Dont announce comments, edited posts to Pleroma/Mastodon followers 2021-11-18 18:41:43 +01:00
Felix Ableitner a2707e1c56 Community outbox should only contain activities sent by community (fixes #1916) 2021-11-18 18:31:50 +01:00
Dessalines 1f03a2d957
Merge pull request #1915 from LemmyNet/remove-http-sig-compat
Remove HTTP signature compatibility mode (its not necessary)
2021-11-18 11:43:32 -05:00
Dessalines a56853be05
Merge pull request #1907 from not-layla/main
Implement rate limits on comments
2021-11-18 11:22:38 -05:00
Felix Ableitner f07aaf417a Remove HTTP signature compatibility mode (its not necessary) 2021-11-18 17:06:10 +01:00
layla 7fe7062c47 Implement rate limits on comments 2021-11-18 13:40:16 +00:00
Dessalines f4616789a7 Version 0.14.1 2021-11-17 16:25:50 -05:00
Dessalines c29366328e Version 0.14.0 2021-11-17 11:28:16 -05:00
Dessalines dc3858c82d Version 0.14.0-rc.2 2021-11-17 09:14:54 -05:00
Dessalines 5f6419ff76
Merge pull request #1897 from LemmyNet/mastodon-compat
Mastodon compat
2021-11-17 09:12:01 -05:00
Felix Ableitner db631005d3 Fix error due to same activity being inserted in database twice 2021-11-16 19:13:05 +01:00
Felix Ableitner 3249060f67 Remove to field from follow activities 2021-11-16 19:13:05 +01:00
Aode (lion) 20cddf5e81 Support mastodon deletes 2021-11-16 18:07:47 +01:00
Felix Ableitner 7f4a773b88 Create and Note always need to tag parent creator, for mastodon notifications 2021-11-16 18:07:47 +01:00
Felix Ableitner c1f1b8aa0f Activities in community should also be sent to actors in cc 2021-11-16 18:07:45 +01:00
Felix Ableitner dc416bf255 Make http signature compatible with mastodon 2021-11-16 18:06:01 +01:00
Nutomic 60f72b2785
Merge pull request #1905 from LemmyNet/fix_comment_report_creator
Fixing comment report creator. Fixes #1904
2021-11-16 17:03:58 +00:00
Felix Ableitner 579ca37ddf Make webfinger standard compliant 2021-11-16 18:03:09 +01:00
Dessalines ec40b4f7fb Fixing comment report creator. Fixes #1904 2021-11-16 09:59:52 -05:00
Dessalines 23641fcd06 Use serde_json::to_value 2021-11-15 21:11:44 -05:00
Dessalines 09cd32034b
Fixing activity serialization. Fixes #1900 (#1901) 2021-11-15 20:26:48 +00:00
Dessalines 497564359b Version 0.14.0-rc.1 2021-11-11 14:57:25 -05:00
Nutomic 1b9414f292
More federation compat (#1894)
* Make HTTP signatures compatible with Pleroma

* Send Announce/Page, Announce/Note for Pleroma compatibility

* remove unused code
2021-11-11 14:49:15 -05:00
Dessalines 8d4c4fdf6c
Adding clippy:unwrap to husky. Fixes #1892 (#1893) 2021-11-11 12:18:08 +00:00
Dessalines 8a108bccae
Merge pull request #1891 from LemmyNet/remove-apub-accept-guard
Remove header guard for activitypub routes
2021-11-10 09:38:50 -05:00
Felix Ableitner 9a1fe154db Remove header guard for activitypub routes 2021-11-10 15:08:33 +01:00
Dessalines f035af3738 Fixing clippy 2021-11-09 17:31:28 -05:00
Dessalines 76220a4523
Fixing clippy lints. (#1885)
* Fixing clippy lints.

* Revert object id display

* Trying to fix clippy again
2021-11-09 18:16:37 +00:00
Felix Ableitner 5319046dc7 Add federation test cases for Smithereen and Mastodon 2021-11-09 17:16:58 +01:00
Felix Ableitner c21c142a9a Include apub context from file, so that it can be embedded in docs 2021-11-08 16:04:02 +01:00
Felix Ableitner 252d87d332 Fix clippy error 2021-11-08 13:16:14 +01:00
Felix Ableitner 888e683856 For verify_is_public() we also need to check cc field 2021-11-06 18:44:34 +01:00
Felix Ableitner a5a674a270 Add method ApubObject.verify() 2021-11-06 18:35:14 +01:00
Felix Ableitner 02ce7bdc7d Remove unused ActorType methods 2021-11-06 15:01:00 +01:00
Felix Ableitner 8ea21c39b7 Reduce stack memory usage in apub code
- use our own, smaller Endpoints struct
- wrap ObjectId.url in Box
- adjust usage of Box in different places
2021-11-06 14:53:39 +01:00
Felix Ableitner c725514841 Change to_apub and from_apub to take by value and avoid cloning 2021-11-06 14:47:58 +01:00
Felix Ableitner 2edf8ba157 Move ObjectId to library 2021-11-05 21:37:46 +01:00
Felix Ableitner bd3352423a Remove ActivityFields trait, deserialize into another struct instead 2021-11-05 21:14:19 +01:00
Felix Ableitner 969a7f2d1b Refactoring apub code 2021-11-05 21:12:10 +01:00
Dessalines a83113935d
Check if post or comment are deleted first. Fixes #1864 (#1867)
* Check if post or comment are deleted first. Fixes #1864

* Refactoring delete apub.

* Revert "Refactoring delete apub."

This reverts commit ba2c3d06cfb870efe792f4b2541036265b425156.
2021-11-03 17:47:24 +00:00
Dessalines 1bec551945
Merge pull request #1874 from LemmyNet/protocol-testing
Protocol testing
2021-11-03 11:23:26 -04:00
Felix Ableitner 41f7bcc0d2 Correctly use and document check_is_apub_id_valid() param use_strict_allowlist 2021-11-02 21:39:06 +01:00
Felix Ableitner b396344eae Merge two functions into one 2021-11-02 21:39:06 +01:00
Felix Ableitner 1c6f74cad5 Convert note.content and chat_message.content to html (fixes #1871) 2021-11-02 21:39:02 +01:00
Dessalines d4753049d7
Upgrade background_jobs to 0.9.1 #1820 (#1875) 2021-11-02 20:27:24 +00:00
Felix Ableitner 0bde2d595e Add tests for parsing activities and collections 2021-11-02 12:44:51 +01:00
Felix Ableitner aaaf039779 Move apub test files into tree structure 2021-10-29 16:54:19 +02:00
Felix Ableitner 03d8ac75ef Move activity structs to protocol folder 2021-10-29 12:50:32 +02:00
Felix Ableitner 5ff044346f Move object and collection structs to protocol folder 2021-10-29 12:50:32 +02:00
Felix Ableitner 358ef99ea2 Rewrite community followers and user outbox to use our own structs 2021-10-29 12:50:32 +02:00
Felix Ableitner d89156810d Move @context out of object/activity definitions 2021-10-29 12:50:32 +02:00
Felix Ableitner 2d04ff93f5 Change activity.cc to Vec<Url> in public activities 2021-10-29 12:50:32 +02:00
Felix Ableitner 271785b7fb When receiving activity, dont read community from cc (for pleroma compat and better verification) 2021-10-29 12:50:30 +02:00
Felix Ableitner 74523fb534 Make Note.context optional for pleroma compat (hack) 2021-10-29 12:45:54 +02:00
Felix Ableitner 03b8ae7215 Activity.to should always be a vec (and unspecified size for public activities) 2021-10-29 12:45:54 +02:00
Felix Ableitner 614490d29b Fix problem that prevented viewing of pleroma user profiles 2021-10-29 12:45:53 +02:00
Felix Ableitner 0af047dd83 Rewrite community moderators collection 2021-10-29 12:45:53 +02:00
Felix Ableitner 6792e376b4 Rewrite community outbox to use new fetcher 2021-10-29 12:45:53 +02:00
Felix Ableitner bb085189e0 Merge traits ToApub and FromApub into ApubObject 2021-10-29 12:45:53 +02:00
Dessalines b18ea3e0cc
Renaming to slur_filter. Fixes #1773 (#1801)
* Renaming to slur_filter. Fixes #1773

* Fixing config

* Updating doku for slur filter.

* Updating doku for slur filter again.

* Remove comment.
2021-10-28 20:47:25 +00:00
Dessalines f1f7c45017
Three instance inbox bug (#1866)
* 3 instance shared inbox bug test

* Fixing shared inbox bug. Fixes #1865

* A few fixes.
2021-10-28 20:46:24 +00:00
Nutomic 61189efe72
Rewrite collections to use new fetcher (#1861)
* Merge traits ToApub and FromApub into ApubObject

* Rewrite community outbox to use new fetcher

* Rewrite community moderators collection

* Rewrite tombstone
2021-10-27 12:03:07 -04:00