Eugen Rochko
fdc17bea58
Fix rubocop issues, introduce usage of frozen literal to improve performance
2016-11-15 16:56:29 +01:00
Eugen Rochko
d42ed78aa4
Fix #110 - Make web UI use browser history, change links in e-mails to link to that
2016-11-13 14:02:34 +01:00
Eugen Rochko
09218d4c01
Use full-text search for autosuggestions
2016-11-12 14:36:10 +01:00
Eugen Rochko
ff229aa978
Fix #141 - Add "Server: Mastodon" header to responses
2016-11-10 23:34:33 +01:00
Eugen Rochko
448ab18a20
Replace setting custom CORS headers with rack-cors, set it on /oauth/token endpoint
2016-11-09 18:06:01 +01:00
Eugen Rochko
b13e7dda1f
API pagination for all collections using Link header
2016-11-09 17:48:44 +01:00
Eugen Rochko
9aecc0f48a
Move timelines API from statuses to its own controller, add a check for
...
resources that require a user context vs those that don't (such as public timeline)
/api/v1/statuses/public -> /api/v1/timelines/public
/api/v1/statuses/home -> /api/v1/timelines/home
/api/v1/statuses/mentions -> /api/v1/timelines/mentions
/api/v1/statuses/tag/:tag -> /api/v1/timelines/tag/:tag
2016-11-08 23:29:08 +01:00
Eugen Rochko
86574ea524
Adding Emoji One
2016-11-08 21:46:29 +01:00
Eugen Rochko
2f21f4cc01
Fix region setting for AWS gem
2016-11-08 18:55:46 +01:00
Eugen Rochko
dbe00a4156
Improved configuration from ENV, cleaned up timeline filter methods
...
to be more readable, add extra logging to process feed service
2016-11-07 23:20:52 +01:00
Eugen Rochko
b835f4aa1c
Fix insecure S3 URLs
2016-11-06 20:59:06 +01:00
Eugen Rochko
d14967e1c8
Fix URL configuration when S3 is enabled
2016-11-06 20:43:16 +01:00
Eugen Rochko
45230c56ab
Improve S3 config
2016-11-06 18:55:20 +01:00
Eugen Rochko
3ab193bc3f
Adding optional S3, fail-mastodon
2016-11-06 18:35:46 +01:00
Eugen Rochko
48b9619439
Adding hashtags
2016-11-05 17:13:14 +01:00
Eugen Rochko
6471a548fe
Add pghero for analyzing postgres performance in production
2016-11-04 18:35:04 +01:00
Eugen Rochko
829d189f44
Add tests for recently added API end points
2016-11-03 18:53:37 +01:00
Eugen Rochko
e4671adc25
Fix reblogged/favourited caching; add API endpoints for who favd/reblogged status
2016-11-03 14:50:22 +01:00
Eugen Rochko
e7723ab662
Add puma preloading, decrease DB pool size to size of threads per worker
2016-11-02 16:38:54 +01:00
Eugen Rochko
53fb7b1aa8
Replace in-memory cache store with redis store, should decrease memory
...
footprint of each running process by 128mb
2016-11-02 13:30:52 +01:00
Eugen Rochko
a59d10d3df
Fix missing default headers
2016-11-02 13:12:18 +01:00
Eugen Rochko
9467b900a2
Make cookies https-only if LOCAL_HTTPS is true, set X-Frame-Options to DENY,
...
add permissive CORS to API controllers
2016-11-02 12:58:15 +01:00
Eugen Rochko
dd03118098
Fix follow icon changing plus to minus, add terms page stub
2016-11-01 18:05:55 +01:00
Eugen Rochko
e0a197650a
Adding common followers API, fixing fallback query again
2016-10-29 01:29:19 +02:00
Eugen Rochko
720d1f8f3d
Restrict access to oauth/applications to admins only
2016-10-23 12:08:52 +02:00
Eugen Rochko
a9e40a3d80
Adding OAuth access scopes, fixing OAuth authorization UI, adding rate limiting
...
to the API
2016-10-22 19:39:44 +02:00
Eugen Rochko
43df35213e
Improving all forms
2016-10-18 16:37:15 +02:00
Eugen Rochko
d5e086a47b
Adding application/jrd+json webfinger resource
2016-10-18 02:54:49 +02:00
Eugen Rochko
dd02fc0ec4
More debugging
2016-10-18 01:22:28 +02:00
Eugen Rochko
6611e3a2ef
More debugging
2016-10-18 00:59:18 +02:00
Eugen Rochko
4baca34a45
Do not compress JS (perhaps it removes source maps, needed for debugging)
2016-10-18 00:48:40 +02:00
Eugen Rochko
c9a7e6e1e3
Enable source maps
2016-10-18 00:36:01 +02:00
Eugen Rochko
e21a3fe0cd
Adding sync of follow relationships to Neo4J, accounts/suggestions API
2016-10-14 23:10:07 +02:00
Eugen Rochko
7a6d95f70c
E-mail preferences page
2016-10-14 02:28:49 +02:00
Eugen Rochko
1f650d327d
Adding public timeline
2016-10-07 16:00:11 +02:00
Eugen Rochko
3554d638b3
Fix #72 - add follow/unfollow button to public profiles
2016-10-06 21:27:58 +02:00
Waldir Pimenta
4f654eb822
use consistent capitalization for subject lines
2016-10-06 11:16:59 +01:00
Yann Vaillant
038a407b9e
Update default devise wording to include reference to Mastodon
...
Fix #68
2016-10-06 07:45:07 +02:00
Eugen Rochko
fe77921e47
Catching more exceptions that slipped through, removing AR logging from
...
production as it's very verbose and not very useful
2016-10-05 13:26:44 +02:00
Eugen Rochko
7b9a4af311
API for blocking and unblocking
2016-10-03 18:17:06 +02:00
Eugen Rochko
fc198a8b4c
Adding e-mail confirmations
2016-10-03 16:51:00 +02:00
Eugen Rochko
d74da1a89a
Small fixes
2016-10-02 23:46:25 +02:00
Eugen Rochko
f06f295890
Fix doorkeeper skip_authorization
2016-10-02 22:55:09 +02:00
Eugen Rochko
6d7290f47c
Add API for getting info about authenticated user: /api/v1/accounts/verify_credentials
2016-10-02 16:14:21 +02:00
Eugen Rochko
4909bbf415
Add logging for outgoing http requests
2016-10-02 14:58:06 +02:00
Eugen Rochko
492224b93f
Allow non-https redirect URIs for OAuth apps (AndStatus seems to require this)
2016-09-30 22:40:31 +02:00
Eugen Rochko
e63aebff7a
Adding landing page
2016-09-27 23:12:33 +02:00
Eugen Rochko
4f9b7432dd
Fix #52 - Add API versioning (v1)
2016-09-27 16:59:08 +02:00
Eugen Rochko
7e14eefc81
Replace logo, fix #57 - delete/unreblog/unfavourite API, fix #45 - app
...
registration API
2016-09-26 23:56:53 +02:00
Eugen Rochko
3b56350121
Fix #6 - Rate limit GET reqs to 300/5min, POST to 100/5min
2016-09-24 13:53:54 +02:00
Eugen Rochko
e46abc71ca
Fix notifications in UI, added new API for fetching account relationships
2016-09-21 22:07:18 +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
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
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
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
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
413e700fe0
Enhancing test suite but I think the problem might have been caching setting
2016-09-05 01:26:08 +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
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 Rochko
bc0692d75b
Removing mini-profiler that doesn't work, formatting timelines a bit better
2016-08-24 19:23:37 +02:00
Eugen Rochko
49520d6e62
Adding React.js, Redux, revamping dashboard
2016-08-24 17:56:44 +02:00
Eugen Rochko
68c93f8b85
Final fix for ActionCable origin issues
2016-08-18 18:51:50 +02:00
Eugen Rochko
8985f8e66c
Fixing more configuration issues with ActionCable
2016-08-18 18:39:35 +02:00
Eugen Rochko
5a8c149f6b
Fix ActionCable origin checking
2016-08-18 18:08:25 +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
6c480c8429
Oops, typo
2016-03-26 13:52:40 +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
5764d52b04
Fix Sidekiq pooling issues. Remove API docs from homepage, replace with
...
a basic home timeline
2016-03-25 16:10:14 +01:00
Eugen Rochko
bb98ee489d
Up the number of pooled DB connections to cover both Sidekiq and Puma workers
2016-03-25 15:10:34 +01:00
Eugen Rochko
318886287b
Fixing some stuff for Turbolinks, adding gzip on top, fixing a n+1 query
2016-03-25 15:09:40 +01:00
Eugen Rochko
36f3da3cde
Adjust down the number of Sidekiq threads to 5 (default of 25 is way too high)
2016-03-25 14:20:31 +01:00
Eugen Rochko
e24bfbde1a
Fixing FanOutOnWriteService, fixing Sidekiq not having enough DB connections
...
in the pool, adding a throttle of 60rpm per IP, adding mini profiler, adding
admin status to users
2016-03-25 14:12:24 +01:00
Eugen Rochko
42dcb0d4cb
Adding Sidekiq for background processing (firstly just of mailers)
2016-03-25 02:50:48 +01:00
Eugen Rochko
f14f462eaf
Adding Turbolinks, adding status posting form on homepage
2016-03-21 18:26:47 +01:00
Eugen Rochko
9d55529318
Fix text color in dashboard inputs, sanitize remote status content in UI,
...
simplify FanOutOnWriteService, add /api/accounts/lookup method
2016-03-21 17:02:16 +01:00
Eugen Rochko
253ab26520
Adding more tests for helpers
2016-03-20 13:50:22 +01:00
Eugen Rochko
b640f35621
Writing out more tests, fixed some bugs
2016-03-20 13:03:06 +01:00
Eugen Rochko
e2b846f630
Adding letter opener for development and Rack::Attack for future rate limiting implementations
2016-03-19 14:57:30 +01:00
Eugen Rochko
71ae4dd3d2
Adding public following and followers pages, fix #3
2016-03-19 14:02:30 +01:00
Eugen Rochko
9cb690c706
Access tokens no longer expire, case-insensitive local username validation, as well as case-insensitive Webfinger look-up
2016-03-16 18:29:52 +01:00
Eugen Rochko
48d66a2055
Fixing the docker container setup (with assets compilation &co)
2016-03-16 12:57:01 +01:00
Eugen Rochko
2c374cd97c
Adding e-mail configuration
2016-03-16 12:13:40 +01:00
Eugen Rochko
b17202ca0f
Adding a docker-compose template for running Mastodon easily
2016-03-14 21:39:39 +01:00
Eugen Rochko
6fec8afc3f
Bind oauth applications to users
2016-03-14 17:49:13 +01:00
Eugen Rochko
3441361568
Adding simple_form, adding profile settings, header image
2016-03-12 20:47:22 +01:00
Eugen Rochko
1aa477ac2f
Customized more doorkeeper views, only logged in users can create oauth apps
2016-03-12 19:46:06 +01:00
Eugen Rochko
aab9f57e36
Adding config for puma, dashboard layout, fixing some queries
2016-03-12 16:21:53 +01:00
Eugen Rochko
447cfef62d
Improving feed queries, switching API to doorkeeper authentication
2016-03-11 16:47:36 +01:00
Eugen Rochko
b919f39b31
Customizing doorkeeper views for authorizing app
2016-03-11 01:58:55 +01:00
Eugen Rochko
6c4c84b161
Distrubute statuses as a fan-out-on-write system, with optional precomputing
2016-03-08 20:20:45 +01:00
Eugen Rochko
fe57f6330f
API methods for retrieving home and mentions timelines
2016-03-07 13:25:26 +01:00
Eugen Rochko
f099bc6091
Adding API for favouriting a status
2016-03-07 12:58:42 +01:00
Eugen Rochko
ab6696e855
Adding doorkeeper, adding a REST API
...
POST /api/statuses Params: status (text contents), in_reply_to_id (optional)
GET /api/statuses/:id
POST /api/statuses/:id/reblog
GET /api/accounts/:id
GET /api/accounts/:id/following
GET /api/accounts/:id/followers
POST /api/accounts/:id/follow
POST /api/accounts/:id/unfollow
POST /api/follows Params: uri (e.g. user@domain)
OAuth authentication is currently disabled, but the API can be used with HTTP Auth.
2016-03-07 12:42:33 +01:00
Eugen Rochko
c605b828b5
Adding routes to follow, unfollow, favourite and reblog (locally known models)
2016-03-06 12:51:55 +01:00