Andrew Godwin
a815622190
Reinforce service domain uniqueness
2022-12-26 15:29:09 -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
d2766860c5
Views that return fixed content only generate the content once ( #271 )
2022-12-25 14:26:15 -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
da00a67cb5
Don't double escape summary
2022-12-24 12:49:59 -07:00
Michael Manfre
5536397bdb
Prettier debug json ( #260 )
2022-12-24 11:05:07 -07:00
Andrew Godwin
4339b09dd4
Also catch empty host-meta
2022-12-24 10:56:49 -07:00
Andrew Godwin
a7bbbb5663
Also catch host-meta parse errors
2022-12-24 10:56:22 -07:00
Tyler Kennedy
801c807a2b
Simple user stylesheet support. ( #258 )
2022-12-24 07:28:39 -07:00
Michael Manfre
c25da3a95f
Better djadmin Identity search ( #253 )
2022-12-24 06:34:15 -07:00
Andrew Godwin
f5d06d2656
Move wellness options inside Interface
2022-12-23 23:01:27 -07:00
Michael Manfre
aca77314d1
Fixes #239 - Add option to hide Boost and Like counts ( #247 )
2022-12-23 22:16:26 -07:00
Michael Manfre
9fb18ac841
Identity background images can be relative ( #250 )
2022-12-23 21:57:50 -07:00
Tyler Kennedy
5dcdee237c
Handle host-meta, which is required for webfinger, not optional. ( #220 )
2022-12-23 21:35:17 -07:00
Andrew Godwin
699b6fc29e
"Remove posts from front page" option
2022-12-22 14:16:08 -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
c890382b30
Fix some of that webfinger breakage
2022-12-22 10:43:53 -08: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
ff38948b2f
Handle language'd public keys
2022-12-22 05:59:07 +00:00
Andrew Godwin
8729baaea4
Show when a follow is pending
2022-12-22 05:54:01 +00:00
Andrew Godwin
ca3dc82a62
Don't linkify hashtags in usernames and metadata
...
Fixes #228
2022-12-22 01:10:56 +00:00
Michael Manfre
578b504c92
Include long form and shortform actor uri in webfinger to fix some servers ( #226 )
2022-12-22 20:51:39 +00:00
Andrew Godwin
3ebbb79bb5
Deal with initially-null summary
...
Fixes #234
2022-12-22 01:01:26 +00:00
Andrew Godwin
df90285356
Fix setting empty summary
2022-12-21 21:56:45 +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
Andrew Godwin
23db8f3dd8
Make summary HTML-formatted (and safe!)
2022-12-21 20:48:39 +00:00
Andrew Godwin
c9794c0fcf
Add public following/followers pages
2022-12-21 20:36:10 +00:00
Michael Manfre
ed83726247
Identity fanout ( #196 )
2022-12-21 17:13:39 +00:00
Andrew Godwin
3f37c7ffe7
Don't allow empty or bad actor responses
2022-12-21 16:13:36 +00:00
Andrew Godwin
480fa70b1f
Handle rejected follows
2022-12-21 16:11:58 +00:00
Andrew Godwin
d1e398a7b7
Invite creation improvements
2022-12-20 14:38:42 +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
e28294c81a
Hashtag admin simplification
2022-12-20 09:16:03 +00:00
Andrew Godwin
39013e0bb5
Add moderation/admin separation
2022-12-20 09:01:54 +00:00
Andrew Godwin
0c4eb74165
Invites admin
2022-12-20 08:52:03 +00:00
Andrew Godwin
d91d090566
Handle follows to dead actors
2022-12-20 07:10:31 +00:00
Andrew Godwin
f4f575d22f
Type and fanout fixes
2022-12-20 07:01:30 +00:00
Andrew Godwin
6eaaa6eac4
Allow other Actor types
2022-12-20 06:52:33 +00:00
Andrew Godwin
c3a60bbf13
Remove identity avatar fetching
2022-12-19 20:55:27 +00:00
Andrew Godwin
0dca7eae5f
Implement API follow/unfollow
...
Fixes #198
2022-12-19 20:54:09 +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
Andrew Godwin
adf245b416
Follow webfinger redirects
2022-12-18 14:00:28 -07:00
Michael Manfre
a408cbaa27
Post types ( #182 )
...
Initial support for Posts of type other than 'Note'. Render special Post types with templates.
2022-12-18 09:09:25 -07:00
Michael Manfre
bb81f0e559
Process Identity metadata name same as value ( #194 )
2022-12-17 21:15:11 -07:00
Andrew Godwin
c5e00a2c73
Switch ordering for domain default field
2022-12-17 17:17:59 -07:00
Andrew Godwin
77ef358fef
Allow markdown on signup text
2022-12-17 17:02:54 -07:00
Michael Manfre
ea99f65c26
Icon and image for Identity could be a list
2022-12-17 15:42:29 -07:00
Andrew Godwin
4d71da7ae1
Allow for remote policy pages
2022-12-17 15:30:51 -07:00
Andrew Godwin
d08324e159
Handle timeouts on image fetch
2022-12-17 15:00:50 -07:00
Andrew Godwin
64f113dd8d
Receive inbound reports
2022-12-17 14:58:04 -07:00
Andrew Godwin
e8d6dccbb2
Report function and admin
2022-12-17 14:45:31 -07:00
Andrew Godwin
2eb07a5f5f
Download and store user avatars locally if small
2022-12-17 12:53:13 -07:00
Andrew Godwin
24a4fbe1f8
Catch all possible request errors
2022-12-17 12:29:48 -07:00
Andrew Godwin
0fa5522e6a
Handle delete.note as well as delete.tombstone
2022-12-17 12:18:04 -07:00
Andrew Godwin
62f2b867b9
Fix serving of system actor
...
Fixes #183
2022-12-17 12:00:47 -07:00
Andrew Godwin
e5b76c120e
Fetch emoji for user profiles
2022-12-16 20:04:28 -07:00
Andrew Godwin
770f6728f6
Fix mastodon LD namespace
...
Fixes #179
2022-12-16 19:45:39 -07:00
Andrew Godwin
12567f6891
Identity admin/moderation
2022-12-16 19:42:48 -07:00
Andrew Godwin
45c6978bc3
User admin and LD schema fixes
2022-12-16 16:38:52 -07:00
Andrew Godwin
e0f1bb629c
URLs can be empty too
2022-12-15 19:10:50 -07:00
Andrew Godwin
faca9224ed
Handle API identities with no name
2022-12-15 18:59:04 -07:00
Andrew Godwin
bce7add2b4
Fix login form errors not appearing
...
Fixes #175
2022-12-15 16:24:06 -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
Andrew Godwin
1130c23b1e
Stator stats overhaul
...
Removes the error table, adds a stats table and admin page.
Fixes #166
2022-12-15 12:26:44 -07:00
Michael Manfre
af3142ac3a
Basic Emoji suppport ( #157 )
2022-12-15 00:50:54 -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
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
Andrew Godwin
3e062aed36
Timelines working
2022-12-12 11:56:49 -07:00
Andrew Godwin
602e5a3780
Add system actor and shared inbox
2022-12-10 13:24:49 -07:00
Andrew Godwin
3595af7bd2
Media proxy, caching and tuning docs
...
Fixes #67
2022-12-10 12:16:08 -07:00
Michael Manfre
a576c5b5ed
Improve djadmin filtering and search ( #149 )
2022-12-08 10:29:51 -07:00
Tom Usher
1440ee9ceb
Support deeper subdomains in domain validation ( #110 )
...
Use a new validator class with regex based on the URLValidator from Django
2022-12-07 09:25:10 -07:00
Michael Manfre
42c7b629cf
Ignore actor delete messages for unknown actors ( #124 )
2022-12-05 22:23:35 -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
e2d28a4be0
Add pagination and search to federation page
2022-12-05 19:54:47 -07:00
Andrew Godwin
a31f676b46
Policy pages and signup tests.
...
Fixes #113
2022-12-05 19:24:46 -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
Andrew Godwin
93ccb5dd32
Make search work with URLs
2022-12-04 21:13:33 -07:00
Andrew Godwin
676bc8c0ee
Make the user fetch interval much longer
2022-12-04 10:46:59 -07:00
Andrew Godwin
ec1848e095
Adding RSS feeds for local identities
2022-12-04 08:20:50 -07:00
Tyler Kennedy
6ce05296b0
Make follows a top-level activity. ( #94 )
2022-12-04 09:41:41 -07:00
Andrew Godwin
8835fdee6b
Explicitly ignore add and remove messages for now
2022-12-04 07:36:38 -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
0221ea261f
Admin tweaks
2022-11-27 17:16:09 -07:00
Andrew Godwin
3b079526a2
User fetching and inbox message cleaning
2022-11-27 17:05:31 -07:00
Andrew Godwin
2f443414a7
Collect more actor information in fetch
...
Fixes #31
2022-11-27 16:43:20 -07:00
Tyler Kennedy
68d59b399e
Set content type when serving object
...
Fixes #37
2022-11-27 14:43:46 -07:00
Andrew Godwin
98cd3f5b0f
Fix tests
2022-11-26 12:24:38 -07:00
Michael Manfre
d60ba9a051
Added default post visibility
2022-11-25 19:33:46 -07:00
Andrew Godwin
ab7a8cb120
Don't error admin decorator on anonymous
2022-11-25 18:37:09 -07:00
Andrew Godwin
1cf1f2e543
Implement user discoverability
2022-11-25 18:32:45 -07:00
Andrew Godwin
19909bdef0
Discard messages from blocked servers
2022-11-25 18:11:31 -07:00
Andrew Godwin
8ca36fd958
Add federation admin page
2022-11-25 17:52:57 -07:00
Andrew Godwin
3a608c2012
Ensure usernames and domains are lowercase
2022-11-24 16:28:47 -07:00
Michael Manfre
f88efa40d4
Code dedupe Webfinger and fix SystemActor inbox URL
2022-11-22 21:53:02 -07:00
Andrew Godwin
975c205d1d
Show boosts and likes on other post list pages
2022-11-22 19:58:56 -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
db0edcd2ae
Say all our users are discoverable for now
2022-11-22 19:40:59 -07:00
Andrew Godwin
7b867b229d
Switch to new identity on creation
2022-11-22 18:41:10 -07:00
Andrew Godwin
47de2c4424
Fix profile page post listing
2022-11-22 18:39:15 -07:00
Andrew Godwin
05ed5989e3
Better way to initialise things on setup.
2022-11-22 11:59:34 -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
0fdeb48ff4
Catch more request errors
2022-11-21 15:41:12 -07:00
Andrew Godwin
8d56f8388f
Don't error when no resource on webfinger
2022-11-21 14:34:03 -07:00
Andrew Godwin
cfae183e80
Don't error fetching people if they're in the DB
2022-11-21 14:31:16 -07:00
Andrew Godwin
c4be52357b
Make test directories into modules
2022-11-20 23:26:53 -07:00
Andrew Godwin
da936cd7df
Don't try to make a keypair during tests
2022-11-20 23:08:09 -07:00
Andrew Godwin
5de3a7ad67
Raise proper errors when it's our fault
2022-11-20 18:45:28 -07:00
Andrew Godwin
97a841d1bb
Move signed request onto Identity as a shortcut
2022-11-20 18:32:55 -07:00
Andrew Godwin
5ddce16213
Add a system actor to sign outgoing S2S GETs
2022-11-20 18:29:19 -07:00
Andrew Godwin
bed5c7ffaa
Don't error when retrieving existing user
...
Happens when a user is not yet fetched but we look them up via a
successful webfinger
2022-11-20 17:18:25 -07:00
Michael Manfre
61ce62b026
Enforce signups_allowed=False ( #26 )
2022-11-20 16:03:09 -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
94d92fdf8a
Handle remote user deletions
2022-11-20 12:51:15 -07:00
Andrew Godwin
2d7f33879f
Actually do deletes right
2022-11-20 12:36:40 -07:00
Andrew Godwin
f491fdb56e
Actor delete, sentry async, faster stator
2022-11-20 12:32:49 -07:00
Andrew Godwin
77643a4fe1
Add more error handling
2022-11-20 12:24:03 -07:00
Andrew Godwin
facdd2c080
More error handling for remote fetch
2022-11-20 12:02:38 -07:00
Andrew Godwin
7a4f9cf293
Add error catching on actor fetch
2022-11-20 11:37:26 -07:00
Andrew Godwin
ef910c53b7
Fix user profile image size
2022-11-20 11:19:51 -07:00
Andrew Godwin
4b4032be6f
Add Sentry error integration option
2022-11-20 11:18:55 -07:00
Michael Manfre
75e7385968
Fix resize of image on upload of Identity profile pics
2022-11-20 11:18:14 -07:00
Michael Manfre
6b7082a194
Add config identity_min_length and apply non-admin validation
2022-11-20 11:13:44 -07:00
Simon Willison
b9bab4c54c
Configure GitHub Actions to run tests ( #13 )
2022-11-19 22:04:28 -07:00
Andrew Godwin
6e79527bb5
A few more fixes from going live
2022-11-19 13:38:25 -07:00
Andrew Godwin
2142677b01
A few more tweaks for an initial deploy
2022-11-19 10:20:13 -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
b3072c81ba
Follows page
2022-11-17 20:04:01 -07:00
Andrew Godwin
adf2449d37
Add the user settings page too
2022-11-17 19:36:25 -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
0851fbd1ec
Add search and better notifications
2022-11-17 15:10: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
7f8e792402
Force username to lowercase for now
2022-11-16 23:10:55 -07:00
Andrew Godwin
b13c239213
Handle post edits, follow undos
2022-11-16 22:23:32 -07:00