Commit graph

6869 commits

Author SHA1 Message Date
Ross Chapman
a4172214d1 Updates size of filters panel label 2023-12-15 13:17:23 -08:00
Ross Chapman
fb36958444 Removes unused variable 2023-12-14 13:47:51 -08:00
Ross Chapman
44d21d1ba4 Updates view logic 2023-12-14 13:04:45 -08:00
Ross Chapman
bd3acdbf31 Puts string in template 2023-12-14 12:33:27 -08:00
Ross Chapman
4a4046a704 Shows message if empty and renames "search" to "filter" 2023-12-14 11:30:01 -08:00
Ross Chapman
7cca199a11 Merge branch 'main' into let-a-user-search-within-their-books 2023-12-14 10:25:05 -08:00
Hugh Rundle
7fcadb1d4d
fix upsert_statuses
- remote_id is now updated on import of statuses
- statuses cannot be imported unless source has target listed in alsoKnownAs or movedTo
- add alert boxes to import and export screens advising of the above
- update tests accordingly
2023-12-13 20:55:38 +11:00
Mouse Reeve
5c0e159d43 Adds Ukranian locale and updates locales 2023-12-12 15:42:40 -08:00
Mouse Reeve
8bb5a664c5 Fixes incorrect translation and display of moved user page 2023-12-11 20:12:14 -08:00
Mouse Reeve
e032e5491d
Merge pull request #3144 from villasv/patch-1
Update page formatter on ordered collection
2023-12-11 19:54:24 -08:00
Mouse Reeve
4bfa1ca5b8
Merge pull request #3124 from hughrun/softblock
Allow removing followers and fix follow rejections
2023-12-11 19:49:45 -08:00
Adeodato Simó
13374917f3
Make get_representative() atomic 2023-12-11 20:48:32 -03:00
Mouse Reeve
799f842115
Merge pull request #3146 from dato/setup_test_data
Faster tests with setUpTestData
2023-12-11 15:45:40 -08:00
Adeodato Simó
aa67f598dd
Explicitly set doctype to html5 when invoking tidy_document()
Many tests break without this on newer versions of html-tidy.
2023-12-11 19:40:48 -03:00
Adeodato Simó
9d502f5ee2
Use setUpTestData() to speed up tests
Pylint's `bad-classmethod-argument` is disabled for each definition
to avoid rewriting the method bodies just to rename `self` → `cls`.
This can be done gradually, as the setUpTestData methods are modified
along the way.
2023-12-11 19:40:30 -03:00
Mouse Reeve
198c0037c6
Merge pull request #3121 from hughrun/413
Display custom page on 413 errors
2023-12-09 08:31:25 -08:00
Mouse Reeve
e5d292919c
Merge pull request #3143 from dato/test_ordered_collection_use_bulk_create
Use bulk_create to test ordered collections
2023-12-09 08:30:23 -08:00
Mouse Reeve
029b438355 Clarify import/export of book vs user
I think this wording is a little clearer
2023-12-09 08:18:31 -08:00
Mouse Reeve
dd72013225 Small fixes for notifications
Adds a link in the text of the notification, and fixes references to
notification type in the model
2023-12-09 08:09:22 -08:00
Ross Chapman
aac8aa1adf Fixes formatting 2023-12-06 11:36:15 -08:00
Ross Chapman
0f6e567b21 Clean up 2023-12-05 19:49:38 -08:00
Ross Chapman
c65e165aeb Hides filter if shelf empty 2023-12-05 19:37:29 -08:00
Ross Chapman
979162da10 Uses filters, fixes for any shelf 2023-12-05 19:33:59 -08:00
Ross Chapman
b27ed847d5 Fixes result set passed to template 2023-12-05 16:36:58 -08:00
Ross Chapman
d93da4e86d Checkpoint 2023-12-05 15:46:08 -08:00
Victor Villas
8fd05004ea
Update page formatter on ordered collection 2023-12-03 20:03:33 -08:00
Adeodato Simó
5384e4c470
Use bulk_create to test ordered collections 2023-11-30 15:58:48 -03:00
Matt Lehrer
7f55495287 Merge branch 'move-ratings-and-reviews-when-switching-editions' of github.com:mattlehrer/bookwyrm into move-ratings-and-reviews-when-switching-editions 2023-11-30 11:15:33 +01:00
Matt Lehrer
31a78a5c9e linted 2023-11-30 11:13:11 +01:00
Mouse Reeve
193a36390b
Merge pull request #3083 from hughrun/file-resubmit
use bw-file-resubmit to retain images during validation checks
2023-11-29 15:36:33 -08:00
Adeodato Simó
d6eb390cee
Add test that forces book_authors_search_vector_trigger to execute 2023-11-26 15:59:17 -03:00
Adeodato Simó
b5805accac
Minor improvements to bookwyrm_book trigger code
- do not COALESCE columns that cannot be NULL
- do not bring bookwyrm_book to author names JOIN
- add comments documenting the four steps
2023-11-25 21:49:15 -03:00
Adeodato Simó
bbfbd1e97a
Add tests for trigger code (i.e. how search_vector is computed) 2023-11-25 20:54:49 -03:00
Adeodato Simó
9bcb5b80ea
Further simplify bookwyrm_author trigger 2023-11-25 18:13:40 -03:00
Adeodato Simó
8df408e07e
Define search_vector_trigger via Book.Meta.triggers 2023-11-25 17:02:54 -03:00
Adeodato Simó
bcb3a343d4
Fix JOIN in author_search_vector_trigger, add missing WHERE clause 2023-11-25 16:23:21 -03:00
Adeodato Simó
416a6caf2d
Define author_search_vector_trigger via Author.Meta.triggers
Previously, triggers lived only in a particular migration file. With
this change, code for the triggers resides in the model, and their
lifecycle is managed through normal Django migrations.
2023-11-25 16:17:51 -03:00
Adeodato Simó
44ef928c3c
Alter object row IDs to force test failure in original code 2023-11-25 16:11:01 -03:00
Adeodato Simó
e4d688665c
Remove index for author.search_vector, which is never used 2023-11-24 22:43:12 -03:00
Adeodato Simó
0299f2e235
Add functional tests for search_vector triggers
As metadata changes, search continues to work.
2023-11-24 22:28:41 -03:00
Adeodato Simó
c997d2d44a
Add test to assert distinct() clause
Also, tweak other `search_title_author()` tests to verify ordering by
edition rank.
2023-11-24 02:28:27 -03:00
Adeodato Simó
e322d3cae1
Do not create a set for already-distinct query result 2023-11-23 23:01:56 -03:00
Hugh Rundle
99a9a64708
notification type migration after merge 2023-11-24 06:50:32 +11:00
Hugh Rundle
72c1c6ee3d
merge migrations and lint 2023-11-22 21:29:54 +11:00
Hugh Rundle
0276c15948
Merge branch 'main' into user-migration 2023-11-22 21:00:04 +11:00
Hugh Rundle
c6dea2523c
Merge branch 'main' into softblock 2023-11-22 20:06:02 +11:00
Hugh Rundle
6ba7418121
improve tests and minor cleanup 2023-11-22 20:04:17 +11:00
Hugh Rundle
8ed4a997f8
add comment back to bookwyrm.js 2023-11-21 20:20:11 +11:00
Hugh Rundle
2c9ebba5d7
fix reject PR
- rationalise activitypub.Reject and fix model being undefined
- fix not being able to follow users from followers page: 'delete' option now in user_options dropdown
- revert bookwyrm.js
- fix delete_follow_request deleting instead of rejecting
- add user id to 'remove-follow' path
2023-11-21 20:13:56 +11:00
Mouse Reeve
7c2de92df3
Merge pull request #3128 from bookwyrm-social/test-themes
Give admins option to test if a theme loads correctly
2023-11-20 12:26:09 -08:00
Mouse Reeve
b6325da9ab
Update bookwyrm/tests/views/admin/test_themes.py
Co-authored-by: Adeodato Simó <73768+dato@users.noreply.github.com>
2023-11-20 10:37:12 -08:00
Mouse Reeve
179dbd75aa Adds tests 2023-11-20 10:23:59 -08:00
Mouse Reeve
b022b5a1b7
Merge pull request #3120 from hughrun/permission-required
403 handler
2023-11-20 10:06:24 -08:00
Mouse Reeve
c2742b4d80 Updates migrations 2023-11-20 10:02:49 -08:00
Mouse Reeve
cfe42305be Merge branch 'main' into test-themes 2023-11-20 10:02:23 -08:00
Mouse Reeve
d828ba0bc6 Give admins option to test if a theme loads correctly
If a theme is uploaded incorrectly or has errors in it, users can still
select the theme but it will cause a 500 error on every page, making the
app unusable and also making it impossible for them to switch to a
functional theme.

