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
ccded99a63
Add favourites api endpoint ( #465 )
2023-01-20 19:49:55 -07:00
Michael Manfre
cc75863b8f
Fixes #431 - Preserve href when stripping <a> tags ( #436 )
2023-01-17 23:41:33 -07:00
Michael Manfre
9b6ceee490
Apply Mastodon style link text shortening ( #426 )
2023-01-16 11:59:46 -07:00
Andrew Godwin
54e7755080
Unfollowing or blocking users purges timeline
...
Fixes #366
2023-01-16 11:53:40 -07:00
Corry Haines
cfe18932b8
Match sanitizing for posts to Mastodon ( #422 )
...
Creates filter for REWRITTEN_TAGS that converts them to `p` rather than ripping them out entirely, and formats `ul` as break-separated list
Both changes align sanitization to Mastodon's "strict" sanitizer at https://github.com/mastodon/mastodon/blob/main/lib/sanitize_ext/sanitize_config.rb#L73
I don't love the complexity of the Filter, but Bleach doesn't give us great options to work with. The code operates within an iterator without the useful "sibling" methods that Ruby's equivalent has. Also, Bleach runs filters _after_ sanitizing (unlike Ruby's which runs before) so we have to pass all the elements through the sanitizer, then rewrite them after the fact.
2023-01-15 22:32:04 -07:00
Andrew Godwin
b721833b4f
Fix old post tests
2023-01-15 21:11:08 -07:00
Andrew Godwin
b44be55609
Fixed #408 : Implemented blocking
2023-01-15 13:35:45 -07:00
Michael Manfre
fc8b5be4a0
Support future times with timedeltashort tag ( #403 )
2023-01-13 10:54:02 -07:00
Andrew Godwin
fb881dd5de
Fix tests and most of pagination
2023-01-08 23:06:33 -07:00
Andrew Godwin
a875dd7a54
Perform shared inbox delivery
2023-01-08 13:46:40 -07:00
Michael Manfre
801fe2e58a
Add Domain.state with nodeinfo fetching ( #347 )
2023-01-04 16:40:16 -07:00
Andrew Godwin
13fc4b42de
Handle Diaspora's XML webfinger
2022-12-31 11:13:51 -07:00
Andrew Godwin
d247baa307
Serve webfinger and host-meta with correct mimetypes
...
Fixes #323 (hopefully!)
2022-12-30 10:12:48 -07:00
Andrew Godwin
b03d9f0e12
Handle deletions of post URIs
...
Fixes #306
2022-12-28 22:47:28 -07:00
Andrew Godwin
716b74404f
Allow for follow accepts with object URIs only
...
Fixes #214
2022-12-28 22:25:34 -07:00
Michael Manfre
50c07f491e
Guard Post mentions processing from unfetched Identities ( #272 )
2022-12-25 14:37:31 -07:00
Michael Manfre
ab398758a9
Fixed mention linking with mixed case usernames ( #265 )
2022-12-24 21:04:25 -07:00
Andrew Godwin
294095c592
Don't allow trailing period in mention
...
Fixes #249
2022-12-23 01:47:00 -07: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
9c376395db
Invites overhaul
...
No email tie, added uses and expires, now works by URL.
2022-12-22 07:03:21 +00:00
Andrew Godwin
79fd800a78
Accept objects with contentMap only
2022-12-22 05:29:49 +00:00
Andrew Godwin
da38889aa7
Add account search endpoint
2022-12-21 21:54:49 +00:00
Andrew Godwin
c9794c0fcf
Add public following/followers pages
2022-12-21 20:36:10 +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
Andrew Godwin
92305ef515
Fix hashtag tests
2022-12-20 14:28:41 +00:00
Andrew Godwin
51d34eda9c
Significantly better hashtag link parsing
...
Fixes #203
2022-12-20 13:55:14 +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
9067caf9a3
Add expanded post context
...
Fixes #120
2022-12-20 09:59:06 +00:00
Andrew Godwin
770aa1531a
Do actual ISO date parsing
...
Fixes #187
2022-12-18 10:45:32 -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
Andrew Godwin
62f2b867b9
Fix serving of system actor
...
Fixes #183
2022-12-17 12:00:47 -07:00
Andrew Godwin
45c6978bc3
User admin and LD schema fixes
2022-12-16 16:38:52 -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
612ab4bcdf
Fix stator test fixture
2022-12-15 13:48:24 -07:00
Andrew Godwin
525deb4418
Fix tests with no static collection
2022-12-15 10:09:35 -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
35a45f1c55
A few more fixes and a bad test
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
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
64cea557be
Collapse linkify mentions ( #123 )
2022-12-05 21:44:26 -07:00
Andrew Godwin
5b82c76def
Shorten mention names when linkified
...
Fixes #121
2022-12-05 20:26:21 -07:00
Andrew Godwin
a31f676b46
Policy pages and signup tests.
...
Fixes #113
2022-12-05 19:24:46 -07:00
Paolo Melchiorre
a9bb4a7122
Add pyupgrade with --py310-plus in pre-commit ( #103 )
2022-12-05 10:38:37 -07:00
Andrew Godwin
9becbb24d4
Fix post tests, don't reply to self
2022-12-04 21:30:18 -07:00
Andrew Godwin
6291fa0f5c
Fix mentions in replies/capitalisation
2022-12-04 20:23:02 -07:00
Andrew Godwin
8835fdee6b
Explicitly ignore add and remove messages for now
2022-12-04 07:36:38 -07:00
Andrew Godwin
c299f8aefd
Fix broken tests
2022-12-02 16:46:43 -07:00
Andrew Godwin
8139ccffdb
Fix hashtag extraction
2022-11-29 09:44:37 -07:00
Andrew Godwin
fb342cfb54
Fix hashtagging of HTML entities
2022-11-28 22:34:14 -07:00
Michael Manfre
fb8f2d1098
Hashtags
2022-11-28 21:41:36 -07:00
Andrew Godwin
8e9e3ecf69
Some cleanup around editing
2022-11-27 12:09:08 -07:00
Michael Manfre
6c7ddedd34
Post editing
2022-11-27 11:09:46 -07:00
Michael Manfre
849c221aee
Local-only posting
2022-11-26 10:09:31 -07:00
Michael Manfre
f88efa40d4
Code dedupe Webfinger and fix SystemActor inbox URL
2022-11-22 21:53:02 -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
63ab492439
Fix mentions at the start of posts
2022-11-21 22:17:22 -07:00
Andrew Godwin
53d9452917
Outgoing mentions mostly work (exc. cc followers)
2022-11-21 21:18:13 -07:00
Andrew Godwin
a80e0f117a
Mentionify tests and some fixtures
2022-11-21 20:25:00 -07:00
Andrew Godwin
0d1e09fbcd
Refactor almost all tests into /tests/
2022-11-21 20:10:01 -07:00