Wykres commitów

236 Commity (f73e8dfbd104daf0c3851a3b37b4a4042a619e8e)

Autor SHA1 Wiadomość Data
Marnanel Thurman f73e8dfbd1 you can have no F=V pairs with kepicreate 2019-06-17 20:45:30 +01:00
Marnanel Thurman c89fb32dd9 management commands: kepicreate, kepilist 2019-06-17 20:38:18 +01:00
Marnanel Thurman ffbec4bd09 "pretty" property for pretty-printing a Thing.
__getitem__() returns None if its argument is not found.
__getitem__("number") returns the serial number.
2019-06-17 20:37:20 +01:00
Marnanel Thurman f2a5a3eca7 Delivery to collections 2019-06-15 19:13:43 +01:00
Marnanel Thurman e7b26ccd73 Refactor delivery into local and remote fns 2019-06-15 00:33:32 +01:00
Marnanel Thurman 852a8541c0 "Public" and "as:Public" work as synonyms for the public collection.
Some outdated comments removed.
2019-06-13 19:38:26 +01:00
Marnanel Thurman 8e9193c796 Pass inbox name into local POST handler, as if it came in via HTTP 2019-06-13 18:49:55 +01:00
Marnanel Thurman 7d5b635012 rm confusing debug message 2019-06-08 23:33:21 +01:00
Marnanel Thurman ca144feeae Intermediate checkin; local delivery works a bit better 2019-06-08 23:27:55 +01:00
Marnanel Thurman d633ef4c08 fixed Audience debug messages to be similar to ThingField 2019-06-07 13:57:43 +01:00
Marnanel Thurman 02baeaa1f4 Thing adds Audiences for audience fields. Plus test. 2019-06-07 13:56:20 +01:00
Marnanel Thurman 1841276ae3 Thing's debug logging looks more like Audience's 2019-06-05 00:13:57 +01:00
Marnanel Thurman 51b8d7f347 new Audience model, plus tests. Not yet linked in to Thing. 2019-06-05 00:07:05 +01:00
Marnanel Thurman 63a3a82356 Sorted ACTIVITY_TYPE_CHOICES per https://code.djangoproject.com/ticket/30505 2019-06-05 00:06:23 +01:00
Marnanel Thurman 2dcc7e043f check for None before checking for type.
Thing and Actor implement __contains__.
2019-06-03 23:02:43 +01:00
Marnanel Thurman 7a57d691df Tombstones. Closes #7. 2019-05-29 12:37:51 +01:00
Marnanel Thurman fb1444e4ef Actors have an activity_form 2019-05-29 11:49:02 +01:00
Marnanel Thurman 1a9e124e57 Thing.create() takes params as params rather than as a dict, like its Django core counterparts. 2019-05-29 11:34:43 +01:00
Marnanel Thurman 03b9262402 checking for invalid remote JSON 2019-05-29 11:17:56 +01:00
Marnanel Thurman 47e0a58a22 Body of IncomingMessage is json-encoded, not Python encoded 2019-05-29 10:55:55 +01:00
Marnanel Thurman 572b4e608e Test for invalid UTF-8 2019-05-29 10:36:37 +01:00
Marnanel Thurman d93212320b Malformed JSON gets 400 2019-05-29 10:31:26 +01:00
Marnanel Thurman 2ee4b416a5 Require incoming messages to be application/activity+json or application/json 2019-05-29 10:22:00 +01:00
Marnanel Thurman 54465e537e Thing.__str___ improved, though I'm still not quite happy with it 2019-05-29 09:50:01 +01:00
Marnanel Thurman b6fc2812d5 Improved headers handling in message validation 2019-05-29 09:15:16 +01:00
Marnanel Thurman 2f5e77c85a Debug logging 2019-05-29 09:15:00 +01:00
Marnanel Thurman cb9e99a208 Follow events cause automatic Accepts if the flag is set for that.
create() can handle initial values which are lists.
2019-05-29 01:09:58 +01:00
Marnanel Thurman 3d7fd94f51 key_name().
The pk of thing is called url, not id.
2019-05-29 01:09:15 +01:00
Marnanel Thurman ddb65c42b0 export Actor 2019-05-29 01:08:57 +01:00
Marnanel Thurman a96d2a2a85 __str__() split into __str__() and __repr__(). RemoteItem param is str()ified before use. 2019-05-29 01:08:07 +01:00
Marnanel Thurman d4a1b5707c Sole inboxes were using the address of the shared inbox.
Improved debug logging about server response.
2019-05-29 01:06:53 +01:00
Marnanel Thurman 38512de494 ActorView is a specialised ThingView 2019-05-28 17:50:32 +01:00
Marnanel Thurman 31cee0ae93 More helpful error message if the param is of the wrong type 2019-05-28 17:49:51 +01:00
Marnanel Thurman 982fa47915 Add auto_follow flag (not implemented yet) 2019-05-27 21:17:29 +01:00
Marnanel Thurman 1b0b08d8ec Add the Actor model 2019-05-27 21:17:13 +01:00
Marnanel Thurman 5fd8c5f0db Anchored the regex 2019-05-25 18:42:09 +01:00
Marnanel Thurman ca306414ac fixed field name 2019-05-25 18:40:27 +01:00
Marnanel Thurman 1e32dcefe8 Read the publicKey field for an Actor to determine its public key,
since it might be local or remote.
2019-05-25 18:32:24 +01:00
Marnanel Thurman 66355d1acf Call validation properly on inbox messages 2019-05-25 18:16:47 +01:00
Marnanel Thurman 09180cc44e Unsigned messages are logged and dropped.
Keys are properties of the Actor object, not subscripted items.
(Otherwise the view might accidentally send them out!)
2019-05-25 18:14:59 +01:00
Marnanel Thurman 51a9377fda renamed actor_details to actor, since it's an actual object now 2019-05-25 18:14:36 +01:00
Marnanel Thurman 5699007838 redo kepi's migrations, since they got tangled 2019-05-25 18:13:52 +01:00
Marnanel Thurman c82429f0c2 "activity" returns the found object, not a dictionary based on it 2019-05-25 00:31:09 +01:00
Marnanel Thurman 824c082011 Partial checkin; renaming d_k.tasks to d_k.deliver now we've
split validation away from it.
2019-05-24 20:40:02 +01:00
Marnanel Thurman 4bb225c4e8 Actor class, and crypto for it, though we don't use them yet in this branch 2019-05-24 20:37:02 +01:00
Marnanel Thurman 52f3a50444 validation goes back in django_kepi.validate 2019-05-24 20:31:51 +01:00
Marnanel Thurman 745ea99255 Remove admin for django_kepi (for now, anyway) 2019-05-24 20:22:34 +01:00
Marnanel Thurman 8e7207347e rm activity_id, which is from an old design 2019-05-22 18:27:37 +01:00
Marnanel Thurman 8a77d0f774 Task tests working again, except for validation.
We'll need to store the private keys in a separate table.
2019-05-22 18:06:20 +01:00
Marnanel Thurman c6744b0999 RemoteItem made into a subclass of dict, which makes everything simpler.
The local_only param of find() made optional.
2019-05-22 17:40:23 +01:00