Eugen Rochko
4bec613897
Fix #24 - Thread resolving for remote statuses
...
This is a big one, so let me enumerate:
Accounts as well as stream entry pages now contain Link headers that
reference the Atom feed and Webfinger URL for the former and Atom entry
for the latter. So you only need to HEAD those resources to get that
information, no need to download and parse HTML <link>s.
ProcessFeedService will now queue ThreadResolveWorker for each remote
status that it cannot find otherwise. Furthermore, entries are now
processed in reverse order (from bottom to top) in case a newer entry
references a chronologically previous one.
ThreadResolveWorker uses FetchRemoteStatusService to obtain a status
and attach the child status it was queued for to it.
FetchRemoteStatusService looks up the URL, first with a HEAD, tests
if it's an Atom feed, in which case it processes it directly. Next
for Link headers to the Atom feed, in which case that is fetched
and processed. Lastly if it's HTML, it is checked for <link>s to the Atom
feed, and if such is found, that is fetched and processed. The account for
the status is derived from author/name attribute in the XML and the hostname
in the URL (domain). FollowRemoteAccountService and ProcessFeedService
are used.
This means that potentially threads are resolved recursively until a dead-end
is encountered, however it is performed asynchronously over background jobs,
so it should be ok.
2016-09-21 01:50:31 +02:00
Eugen Rochko
6d89edc4f7
Fix #47 by renaming TIMELINE_SET action to TIMELINE_REFRESH_SUCCESS
2016-09-20 23:18:00 +02:00
Eugen Rochko
1d2856c2af
Since GNU Social hubs don't seem to return a hub.lease_seconds param in the subscription confirmation request,
...
we'll have to default that value to the GS "minimum" (from their code) which is 24 hours.
2016-09-20 03:24:04 +02:00
Eugen Rochko
246330493b
More debugging for PuSH confirmations
2016-09-20 03:18:55 +02:00
Eugen Rochko
a66d34878c
Add more logging to PuSH callback
2016-09-20 03:12:23 +02:00
Eugen Rochko
608a2bfffc
Upgrade to PubSubHubbub 0.4 (removing verify_token)
2016-09-20 02:43:20 +02:00
Eugen Rochko
a86f21cf90
Fix rake tasks and loading bar
2016-09-20 01:53:30 +02:00
Eugen Rochko
1cfc9aa20e
OStatus2 and Goldfinger gems now have timeouts for requests
2016-09-20 01:10:51 +02:00
Eugen Rochko
059ebbf48d
Separate PuSH subscriptions from following, add mastodon:push:refresh task,
...
respect hub.lease_seconds (fix #46 )
2016-09-20 00:43:36 +02:00
Eugen Rochko
1245ee42fb
Update OStatus2 library
2016-09-19 23:52:42 +02:00
Eugen Rochko
98de6927f3
Remove background mask from avatars
2016-09-19 23:28:22 +02:00
Eugen Rochko
337462aa5e
Re-organizing components to be more modular, adding loading bars
2016-09-19 23:26:21 +02:00
Eugen Rochko
f820edb463
Fix type mistake in account component
2016-09-18 18:44:52 +02:00
Eugen Rochko
ee770c3fd3
Live update account timelines, small fix for replyCompose
2016-09-18 18:38:44 +02:00
Eugen Rochko
0967961de7
Improve how account detailed view looks, load account's statuses
2016-09-18 18:18:46 +02:00
Eugen Rochko
dafcb02153
Remove unused action constants
2016-09-18 13:45:39 +02:00
Eugen Rochko
9863196f7b
Small rubocop offences removed
2016-09-18 13:42:24 +02:00
Eugen Rochko
08896f7dcf
Detailed status view scrollable
2016-09-18 13:03:37 +02:00
Eugen Rochko
ab7291b8fe
Add ancestors/descendants during normalization in timeline reducer
...
This way replies will appear in the detailed view live if they are from
statuses that would be delivered to the user normally
2016-09-18 12:51:09 +02:00
Eugen Rochko
dfd5deacf4
Volume toggle control in VideoPlayer
2016-09-18 12:39:00 +02:00
Eugen Rochko
adffc7a495
Fix #43
2016-09-18 12:28:49 +02:00
Eugen Rochko
5342629a0a
Adding webm playback to UI
2016-09-17 18:05:02 +02:00
Eugen Rochko
bd5ad304ba
Adding media controller, 1 webm/compose form allowed, previews generated
2016-09-17 17:47:26 +02:00
Eugen Rochko
183a23943b
Fix how other services used old FollowRemoteAccountService
2016-09-17 17:07:45 +02:00
Eugen Rochko
0e9c1a297a
Improved error handling for FollowRemoteService
2016-09-17 17:03:36 +02:00
Eugen Rochko
8c0b19012b
Fix #41 , debug #42
2016-09-17 16:36:10 +02:00
Eugen
e906677092
Stop event propagation after IconButton onClick
2016-09-16 11:20:39 +02:00
Eugen Rochko
5b0cef9781
Setting up preliminary "detailed" routes in the UI, new API end-point for fetching status context
2016-09-16 00:21:51 +02:00
Eugen Rochko
2e7aac793a
Adding sense of self to the UI, cleaning up routing, adding third (detail) column
2016-09-13 02:24:40 +02:00
Eugen Rochko
d6a64f45fd
Adding a notification stack for error messages
2016-09-12 19:20:55 +02:00
Eugen Rochko
05b0c985b4
Send "delete" Salmons to remote mentioned accounts on status removal
...
Fixes #27
2016-09-12 18:33:34 +02:00
Eugen Rochko
ce29624c6d
Fixing image upload limits, allowing webm, merge/unmerge events trigger
...
timeline reload in UI, other small fixes
2016-09-12 18:22:43 +02:00
Eugen Rochko
3d566279cb
Fix formatter return block
2016-09-10 19:18:17 +02:00
Eugen Rochko
0077fc26df
Merge and unmerge timelines on follow/unfollow, solves #21 , #22
2016-09-10 18:36:48 +02:00
Eugen Rochko
7d45a4e692
Fix local mention regex so it works on newlines in HTML (with a preceding tag)
2016-09-10 10:19:50 +02:00
Eugen Rochko
457625591d
Styling for paragraphs in statuses
2016-09-10 10:14:36 +02:00
Eugen Rochko
73615d7a79
Newlines and paragraphs in local statuses properly formatted
2016-09-10 10:07:56 +02:00
Eugen Rochko
76c40cbfb1
Disallow self-follow
2016-09-10 10:01:08 +02:00
Eugen Rochko
33ad2e5423
Shorten mentions to only usernames
2016-09-10 09:57:41 +02:00
Eugen Rochko
d6b3113304
Validates local username, max sizes for uploads. Fixes #32
2016-09-10 09:43:45 +02:00
Eugen
de7eb2341a
Fix typo in deleteFromTimelines action creator
2016-09-09 20:54:49 +02:00
Eugen Rochko
3cc47beb6e
Refactored generation of unique tags, URIs and object URLs into own classes,
...
as well as formatting of content
2016-09-09 20:04:34 +02:00
Eugen Rochko
735b4cc62e
Probably fixes #31
2016-09-09 15:29:41 +02:00
Eugen Rochko
762157ee4e
Fix for single status pages
2016-09-08 21:23:29 +02:00
Eugen Rochko
85d89b472d
Optimized n+1 queries in accounts Atom and HTML views
...
Added stack trace for SQL queries in development
Removed badly thought out accounts/lookup API
2016-09-08 20:36:01 +02:00
Eugen Rochko
a4cc966476
Removing default avatars
2016-09-08 18:23:59 +02:00
Eugen Rochko
509c18eb13
Fix local follows, 404 in logs
2016-09-08 02:40:51 +02:00
Eugen Rochko
0f4bc56719
Improving production logs, removing n+1 on media attachments in atom,
...
adding attachments display to static views
2016-09-08 01:24:26 +02:00
Eugen Rochko
87576e1ab1
Fixing atom feeds for accounts, adding tests that would catch such bugs in future
2016-09-08 00:33:07 +02:00
Eugen Rochko
499beb4484
UI for uploading media attachments (and cancelling them)
...
Mostly resolves #8 , though attachments are still not displayed in public view
2016-09-07 18:21:57 +02:00
Eugen
1efa8e48d1
Fix enclosures not being parsed for reblogged statuses
2016-09-06 12:30:15 +02:00
Eugen Rochko
aca988a16b
Fix for Drawer growing horizontally
2016-09-06 01:45:17 +02:00
Eugen Rochko
75fbde1c1a
Fixed styling for media attachments in statuses (margins)
2016-09-06 01:27:40 +02:00
Eugen Rochko
ac77170d19
Add icons to column headers, click them to scroll to top
2016-09-06 00:44:28 +02:00
Eugen Rochko
1f18cf97b5
Fix styling of media attachments in statuses
2016-09-06 00:23:27 +02:00
Eugen
265215dae9
Fix reply bug introduced when compose form started using normalized data
2016-09-05 22:43:34 +02:00
Eugen Rochko
5f36d8828a
Better layout for attachments in <MediaGallery>
2016-09-05 20:59:56 +02:00
Eugen Rochko
fc222dfa49
Displaying media attachments in timelines
2016-09-05 20:38:31 +02:00
Eugen Rochko
14fb0ab4a2
Improve JSON output for media attachments, generate :small preview for them
2016-09-05 19:26:24 +02:00
Eugen Rochko
ed94e998bc
Fix for media attachments remote URL download
2016-09-05 19:11:25 +02:00
Eugen Rochko
1d9c886518
Adding enclosures to Atom and statuses JSON
2016-09-05 18:57:59 +02:00
Eugen Rochko
eec0dc46a6
PostStatusService can attach media to status, ProcessFeedService likewise
2016-09-05 18:39:53 +02:00
Eugen Rochko
ae1fac0062
Add API to upload media attachments
2016-09-05 17:46:36 +02:00
Eugen Rochko
05001d54d1
Make compose form also use normalized data
2016-09-05 16:56:43 +02:00
Eugen Rochko
926eea89b5
RemoveStatusService fleshed out, still doesn't send Salmon slaps though
2016-09-05 01:59:46 +02:00
Eugen Rochko
b5ebf99439
Possibly fix issue with stale favourite/reblog information after API call
2016-09-04 21:28:48 +02:00
Eugen Rochko
35dfc0fbcb
Fixed more case-sensitivity issues
2016-09-04 21:15:52 +02:00
Eugen Rochko
29996a7e8b
Fix wrongful mentions breaking status update
2016-09-04 21:07:29 +02:00
Eugen Rochko
54ea7f5dfe
Case-insensitive search by usernames
2016-09-04 21:06:04 +02:00
Eugen Rochko
a82f2e4b82
Fix timelines for users whose user id and account_id are not the same
2016-09-04 19:22:27 +02:00
Eugen Rochko
a289c1d52f
Handle delete Salmons, todo: clean up timelines
2016-09-04 14:44:16 +02:00
Eugen Rochko
1022d682dc
Normalized data in Redux, fix for asset URLs when rendered outside request
2016-09-04 14:04:26 +02:00
Eugen Rochko
d0e2733f63
Fix reblogs of reblogs in UI, add follow form in UI
2016-09-03 14:01:42 +02:00
Eugen Rochko
2d57bcf1b7
Preparing for follow form
2016-09-01 15:13:02 +02:00
Eugen Rochko
c249ceb10c
Reblogs fixed
2016-09-01 14:12:11 +02:00
Eugen Rochko
595c8dda60
Favouriting works, reblogging is a little broken because of <Status>
2016-09-01 13:21:48 +02:00
Eugen Rochko
c2a4d70265
Small style fixes
2016-09-01 12:13:41 +02:00
Eugen Rochko
2093cda89a
Fixing one more typo
2016-08-31 23:07:46 +02:00
Eugen Rochko
d6873797ac
Fix typo
2016-08-31 23:03:01 +02:00
Eugen Rochko
dbae8062f4
Replies in the compose form
2016-08-31 22:58:10 +02:00
Eugen Rochko
1e0e17ba85
Improving styling a little bit
2016-08-31 16:48:21 +02:00
Eugen Rochko
72591cc6d5
Cleaning up action names and compose drawer
2016-08-31 16:15:12 +02:00
Eugen Rochko
92afd29650
The frontend will now be an OAuth app, auto-authorized. The frontend will use an access token for API requests
...
Adding better errors for the API controllers, posting a simple status works from the frontend now
2016-08-26 19:12:19 +02:00
Eugen Rochko
44e57f64dd
Improving statuses, adding a composer drawer, which doesn't work yet
2016-08-25 19:52:55 +02:00
Eugen
f5e1127894
Forgotten return
2016-08-24 23:33:46 +02:00
Eugen Rochko
a541e937ca
More styling for statuses
2016-08-24 21:08:00 +02:00
Eugen Rochko
bc0692d75b
Removing mini-profiler that doesn't work, formatting timelines a bit better
2016-08-24 19:23:37 +02:00
Eugen Rochko
03f5ffcd06
Dockerfile adjustments
2016-08-24 18:51:36 +02:00
Eugen Rochko
49520d6e62
Adding React.js, Redux, revamping dashboard
2016-08-24 17:56:44 +02:00
Eugen Rochko
8985f8e66c
Fixing more configuration issues with ActionCable
2016-08-18 18:39:35 +02:00
Eugen Rochko
8459acd123
Fix for force SSL issue with websockets
2016-08-18 17:48:57 +02:00
Eugen Rochko
6426819b6f
Fix tests
2016-08-18 17:22:44 +02:00
Eugen Rochko
6deb9f966e
Live timelines using ActionCable
2016-08-18 15:49:51 +02:00
Eugen Rochko
10ba09f546
Upgrade to Rails 5.0.0.1
2016-08-17 17:58:00 +02:00
Eugen Rochko
ff2cbc0753
Remember me enabled by default
2016-03-28 00:06:52 +02:00
Eugen Rochko
c38ad208c3
Fix mentions regex to exclude usernames in Medium URLs
2016-03-27 23:51:18 +02:00
Eugen Rochko
039e6f951c
Fix issue with unresolvable usernames
2016-03-27 23:38:46 +02:00
Eugen Rochko
882c94a6bf
Cleaning up status partial
2016-03-26 14:42:05 +01:00
Eugen Rochko
85b00d19b8
Moving Salmon notifications to background processing, fixing mini-profiler
...
behaviour with Turbolinks enabled, optimizing Rabl for production
2016-03-26 13:42:10 +01:00
Eugen Rochko
da4b675aca
Fix favourite handling in ProcessInteractionService
2016-03-26 01:34:12 +01:00