2810013b93
API param to exclude notification types from response ( #1341 )
...
* Add exclude_types param to /api/v1/notifications
* Exclude notification types in web UI through exclude_types in the API
2017-04-10 23:45:29 +02:00
0687ab8ae3
Clean up generation of account webfinger string ( #1477 )
...
* Consolidate webfinger string creation under Account#to_webfinger_s
* Introduce Account#local_username_and_domain for consolidation
2017-04-10 22:58:06 +02:00
c172919745
Fix #1339 - better Atom titles ( #1343 )
2017-04-09 20:55:54 +02:00
388ec0d5b6
Search cleanup ( #1333 )
...
* Clean up SQL output in Tag and Account search methods
* Add basic coverage for Tag.search_for
* Add coverage for Account.search_for
* Add coverage for Account.advanced_search_for
2017-04-09 14:45:01 +02:00
9acdb166e8
Fix #795 , fix #704 , fix #835 - 2FA requires confirmation to be enabled ( #1278 )
...
* Fix #795 , fix #704 , fix #835 - 2FA requires confirmation to be enabled
TOTP secret is not shown again after 2FA is enabled
* Clean up
2017-04-08 22:20:08 +02:00
d4c94fa004
DRY up reblog vs original status check
...
Checking reblog vs original status was happening in multiple places
across the app. For views, this logic was encapsulated in a helper
method named `proper_status` but in the other layers of the app, the
logic was duplicated.
Because the logic is used at all layers of the app, we extracted it into
a `Status#proper` method on the model and changed all uses of the logic
to use this method. There is now a single source of truth for this
condition.
We added test coverage to untested methods that got refactored.
2017-04-07 14:18:30 -04:00
6d6a429af8
Rewrite Atom generation from stream entries to use Ox instead of Nokogiri ( #1124 )
...
* Rewrite Atom generation from stream entries to use Ox instead of Nokogiri::Builder
StreamEntry is now limited to only statuses, which allows some optimization. Removed
extra queries on AccountsController#show. AtomSerializer instead of AtomBuilderHelper
used in AccountsController#show, StreamEntriesController#show, StreamEntryRenderer
and PubSubHubbub::DistributionWorker
PubSubHubbub::DistributionWorker moves n+1 DomainBlock query to PubSubHubbub::DeliveryWorker
instead.
All Salmon slaps that aren't based on StreamEntry still use AtomBuilderHelper and Nokogiri
* All Salmon slaps now use Ox instead of Nokogiri. No touch from status on account
2017-04-07 05:56:56 +02:00
6a1da87cd3
Eliminate unnecessary queries and query clauses with none and all
2017-04-05 06:02:58 +00:00
79ef756f64
fix rubocop issues
2017-04-05 00:47:17 +02:00
81c76fe375
add more tests to models
2017-04-05 00:29:56 +02:00
b510a56c0c
Only call regeneration worker after first login after a 14 day break
2017-04-04 02:00:10 +02:00
4c53af64f0
Fix ActionController::Parameters in API issue
2017-04-04 01:33:34 +02:00
68f829e11c
Add basic logging of who resolved report
2017-04-03 19:35:00 +02:00
808017ff18
Paperclip will complain on its own if this variable is missing
2017-04-01 22:16:26 +02:00
e8875c6046
Import feature for following/blocking lists (addresses #62 , #177 , #201 , #454 )
2017-03-30 19:42:33 +02:00
de22c202f5
Add counter caches for a large performance increase on API requests
2017-03-30 15:06:59 +02:00
5aa3df017b
Fix full-text search query quotation, improve tag search performance with an index,
...
add ability to open status by URL from search (fix #53 )
2017-03-22 17:36:34 +01:00
acfee0945c
Merge branch 'master' into feature-omnisearch
...
this merge is necessary,
2017-03-22 03:34:58 +01:00
1b09c3cb17
More efficient single account retrieval (0.9ms vs 50ms before)
2017-03-22 03:21:38 +01:00
05cf086766
New API method: /api/v1/search
...
Returns accounts, statuses, hashtags arrays
2017-03-22 02:32:27 +01:00
2816b1bf8e
Federate header images, fix open-uri http->https redirection error
2017-03-18 22:51:20 +01:00
ad0d82d3ce
Make account search blazing fast and rank followers/followees higher in the results
2017-03-17 20:48:14 +01:00
017350e0ea
Add method for retrieving triadic closures
2017-03-16 20:10:51 +01:00
74ae158c2f
Add "direct" visibility level in the backend. Web UI is not yet
...
adjusted to allow choosing it, yet
2017-03-15 22:55:45 +01:00
d6cb4bbe99
Performance improvement for profiles
2017-03-06 01:50:35 +01:00
03a857f59a
Use more widely supported MP4 format for gifv's
2017-03-06 00:30:03 +01:00
8d93f0ca56
Increase max bitrate of converted webms, slightly optimized counter queries
...
(Because postgres can tell that count(*) needs no extra checks, but
counting a specific column requires them)
2017-03-05 23:43:58 +01:00
6382ef2bc6
Add vsync -cfr option when converting gif to webm
2017-03-05 23:27:25 +01:00
79b08c5f0a
Higher quality webms? Might improve conversation of some types of gifs
2017-03-05 23:13:21 +01:00
85fce04d1b
Detect videos with no sound, handle them like gifv
2017-03-05 22:55:24 +01:00
4fb95c91fb
Fix wrongful matching of last period in extended usernames
...
Fix anchor tags in some wikipedia URLs being matches as a hashtag
2017-03-05 18:08:19 +01:00
5f4e402204
Improved /api/v1/accounts/:id/statuses with new params: only_media, exclude_replies
...
Redirect /:username to /users/:username
Redirect /:username/:id to /users/:username/updates/:id
Updated API documentation and sponsors
2017-03-05 17:27:17 +01:00
caf5b8e975
Fix #431 - convert gif to webm during upload. Web UI treats them like it did
...
before. In the API, attachments now can be either image, video or gifv. Gifv
is to be treated like images in terms of behaviour, but are videos by file
type.
2017-03-04 23:02:24 +01:00
6b81d10030
Add digest e-mails
2017-03-04 00:00:48 +01:00
c64a1c25c4
Fix #231 - Muting
2017-03-02 18:49:32 +01:00
442fdbfc53
Mute button progress so far. WIP, doesn't entirely work correctly.
2017-03-01 22:31:21 -06:00
175a9b9caa
Fix #104 - Style OAuth authorized applications page
...
Add ability to search accounts by display name
2017-02-27 00:15:00 +01:00
53ae431867
Skip remote media URLs that don't have a hostname
2017-02-22 19:55:14 +01:00
4aa5ebe591
Split public timeline into "public timeline" which is local, and
...
"whole known network" which is what public timeline used to be
Only domain blocks with suspend severity will block PuSH subscriptions
Silenced accounts should not appear in conversations unless followed
2017-02-19 20:25:54 +01:00
5ddad41245
Do not display non-Status stream entries anymore
2017-02-17 02:20:52 +01:00
24ba7c9762
Adding index overview for reports in admin UI
2017-02-16 02:28:10 +01:00
3b81baaaaf
Adding POST /api/v1/reports API, and a UI for submitting reports
2017-02-14 20:59:26 +01:00
0518492158
Stop trying to shoehorn all Salmon updates into the poor database-connected
...
StreamEntry model. Simply render Salmon slaps as they are needed
2017-02-12 01:19:14 +01:00
94d2182717
Resolve issue with rendering authorize/reject Salmon slaps
2017-02-11 19:42:05 +01:00
31c633e528
Fix Status.permitted_for scope query
2017-02-11 19:16:10 +01:00
50660d54e8
Fix semantics of follow requests another slaps
2017-02-11 17:13:11 +01:00
446aad4ce2
Make PuSH only distribute to subscriptions that match follower domains
...
Allow PuSH to distribute private toots with that condition
2017-02-11 15:41:39 +01:00
dc851c922e
Mentions in private statuses allow mentioned people to see them
2017-02-11 15:10:22 +01:00
149887a0ff
Make follow requests federate
2017-02-11 02:58:00 +01:00
0afed995ce
Fix the fix
2017-02-09 21:22:49 +01:00