Commit graph

8387 commits

Author SHA1 Message Date
Hugh Rundle 6f025af99f fix ensure_transient_values_persist call 2023-04-16 19:06:04 +10:00
Hugh Rundle 74f08323d1
Merge branch 'main' into 2571 2023-04-16 18:11:39 +10:00
Hugh Rundle fb3cb229e9 Fixes #2571
Persist book.subjects and add_author when form validation fails.

This does not resolve the problem of cover image uploads being dropped because this is a broader problem and is covered separately in #2760
(we should investigate the plugin ` django-file-resubmit`)
2023-04-16 17:58:03 +10:00
Mouse Reeve 290b740392
Merge pull request #2805 from WesleyAC/stop-ignoring-task-results
Stop ignoring task results
2023-04-15 09:03:43 -07:00
Jascha Ezra Urbach fadbc76aaa
Merge pull request #2789 from bpeel/translatable-shelf-name
Fix two places where the reading status shelf name wasn’t translated
2023-04-15 16:59:59 +02:00
Jascha Ezra Urbach d788105eeb
Merge pull request #2814 from WesleyAC/bw-dev-pick-docker-compose-command
Choose installed docker compose command in bw-dev
2023-04-15 16:52:38 +02:00
Jascha Ezra Urbach dfcc61a3e1
Merge pull request #2816 from bpeel/missing-translatable-strings
Fix a few strings that weren’t marked as translatable
2023-04-15 16:51:51 +02:00
Neil Roberts 3619d8960b Mark two strings as translatable in the getting started questionnaire 2023-04-14 16:49:00 +02:00
Neil Roberts f520d1b7f8 Make the text on the search button translatable 2023-04-14 16:40:50 +02:00
Wesley Aptekar-Cassels 43b34610a6 Choose installed docker compose command in bw-dev
Docker is removing support for docker-compose, and it doesn't appear to
be possible to install it anymore. Instead, it has been replaced with
compose V2 which is a docker plugin called with 'docker compose' (no
hyphen). See https://docs.docker.com/compose/compose-v2/

Thanks to @Neriderc for noticing this in #2781.
2023-04-11 21:51:31 -04:00
Wesley Aptekar-Cassels 8e25ae34d6
Merge pull request #2782 from ranok/list_fix
Small quality of life improvements to list handling
2023-04-11 12:31:58 -04:00
Wesley Aptekar-Cassels 843147e16b
Merge pull request #2808 from bpeel/series-no-author
Don't show the series as a link if the book has no author
2023-04-11 12:25:52 -04:00
Neil Roberts 41633090ba Don't show the series as a link if the book has no author
The series link needs an author so if it doesn't have one, instead of
showing a server error let's just show the series details as plain text
without a link.

Fixes: #2797
2023-04-08 17:13:34 +02:00
Wesley Aptekar-Cassels e9f26b7d50
Merge pull request #2800 from WesleyAC/fix-activitypub-request-accept-header
Fix Accept header for requesting ActivityPub objects
2023-04-08 11:02:27 -04:00
Wesley Aptekar-Cassels 1048638e30 Stop ignoring task results
This is essentially a revert of 9cbff312a. The commit was at the advice
of the Celery docs for optimization, but I've since decided that the
downsides in terms of making things harder to debug (it makes Flower
nearly useless, for instance) are bigger than the upsides in performance
gain (which seem extremely small in practice, given how long our tasks
take, and the number of tasks we have).
2023-04-07 21:51:44 -04:00
Mouse Reeve 7272ca2564
Merge pull request #2785 from WesleyAC/optimize-get-audience
Optimize get_audience
2023-04-07 13:27:00 -07:00
Wesley Aptekar-Cassels 07b50a1453 Optimize get_audience
This avoids filtering for the user that made the post in the same query
as we use for other things, which should allow for better use of indices
in all cases. Previously, #2723 did some work on this that only worked
for some cases in HomeStream, but this code should work for all cases.

Related: #2720
2023-04-07 10:38:14 -04:00
Wesley Aptekar-Cassels 77264493eb Override get_audience instead of _get_audience in LocalStream
I suspect this will make some future work simpler.
2023-04-07 10:37:02 -04:00
Mouse Reeve 5272786fbb
Merge pull request #2779 from WesleyAC/get_audience_more_telemetry
Add more information to get_audience telemetry
2023-04-07 07:12:41 -07:00
Mouse Reeve 4e3513bd41
Merge pull request #2784 from WesleyAC/add-status-cache-get-audience
Only call get_audience once in add_status
2023-04-07 06:43:04 -07:00
Mouse Reeve 035ca6fec2
Merge pull request #2795 from WesleyAC/add-postgres-instrumentation
Add automatic instrumentation to Postgres queries
2023-04-07 06:39:47 -07:00
Mouse Reeve 10f53d9809
Merge branch 'main' into get_audience_more_telemetry 2023-04-07 06:30:59 -07:00
Mouse Reeve d033848d3f
Merge pull request #2780 from jsoref/spelling
Spelling
2023-04-07 06:30:16 -07:00
Mouse Reeve 22dc4cbcb8
Merge pull request #2791 from WesleyAC/add-rerank-users-telemetry
Add telemetry for SuggestedUsers rerank_user_task
2023-04-07 06:29:44 -07:00
Mouse Reeve 5bcd294f47
Merge pull request #2793 from WesleyAC/ignore-activity-allow-external-connections
Pass allow_external_connections through ignore_activity
2023-04-07 06:23:26 -07:00
Mouse Reeve 5895524a25
Merge pull request #2787 from WesleyAC/celery-clear-queues-form
Add form to remove tasks from Celery
2023-04-07 06:17:50 -07:00
Mouse Reeve d11bb17698
Merge pull request #2798 from WesleyAC/celery-increase-ping-timeout
Increase Celery ping timeout for monitoring page
2023-04-07 06:13:07 -07:00
Mouse Reeve 206698238d
Merge pull request #2799 from WesleyAC/suggested-users-check-is-active
Don't include deleted users in suggested users query
2023-04-07 06:12:38 -07:00
Mouse Reeve af3957d76b
Merge pull request #2786 from WesleyAC/celery-raise-network-timeout
Increase network timeout in Celery tasks
2023-04-07 06:09:16 -07:00
Mouse Reeve a8235fc3a2
Moves the stray "e" back to "mobile" 2023-04-07 06:04:47 -07:00
Wesley Aptekar-Cassels 912d0a0149 Fix Accept header for requesting ActivityPub objects
This is the header described in the ActivityPub spec, which should fix
some federation problems with GoToSocial and potentially other picky
services.

