Commit Graph

135 Commits

Author SHA1 Message Date
Cory Slep 387ed4a775 Fix body delivery bytes being incorrectly copied 2018-08-19 23:25:14 +02:00
Cory Slep 17fce2255a Update README and CHANGELOG for v0.2.1 release 2018-08-19 19:00:48 +02:00
Cory Slep 2f2858f92b Include more links to go-fed.org and official reports 2018-08-19 18:39:54 +02:00
Cory Slep 46d55732d5 Use minimum sized types for enumerated values 2018-08-19 18:31:45 +02:00
Cory Slep 493b48b665 Update README with official implementation report links. 2018-08-19 18:26:02 +02:00
Cory Slep 3b0d31022c Update README with applications using the library 2018-08-19 18:20:58 +02:00
Cory Slep 8b0590a0cd Correctly test for root cause in issue 75. 2018-08-19 18:03:56 +02:00
Cory Slep 3740d4a418 Remove TODO 2018-08-19 11:06:52 +02:00
Cory Slep 452d6f1af7 Add unit test for issue 75: C2S not forwarding 2018-08-19 01:05:02 +02:00
Cory Slep a5757b4382 Update README and CHANGELOG for v0.2.0 release 2018-08-04 15:36:53 +02:00
Cory Slep 377455aa70 Add IsPublic to streams types 2018-08-04 15:30:31 +02:00
Cory Slep e372d2781e Update CHANGELOG 2018-08-04 15:28:00 +02:00
Cory Slep c655c635ff Add IsPublic to vocab.Object types & subtypes.
The IsPublic method will return 'true' if the special public collection
defined in the ActivityPub spec is addressed in the 'to', 'bto' 'cc', or
'bcc' properties of the Object or any of the types extending from them.
2018-08-04 15:20:34 +02:00
Cory Slep f8b24eef88 Use OrderedCollection by default for collections.
The 'liked', 'likes', 'followers', and 'following' collections now
default to the 'OrderedCollection' type instead of throwing an error if
the client application does not supply an IRI, 'Collection', or
'OrderedCollection' type on the actor or object.
2018-08-04 13:53:33 +02:00
Cory Slep dfffcd7eb2 Update CHANGELOG 2018-08-04 13:36:43 +02:00
Cory Slep be4644fbca Examine IRI when origin checking Update/Delete
Before we just always threw an error. Also update tests to check for
both cases.
2018-08-03 22:54:12 +02:00
Cory Slep f82653f709 Don't do an Activity's side effects more than once
If a federated Activity has been seen before, skip handling its side
effects.
2018-08-03 22:30:53 +02:00
Cory Slep 8fa0f2395c Add Like activities to the likes collection.
Previously, it was incorrectly adding the actors to the likes collection.
2018-08-02 22:29:03 +02:00
Cory Slep 107468d8e9 Fix GetInbox failure due to unavailable messages.
When deduplicating IRIs in a user's inbox, the library tries to
dereference the IRI to... obtain the ID. I must have added this when I
had no idea what I was doing. Oh my god, everyone's going to know I am
dumb! Quick, don't read this commit message, I'll just finish typing
this sentence over here.

Well, it's fixed now.
2018-08-01 23:30:20 +02:00
Cory Slep 10e099bd8a Remove unused test method from previous interface. 2018-08-01 23:22:46 +02:00
Cory Slep b0c125a7ba Improve media type detection for ActivityPub types 2018-08-01 23:18:41 +02:00
Cory Slep 1ed478582e To immediately be deleted.
I don't need this level of detail for headers. This is beyond overkill
for content negotiation. Just do something simpler.
2018-08-01 19:27:06 +02:00
Cory Slep cfdfddfda4 Update changelog and contributing 2018-07-28 13:26:55 +02:00
Cory J Slep 50f3ddbfc5
Merge pull request #52 from 21stio/patch-1
Update README.md
2018-07-01 13:15:50 +02:00
Cory J Slep 4870298a37
Merge pull request #53 from 21stio/patch-2
Update README.md
2018-07-01 13:15:34 +02:00
Cory J Slep c6b55cc0f2
Merge pull request #54 from 21stio/patch-3
Update README.md
2018-07-01 13:15:05 +02:00
21stio 6bea627342
Update README.md
added syntax highlighting
2018-06-25 09:45:09 +02:00
21stio 3c9368c902
Update README.md
added syntax highlighting
2018-06-25 09:44:24 +02:00
21stio 7b788cf596
Update README.md
added syntax highlighting
2018-06-25 09:43:15 +02:00
Cory Slep af5ed41bad Remove duplicate intermediate types.
This condenses the N types and M properties from N*M intermediate type
definitions to just M intermediate type definitions. These intermediate
types are no longer generated in the gen_<TYPE>.go files, but are all
within the separate gen_intermediate.go file.

