Commit graph

155 commits

Author SHA1 Message Date
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
9c376395db Invites overhaul
No email tie, added uses and expires, now works by URL.
2022-12-22 07:03:21 +00:00
Andrew Godwin
ca3dc82a62 Don't linkify hashtags in usernames and metadata
Fixes #228
2022-12-22 01:10:56 +00:00
Andrew Godwin
bf5a46df38 Provide some stuff we know of for Mastodon schema
Should fix GoToSocial pulls. Refs #223.
2022-12-21 18:23:52 +00:00
Andrew Godwin
f82b82502c Install debug toolbar in debug mode 2022-12-20 15:26:39 +00:00
Andrew Godwin
51d34eda9c Significantly better hashtag link parsing
Fixes #203
2022-12-20 13:55:14 +00:00
Andrew Godwin
4635874c12 Relax accept header for gup.pe 2022-12-20 13:21:50 +00:00
Andrew Godwin
78d2283458 Move linkifying to all http-prefixed links 2022-12-20 13:21:50 +00:00
Andrew Godwin
4ad4f468a4 Refactor HTML rendering into one place
Also suppress using external <a> tags for now, until we can separate
them from hashtags properly.
2022-12-20 11:39:45 +00:00
Andrew Godwin
ee669ff568 Don't make images larger on upload! 2022-12-20 06:39:37 +00:00
Andrew Godwin
c3a60bbf13 Remove identity avatar fetching 2022-12-19 20:55:27 +00:00
Andrew Godwin
3de188e406 Fix Accept header and supply actor outbox
Should help with Mitra among others. Refs #207.
2022-12-19 02:47:35 +00:00
Tyler Kennedy
cfa97b9740
Mitra Fixes (#207)
Don't send a list when populating Accept header. This seems to work fine on Mastodon and friends, and fixes a bug with the Mitra server until resolved upstream.
2022-12-19 11:21:04 +00:00
Andrew Godwin
5e343d2129 Tweak to predictable image namer 2022-12-18 23:47:49 +00:00
Tyler Kennedy
b5895e4d28
Stop saving infinite files. (#208)
Use a consistent name for Identity.icon as a quick fix to stop flooding object storage.
2022-12-19 10:53:13 +00:00
Andrew Godwin
5ba9ed6428 Allow signing content-length header 2022-12-18 16:12:57 -07:00
Andrew Godwin
770aa1531a Do actual ISO date parsing
Fixes #187
2022-12-18 10:45:32 -07:00
Andrew Godwin
b6a8737d2e Some more JSON-LD namespace fixing 2022-12-17 17:48:33 -07:00
Michael Manfre
ea99f65c26
Icon and image for Identity could be a list 2022-12-17 15:42:29 -07:00
Andrew Godwin
24b5d08f9b Update all main pages to no-store 2022-12-17 15:35:22 -07:00
Andrew Godwin
4d71da7ae1 Allow for remote policy pages 2022-12-17 15:30:51 -07:00
Andrew Godwin
256ebe56d5 Don't download files with no content-length 2022-12-17 12:16:37 -07:00
Andrew Godwin
62f2b867b9 Fix serving of system actor
Fixes #183
2022-12-17 12:00:47 -07:00
Andrew Godwin
f262f582cb Ooh, ooh, ignore server errors too 2022-12-16 20:14:44 -07:00
Andrew Godwin
108afaf6ce We don't care about 404 errors quite as much 2022-12-16 20:14:02 -07:00
Andrew Godwin
e5b76c120e Fetch emoji for user profiles 2022-12-16 20:04:28 -07:00
Andrew Godwin
4a28e1708e Make the collectstatic hack slightly better 2022-12-16 19:51:19 -07:00
Andrew Godwin
45c6978bc3 User admin and LD schema fixes 2022-12-16 16:38:52 -07:00
Andrew Godwin
c0cd5a5553 Some hashtag json-ld fiddling 2022-12-15 18:58:11 -07:00
Andrew Godwin
9ad9bdd936 Implement post rate limits, move to signed cookies
Also improve the test harness a little
Fixes #112
2022-12-15 15:55:33 -07:00
TAKAHASHI Shuuji
61fbda0ebf
Set the correct Content-Type header for static WebP images (#171) 2022-12-15 10:31:25 -07:00
Michael Manfre
af3142ac3a
Basic Emoji suppport (#157) 2022-12-15 00:50:54 -07:00
Andrew Godwin
69f1b3168a Improve cacheability 2022-12-15 00:43:39 -07:00
Andrew Godwin
16005e14ef Make GCS backend handle webp right, and use gs://
Fixes #164
2022-12-14 21:21:18 -07:00
Gabriel Rodríguez Alberich
d1ce056288
Show follows and following counts on profile page
And let their visibility be configured
2022-12-14 10:15:46 -07:00
Tyler Kennedy
0d8b7db272
Set the content type and disposition of webp files uploaded to S3 2022-12-13 23:26:19 -07:00
Andrew Godwin
5bc9ff39ac Fix static file URLs 2022-12-12 11:56:49 -07:00
Andrew Godwin
8ffe4bc145 A better way of handling URIs between local/remote 2022-12-12 11:56:49 -07:00
Andrew Godwin
20239b5cb7 Basic post mutation 2022-12-12 11:56:49 -07:00
Michael Manfre
a576c5b5ed
Improve djadmin filtering and search (#149) 2022-12-08 10:29:51 -07:00
Michael Manfre
39a40e4dae
Set a Takahe User-Agent header for signed requests (#142) 2022-12-06 21:59:05 -07:00
Michael Manfre
c87ad8116f
settings.SETUP.SENTRY_CAPTURE_MESSAGES (#133) 2022-12-06 16:54:45 -07:00
Michael Manfre
e2b234d9ed
Setting to enable Sentry capture_messages (#128) 2022-12-06 09:50:42 -07:00
Michael Manfre
b8460b0acd
Only cache unauthenticated page views (#117) 2022-12-05 22:23:07 -07:00
Andrew Godwin
9fe2e6676c Add a middleware to detect LD Accept headers 2022-12-05 20:02:35 -07:00
Andrew Godwin
a31f676b46 Policy pages and signup tests.
Fixes #113
2022-12-05 19:24:46 -07:00
Michael Manfre
238268eb31
Add pylibmc and pymemcache to requirements and make timeout not lazy (#116) 2022-12-05 14:48:02 -07:00
Paolo Melchiorre
22e25ac454
Add django-upgrade to pre-commit (#114) 2022-12-05 14:44:50 -07:00
Michael Manfre
d6eb16a398
Added caching and initial settings 2022-12-05 10:55:30 -07:00
Paolo Melchiorre
a9bb4a7122
Add pyupgrade with --py310-plus in pre-commit (#103) 2022-12-05 10:38:37 -07:00
Michael Manfre
3f8045f412
[WIP] Sentry improvements (#108)
Stator clears scope during the main loop to behave more like
transactions. Transaction names are set.

Sentry tags:
* 'takahe.version'
* 'takahe.app' values 'web' or 'stator'

Added settings:
* TAKAHE_SENTRY_SAMPLE_RATE
* TAKAHE_SENTRY_TRACES_SAMPLE_RATE
2022-12-04 18:08:23 -07:00
Andrew Godwin
c3d4d0f547 Image upload polishing and webp 2022-12-04 10:46:41 -07:00
Michael Manfre
61c1058d67
Add TAKAHE_DEFAULT_TIMEOUT with default of 5.0 (#99) 2022-12-04 09:32:25 -07:00
Andrew Godwin
864b730164 Accept dates with milliseconds in them 2022-12-04 07:31:22 -07:00
Andrew Godwin
b3df5e763c Switch to secrets module for upload names 2022-12-03 14:07:30 -07:00
Andrew Godwin
6f2f28a3a7 Image attachment uploads 2022-12-01 18:47:04 -07:00
Michael Manfre
fb8f2d1098
Hashtags 2022-11-28 21:41:36 -07:00
Andrew Godwin
3b079526a2 User fetching and inbox message cleaning 2022-11-27 17:05:31 -07:00
Andrew Godwin
348c03e7da Default replies to unlisted, new users to public 2022-11-27 15:40:17 -07:00
Andrew Godwin
8e9e3ecf69 Some cleanup around editing 2022-11-27 12:09:08 -07:00
Tyler Kennedy
c758858392
Simplified settings
Migrated settings to typed pydantic settings
2022-11-26 10:04:04 -07:00
Michael Manfre
d60ba9a051
Added default post visibility 2022-11-25 19:33:46 -07:00
Andrew Godwin
1cf1f2e543 Implement user discoverability 2022-11-25 18:32:45 -07:00
Michael Manfre
9014d53399
StatorRunner will refresh Config.system on each schedule_interval 2022-11-22 21:06:21 -07:00
Michael Manfre
cdfff32f9a
Content warning name customisation
Allows the name of Content Warning to be customized (e.g. to "Content Summary").

Fixes #28.
2022-11-22 19:52:40 -07:00
Andrew Godwin
9c424d9bb6 Add manual HTMX refresh of timelines
Refs #33
2022-11-22 19:21:01 -07:00
Andrew Godwin
53d9452917 Outgoing mentions mostly work (exc. cc followers) 2022-11-21 21:18:13 -07:00
Andrew Godwin
0d1e09fbcd Refactor almost all tests into /tests/ 2022-11-21 20:10:01 -07:00
Andrew Godwin
c4be52357b Make test directories into modules 2022-11-20 23:26:53 -07:00
Andrew Godwin
0b5a3e5323 Don't catch GET errors 2022-11-20 18:50:45 -07:00
Andrew Godwin
6a8fe5cb4b Remove pyOpenSSL dependency
(I figured out what padding to use with cryptography)
2022-11-20 18:42:39 -07:00
Andrew Godwin
5ddce16213 Add a system actor to sign outgoing S2S GETs 2022-11-20 18:29:19 -07:00
Raphael Lullis
a351c6b117
Fix mimetype for JPEG file extensions (#25) 2022-11-20 16:03:21 -07:00
Andrew Godwin
6e88c00969 Don't waste DB rows on bad inbox actors
Seems Sidekiq will keep trying to deliver messages even when the actor
no longer exists?
2022-11-20 14:20:28 -07:00
Andrew Godwin
70d01bf1b4 Fixed #23: Replace https hack with header setting 2022-11-20 13:58:54 -07:00
Andrew Godwin
f491fdb56e Actor delete, sentry async, faster stator 2022-11-20 12:32:49 -07:00
Michael Manfre
6b7082a194
Add config identity_min_length and apply non-admin validation 2022-11-20 11:13:44 -07:00
Andrew Godwin
8019311490 Deployment re-jiggling 2022-11-18 17:24:43 -07:00
Andrew Godwin
81de10b70c Migration reset, start of docs, env vars 2022-11-18 11:28:16 -07:00
Andrew Godwin
1b44a25331 Signup and invite tweaks 2022-11-18 00:09:04 -07:00
Andrew Godwin
6adfdbabe0 Add signup and password reset 2022-11-17 19:16:34 -07:00
Andrew Godwin
2a3690d1c1 Return images and summary in actor 2022-11-17 17:55:50 -07:00
Andrew Godwin
291d7e404e Logged out experience, config, and profiles 2022-11-17 17:33:09 -07:00
Andrew Godwin
2154e6f022 Rework UI to have vertical menus 2022-11-17 14:13:55 -07:00
Andrew Godwin
f5eafb0ca0 Add image/icon upload 2022-11-17 12:21:44 -07:00
Andrew Godwin
5b34ea46c3 Call it admin rather than system settings 2022-11-16 21:42:25 -07:00
Andrew Godwin
1b52acdb56 Domains management pages 2022-11-16 21:12:28 -07:00
Andrew Godwin
44af0d4c59 Add start of a settings (config) system 2022-11-16 17:23:46 -07:00
Andrew Godwin
495e955378 Tag and visibility handling 2022-11-16 13:53:40 -07:00
Andrew Godwin
20e63023bb Get outbound likes/boosts and their undos working 2022-11-15 15:30:32 -07:00
Andrew Godwin
b5cacb09e3 Permit Mastodon's weird HTML through 2022-11-13 19:03:43 -07:00
Andrew Godwin
34b24a0dcb More UI! 2022-11-13 16:15:14 -07:00
Andrew Godwin
143a4a6e8c Start some settings work 2022-11-12 22:10:06 -07:00
Andrew Godwin
878f56b411 Post URIs and host-meta 2022-11-12 21:14:21 -07:00
Andrew Godwin
dd4328ae52 Add JSON-LD signatures and tests for sig stuff 2022-11-12 15:10:15 -07:00
Andrew Godwin
8fd5a9292c Posting and fan-out both working 2022-11-11 23:04:43 -07:00
Andrew Godwin
feb5d9b74f Got up to incoming posts working 2022-11-11 22:02:43 -07:00
Andrew Godwin
fbfad9fbf5 Inbound and outbound follows basic working 2022-11-10 23:42:43 -07:00
Andrew Godwin
c391e7bc41 THE FOLLOWS, THEY WORK
Well, in one direction anyway
2022-11-07 00:19:00 -07:00
Andrew Godwin
fb6c409a9a Rework task system and fetching.
I can taste how close follow is to working.
2022-11-06 21:30:07 -07:00