Andrew Godwin
552a150e57
Stop over-recursion in post contexts
2023-03-02 10:28:27 -07:00
Humberto Rocha
9aff13118a
Fix crash when fetching emoji without mimetype and extension ( #524 )
2023-02-25 14:47:43 -07:00
Andrew Godwin
5f39e50c63
Some improvements to poll display now they work more
...
Fixes #327
2023-02-19 10:49:06 -07:00
Humberto Rocha
e43d0a052c
Fix unliked post displaying in favourites endpoint ( #512 )
2023-02-15 16:05:48 -07:00
Humberto Rocha
427744f5a7
Fix boost reach ( #511 )
...
Fix boost not reaching all remote followers
2023-02-15 15:40:43 -07:00
Humberto Rocha
e382994e73
Polls ( #496 )
...
Implement poll AP and API backend
2023-02-15 10:42:56 -07:00
Andrew Godwin
1c5ef675f0
Implement post editing
2023-02-13 19:40:10 -07:00
Andrew Godwin
5d2ed9edfe
Hatchway API Rewrite ( #499 )
...
Removes django-ninja and replaces it with a new API framework, "hatchway".
I plan to move hatchway into its own project very soon.
2023-02-07 12:07:15 -07:00
Andrew Godwin
f7948a55bf
Actually do the right indexes in migrations
2023-02-03 22:24:28 -07:00
Andrew Godwin
36676fad59
Rework stator to avoid deadlocks on slow databases
...
Refs #424
2023-02-03 21:51:24 -07:00
Humberto Rocha
d8fc81a9a6
Keep the casing pattern provided by the instance ( #495 )
2023-02-03 17:02:35 -07:00
Humberto Rocha
b9e8f19e90
Fix fetching poll votes and voter_count ( #482 )
2023-01-29 21:20:57 -07:00
Andrew Godwin
1ffbb2e860
Fix hashtag extraction on post edit
2023-01-29 18:13:21 -07:00
Andrew Godwin
a6922cb9d6
Move to a new HTML parser/stripper
...
This removes the use of the EOL'd Bleach, and also integrates hashtag,
mention and emoji searching into one single place.
2023-01-29 17:47:06 -07:00
Humberto Rocha
aeba38b8ae
Enable post search to other supported post types ( #481 )
...
* Enable post search to other supported post types like question, video, and others
* Upgrade isort to match pre-commit config
2023-01-29 12:26:08 -07:00
Andrew Godwin
8ea1fb9ce6
Fix emojis in profile fanout
...
Refs #468
2023-01-28 11:13:06 -07:00
Michael Manfre
773c9b2afc
Ensure expected fields exist for Post.by_ap
2023-01-27 10:52:32 -07:00
Michael Manfre
6437a5aeb7
Properly handle Author targeting blocks
2023-01-27 10:52:32 -07:00
TAKAHASHI Shuuji
8a06b3d78f
Fix wrong post character counting in hyperscript ( #476 )
...
A newline `\n` will be normalized as `\r\n` in Django.
2023-01-27 10:50:34 -07:00
Andrew Godwin
653ab07fd6
Swap a decent number of admin fields to autocomplete
2023-01-26 10:01:21 -07:00
Humberto Rocha
5dd2ebee29
Make user handle search to be case insensitive ( #474 )
2023-01-25 19:17:52 -07:00
Humberto Rocha
ccded99a63
Add favourites api endpoint ( #465 )
2023-01-20 19:49:55 -07:00
Michael Manfre
51ae78a33c
Downgrade most fetch related errors to capture_message ( #443 )
2023-01-19 13:14:55 -07:00
Michael Manfre
a34cab6dfb
Admin improvements for Post and PostAttachment ( #428 )
2023-01-16 15:54:49 -07:00
Michael Manfre
77ba7b02b9
Ignore non string attachment mimetypes ( #429 )
2023-01-16 15:10:03 -07:00
Andrew Godwin
54e7755080
Unfollowing or blocking users purges timeline
...
Fixes #366
2023-01-16 11:53:40 -07:00
Andrew Godwin
18ab453baa
Only fanout remote posts younger than 1 day
2023-01-15 20:57:38 -07:00
Michael Manfre
06f6257645
Render non-media PostAttachments ( #420 )
2023-01-15 14:49:04 -07:00
Andrew Godwin
9dded19172
Add admin notification for new identities
2023-01-15 14:48:17 -07:00
Andrew Godwin
b44be55609
Fixed #408 : Implemented blocking
2023-01-15 13:35:45 -07:00
Andrew Godwin
f689110e0b
Fix file size label hardcode
2023-01-15 10:31:27 -07:00
TAKAHASHI Shuuji
5e65d569bf
Prevent uploading too large image file ( #416 )
2023-01-15 10:29:18 -07:00
Michael Manfre
94fe247b17
Handle errors when a Post references an invalid ancestor ( #417 )
2023-01-15 10:28:44 -07:00
Andrew Godwin
1ffcd5e6d1
Add timelineevent.created index
2023-01-14 12:01:44 -07:00
Andrew Godwin
76076e3387
Flip timelines back to created ordering
...
Also added in some tracking from where post fetches come from, in case
this re-creates the weird thing where posts emerge from history.
2023-01-14 11:31:57 -07:00
Michael Manfre
21d565d282
Copy Emoji to local and delete file with record ( #407 )
2023-01-14 10:35:20 -07:00
Michael Manfre
81fa9a6d34
Ignore badly formed ActivityPub object data ( #406 )
2023-01-13 13:44:43 -07:00
Michael Manfre
cb66b9559d
Allow incoming Posts with Bookwyrm Edition tags ( #405 )
2023-01-13 13:43:37 -07:00
Michael Manfre
fc8b5be4a0
Support future times with timedeltashort tag ( #403 )
2023-01-13 10:54:02 -07:00
Michael Manfre
18b50ce0e6
Silence a few common errors when fetching ( #404 )
...
Downgrade nodeinfo json error to a captured message
2023-01-13 10:53:02 -07:00
Andrew Godwin
e20aea1b9c
Fixed #393 : Deal with errors unpacking focalPoint
2023-01-11 10:26:01 -07:00
Andrew Godwin
113db4ab3a
Fixed #376 : Emoji admin page
...
Also did a new table style for admin pages
2023-01-10 20:31:50 -07:00
Andrew Godwin
ecec5d6c0a
Implement snowflake IDs for some models.
...
Still needs fixes to the client API paginator.
2023-01-08 18:05:29 -07:00
Andrew Godwin
4bea1006b1
Only do the followed query if needed
2023-01-08 14:28:24 -07:00
Andrew Godwin
4276260c2e
Delete old fanouts after a day
2023-01-08 13:51:30 -07:00
Andrew Godwin
a875dd7a54
Perform shared inbox delivery
2023-01-08 13:46:40 -07:00
Andrew Godwin
f4a8a96b81
Add first-class deletion support to Stator
2023-01-08 12:43:52 -07:00
TAKAHASHI Shuuji
b5b4a8ac5d
Move initial cursor place to the end for @mention reply ( #375 )
2023-01-08 12:22:45 -07:00
Andrew Godwin
eede9682b2
Only deliver posts to active follows
2023-01-08 10:36:44 -07:00
Corry Haines
d8cee4097f
Modify emoji loader for cache-optimized return value ( #371 )
...
Also fixes an apparent bug in `imageify_emojis.replacer` where `include_local` was not being used correctly (previous code path never returned anything.
2023-01-07 15:19:47 -07:00
Corry Haines
be7ce6ed62
Improve /api/v1/accounts/{id}/statuses perf ( #355 )
2023-01-05 22:51:02 -07:00
Michael Manfre
1425ae0bde
Update emoji for domain when shortcode doesn't match uri ( #359 )
2023-01-05 19:57:57 -07:00
Michael Manfre
af47e9dfd6
Guess Post attachment mimetype when 'mediaType' field not provided ( #360 )
2023-01-05 19:48:03 -07:00
Corry Haines
9ae9e03b9d
Re-use page for interaction query ( #351 )
...
Original code caused the query on timeline to issue twice. Once to satisfy the interactions lookup (which had no LIMIT) and then again for the page (which had a LIMIT 25).
Presumably we want interactions for the paginated events, especially since the un-LIMITed query would become extremely inefficient.
2023-01-04 16:42:57 -07:00
Andrew Godwin
68e764a36e
Turns out you should be able to see replies too
2023-01-02 17:42:38 -07:00
Andrew Godwin
e1363f0dac
Authors should also see their own posts
2023-01-02 17:21:56 -07:00
Andrew Godwin
110ae452b6
Hide individual posts if people can't see them
2023-01-02 17:15:38 -07:00
Michael Manfre
5f1d7b5253
Add indexes for Stator and some of its common tasks ( #332 )
2023-01-01 10:58:13 -07:00
TAKAHASHI Shuuji
6e34313aaf
Fix incorrect character count ( #340 )
2022-12-31 20:17:48 -07:00
Andrew Godwin
b522f43ffc
Improve interaction fanout
2022-12-31 14:47:46 -07:00
Andrew Godwin
15159418df
Handle CW classes for non-ascii characters
...
Fixes #337
2022-12-31 13:52:30 -07:00
Andrew Godwin
0fc8ff4965
Move like/boost/reply counts onto Post model
2022-12-31 13:52:30 -07:00
Cosmin Stejerean
eea83214cb
Option to show/hide boosts for a followed user ( #317 )
2022-12-30 15:03:11 -07:00
Andrew Godwin
011c51b3c4
Implement progressive thread parent fetching
2022-12-30 11:48:42 -07:00
Michael Manfre
75c17c0766
Correctly handle response.raise_for_status() and guard search from bubbling parse errors ( #322 )
2022-12-30 01:02:33 -07:00
Andrew Godwin
d3fd365a37
Add boost JSON
...
(also fix hashtag URLs)
Fixes #313
2022-12-29 10:53:31 -07:00
Corry Haines
165d84abbf
Fixes developed from mypy_django script ( #312 )
2022-12-29 10:35:14 -07:00
Tyler Kennedy
cc7824394b
Fixes for the Toot! client ( #248 ) ( #275 )
...
* Various Toot! fixes
* Use a fallback 1x1 pixel image for missing headers, same as Mastodon. The header and header_static are _not_ optional nor nullable according to the spec.
* Try removing some fields which probably shouldn't be set.
* Pagination with next/prev.
2022-12-29 10:31:32 -07:00
Andrew Godwin
b03d9f0e12
Handle deletions of post URIs
...
Fixes #306
2022-12-28 22:47:28 -07:00
Andrew Godwin
6137149f55
Improve cache busting proxy URLs with file exts
...
Fixes #287 .
2022-12-28 11:57:54 -07:00
Corry Haines
296780d5cc
Use cache-busting URLs for proxied files ( #294 )
...
Migrates (in a backwards-compatible way) from `/proxy/identity_image/271/` to `/proxy/identity_image/271/f5d8e72f2b/`.
dently).
2022-12-28 11:39:40 -07:00
Michael Manfre
4df4f19856
Remove unneeded join from Post to Identity ( #301 )
2022-12-28 11:14:41 -07:00
Andrew Godwin
e38e985e73
Fall post URLs back to their ID
...
Fixes #302
2022-12-28 11:12:40 -07:00
Michael Manfre
f17f9df27e
Identity.by_username_and_domain has more awareness of Domain ( #303 )
2022-12-28 10:52:39 -07:00
Michael Manfre
cf8c5476e6
Hashtag stats are only computed when a Post is edited or updated ( #299 )
2022-12-27 19:42:38 -07:00
Michael Manfre
26f64bfc06
Guess emoji mimetype if not provided in tag ( #298 )
2022-12-27 19:41:16 -07:00
Andrew Godwin
f6e49e8059
Delete timeline events with posts
...
Fixes #284
2022-12-27 11:53:44 -07:00
Corry Haines
31187c99b2
Quality of life ( #266 )
...
Support gunicorn autoreload on DEBUG
Pass docker postgres port to host
Add some typing to posts.py
2022-12-26 10:42:02 -07:00
Corry Haines
b53504fe64
Basic OpenGraph support ( #267 )
...
Creates an OpenGraph template include in base.html including the basic tags expected on all pages.
Then allows any page to add additional expected tags via `context`.
Currently, profiles and posts are enriched to show complete opengraph metadata, and render correctly in Discord.
Note: This does not show posts in Slack like Twitter/Mastodon do. I believe this is due to Slack preferring oembed when present, which is a mastodon API endpoint we may need to create at some point.
2022-12-26 10:39:33 -07:00
Andrew Godwin
d32a686eb1
Persist CWs in replies, expand linked at once
...
Fixes #268
2022-12-26 10:03:13 -07:00
Michael Manfre
8ab0e97a86
Some servers send object as dict for PostInteraction and Follow ( #261 )
...
* Some servers send object as dict for PostInteraction and Follow
* Add core.ld.get_str_or_id helper
2022-12-24 21:24:46 -07:00
Andrew Godwin
365b9d49c6
Don't error when we don't have a parent post
2022-12-24 12:28:10 -07:00
Michael Manfre
834282cf54
Remove unused Post.linkify_mentions() ( #263 )
2022-12-24 15:01:16 -07:00
Michael Manfre
5536397bdb
Prettier debug json ( #260 )
2022-12-24 11:05:07 -07:00
Andrew Godwin
087cb2a15f
Rework post/event querysets to always fetch stuff
2022-12-24 10:50:01 -07:00
Tyler Kennedy
b5be9b576d
Ux gallery tweaks ( #252 )
...
Tweaks to attachment CSS to show a better looking gallery view, video support
2022-12-23 22:54:03 -07:00
Andrew Godwin
6be1e7df44
Make oauth screens plain as well
2022-12-23 22:34:33 -07:00
Andrew Godwin
294095c592
Don't allow trailing period in mention
...
Fixes #249
2022-12-23 01:47:00 -07:00
Andrew Godwin
af6ddcf8f1
Drive user timeline and RSS off a single service
2022-12-22 13:11:47 -08:00
Andrew Godwin
a058140d11
New "plain" page style for most logged out pages
2022-12-22 13:06:35 -08:00
Andrew Godwin
e066641556
Accept emoji using nameMap
2022-12-22 17:19:12 +00:00
Andrew Godwin
025fd5cf07
Emoji refactor
...
Emojis are now prefetched from the post, and if not, looked up
individually by shortcode, to prevent loading hundreds.
2022-12-22 16:55:31 +00:00
Andrew Godwin
79fd800a78
Accept objects with contentMap only
2022-12-22 05:29:49 +00:00
Andrew Godwin
02f942f1ad
Add boost/like count to more timelines
2022-12-22 04:27:02 +00:00
Tyler Kennedy
7e5b5dc4e4
Various UX tweaks and front end fixes. ( #230 )
2022-12-22 21:28:28 +00:00
Andrew Godwin
f9b5f372ac
Responsive styling fix, shorter pages
...
Refs #102
2022-12-22 01:06:01 +00:00
Andrew Godwin
f5f74dc150
Further search fixing
2022-12-21 21:46:09 +00:00
Andrew Godwin
45de0e09b5
Switch to preserving username case
...
Except on comparisons, for now. Fixes #224
2022-12-21 21:39:56 +00:00
Andrew Godwin
13ebe14cf9
Don't show deleted follows, and sort publicly
2022-12-21 20:56:52 +00:00
Gabriel Rodríguez Alberich
1349144e37
Minor design tweaks to the Follows page ( #222 )
...
* Filter outbound and inbound follows by active state
* Change pill appearance to distinguish it from buttons
* Signal destructive action when hovering unfollow buttons
* Add hover style to the top "tabs"/"filters"
* Make filters icon have the same width so selecting them doesn't change the options total width, which is mildly unnerving
2022-12-21 19:57:14 +00:00