Commit Graph

1627 Commits (aee82e3b7329de8c720ebb5a30015eed6d974e8b)

Author SHA1 Message Date
Eugen Rochko a8814a19dc Add basic OEmbed provider API, fix #247 2016-11-30 23:01:03 +01:00
Eugen Rochko 8d4ef0b6c3 Per-status control for unlisted mode, also federation for unlisted mode
Fix #233, fix #268
2016-11-30 21:34:59 +01:00
Eugen Rochko 329b2a326d Normalize localizations, add stub for admin/accounts 2016-11-30 15:32:26 +01:00
Eugen Rochko 67db2cd871 Upgrade Paperclip to 5, AWS-SDK to 2, do not generate medium/small versions of avatars 2016-11-29 14:20:15 +01:00
Eugen Rochko 3c1c2b0e06 Adding rack timeout of 30sec, PuSH jobs moved to push queue so they
can be processed separately
2016-11-29 02:07:14 +01:00
Eugen Rochko 56b9edd476 Don't rate-limit PuSH endpoints 2016-11-29 00:44:11 +01:00
Eugen Rochko 79075e1303 Fix URLs in inline-rendered XML 2016-11-29 00:26:01 +01:00
Eugen 4d3cd93221 Fix URLs in ApplicationController.renderer 2016-11-28 21:21:05 +01:00
Eugen Rochko f37efe8e56 Add simple admin overview of PuSH subscriptions 2016-11-28 18:45:13 +01:00
Eugen Rochko ef93efbb5b Enabling portuguese and hungarian translations, which are awfully incomplete 2016-11-28 13:55:03 +01:00
Eugen Rochko b5ad0eb4ea Adding embedded PuSH server 2016-11-28 13:36:47 +01:00
Eugen 313ebb4962 Merge pull request #275 from kodacs/master
Hungarian translation for Mastodon.
2016-11-26 18:33:48 +01:00
Eugen Rochko 8b32b212de Fix CDN_HOST variable requirement 2016-11-26 15:27:05 +01:00
Eugen Rochko de5764c372 Fix reset date format when rate limited 2016-11-25 18:20:47 +01:00
kodacs e737856f59 #275 fix missing i18n item 2016-11-25 14:56:28 +01:00
kodacs 2774adc6fe fixing yamls for #275 2016-11-25 13:57:37 +01:00
kodacs 9849c564de fix #275 2016-11-25 13:35:08 +01:00
nicolas 8cd2d6a174 Merge branch 'master' into french-translation 2016-11-25 13:33:00 +01:00
nicolas 3958b6c655 Update simple_form.fr.yml 2016-11-25 13:30:52 +01:00
Eugen Rochko 9798cf624a Normalized locale files 2016-11-25 13:15:07 +01:00
Eugen 8183330361 Merge pull request #273 from nclm/french-translation
French localisation update
2016-11-25 13:14:30 +01:00
Eugen Rochko ea0846645a Fix #65 - Options to block notifications from people you don't follow/who don't follow you 2016-11-25 13:13:16 +01:00
kodacs 6d952d6815 Server side HU translation + Toot fix. 2016-11-25 12:43:23 +01:00
nicolas 283623e3d4 Update simple_form.fr.yml 2016-11-25 09:25:31 +01:00
nicolas ed8361b57a Update fr.yml 2016-11-25 09:25:29 +01:00
Eugen Rochko 30f9e9e624 Remove Neo4J 2016-11-24 23:46:27 +01:00
Eugen Rochko 8ab2fcbb2c Mini Profiler not working well, remove it 2016-11-24 19:59:11 +01:00
Eugen Rochko f613f2b84a Only distribute statuses to followers who signed in in the last 2 weeks, add rake task for clearing feeds of inactive users 2016-11-24 18:17:58 +01:00
nicolas 29bcf41808 Merge branch 'master' into french-translation 2016-11-23 15:43:27 +01:00
nicolas cb19a97e3e Update doorkeeper.fr.yml
e
2016-11-23 14:47:41 +01:00
nicolas 85e53eb127 Update doorkeeper.fr.yml 2016-11-23 14:45:31 +01:00
Eugen Rochko 30010a6dbd Moving some counter queries out of subqueries in the API 2016-11-22 22:59:54 +01:00
Eugen Rochko 33ccf97c49 Fix broken locales 2016-11-22 11:34:36 +01:00
nicolas a731b0d15a Update fr.yml 2016-11-22 10:39:15 +01:00
nicolas 9725264490 Update simple_form.fr.yml
silenced mode + edits
2016-11-22 10:32:43 +01:00
nicolas 1a9ad408e8 Merging code updates (Unlisted Mode) 2016-11-22 10:25:17 +01:00
Eugen Rochko 74df3ba1d7 Local accounts can control "silenced" attribute which removes them from public timeline 2016-11-21 23:06:41 +01:00
nicolas 1aeebf8de5 Adding French locale 2016-11-21 22:46:59 +01:00
nicolas d20ba4c34c Importing doorkeeper.fr.yml
From https://github.com/doorkeeper-gem/doorkeeper-i18n/blob/master/rails/locales/fr.yml
2016-11-21 22:39:20 +01:00
nicolas 324fe9b102 Importing devise.fr.yml
From https://gist.github.com/qsypoq/4cf3b858ff8242ffb013
2016-11-21 22:34:50 +01:00
Eugen Rochko 0943e98288 Adding option to specify asset server, filter followers query by local accounts
during Fan Out On Write to load less stuff into memory
2016-11-21 22:04:10 +01:00
nicolas 8532fe10d6 First version for simple_form.fr.yml 2016-11-21 21:30:13 +01:00
nicolas a100ad0334 First version for fr.yml 2016-11-21 21:25:27 +01:00
nicolas fd49a94259 Create devise.fr.yml 2016-11-21 20:59:41 +01:00
nicolas cdf8b2019a Create doorkeeper.fr.yml 2016-11-21 20:59:13 +01:00
nicolas 2bf59ee5c5 Create simple_form.fr.yml 2016-11-21 20:58:43 +01:00
nicolas d9c0211b88 Create fr.yml 2016-11-21 20:57:28 +01:00
Eugen Rochko 4176de708e Fixes for the Spanish translation 2016-11-21 11:05:11 +01:00
Eugen Rochko 951843e646 Adding notifications column 2016-11-20 19:39:58 +01:00
Eugen Rochko 38025dfea3 Adding unified streamable notifications 2016-11-20 19:39:58 +01:00
Victorhck 29928a1082 improvements in text made by Ekaitz 2016-11-20 00:52:06 +01:00
Victorhck 6185b4167f fix typos, and suggestions made by Ekaitz 2016-11-20 00:50:45 +01:00
Eugen Rochko 862ce37f4f Fix up Spanish translations 2016-11-19 22:05:26 +01:00
Victorhck 84a1560274 Finished spanish translation config files 2016-11-19 18:40:03 +01:00
Eugen 132d231107 Fix wrong language declaration 2016-11-19 18:31:36 +01:00
Eugen 9d766cd6bf Fix wrong language declaration 2016-11-19 18:31:21 +01:00
victorhck d3aa9f7961 finished spanish translation config files 2016-11-19 17:45:45 +01:00
Eugen Rochko 42fb16ec3a Activating Spanish i18n 2016-11-19 00:10:47 +01:00
Victorhck c12e893e7e Spanish translation for devise.es.yml 2016-11-18 23:57:03 +01:00
Victorhck 84db0df531 finished spanish translation for es.yml 2016-11-18 23:04:26 +01:00
victorhck 689077f743 started sp translations config locales 2016-11-18 20:39:40 +01:00
Eugen Rochko a82a15a38e Adding german localization 2016-11-18 15:53:46 +01:00
Eugen Rochko 0e0b4f9e59 i18n for devise mailer too 2016-11-16 18:25:21 +01:00
Eugen Rochko b8e6ca45e5 Add user locale setting 2016-11-16 17:56:31 +01:00
Eugen Rochko 1b61e404b4 Localizations for most server-side strings 2016-11-16 00:55:33 +01:00
Eugen Rochko 0e956910c3 Adding some localizations 2016-11-15 23:02:57 +01:00
Eugen Rochko e71b152d89 Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
Eugen Rochko 0f7a388de6 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 cbfa28b9cc Use full-text search for autosuggestions 2016-11-12 14:36:10 +01:00
Eugen Rochko beb370801f Fix #141 - Add "Server: Mastodon" header to responses 2016-11-10 23:34:33 +01:00
Eugen Rochko a6667f7f58 Replace setting custom CORS headers with rack-cors, set it on /oauth/token endpoint 2016-11-09 18:06:01 +01:00
Eugen Rochko beb36e24fe API pagination for all collections using Link header 2016-11-09 17:48:44 +01:00
Eugen Rochko d98b43cf56 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 46191e7071 Adding Emoji One 2016-11-08 21:46:29 +01:00
Eugen Rochko 9da30e31c8 Fix region setting for AWS gem 2016-11-08 18:55:46 +01:00
Eugen Rochko 8f0869876b 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 89e887b44a Fix insecure S3 URLs 2016-11-06 20:59:06 +01:00
Eugen Rochko 54b9a42b3a Fix URL configuration when S3 is enabled 2016-11-06 20:43:16 +01:00
Eugen Rochko ec43fb73ed Improve S3 config 2016-11-06 18:55:20 +01:00
Eugen Rochko eb6ad973d1 Adding optional S3, fail-mastodon 2016-11-06 18:35:46 +01:00
Eugen Rochko cb22dce970 Adding hashtags 2016-11-05 17:13:14 +01:00
Eugen Rochko 8ae3306bd3 Add pghero for analyzing postgres performance in production 2016-11-04 18:35:04 +01:00
Eugen Rochko 834f3c4388 Add tests for recently added API end points 2016-11-03 18:53:37 +01:00
Eugen Rochko 7a527c947d Fix reblogged/favourited caching; add API endpoints for who favd/reblogged status 2016-11-03 14:50:22 +01:00
Eugen Rochko e6e80a8017 Add puma preloading, decrease DB pool size to size of threads per worker 2016-11-02 16:38:54 +01:00
Eugen Rochko c3c122d2ba 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 45c22cd9a4 Fix missing default headers 2016-11-02 13:12:18 +01:00
Eugen Rochko e7035a4d39 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 36470feeb2 Fix follow icon changing plus to minus, add terms page stub 2016-11-01 18:05:55 +01:00
Eugen Rochko 38cacac4b0 Adding common followers API, fixing fallback query again 2016-10-29 01:29:19 +02:00
Eugen Rochko ff0eca7337 Restrict access to oauth/applications to admins only 2016-10-23 12:08:52 +02:00
Eugen Rochko 6657414266 Adding OAuth access scopes, fixing OAuth authorization UI, adding rate limiting
to the API
2016-10-22 19:39:44 +02:00
Eugen Rochko be98addccc Improving all forms 2016-10-18 16:37:15 +02:00
Eugen Rochko 02613aef3b Adding application/jrd+json webfinger resource 2016-10-18 02:54:49 +02:00
Eugen Rochko b92c8c3f87 More debugging 2016-10-18 01:22:28 +02:00
Eugen Rochko 032de4b5e8 More debugging 2016-10-18 00:59:18 +02:00
Eugen Rochko aefc7d7694 Do not compress JS (perhaps it removes source maps, needed for debugging) 2016-10-18 00:48:40 +02:00
Eugen Rochko 56891c4bcc Enable source maps 2016-10-18 00:36:01 +02:00
Eugen Rochko 5860094354 Adding sync of follow relationships to Neo4J, accounts/suggestions API 2016-10-14 23:10:07 +02:00
Eugen Rochko 588cb77e9f E-mail preferences page 2016-10-14 02:28:49 +02:00
Eugen Rochko c3f5dfeabb Adding public timeline 2016-10-07 16:00:11 +02:00
Eugen Rochko 10395fd275 Fix #72 - add follow/unfollow button to public profiles 2016-10-06 21:27:58 +02:00
Waldir Pimenta 9f2df5672e use consistent capitalization for subject lines 2016-10-06 11:16:59 +01:00
Yann Vaillant 043ff2f616 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
Eugen Rochko 6045b6cb18 Customizing devise views and controllers 2016-03-05 22:43:05 +01:00
Eugen Rochko 7e93da3f8d Removing grape and adding devise 2016-03-05 13:12:24 +01:00
Eugen Rochko 23d08c6749 Changing the use of config constants to the Rails configuration object 2016-02-29 20:06:39 +01:00
Eugen Rochko 0e8f59c16f Refactoring Grape API methods into normal controllers & other things 2016-02-29 19:42:08 +01:00
Eugen Rochko ee73d35eea Incoming Salmon requests can be turned into follows and unfollows 2016-02-23 22:17:07 +01:00
Eugen Rochko fa33750105 Adding reblogs, favourites, improving atom generation 2016-02-23 19:17:37 +01:00
Eugen Rochko 3b0bc18db9 Improved Atom rendering templates, added README 2016-02-23 13:08:01 +01:00
Eugen Rochko 2bc48e9064 Individual atom entries 2016-02-22 19:11:07 +01:00
Eugen Rochko 1dad72bf13 Fixes and general progress 2016-02-22 18:10:30 +01:00
Eugen Rochko 709c6685a9 Made some progress 2016-02-22 16:00:20 +01:00
Eugen Rochko 9c4856bdb1 Initial commit 2016-02-20 22:53:20 +01:00