A better fix would be to fail gracefully, but in lieu of that, this will
at least let admins confirm if a theme is broken safely.
2023-11-20 09:56:51 -08:00
Matt Lehrer
6933f70af3
Merge branch 'bookwyrm-social:main' into move-ratings-and-reviews-when-switching-editions 2023-11-20 09:31:45 +01:00
Mouse Reeve
d94b27b723
Merge branch 'main' into user-migration 2023-11-19 19:18:22 -08:00
Mouse Reeve
3d9f339bd5
Merge pull request #3059 from dato/stable_dates_v2
Partial, stable dates with automatic precision field
2023-11-19 19:17:49 -08:00
Mouse Reeve
1d5cc83347
Merge branch 'main' into permission-required 2023-11-19 19:12:32 -08:00
Mouse Reeve
d8018cb937
Merge pull request #3125 from hughrun/instance-actor
hide instance actor from users
2023-11-19 19:11:17 -08:00
Hugh Rundle
446854ccf0
fix saved list pagination
The SavedLists view was passing through an incorrect "path" value. Now it's not.
2023-11-20 12:45:39 +11:00
Hugh Rundle
f011f2bce9
hide instance actor from users
The Instance Actor is required for signing http GET requests but is not a "user" and should not be otherwise interacted with.

- hides instance actor profile page, returning a 404
- excludes instance actor from search results and suggestions including in Getting Started
- replaces link to user profile in user admin page with a brief message box
- replaces panel in user admin page that allows for user to be suspended or removed with a message explaining why that is a very bad idea