This will hopefully reduce resource consumption during compilation of
the vocab package.
2018-06-17 18:51:30 +02:00
Cory Slep 307eb259b8 Update README and other files for 0.1.1 2018-06-13 23:23:46 +02:00
Cory Slep db08c01e85 Initial deliverer tests 2018-06-13 22:52:19 +02:00
Cory Slep b1609bd71a Generate streams package to multiple files 2018-06-13 22:01:53 +02:00
Cory Slep f155f0a3d0 Generate vocab package to multiple files. 2018-06-13 21:53:01 +02:00
Cory Slep fb16747c4e Migrate Typer and type-detection functions to vocab
This helps ensure that the code to detect specific ActivityStream types
continues to live in the code-generation algorithms, reducing
maintenance burdens.
2018-06-12 23:29:30 +02:00
Cory Slep 5331dfe8e0 Add CONTRIBUTING.md 2018-06-12 00:52:55 +02:00
Cory Slep 3a2a980ca2 Add pull request template 2018-06-12 00:37:36 +02:00
Cory J Slep 052239652e Add bug report and feature request templates 2018-06-12 00:28:44 +02:00
Cory Slep 1f9eeafca8 Serve tombstone with HTTP status Gone 2018-06-09 00:03:45 +02:00
Cory Slep 2764b67c7e Remove bto & bcc before serving ActivityStream object 2018-06-08 23:45:25 +02:00
Cory Slep 45f05d97c4 PostInbox Add now adds IRIs.
As part of normalization.
2018-06-06 22:59:24 +02:00
Cory Slep 3d310d5e81 PostInbox auto Follow/Reject uses IRI only
Part of normalization of IRIs.
2018-06-06 22:53:18 +02:00
Cory Slep 7f3a6fce6b PostOutbox Add uses IRIs
Normalizes to prevent overly-embedding objects.
2018-06-06 22:49:06 +02:00
Cory Slep a1fc177bc7 PostOutbox Create actor & attributedTo uses IRIs
Part of normalizing IRIs and preventing overly embedding objects.
2018-06-06 22:45:36 +02:00
Cory Slep da279300a0 Followers, following, likes, liked collections use IRIs.
As part of the IRI normalization effort.
2018-06-06 22:36:49 +02:00
Cory Slep 53c59ed335 Inboxes and outboxes now contain IRIs.
As part of normalization of objects and not embedding them everywhere.
2018-06-06 22:26:48 +02:00
Cory Slep 945c79483a Use IRIs when normalizing recipients.
Part of the IRI auditing for normalization effort.
2018-06-06 22:20:52 +02:00
Cory Slep 2bc987e776 Wrapping in Create for delivery propagates IRIs only.
As part of auditing everywhere an object may become inadvertently
embedded, and prefer normalization of IRIs.
2018-06-06 21:44:10 +02:00
Cory Slep 33c5320c8f Fixes for the first c2s implementation report.
Non Interface Behavior Changes:

- Robust header detection for ActivityPub requests
- No more panic because of a Bto access after a Bcc condition
- PostOutbox Undo activities now required to have matching actors

Interface Behavior Changes:

- PostOutbox activities themselves are now passed to App.Set
- Authentication/Authorization in a SocialAPIVerifier no longer
    shadowed and ignored.
- Add activities can now fetch remote objects (not permanent)

The behavior changes are justified as having been broken bugs that would
have not met a developer's expectations. So including them as part of
the next release maintains major version 0 behavior compatibility.
2018-06-06 00:49:02 +02:00
Cory Slep 62ec7d5278 Fix logic for Accept and Content-Type headers 2018-06-03 01:29:47 +02:00