268 Commits (master)

Author SHA1 Message Date
teknomunk e6638cd2fb Update subcomponents, update rsa-signature RDF layout
1 year ago
teknomunk f662610622 Update CLI handling, add CORS headers to ActivityPub endpoints to allow https://json-ld.org/playground/ to work, add route for /activity/%d{id}, add contexts to ap_object creation, fix single-digit dates in HTTP Signature Date header
1 year ago
teknomunk 48f9a4d074 Add context, update submodules
1 year ago
teknomunk 091b4d8b2e remove ap_attachment, use object id as ref when an object is provided in an announce
1 year ago
teknomunk 1c55d2ce53 Split out activity pub code to separate repo to share between projects
1 year ago
teknomunk 12c0b20364 Prevent notifications for owner following accounts
1 year ago
teknomunk 1215ebfe4e Implement Undo(Like) and Undo(EmojiRact)
1 year ago
teknomunk e4c6c42975 Start adding automatic directory creaction to model, implement working /inbox forwarding for owner, implement activity_deliver, rework account federation to use activity_deliver
1 year ago
teknomunk b0a4f53375 Fix bug where likes weren't being tracked
1 year ago
teknomunk 2f07d4d040 Finish renaming ap_activity -> ap_object
1 year ago
teknomunk 0733bc7664 Suppress error message when clean.sh is run twice in a row, more preparations for submodule split of ap/
1 year ago
teknomunk d5d1f02390 Rearrange file structure to prepare for separating ActivityPub code to submodule
1 year ago
teknomunk e93ace5584 Split out activity forward code, modify build script to allow rebuilding while apogee is running
1 year ago
teknomunk f2a61e0b71 Split apart application-specific AcitivytPub code and generic ap_object code, rename ap_object type enumeration values, start work to ingest external Activities
1 year ago
teknomunk c5445ca9a5 Remove hard-coded domain name, update http
1 year ago
teknomunk 8396b01e3d Remove hard-coded domain name, make app_args loaded from data/server.json, s/g_server_name/g_server->domain/, update http and json submodules
1 year ago
teknomunk 9a1edead5f Remove async_fetch population, will be switching over to stubs index
1 year ago
teknomunk 18536975e4 Get mark-and-sweep status garbage collection working, remove mark from status and use in-memory array (performace enhancement)
1 year ago
teknomunk 9b361dd2d3 Start implementation of garbage collection of older posts, fix to,cc,bcc parse error when a single value is present, fix Accept header value, add status removal functions
1 year ago
teknomunk c6f8df2244 Fix minor bugs
1 year ago
teknomunk 1c1df8270c Continue s/ap_activity/ap_object/, remove ap_account and use ap_object instead, move actor/attribtuedTo fixup code to controller/inbox.c
1 year ago
teknomunk 1a18b603f5 Cleanup CURL library before existing, implement Update federation
1 year ago
teknomunk ddc026cb06 Get account data into ap_object and remote text template for owner/actor, continue s/ap_activity/ap_object/
1 year ago
teknomunk aca54e746f Split up model/account.c to reduce line count and make it easier to find code
1 year ago
teknomunk 808dbecb88 Implement following ActivityPub, remove text templates
1 year ago
teknomunk ea63577295 Implement /owner/followers, fix bug where replies would miss mentions
1 year ago
teknomunk b6d0d4686d Change ap_object.first to a ap_object_ptr_or_ref to handle when the first object is not a reference, correct page limit in /outbox, swap out ap_activity for ap_object in src/model/account.c
1 year ago
teknomunk 80e3284bf4 Start making account stubs for remote accounts that refuse to load (to reduce remote server load)
1 year ago
teknomunk 3af41c25d3 Implement /outbox, add status->activity indexing for local statuses
1 year ago
teknomunk df7bb10cd8 Start renaming s/ap_activity/ap_object/
1 year ago
teknomunk 9a1524bfea Start work on OrderedCollection to use for implementing /outbox
1 year ago
teknomunk 668e9e2d42 Link status/repost to the activity that created them for use in /outbox, start renaming ap_activity to ap_object, move code that creates Create activity to account model
1 year ago
teknomunk ed4fbf7fde Fix memory leaks, implement bookmarks
1 year ago
teknomunk 34135f9da0 Fix memory leak, passthrough sensitive field of Activity
1 year ago
teknomunk b06c9b4c48 Fix memory leaks, change Activity context writer to support extra schemas, language schema and add lite-pub schema by default, change hyperlink end detection
1 year ago
teknomunk 16cb584feb Fix memory leaks, access bugs, use-before-initialization bugs
1 year ago
teknomunk d41ebc7a24 Fix memory leaks, implement Emoji federation, fix mention bug, fix other bugs
1 year ago
teknomunk cb3d102c38 Fix replies, add stub for /api/v1/scheduled_statuses
1 year ago
teknomunk 9e6e2cf556 Implement webfinger lookup for following accounts not already local
1 year ago
teknomunk aad7a1f82f Implement emoji for local posts
1 year ago
teknomunk c66f92924d Implement emoji processing and display for federated posts, fix /api/v1/account/update_credentials
1 year ago
teknomunk eb432b6ea0 Update submodule ffdb
1 year ago
teknomunk 6954de32d9 Change timeline to use trie that allows arbitrary insertions and deletions instead of list of lists (which doesn't), make all routes other than /api return Soapbox index.html on error
1 year ago
teknomunk 6340400943 Fix inbox breakage
1 year ago
teknomunk d80b5e1e62 Implement federated media posts
1 year ago
teknomunk 6d3b608925 Get multipart post data for media parsing and writing to disk, provide Soapbox index.html instead of 404 message, fix several resource leaks
1 year ago
teknomunk 9f9b93a263 Fix bug syncing mentions, fix typo, fix SEGV in apu_Status_write
1 year ago
teknomunk a91eee9eeb Fill in root_status_id and add to parent's reply list, handle unable to fetch parent (this should be a stub)
1 year ago
teknomunk 80a0278495 Fill out Status response fields for reply and to further match Pleroma, pull mentions and parent posts for replies
1 year ago
teknomunk 91f821ce8e Fix bugs, fix inbox blocks, add safety to reacts, create common cleanup_box for both inbox and outbox, start transition of ap_activity to ap_object
1 year ago
teknomunk 498391c779 Fix several bugs, get reposted indicator showing correctly in Husky, starting work on moving owner/actor from text template to using ap_activity so it can be included in an Update
1 year ago
teknomunk 61694bb0bb Update submodules,readme
1 year ago
teknomunk cc9e32b7dc Convert all api responses from text templates to JSON layouts, fix memory leaks, discard more unsupported Activities, server owner banner
1 year ago
teknomunk aec2cd8ad8 Fix time offset
1 year ago
teknomunk 7f2e089b86 Start work on issuing an Update for the owner account, discard Undo(Like) that are for statuses that are not local, discard more invalid requests, make avatar served locally
1 year ago
teknomunk e333da9802 Fix trie bug
1 year ago
teknomunk f04141fdbd Fix probably SEGV in outbox envelope creation with shared inboxes, move data for statuses so everything isn't data/statuses/*.json (need to repeat for data/statuses/ap)
1 year ago
teknomunk 6d78a1c827 Implement block notification
1 year ago
teknomunk 0ecd13752f Implement working Digest headers included in HTTP Signature for all outgoing posts
1 year ago
teknomunk 7f764b082c Add debug tool (pretty_json.rb), change limit on follower/following accounts results, implement delivery to shared inboxes
1 year ago
teknomunk 63b8bc5141 Reduce outbox processing load by advancing the TAIL to skip sent/canceled outbox items
1 year ago
teknomunk 9721eb53d8 Handle account with empty name field, fix some memory leaks
1 year ago
teknomunk 68bdc0718f Add forced discard after 10 delivery failures, don't crash when a search doesn't return an account
1 year ago
teknomunk e4513a4fc8 Add cli command to force account resync to fix issue with first account added, fix typo, force statuses created by owner to be remote=false, add field for follow_activity (unused)
1 year ago
teknomunk a52a9b8c89 Add backoff to outbox processing, get replies federating, get emoji notifications working in Husky, get local statuses not in the uri index looking up by uri
1 year ago
teknomunk 04c456e12d Add enough processing for Undo:Announce to discard activities that don't pertain to a locally mirrored status, fix Create Note activity following check, add 'value' field to ap_attachement
1 year ago
teknomunk 5990049dad Fix using uninitialized value (missing return in outbox_envelope_new)
1 year ago
teknomunk 079531a42d Route Move activity (calls stub function account_move ), require that the HTTP signature matches the actor field of posted activities
1 year ago
teknomunk 8cd52febba Add route for unfollow, handle Update activities, add self mentions to statuses during Create handling, replace purely linear outbox handling with one that can skip failed deliveries
1 year ago
teknomunk 4110a986c7 Update follower/following counts
1 year ago
teknomunk 31bc4e73be Break timeline and account routes out of controler/mastodon_api.c, connect /api/v1/accounts/%d{id}/follow to account_follow
1 year ago
teknomunk d8ad309e08 Implement post federation
1 year ago
teknomunk d86eedfede Add mentions to status model and pass thru mastodon api
1 year ago
teknomunk e75061335c Get following list working correctly
1 year ago
teknomunk a47f16837b Replace string template api Account response with version using JSON submodule
1 year ago
teknomunk c9b8d653f8 Replace text template with JSON layout for Relationship
1 year ago
teknomunk 016936eae8 Get follow button to show up in both Husky and Soapbox
1 year ago
teknomunk 56a48fce78 Fix issue with timelines, implement reposts and repost federation
1 year ago
teknomunk 675af63593 Fix a couple bugs
1 year ago
teknomunk c90d6c71d8 Fix up JSON layout data, allow attributedTo instead of actor in post
1 year ago
teknomunk 4344b9dac6 Refactor routing for statuses
1 year ago
teknomunk f19ea54b1d start breaking up src/controller/inbox.c to reduce file size, handle pin
1 year ago
teknomunk b83d9db75a Add system stub messages, prevent notifications from being created when a post is a stub, fix url in Status API response
1 year ago
teknomunk afa99c1d4f Add status sync command, get more Activities parsing
1 year ago
teknomunk e14dce833a Fix SEGV when loading timeline
1 year ago
teknomunk 57af3c43c0 Implement repost handling, cleanup some debug code, introduce account_from_uri_or_fetch helper function
1 year ago
teknomunk 056c627d22 Add start of async fetch for statuses (stub statuses to be handled later), start of Announce (repost) handling
1 year ago
teknomunk b2110eece3 make source and content have mime_type fields (not yet connected to JSON parser)
1 year ago
teknomunk 1fb3f84b9b Rework CLI controller, add 'activity import' stub and 'status import' command, start ActivityPub->status fetch and import
1 year ago
teknomunk d675a087e5 Combine mention/follower status handling, add model support for pinned posts (not possible for posts to become pinned yet)
1 year ago
teknomunk 46ad17fb66 Implement status context
1 year ago
teknomunk 783ac01a20 Add status_add_to_timeline, fix reacts field in json layout table
1 year ago
teknomunk 30feff8246 rework status handling to support replies, add handling for /api/pleroma/frontend_configurations, rework instance data, rework status response
1 year ago
teknomunk 9b0c820e52 Fix filter in handle_timeline, add published time to locally-sourced statuses, make like point to ap_activity_like stub
1 year ago
teknomunk 1bcb3af898 Add start of CLI controller, put ActivityPub endpoints /following and followers in the right spot, implement account follow/unfollow (flaky), show status publish date
1 year ago
teknomunk 229ebacd78 Implement Follow activity (not yet attached to API)
1 year ago
teknomunk 9ab772b661 Federate emoji reacts
1 year ago
teknomunk 70e27e0d23 Update submodules
1 year ago
teknomunk 3ef8a5a833 Remove http submodules
1 year ago
teknomunk a917c223e0 Fix memory leaks, add logic to remove reacts, rename files/folders in HTTP submodules, rework timeline filtering, move http common files to new submodules, have the react result field 'me' filled in correctly
1 year ago
teknomunk 27180caf5d Add relationship and search handling, fix posting, add format(...)
1 year ago
teknomunk 0325fc898c Loop outbox processing, add incoming mentions to that account's local timeline, add emoji reactions inbox processing, implement followers listing, add reindex command
1 year ago
teknomunk 9292f5d15e Rework initialization to allow running only the web server for debugging without needing to recompile, implement status react serdes, update api to return statuses (Soapbox is not showing them...?)
1 year ago
teknomunk 3f0b5dac86 Add error reporting to account_sync_from_acitvity_pub, add handling of likes, index statuses by uri, make reposts and likes report correct values in mastodon api, fix adding post to empty timeline
1 year ago
teknomunk 7b35934e18 Start source rendering
1 year ago
teknomunk f4b019eff0 Move state modification code from controller to model, add pleroma api endpoint, add stub for emoji reactions, add messages for block/unfollow events
1 year ago
teknomunk 134d9afc5a Cleanup in test
1 year ago
teknomunk 697df4f3c0 Start implementing followers logic, start react logic
1 year ago
teknomunk 9a3a759dd5 Get first mention handled
1 year ago
teknomunk 11f1e90628 Re-enable automatic outbox processing
1 year ago
teknomunk 0a95a70461 Rework inbox processing, add stubs for account add/remove follower, create notice when processing follow, rework outbox (use envelope with single destination), add handlers for paths referenced in actor, add test to validate locally-created HTTP signature
1 year ago
teknomunk b5a229267b Start test suite, implement base64_decode, validate http signatures
1 year ago
teknomunk bc3b4daebc Move base64 code to separate file, work on implementing HTTP Signature validation
1 year ago
teknomunk df589eb9e0 Rework inbox envelope
1 year ago
teknomunk 391049c46f Split json layout from ap_activity, fill out more of the ap_activity structure
1 year ago
teknomunk 5955acaeec Get first message federating
1 year ago
teknomunk c36c52de5c Create the actual RsaSignature2017, swap out string creation for date/time time_t field
1 year ago
teknomunk a48a288782 Move files to submodules
1 year ago
teknomunk 709d8e415e Move hash index to ffdb
1 year ago
teknomunk d6c5bbcbf9 Add account type field to model, move http_get to submodule http_client, move fs_list to submodule ffdb, start serializing signature data for RsaSignature2017
1 year ago
teknomunk b83d60816c Split out serialize_normalized_object
1 year ago
teknomunk a290056b3c Use normalization algorithm
1 year ago
teknomunk f38e204f07 Start implementing JSON-LD to RDF conversion for RsaSignature2017
1 year ago
teknomunk 34eb37e362 Add logging for route_asset, fix submodules
1 year ago
teknomunk 4bc2123156 Fix login for Soapbox and fix routing for api/v1/apps/verify_credentials
1 year ago
teknomunk eeb60ab71d Get Soapbox frontend attached, fix several bugs in the login sequence
1 year ago
teknomunk 6186b427b3 First cut at implementing HTTP Signature, start work on RsaSignature2017
1 year ago
teknomunk 28bc089384 Fix memory leaks, create HTTP Signature for post to inbox
1 year ago
teknomunk e2bfe97745 Start actual outbox processing
1 year ago
teknomunk 8321a3fd41 Rework to ommit unneeded activity fields, add -Werror
1 year ago
teknomunk 2a39ca0791 Add timeline filter handling, correctly write json strings in api response, more memory fixes
1 year ago
teknomunk 83405b16d2 Fix memory leaks
1 year ago
teknomunk b7bef499e6 Start crypto implementation, remove debug printfs, partial application of s/reverse_index/uri_index/, fix memory leak in rie_reader, start writing outbox processing
1 year ago
teknomunk ec7147dfff Correctly apply limits and since_id arguments to /api/v1/notifications, generate Accept action for Follow response (not yet signed), expand ap/activity model and add ap_activity_create_accept, add notification_new, don't include a 'status' in notifications if not set
1 year ago
teknomunk f92860d564 Fix offset for public_key in ap/account layout, create local account data for remote actor, add ap/account debug dump
1 year ago
teknomunk 6275af369b Add inbox cleanup, add development helper, fix up account uri->account_id index, start code to create new accounts in account_fetch_from_uri, add src/model/ap/account.*
1 year ago
teknomunk cfb3c1ccfc Add file system list (fs_list), start implementing activity processing, implement http_get wrapper for cURL, add validation override to ap_envelope to allow testing before HTTP Signature verification is implemented, fix extra " in envelope template
1 year ago
teknomunk 04e1ef6e32 Get first inbox item to parse completely
1 year ago
teknomunk 65756c5795 Convert account over json layout loader, start implementing account reverse index (needed for account uri to account id lookup), more work on ap_activity, convert owner over to json layout loader
1 year ago
teknomunk 6706606cf8 Add /api/v1/instance, start work on ap_activity model, rework save/load files to use json helper functions, remove client_app model json template, implement notification model
1 year ago
teknomunk 808f912b1e Start implementing inbox processing
1 year ago
teknomunk e2c7c3990a Add empty responses for /api/v1/relationshships and /api/vi/filters
1 year ago
teknomunk 5e0a815d3a Connect up controller to more timelines, remove write_json_escaped (replace by json_write_string), add back in date to deferred inbox
1 year ago
teknomunk a4e7e5a29e Rework inbox
1 year ago
teknomunk 9d43a84d5b Implement timelines, make media and reactions data driven (reactions still need count/react pulled from data)
1 year ago
teknomunk 16f4e1911e Change show_statuses to take an array of pointers to statuses instead an array of statuses, start implementing timeline model
1 year ago
teknomunk 99cf9a4abb Re-enable authentication, switch client app to json/layout
1 year ago
teknomunk bc36480af3 Implement post submission, start using new json object layout parser
1 year ago
teknomunk bc2d58266b Also put the owner page at the more human-friendly /owner
1 year ago
teknomunk db8ffe1e38 Add start of account page, create owner account page routes, make /owner/actor look for application/ld+json before providing JSON-LD object, refactor to view/owner_actor.json.template to use g_server_name instead of hardcoding my test server into the calling function
1 year ago