Related: #2794, superseriousbusiness/gotosocial#1676
2023-04-07 05:57:13 -04:00
Wesley Aptekar-Cassels c89da1bd66 Don't include deleted users in suggested users query
Related: #2727
2023-04-07 04:18:36 -04:00
Wesley Aptekar-Cassels 3709f5c7a9 Increase Celery ping timeout for monitoring page
This should prevent some transient alerts.
2023-04-07 03:18:43 -04:00
Wesley Aptekar-Cassels 6986fc9025 Add form to remove tasks from Celery 2023-04-07 03:16:14 -04:00
Wesley Aptekar-Cassels 61453d48e6 Add automatic instrumentation to Postgres queries
This enables automatic instrumentation of Postgres queries when
OpenTelemetry instrumentation is enabled, which will help with debugging
performance problems.
2023-04-07 01:58:49 -04:00
Wesley Aptekar-Cassels b574a12fff Pass allow_external_connections through ignore_activity
Previously, ignore_activity could unexpectedly make a outgoing HTTP
connection, leading to unwanted latency, particularly when called via
ActivityObject.to_model, which had the allow_external_connections
parameter already.

Related: #2717
2023-04-06 23:37:49 -04:00
Wesley Aptekar-Cassels 4e09391b2e Add telemetry for SuggestedUsers rerank_user_task
Related: #2727
2023-04-06 12:22:39 -04:00
Neil Roberts 9092c9c80c Add a translatable name for the "stopped-reading" status shelf 2023-04-06 16:03:35 +02:00
Neil Roberts b0f90d05f2 Move the shelf names to a dict instead of a chain of if statements
The main reason to do this is that if we try to add another name then
pylint will complain that there are too many return statements. It might
be slightly faster too.

If I understand correctly it doesn’t matter that the _ function is being
called at module load time because it is mapped to gettext_lazy so the
actual translation will be done when the string is used.
2023-04-06 16:02:24 +02:00
Neil Roberts 36c14655ec Use the translated shelf name in a book’s shelf list
Previously in the list of shelves on the page for a book it was always
using the English name of the shelf for the shelf of the reading status.
2023-04-06 15:58:20 +02:00
Mouse Reeve 4b1012b185
Merge pull request #2788 from WesleyAC/fix-bw-dev-down-help-text
Fix help text for `bw-dev down`
2023-04-06 06:09:23 -07:00
Wesley Aptekar-Cassels 29ac34cb92 Fix help text for bw-dev down 2023-04-06 05:57:21 -04:00
Wesley Aptekar-Cassels f91fcd518a Increase network timeout in Celery tasks
Since Celery tasks don't affect interactive latency, we should have a
more generous timeout. This also allows admins to set the timeout for
Celery and the web frontend separately, without breaking backwards
compatibility with the previous environment variable.
2023-04-06 01:21:27 -04:00
Wesley Aptekar-Cassels 776c5526c8 Remove ActivityStream.get_stores_for_object
I think this makes the code somewhat more understandable.
2023-04-05 23:20:47 -04:00
Wesley Aptekar-Cassels 7a93b5c315 Only call get_audience once in add_status
This is by far the most expensive part of this task, so this should
double the speed in the increment_unread case.

Related: #2720
2023-04-05 22:11:49 -04:00
Wesley Aptekar-Cassels 78607a0c3e Remove get_stores_for_object abstract method
The implementations still have and use this, we've just removed this
concept from the RedisStore abstraction, which simplifies things
somewhat.
2023-04-05 22:07:38 -04:00
Wesley Aptekar-Cassels 68c6a9e748 Rename remove_object_from_related_stores
This makes the stores argument required, making it simpler to change the
code.
2023-04-05 22:06:09 -04:00
Wesley Aptekar-Cassels 8053f49acc Always pass stores to remove_object_from_related_stores 2023-04-05 21:48:24 -04:00
Wesley Aptekar-Cassels 93bd66ad3e Refactor to delete add_object_to_related_stores
This is working towards some optimizations.
2023-04-05 21:48:22 -04:00
Wesley Aptekar-Cassels 9c54030b61 Add add_object_to_stores function
This should enable some useful refactoring to allow us to cache some
results of expensive queries better.
2023-04-05 21:44:59 -04:00