Commit graph

848 commits

Author SHA1 Message Date
Mouse Reeve
45c13bd76c Only get reviews when loading user data 2020-12-30 13:16:09 -08:00
Mouse Reeve
c1243b5c21 Makes outbox filter-able 2020-12-30 13:14:16 -08:00
Mouse Reeve
babc604397 Fixes outbox privacy 2020-12-30 12:41:19 -08:00
Mouse Reeve
74a25f205b Validator for username field 2020-12-28 14:14:22 -08:00
Mouse Reeve
26c0880fe4
Merge pull request #425 from mouse-reeve/import-error
Fixes goodreads import failing on every book
2020-12-27 14:45:31 -08:00
Mouse Reeve
ac261d7b1a Send connector with search result
also fix typo in get_work_from_edition_data function
2020-12-27 14:33:34 -08:00
Anton Strömkvist
97a5364b70
Fix docstring for to_reject_activity 2020-12-27 23:31:14 +01:00
Mouse Reeve
e89bfdc572 Makes registration user/localname fields more sensible 2020-12-24 11:39:57 -08:00
Mouse Reeve
a3df0847e1 Fixes celery tasks expanding data not setting many to many fields 2020-12-23 12:45:40 -08:00
Mouse Reeve
e7e90360b3 Adds model import 2020-12-22 10:28:04 -08:00
Mouse Reeve
cfa1a1b42c Remove sync fields and share fields between book and author 2020-12-21 12:17:18 -08:00
Mouse Reeve
aac264c998 Generate author_text field dynamically 2020-12-21 12:10:42 -08:00
Mouse Reeve
c4b9b82000 Use author name as a deduplication field
I feel iffy about this but openlibrary has hella duplicates
2020-12-20 13:31:11 -08:00
Mouse Reeve
79973687d5 Updates tests 2020-12-20 12:50:35 -08:00
Mouse Reeve
3597ca460c Don't let author and book remote ids get overridden 2020-12-20 12:40:20 -08:00
Mouse Reeve
23cbeab4c1 cleans up remote version of quote status 2020-12-20 12:31:39 -08:00
Mouse Reeve
60738011a2 user's name and bio field are optional
get it together, mouse
2020-12-20 12:09:19 -08:00
Mouse Reeve
a6efd51bb2 Only parse mardown on outgoing activities 2020-12-20 11:38:13 -08:00
Mouse Reeve
ef696782ab Allow markdown in html fields 2020-12-19 18:54:56 -08:00
Mouse Reeve
0c6049b81c Discard remote boosts 2020-12-18 12:38:27 -08:00
Mouse Reeve
606e93fb12 Hacky fix for serializing boost 2020-12-18 11:34:21 -08:00
Mouse Reeve
80de6079fa User p tags for pure status serializer 2020-12-18 11:00:30 -08:00
Mouse Reeve
40c4f4f5de Disable boosting private statuses 2020-12-18 09:30:08 -08:00
Mouse Reeve
6149f36c7f Fixes bug in alt text breaing serializing work 2020-12-17 13:55:31 -08:00
Mouse Reeve
d109ac0626
Merge pull request #402 from mouse-reeve/alt-text
Federate cover alt text
2020-12-17 13:22:09 -08:00
Mouse Reeve
530198adea Serialize alt text of images 2020-12-17 12:54:04 -08:00
Mouse Reeve
39dc0501a5 Make alt text a model property 2020-12-17 12:30:49 -08:00
Mouse Reeve
04ba5abf45 Fixes infinite recursion when loading books
Also fixes bug in serializing page nubmers
2020-12-17 12:02:59 -08:00
Mouse Reeve
b796686483 Adds cw field 2020-12-16 19:20:15 -08:00
Mouse Reeve
33c2f6c3b2 Merge branch 'main' into content-warnings 2020-12-16 19:14:34 -08:00
Mouse Reeve
a3c7d324d6 Sanitize incoming html 2020-12-16 16:47:23 -08:00
Mouse Reeve
d79a756813 Fixes pure status serializer 2020-12-16 15:59:42 -08:00
Mouse Reeve
ef92e562fd
Merge pull request #382 from mouse-reeve/switch-edition
Adds shelf info to book page
2020-12-16 14:58:36 -08:00
Mouse Reeve
5dbacb3524 Merge branch 'main' into switch-edition 2020-12-16 09:22:04 -08:00
Mouse Reeve
da05b99bb8 Fixes incoming shelve activity 2020-12-15 18:57:17 -08:00
Mouse Reeve
948e938040 Handles outdated Add with Book type
should be edition.
2020-12-15 18:16:33 -08:00
Mouse Reeve
710fbc949b Better username validator and remove trailing whitespace 2020-12-15 15:52:22 -08:00
Mouse Reeve
ee2121095c Separate update editon and work functions 2020-12-15 12:39:09 -08:00
Mouse Reeve
2ef4df41b4 Fixes boosts 2020-12-15 11:54:57 -08:00
Mouse Reeve
b36eaef172 Merge branch 'main' into switch-edition 2020-12-13 21:10:37 -08:00
Mouse Reeve
5c7ac46116 Fixes foreign key field setting wrong value on activity 2020-12-13 14:53:25 -08:00
Mouse Reeve
44cbf7c07f Fixes checking privacy when serializing status 2020-12-13 14:35:56 -08:00
Mouse Reeve
b6907f39e9 Creates Privacy field that handles setting to/cc 2020-12-13 13:03:17 -08:00
Mouse Reeve
c470aeb3ce Create helper function on field for settings values 2020-12-13 12:02:26 -08:00
Mouse Reeve
b67aea22fc Aggregates (de)serializable model fields 2020-12-13 11:40:46 -08:00
Mouse Reeve
957f0889aa Clean up models
removes unused function and sorts replies correctly
2020-12-13 11:15:42 -08:00
Mouse Reeve
ae435a3165 Removes sqlite support 😢
RIP, things have gotten too complicated for this I think
2020-12-12 20:11:23 -08:00
Mouse Reeve
1e01e76ac2 removes unneeded imports 2020-12-12 18:06:48 -08:00
Mouse Reeve
aacf5b7ba4 fields for content warnings 2020-12-12 18:00:39 -08:00
Mouse Reeve
ae07bbffb7 Merge branch 'main' into logo-default 2020-12-12 16:03:23 -08:00
Mouse Reeve
49979fabef More user serialization tests 2020-12-12 15:00:20 -08:00
Mouse Reeve
7c43fa1f7c Adds deduplication fields 2020-12-12 13:39:55 -08:00
Mouse Reeve
31a407d74a Use name field only for author name
It feels janky to remove a more granular name designation, but all these
first/last name fields were algorithmically populated by a dubious
process of splitting the name by a space character. If it makes sense to
have first/last name fields, it should be re-added with some
consideration.
2020-12-12 09:53:21 -08:00
Mouse Reeve
801b6c3a77 Merge branch 'main' into follow-remote-ids 2020-12-12 09:34:54 -08:00
Mouse Reeve
716068474e Merge branch 'main' into switch-edition 2020-12-11 16:59:59 -08:00
Mouse Reeve
2d7f8ada61 Functional switch editions button 2020-12-11 16:57:38 -08:00
Mouse Reeve
117d243577 Expand site settings and add footer 2020-12-11 12:31:02 -08:00
Mouse Reeve
7204068d2a Removes unnecessary override of field_from_activity on foreign key 2020-12-09 13:35:36 -08:00
Mouse Reeve
ef2a07884f Throws validation error when remote_id is None 2020-12-09 11:57:29 -08:00
Mouse Reeve
cc42e9d149 Asyncronously set related fields 2020-12-08 09:43:12 -08:00
Mouse Reeve
4d4ee8b8c3 Starts getting reverse fields working for deserialization
also fixes the fields on the image model and runs a long overdue
migration
2020-12-07 18:28:42 -08:00
Mouse Reeve
d0c1a68df6 Patches celery call in field tests and fixes tag field 2020-12-07 13:39:05 -08:00
Mouse Reeve
0a576c325c Fixes deserializing tags of varied types 2020-12-07 13:16:42 -08:00
Mouse Reeve
4599df752d Adds tests for many to many field deserialization 2020-12-07 09:31:12 -08:00
Mouse Reeve
69bb3f2751 Fixes validation error in many to many field deserializer 2020-12-07 09:14:30 -08:00
Mouse Reeve
7a90aa8f6c Start moving serializing from to_model to fields 2020-12-05 21:33:48 -08:00
Mouse Reeve
8a900689d3 Generalizes link format in many to many field 2020-12-04 17:57:14 -08:00
Mouse Reeve
800ddf2a6b fixes inconsistency in to_undo activity helper 2020-12-04 11:53:50 -08:00
Mouse Reeve
39307ce1cd Fixes remote_id on Update activities 2020-12-04 11:48:34 -08:00
Mouse Reeve
2e4aff90a3 Fixes signing Create activities
and some tests for the base_model
2020-12-04 11:29:38 -08:00
Mouse Reeve
ae8d0e1974 Adds sort order for outbox 2020-12-04 08:07:47 -08:00
Mouse Reeve
d92fb53333 Handle absent remote ids
it oughtent get to this state, but...
2020-12-03 17:23:08 -08:00
Mouse Reeve
de7e64932a Fixes name of book field on status 2020-12-03 13:15:05 -08:00
Mouse Reeve
3a75127301 Removes half-baked field serializers 2020-12-03 13:00:04 -08:00
Mouse Reeve
77a1fc26f1 Save key pair when creating new User 2020-12-03 12:45:01 -08:00
Mouse Reeve
a85043b351 Updates to_model to use fields 2020-12-03 12:35:57 -08:00
Mouse Reeve
fee5846aa8 Fixes generating new key paris for user
and the broadcast test
2020-11-30 19:33:50 -08:00
Mouse Reeve
eb6206252d cleans up ordered collection mixin 2020-11-30 19:24:31 -08:00
Mouse Reeve
1ec2f20486 avoid naming clash is to_activity for field vs model 2020-11-30 14:54:45 -08:00
Mouse Reeve
77aead722d serialize book and author models 2020-11-30 14:40:26 -08:00
Mouse Reeve
3966c84e08 Updates status model and serializer 2020-11-30 14:24:31 -08:00
Mouse Reeve
8bc0a57bd4 Remove outdated user fields 2020-11-30 11:40:04 -08:00
Mouse Reeve
74a58e5267 Use custom model fields in user model 2020-11-30 10:32:29 -08:00
Mouse Reeve
205fa0d465 set user's remote server in a celery task 2020-11-29 10:08:19 -08:00
Mouse Reeve
34e8fb3e5c style fix and removing stray print statement 2020-11-28 18:28:09 -08:00
Mouse Reeve
dfd730757d handle unset default editions 2020-11-28 17:42:09 -08:00
Mouse Reeve
72c7829bab Preserve remote_id syntax for authors and books 2020-11-28 17:29:03 -08:00
Mouse Reeve
7ed2e310c0 User origin ids for books and authors 2020-11-28 13:40:09 -08:00
Mouse Reeve
0a8ef98854 use localized remote_ids for books 2020-11-28 13:14:18 -08:00
Mouse Reeve
421a13fda0 automatically load authors and editions 2020-11-28 13:00:04 -08:00
Mouse Reeve
b0202eb8e8 Remove special remote user handling code
also fixes date parsing
2020-11-28 11:48:17 -08:00
Joel Bradshaw
7fadbeeb55 Merge branch 'main' into progress_update 2020-11-28 11:06:01 -08:00
Mouse Reeve
fd7e476c9b refactors tag model to fit ordered collection structure 2020-11-28 11:04:54 -08:00
Mouse Reeve
a93b5cf5bc Use remote_id resolver to load books, user 2020-11-28 10:18:24 -08:00
Joel Bradshaw
500f05266a Add option for progress percentage
And rework display on book page as well
2020-11-28 00:07:04 -08:00
Mouse Reeve
ebb82287c2 First pass at recursively resolving foreign keys 2020-11-27 22:10:38 -08:00
Mouse Reeve
86cbb3edbd Merge branch 'main' into activitypub-cleanup 2020-11-27 20:13:32 -08:00
Mouse Reeve
4626d94ab9 handle image attachments recursively 2020-11-27 20:11:46 -08:00
Mouse Reeve
2480690378 Automatically handle image fields in model serializer 2020-11-27 18:26:07 -08:00
Joel Bradshaw
9ed7d23000 Test updating a progress
Also remove spurious whitespace change
2020-11-27 18:19:12 -08:00
Mouse Reeve
624ff71a11 Makes attachment Images a serializable class 2020-11-27 17:20:01 -08:00
Joel Bradshaw
3cb28273c4 Merge branch 'main' into progress_update 2020-11-27 17:05:54 -08:00
Joel Bradshaw
d8b2afff3d Replace naive datetimes with aware ones 2020-11-27 16:35:03 -08:00
Joel Bradshaw
85026b837c Merge branch 'main' into progress_update 2020-11-27 15:52:55 -08:00
Mouse Reeve
69a6644011 Corrects activitypub fields to camelcase in Book 2020-11-27 15:34:47 -08:00
Mouse Reeve
7b6035898b Serialize activitypub authors from data in connector 2020-11-27 14:54:08 -08:00
Joel Bradshaw
692aa08364 Remove unneeded class, wrap line 2020-11-25 23:11:30 -08:00
Joel Bradshaw
64fb88cc10 ProgressUpdate doesn't need its own date field
Just use the base model's created_date
2020-11-25 23:03:32 -08:00
Joel Bradshaw
090cf2aea7 Make inline progress form actually work 2020-11-25 23:03:27 -08:00
Mouse Reeve
0ec40ae748 Merge branch 'main' into refactor-bookwyrm-connector 2020-11-25 11:21:13 -08:00
Mouse Reeve
aed360d07e Fixes serializer handling default dataclass fields 2020-11-25 11:16:01 -08:00
Mouse Reeve
847014720e Refactors bookwyrm connector to use activitypub serializer 2020-11-24 16:05:00 -08:00
Mouse Reeve
3dc0fc7e8f Merge branch 'main' into edit-books-erros 2020-11-24 13:40:53 -08:00
Mouse Reeve
9bbedc5d9a Fixes field causing form invalidation when editing books 2020-11-24 13:25:58 -08:00
Mouse Reeve
ff5a0f7bc2 Adds alt text to status images 2020-11-24 11:44:13 -08:00
Mouse Reeve
ad7ce6595b Receive and save incoming images 2020-11-24 11:25:07 -08:00
Mouse Reeve
88e4705717 Use attachment database table 2020-11-23 20:42:05 -08:00
Mouse Reeve
e2debd855c Convert activitypub Image into model ImageField 2020-11-23 13:43:46 -08:00
Mouse Reeve
5526b4773e Formatter for converting model images to AP Images
Replaces reduntant properties on user and book models
2020-11-23 13:07:26 -08:00
Mouse Reeve
dab0aeffb2 Adds image attachment field to status model 2020-11-23 12:48:41 -08:00
Mouse Reeve
72b4c150f6 (De)serializers for tag fields 2020-11-20 09:28:54 -08:00
Mouse Reeve
73e41d568e Serialize model user and book tags to activitypub 2020-11-20 08:14:16 -08:00
Joel Bradshaw
00b8608a50 Make ProgressUpdate attached to a readthrough 2020-11-16 23:53:17 -08:00
Joel Bradshaw
13229ea937 Add progress updates as their own table 2020-11-16 23:29:32 -08:00
Joel Bradshaw
7ffc3114a6 Add display and form for existing pages_read
Commented out the new update type because it was breaking and I don't
need it quite yet
2020-11-16 22:47:55 -08:00
Joel Bradshaw
3beebe4727 Add initial draft of progress update 2020-11-16 22:33:04 -08:00
Mouse Reeve
28e1c9525c tweaks search rankings for better results 2020-11-13 11:03:39 -08:00
Mouse Reeve
86504989b4 fixes import matching with local books 2020-11-13 09:59:57 -08:00
Mouse Reeve
e3a803b907 Allow import retry 2020-11-13 09:02:41 -08:00
Mouse Reeve
0e13616e73 lowercase shelf identifier 2020-11-10 14:56:53 -08:00
Mouse Reeve
408ca6609c Let users create shelves 2020-11-10 14:52:04 -08:00
Mouse Reeve
ab0f9230c7 Adds privacy setting to shelves 2020-11-10 13:39:58 -08:00
Mouse Reeve
20395ff2ec Corrects serialization of Add activity 2020-11-07 16:11:12 -08:00
Mouse Reeve
1ffa21b67d Fixes suggested books and serialize covers in status 2020-11-07 10:56:24 -08:00
Mouse Reeve
ce4c02936d
Merge pull request #293 from mouse-reeve/tagging
fixes tagging
2020-11-06 15:46:45 -08:00
Mouse Reeve
d320ba1ff9 Don't put deleted statuses in outbox 2020-11-06 14:53:27 -08:00
Mouse Reeve
ad25e75282 fixes tagging 2020-11-06 14:25:48 -08:00
Mouse Reeve
152343d251 Boost and unboost federation fixes 2020-11-04 16:28:32 -08:00
Mouse Reeve
21c0a0163a Deduplicate incoming Create notes 2020-11-04 15:23:52 -08:00
Mouse Reeve
722f44ac9f actual fix for status deserialization 2020-11-04 14:19:06 -08:00
Mouse Reeve
4bde389d6b Fixes matching activities to models 2020-11-04 14:13:34 -08:00
Mouse Reeve
61ac7b1426 Removes stray paren from quoation pure serializer 2020-11-04 14:01:28 -08:00
Mouse Reeve
19a9136ebb Correctly serialize edition ids in work page 2020-11-04 13:31:44 -08:00
Mouse Reeve
53a358f2fd Activitypub serializable edition list 2020-11-04 12:55:00 -08:00
Mouse Reeve
ff96835c2a Migrate default edition field to work model
Fixes #281
2020-11-04 11:27:49 -08:00
Mouse Reeve
0c73a1f42e updates test data and serialization 2020-11-02 16:24:56 -08:00
Mouse Reeve
5501318f95 Incoming shelve activities 2020-11-02 15:10:41 -08:00
Mouse Reeve
4cfded3d19 Fixes activitypub serializer local ids 2020-11-02 15:01:28 -08:00
Mouse Reeve
c5a215b11d Fixes serialization of parent work remote_id 2020-11-02 14:13:24 -08:00
Mouse Reeve
917c97daba
Merge pull request #273 from mouse-reeve/follow-reqest-dupe
Prevent creating follow requests when there's already a follow
2020-11-02 11:52:36 -08:00
Mouse Reeve
ad3d492fcc Prevent creating follow requests when there's already a follow
Fixes #90
2020-11-01 13:14:56 -08:00
Mouse Reeve
2b0b88802b Fixes weirdness in handling avatars
- urls weren't serialized correctly for activitypub
- the filename shouldn't have been preserved as-is
2020-11-01 12:36:56 -08:00
Mouse Reeve
a2692f92d2 Fixes logic issues in saving user model 2020-11-01 12:07:51 -08:00
Mouse Reeve
8ae9519bf2
Merge branch 'main' into mention_users 2020-11-01 11:09:16 -08:00
Mouse Reeve
0cf1838276 Mention and notify users when creating a status 2020-11-01 10:13:51 -08:00
Mouse Reeve
4e02a8df99 Track when user was last active
fixes #10
2020-11-01 09:20:35 -08:00
Mouse Reeve
c334451216 code cleanup 2020-11-01 08:57:43 -08:00
Mouse Reeve
a7d8376b6a Small activitypub serialization issues 2020-10-31 13:06:22 -07:00
Mouse Reeve
02265b1e49 Show federated servers and connectors in admin 2020-10-31 12:45:39 -07:00
Mouse Reeve
fd76d1a585
Merge pull request #263 from mouse-reeve/delete
Send Delete activity, not Tombstone on deletion
2020-10-31 11:05:07 -07:00
Mouse Reeve
301a452d9f Send Delete activity, not Tombstone on deletion 2020-10-31 11:04:19 -07:00
Mouse Reeve
2cdd281e98 Prevent error on serializing book cover 2020-10-31 10:50:20 -07:00
Mouse Reeve
0393d81230 Fixes loading covers and authors 2020-10-30 17:18:25 -07:00
Mouse Reeve
203e526a83 Fixes loading remote books
- saves remote_id correctly
- loads remote books for incoming statuses
2020-10-30 17:04:10 -07:00
Mouse Reeve
a17f54e457 Fixes federation bugs 2020-10-30 15:22:20 -07:00
Mouse Reeve
c9354a5ad1 Make federated server blankable 2020-10-30 13:11:13 -07:00
Mouse Reeve
3ca50a7573 safer isbn normalization 2020-10-30 12:57:31 -07:00
Mouse Reeve
3fc1f46897 Handle dashes in isbns 2020-10-30 12:43:02 -07:00
Mouse Reeve
0b0de12968 Allow users to set privacy on imported reviews
or not import them at all. Fixes #252
2020-10-30 11:21:02 -07:00
Mouse Reeve
45f39fab48 upping confidence for import search
better to query OL than to get the wrong book locally
2020-10-29 23:28:23 -07:00
Mouse Reeve
7ce0890a41 Stop assuming every book is Hamlet 2020-10-29 15:30:53 -07:00
Mouse Reeve
a46d7f5dc7 Change how goodread import writes reviews
- adds published date
 - broadcasts review imports
 - completes review and shelve actions as it goes
 - some small connector fixes

 fixes #247