fixes #3119
2023-11-20 12:17:52 +11:00
Adeodato Simó
ff1f239a57
Use typing_extensions.Self instead of TypeVar 2023-11-19 15:10:14 -03:00
Adeodato Simó
6aaff28c13
Accept argument in naturalday_partial, downcast format if necessary 2023-11-19 15:10:14 -03:00
Adeodato Simó
aaea1b1b9e
Add tests for naturalday_partial tag 2023-11-19 15:10:13 -03:00
Adeodato Simó
8dbfba17d6
Merge from 'main' into stable_dates 2023-11-19 15:09:52 -03:00
Hugh Rundle
2ba0e3d7ff
Allow removing followers and fix follow rejections
* adds the ability to remove a user from your followers list
* fixes verbs.Reject to process reject activities for previously accepted follows in both directions

fixes #2635
2023-11-19 20:03:48 +11:00
Hugh Rundle
a7fcd898c2
middleware for displaying 413 page
When a RequestDataTooBig exception is thrown, users are largely in the dark about what happened and how it can be fixed.
This commit resolves this by inserting middleware to redirect the request to a custom 413 error page.

This exception is thrown when DATA_UPLOAD_MAX_MEMORY_SIZE is exceeded. The default value is 2.5MB.

Fixes #2340
Fixes #2633
2023-11-18 22:10:36 +11:00
Hugh Rundle
97757fa1ee
fix blocktrans 2023-11-18 15:58:01 +11:00
Hugh Rundle
a56ba0ce1c
always return 403 to POST requests
- POST requests need to receive a 403 error code
- minor wording updates
2023-11-18 13:41:52 +11:00
Hugh Rundle
8ddafafa84
make naming consistent 2023-11-18 12:40:36 +11:00
Hugh Rundle
d620bd7350
add handler for 403s
fixes #3104
2023-11-18 12:36:03 +11:00
Matt Lehrer
f4da9fbf34 remove unnecessary loop.
ReviewRatings are a subclass and are included in the models.Review block
2023-11-16 20:37:46 +01:00
Matt Lehrer
bf81192d73
Merge branch 'main' into move-ratings-and-reviews-when-switching-editions 2023-11-16 10:49:05 +01:00
Matt Lehrer
bd920a4630 move reviews to new edition 2023-11-16 10:38:45 +01:00
Matt Lehrer
7684101f15 move ratings to new edition 2023-11-16 10:38:41 +01:00
Mouse Reeve
1a7a843dea Re-creates migrations and removes failing test
I think the test was failing because it was extremely brittle, not
because of anything wrong with the code itself.
2023-11-15 17:08:15 -08:00
Mouse Reeve
62f985edb8 Merge branch 'main' into user-migration 2023-11-15 16:46:18 -08:00
Hugh Rundle
54ec5e2ae0
Fix migrations properly (#3116)
* Revert "fix migrations and linting"
This reverts commit 53e410627f.
* really fix migrations
2023-11-15 19:54:16 +11:00
Adeodato Simó
01d4381898
Create notifications for incoming invite requests
Closes: #2066
2023-11-14 07:09:04 -03:00
Adeodato Simó
b81170c149
Add missing migration from #3099 2023-11-13 19:56:00 -03:00
Hugh Rundle
bbc78f03ae
fix DB migrations (#3111)
fix migrations and linting
2023-11-14 07:21:27 +11:00
Hugh Rundle
d5762f1d52
Merge branch 'main' into user-migration 2023-11-13 21:17:07 +11:00
Hugh Rundle
891b72c79c
update user export file to use ActivityPub objects where possible. (#3109)
* add more context to user export page
* fix BookData fields wrong for files
* use to_activity and to_model where possible
* fixes for import and export
- use AP JSON where possible
- minor template wording updates
* import fixes and updates tests
* minor cleanup
* remove todo for mastodon
2023-11-13 21:14:03 +11:00
Hugh Rundle
1bedcdaebd
Merge branch 'main' into file-resubmit 2023-11-11 13:14:52 +11:00
Hugh Rundle
f3fc5f6179
add file_resubmit to DUMMY caches settings 2023-11-11 12:45:04 +11:00
Adeodato Simó
99a9dbe5f4
Create NotificationType as class, not through API
This way, we need not list every value again to create the enum.

N.B.: enum values are now accessed as `models.NotificationType.FOO`,
instead of `models.Notification.FOO`.
2023-11-09 22:43:36 -03:00
Adeodato Simó
be9d92b1c2
Remove last references to "seal" in partial_date.py and migration 2023-11-09 14:00:45 -03:00
Adeodato Simó
edfa6b18a1
Rename utils.sealed_date module (and tests) to utils.partial_date 2023-11-09 14:00:44 -03:00
Adeodato Simó
fa80aa54a9
SealedDate renames, pt. 2
• SealedDate -> PartialDate
• MonthSeal  -> MonthParts
• YearSeal   -> YearParts
2023-11-09 14:00:44 -03:00
Adeodato Simó
0e4c5ed439
SealedDate renames, pt. 1
• SealedDateField      -> PartialDateModel
• SealedDateFormField  -> PartialDateFormField
• SealedDateDescriptor -> PartialDateDescriptor
2023-11-09 14:00:44 -03:00
Adeodato Simó
c120fa8c87
Rename: templatetags/{sealed_dates => date_ext}.py 2023-11-09 14:00:44 -03:00
Adeodato Simó
2bb7652dfe
Update partial date migration to latest main 2023-11-09 14:00:22 -03:00
Adeodato Simó
e928027e16
Merge from main for up-to-date migrations 2023-11-09 14:00:14 -03:00
Adeodato Simó
dccac11527
PartialDateField: allow incoming dates without timezone 2023-11-09 13:04:09 -03:00
Mouse Reeve
44b14f4933 Fixes workflow errors 2023-11-08 16:00:10 -08:00
Mouse Reeve
0bb4b0d71d Changes to how images are serialized
I'm just going to see if any tests fail?
2023-11-08 15:24:47 -08:00
Hugh Rundle
2248206a66
fix missing types in BookData file fields
activitypub.BookData includes fields for 'files' and 'fileLinks'.
This is a problem because BookData is inherited by Book and Author, neither of which have 'files' as a field in the main model.
Additionally, Author doesn't have a value for 'file_links'.
When serializing to JSON, BookData therefore throws 'TypeError: Object of type _MISSING_TYPE is not JSON serializable'

This fixes the problem by removing links and moving fileLinks to activitypub.Book.
2023-11-08 18:30:49 +11:00
Hugh Rundle
0a5e1048ce
Add more info to user export page (#3093)
- match page title to menu
- change description on IMPORT page from 'readthroughs' to 'reading history'
- provide more information on export page about what is and is not included.
2023-11-07 12:09:06 +11:00
Mouse Reeve
9ddd631549
Merge pull request #3089 from bookwyrm-social/notification-and-download-links
UI changes for notification and download link in import/export flow
2023-11-06 16:31:09 -08:00
Hugh Rundle
282f7dd8d6
show filesize on user downloads page
- add column to user download page to display filesize
- adds a filter to display file sizes
- don't download the user downloads page from notifications ;)
2023-11-07 11:04:11 +11:00
Mouse Reeve
ee88c3b914
Merge pull request #3081 from bookwyrm-social/handle-isbn-error
Fix error produced when an unexpected ISBN format is used
2023-11-06 11:06:46 -08:00
Mouse Reeve
8663e204c7
Merge pull request #3079 from bookwyrm-social/deleted_user_follow_request
Don't show notification for user follow request if the user is inactive
2023-11-06 11:05:50 -08:00
Mouse Reeve
e7a1572450
Merge pull request #3086 from bookwyrm-social/user-deletion
Erase user data and statuses on account deletion
2023-11-06 09:49:06 -08:00
Mouse Reeve
3f038b4d67 Moves if to the right place 2023-11-06 09:42:58 -08:00
Mouse Reeve
06d822d9e0 Alternative format for user import guide 2023-11-06 09:35:04 -08:00
Mouse Reeve
85d1760b97 Changes recent exports table
I thought both dates seemed less necessary (happy to be told otherwise)
and the download link should be more explicit
2023-11-06 08:41:36 -08:00
Mouse Reeve
716e64de68 Changes notification links for user import/export
I found it unexpected that the export notification linked me directly to
the file, and wanted the import link to lead me to the import page
2023-11-06 08:27:30 -08:00
Hugh Rundle
d34b70cb7b
remove pointless viewer_aware 2023-11-06 16:01:34 +11:00
Mouse Reeve
ee6e3ed7eb Adds a database field for is_deleted on user 2023-11-05 20:28:23 -08:00
Hugh Rundle
2d185dfb8a
remove unnecessary test data files 2023-11-06 14:51:52 +11:00
Mouse Reeve
27d99a0094 Removes failsafe that was overzealous 2023-11-05 19:47:32 -08:00
Hugh Rundle
93a32f4e15
update import/export user templates
- always explain what export file can be used for
- provide more information about overwrite vs upsert when importing
2023-11-06 14:40:19 +11:00
Hugh Rundle
d2f06e804f
update references to bookwyrm models in export job 2023-11-06 12:07:40 +11:00
Hugh Rundle
a93519ec3e
Merge pull request #3027 from dato/find_links_wrapped_punct
Fix parsing of punctuation in format_links()

fixes #2993  
fixes #3049
2023-11-06 09:42:57 +11:00
Hugh Rundle
1190ea7e69
Merge pull request #3078 from bookwyrm-social/tour-fixes
Update tour to reflect changes in #2201
2023-11-06 09:20:44 +11:00
Mouse Reeve
c17a2ec55b Creates snippet for user tag in admin view
The existing display wasn't showing the correct colors and was repeating
code unnecessarily
2023-11-05 10:18:04 -08:00
Mouse Reeve
d3668e413d Removes updates fields that was causing problems 2023-11-05 09:59:49 -08:00
Mouse Reeve
f353b49d36 Another linting issues 2023-11-05 09:53:57 -08:00
Mouse Reeve
47953c84d7 Fixes linting errors
Apparently I didn't have a linter working!
2023-11-05 09:49:38 -08:00
Mouse Reeve
4de9907456 Adds migration tests 2023-11-05 09:26:49 -08:00
Mouse Reeve
61caeed5a3 Adds migration and more tests 2023-11-05 08:51:42 -08:00
Mouse Reeve
5e42afd85a Pass args and kwargs through status deletion 2023-11-05 08:10:03 -08:00
Mouse Reeve
93a7dd9cf3 Erase user data and statuses on account deletion 2023-11-05 08:00:29 -08:00
Mouse Reeve
9e9e9a9f85 Uses explicit imports to avoid circular import in migrations code 2023-11-05 07:04:05 -08:00
Mouse Reeve
ff2bb513ed Adds migration for notification types 2023-11-05 06:56:10 -08:00
Mouse Reeve
89b87db1c8 Adds merge migration 2023-11-05 06:54:29 -08:00
Mouse Reeve
67822d3cb0
Merge branch 'main' into user-migration 2023-11-05 06:52:48 -08:00
Mouse Reeve
10e0f2224a Adds a couple more tests for find_existing 2023-11-05 06:44:39 -08:00
Mouse Reeve
7104e775d8 Updates working of header tour 2023-11-05 06:36:43 -08:00
Hugh Rundle
d682e55812
swap out django-file-resubmit
- we decided to fork it, so this now uses the inaugural RC release of bw-file-resubmit (will need to be adjusted once we're confident it's ok to push a full release)
- I was accidentally using the wrong widget lol
2023-11-05 16:34:24 +11:00
Adeodato Simó
afad39bf80
Use $ instead of \Z for end of string
They're identical here, since re.M is not used, and the better-known
should be used, for readability.
2023-11-03 19:38:24 -03:00
Adeodato Simó
954a02126e
format_links: parse punctuation inside brackets
Also, consolidate all punctuation tests into a single table-driven one.
2023-11-03 19:38:24 -03:00
Adeodato Simó
7d13cbb10b
Add failing tests for reported bugs in format_links() 2023-11-03 19:38:23 -03:00
Adeodato Simó
294788aa1a
format_links: refactor; support multiple punctuation 2023-11-03 19:38:23 -03:00
Mouse Reeve
116a838eef Fixes typo that confuses isbn 10 and 13 2023-11-02 19:37:58 -07:00
Mouse Reeve
f839038c8f Add test for normalizing isbns in book model
Turns out this was actually working as expected
2023-11-02 19:12:46 -07:00
Mouse Reeve
285c513211 Adds test for invalid isbns and handle isbns with dashes 2023-11-02 19:03:15 -07:00
Mouse Reeve
8c950237a4
Merge pull request #3077 from bookwyrm-social/locales
Fixes plural string, "URL", and updates locales
2023-11-02 15:06:34 -07:00
Mouse Reeve
e1217f2054 Don't show notification for user follow request if the user is inactive 2023-11-02 15:04:03 -07:00
Mouse Reeve
ae51dcec63
Merge pull request #3039 from dato/ap_image_url
Fix creation of covers for ActivityPub imports
2023-11-02 14:44:44 -07:00
Mouse Reeve
22554f85ad Updates tour to reflect changes in #2201 2023-11-02 14:37:14 -07:00
Mouse Reeve
c1a7e4d9eb
Merge pull request #2201 from bookwyrm-social/header-links
Adds "Your Books" to the header and removed "Feed"
2023-11-02 14:34:47 -07:00
Mouse Reeve
416bbd4d9e Fixes plural string, "URL", and updates locales 2023-11-02 14:33:38 -07:00
Mouse Reeve
45fc10e3bf
Merge pull request #3067 from hughrun/2989
add defaults of None to optional AWS values
2023-11-02 14:24:58 -07:00
Mouse Reeve
0502f6ba42
Merge pull request #3076 from bookwyrm-social/move
Add Move activity for user migration (with small change)
2023-11-01 18:19:56 -07:00
Mouse Reeve
2137737d9b Small changes to get blocktrans to work as expected in move code 2023-11-01 17:19:57 -07:00
Mouse Reeve
621cfa7ed2
Merge pull request #2970 from hughrun/move
Add `Move` activity for user migration
2023-11-01 17:14:34 -07:00
Mouse Reeve
6f9c7f39fb Adds reverse migration for populate sort title
This doesn't impact much, it just allows you to reverse the migration,
which you would probably (hopefully) only want ot do in development.
2023-11-01 16:24:47 -07:00
Hugh Rundle
c486b9c37e
pylint fixes 2023-10-30 21:47:19 +11:00
Hugh Rundle
df43a8e2c5
Use django-file-resubmit plugin
- save cover images to cache when checking author and work for existing records
- fixes #2760
2023-10-30 19:43:39 +11:00
Hugh Rundle
d2b2cc0521
make options consistent in celery
- changes 'broadcasts' to 'broadcast' in Celery page in admin section
- re-orders celery queues on admin page to be in English alphabetical order (other than priority levels) - this makes them consistent with the Flower interface
- fixes #3066
2023-10-29 11:55:06 +11:00
Hugh Rundle
853b5f28a4
add defaults of None to optional AWS values
fixes #2989
2023-10-29 11:29:49 +11:00
Hugh Rundle
935779b5e3
Merge pull request #3064 from hughrun/user-migrate
stop pylint constantly whining in user-migration branch
2023-10-28 06:53:25 +11:00
Hugh Rundle
25a2615d5f
stop pylint constantly whining 2023-10-28 06:51:26 +11:00
Hugh Rundle
50ac691126
add alt tag 2023-10-28 06:28:43 +11:00
Hugh Rundle
4d35fd45df
template and migration fixes 2023-10-27 22:22:58 +11:00
Hugh Rundle
6f3b1b565f
fixes to move layout and notifs
- make Move notifications less complicated
- moved users cannot do anything other than unmove or log out
- refactor translations for moved users
2023-10-27 22:00:04 +11:00
Adeodato Simó
1952bb6ddc
fix mypy issues
The three "ignore" directives are:

  - avoid unreadable boilerplate from inherited `Field` methods; and:
  - https://github.com/typeddjango/django-stubs/issues/285#issuecomment-600029858
2023-10-24 18:14:05 -03:00
Adeodato Simó
170d1fe205
fix pylint issues (minus no-else-return) 2023-10-24 17:41:07 -03:00
Adeodato Simó
737ac8e908
Implement PartialDateField using SealedDate and a custom descriptor 2023-10-24 17:30:15 -03:00
Adeodato Simó
9752819bdb
Add support for parsing partial isoformats back 2023-10-24 17:30:13 -03:00
Adeodato Simó
4b47646e28
Fix typing hints in sealed_date module
In particular, SealedDate's class methods always return an instance
of the class they're invoked through (i.e., `SealedDate.from_date_parts`
intentionally never returns `MonthSeal` or `YearSeal`).

To propertly annotate this, a type variable is needed (or the much
simpler `Self` in Python 3.11).
2023-10-24 17:29:04 -03:00
Adeodato Simó
5f619d7a39
Implement SealedDateFormField to preserves partial dates
Note that Django forms _already_ have suppport for partial date data; we
just need to extend it when converting to Python (using SealedDate instead
of returning an error).
2023-10-24 17:29:00 -03:00
Adeodato Simó
777c8b4549
naturalday_partial filter for working with SealedDate 2023-10-24 04:32:27 -03:00
Adeodato Simó
46d80d56a5
Rename SealedDate.__str__ to partial_isoformat
Django uses `str(date)` for backends other than PostgreSQL, so do not
break "YYYY-MM-DD" formatting, just in case.
2023-10-24 04:32:27 -03:00
Adeodato Simó
a9c605ea97
Add SealedDate class for globally-stable, maybe-incomplete dates 2023-10-24 04:32:27 -03:00
Adeodato Simó
52a979da2d
Add failing test case for "January 1st" offset bug 2023-10-24 04:32:27 -03:00
Hugh Rundle
5592a8e08b
Merge pull request #3061 from hughrun/user-migrate
minor pylint and mypy fixes
2023-10-23 21:32:36 +11:00
Hugh Rundle
f30555be0f
minor pylint and mypy fixes 2023-10-23 21:30:17 +11:00
Hugh Rundle
f662e4e049
Merge pull request #3060 from hughrun/user-migrate
Fix texts & linting plus minor bugfixes
2023-10-23 20:54:41 +11:00
Hugh Rundle
e29c93a1e9
complete jobs more sensibly
- fix tuple in tar export I accidentally broke by following pylint blindly
- just use job.set_status to complete jobs since it does everything we need
- fix/avoid Celery "not JSON deserializable" error by not saving whole job including user value
2023-10-23 20:44:52 +11:00
Hugh Rundle
ddec2dbaa9
fix tar types notification docstring 2023-10-23 20:43:49 +11:00
Hugh Rundle
b8fc5c9b7a
fix tests 2023-10-23 20:42:56 +11:00
Hugh Rundle
8477d0b89d
Merge branch 'main' into user-migration 2023-10-22 18:47:41 +11:00
Hugh Rundle
2b6852e7a0
oops import Any 2023-10-22 17:56:46 +11:00
Hugh Rundle
b6b55b2e65
once more into the linting breach! 2023-10-22 17:49:26 +11:00
Hugh Rundle
07ef12ce8e
fix tests and linting 2023-10-22 17:26:27 +11:00
Hugh Rundle
6222088f15
Merge branch 'user-migrate' of github.com:hughrun/bookwyrm into user-migrate 2023-10-22 16:53:32 +11:00
Hugh Rundle
fd1ebf5f71
formatting and pylint fixes 2023-10-22 16:52:29 +11:00
Hugh Rundle
c0a5e55f7f
Merge branch 'user-migration' into user-migrate 2023-10-22 15:38:06 +11:00
Hugh Rundle
b34a491172
run black 2023-10-22 15:34:25 +11:00
Hugh Rundle
a27c652501
admin view for user imports
- makes user_import_time_limit a site setting rather than a value in settings.py (note this applies to exports as well as imports)
- admins can change user_import_time_limit from UI
- admins can cancel stuck user imports
- disabling new imports also disables user imports
2023-10-22 15:07:49 +11:00
Hugh Rundle
836127f369
cooldown period for user exports
add USER_EXPORT_COOLDOWN_HOURS setting for controlling user exports and imports
2023-10-22 10:49:13 +11:00
Hugh Rundle
20114b0059
add notifs and error handling for user export/import 2023-10-22 09:03:28 +11:00
Adeodato Simó
698e74a496
Minor vocabulary fixes and structured data improvements (#3036)
* Remove duplicate Review object under `rating` property

This was preventing validation, since `rating` is not a valid property
(`review` is, which is created from book.html already).

* Drop `bestRating` property in ratings, since it defaults to 5

See <https://schema.org/bestRating> ("If bestRating is omitted,
5 is assumed").

* Create Rating object (and its enclosing Review) in book/rating.html

* Use `position` property for Book objects in a series

`volumeNumber`, previously used, is only valid for objects of type
PublicationVolume (which series members are not).

* Give URL of book series when setting of `isPartOf`

* series.html: Add empty BookSeries object

---------

Co-authored-by: Adeodato Simó <dato@users.noreply.github.com>
2023-10-21 17:53:24 +02:00
Hugh Rundle
781b01a007
add error handling and status for user exports
* fix Safari not downloading with the correct filename
* add FAILED status
* don't provide download link for stopped jobs
2023-10-21 19:43:44 +11:00
Jascha Ezra Urbach
1685ac1953
Move version out of settings (#3045)
This removes the content of VERSION from settings.py and moves it into a seperate file which makes it easier to update versionnumbers via script in the future.
2023-10-19 11:29:59 +02:00
Mouse Reeve
2237a7eb9e
Merge pull request #3008 from dato/author_in_citation
Cite author in quotations and alt text
2023-10-18 17:31:55 -07:00
Adeodato Simó
f88a0f8229
Run stylelint to fix remaining issues
Including deletion of two duplicate stanzas introduced in 33c13608a8 ("Refixing
light and dark themes").
2023-10-18 20:39:12 -03:00
Adeodato Simó
6392a8e01d
Merge pull request #2032 from viviicat/bw-dev-npm-fix
Conflicts:
	bw-dev
	dev-tools/Dockerfile
	bookwyrm/static/css/bookwyrm/_all.scss
	bookwyrm/static/css/themes/bookwyrm-dark.scss
	bookwyrm/static/css/themes/bookwyrm-light.scss
2023-10-18 18:54:53 -03:00
Sidharth
25e8b259f7 Show/Hide password icon 2023-10-18 21:33:37 +05:30
Mouse Reeve
3624763073
Merge pull request #3043 from dato/prettier_rerun_final
Final prettier re-run
2023-10-17 14:28:48 -07:00
Adeodato Simó
d55e0b6ba3
Final JS update to match 'es5' trailing comma style
This is  follow-up to cd247a668 ("Update .prettierrc").
2023-10-17 17:11:59 -03:00
Jascha Ezra Urbach
06923c64c1
Merge pull request #3003 from dato/book_info_first_pub_date
Fallback to showing first published date
2023-10-17 20:16:06 +02:00
Jascha Ezra Urbach
3ade72b90d
Merge pull request #3038 from dato/parsed_date_defaults
Stable defaults for incomplete parsed dates
2023-10-17 20:08:04 +02:00
Jascha Ezra Urbach
4d352faae3
Merge branch 'main' into prettier-trailing-comma 2023-10-17 19:31:24 +02:00
Adeodato Simó
3251ef0bf5
Fix creation of covers for ActivityPub imports
`cover` comes as a JSON dict, but the code was looking for URL as
an attribute.

(This commit leaves the attribute access in place, just in case
`cover` is updated to serialize as Document proper.)
2023-10-16 17:43:04 -03:00
Adeodato Simó
8afcb9b6d3
Fix tests warning: ImportJob.updated_date received a naive datetime 2023-10-15 22:03:45 -03:00