2020-10-29 14:31:06 -07:00
Mouse Reeve
7febcec229 convert between ibsn 10 and 13 2020-10-29 12:32:37 -07:00
Mouse Reeve
39b9fe8f4a Fixes serializing reviews with no rating 2020-10-26 15:10:32 -07:00
Mouse Reeve
6243cf0e4a uses enum for post privacy database field 2020-10-26 14:33:02 -07:00
Mouse Reeve
1cc0c14f86 Deleted date should be null-able
Fixes #240
2020-10-20 18:50:39 -07:00
Mouse Reeve
1672c699e5
Merge pull request #239 from mouse-reeve/deletion
Deletion
2020-10-16 17:03:34 -07:00
Mouse Reeve
7f579ffefa Read incoming deletion activities 2020-10-16 17:00:10 -07:00
Mouse Reeve
2a0af0138d Uses activitypub mixin in relationship models
plus tests
2020-10-16 10:37:33 -07:00
Mouse Reeve
704e1092c4 Delete statuses 2020-10-08 12:32:45 -07:00
Mouse Reeve
94fc365a52 Allow logo upload 2020-10-05 16:07:53 -07:00
Mouse Reeve
0a9809e6b3 Email should *not* be unique
turns out this is jank-city when you try to federate
2020-10-05 14:48:26 -07:00
Mouse Reeve
93738bb48c Uses fixed string as site name
The domain is *better* but it was causing the makemigrations to trigger
whenever the domain name in .env changes, which is a real hassle with
a free version of ngrok
2020-10-05 14:42:15 -07:00
Mouse Reeve
c77cb38c83 Icon url serialization needs schema 2020-10-05 14:34:16 -07:00
Mouse Reeve
8433d8bf41 Make user email addresses unique 2020-10-02 14:56:37 -07:00
Mouse Reeve
d4b18678bd Forgot password flow 2020-10-02 13:32:19 -07:00
Mouse Reeve
6b5246f06a
Merge pull request #209 from mouse-reeve/connector-errors
Raise errors when connectors fail
2020-10-01 08:29:39 -07:00
Mouse Reeve
4fda5c8e22
Merge pull request #206 from mouse-reeve/ui-overhaul
Ui overhaul
2020-09-30 17:15:22 -07:00
Mouse Reeve
f72d59955e Raise errors when connectors fail 2020-09-30 10:37:29 -07:00
Mouse Reeve
69ef967050 Include custom serializers on all relationships 2020-09-29 13:19:57 -07:00
Mouse Reeve
8b972a577e Fixes article serialization mappings in review 2020-09-29 12:00:10 -07:00
Mouse Reeve
3eeeb78bd7 Fixes UI for statuses 2020-09-28 18:25:58 -07:00
Mouse Reeve
a4d1985f86 Fixes star rating displays 2020-09-28 18:25:58 -07:00
Mouse Reeve
39931e2e69 Adds status type for app-generated statuses 2020-09-28 17:26:15 -07:00
Mouse Reeve
425da16fd6 Fixes linter issues 2020-09-21 10:25:26 -07:00
Mouse Reeve
3aa9c3accf Renames bookwyrm base model 2020-09-21 08:16:34 -07:00
Mouse Reeve
c7883cd615 Updates migrations
To get the app working again I ran resetdb, let it crash in initdb,
then ran the migration, then re-ran initdb
2020-09-21 08:10:37 -07:00
Mouse Reeve
f77c156733 rename main code directory 2020-09-17 13:30:54 -07:00