- Nov 16, 2017
-
-
Daggertooth authored
-
- Nov 15, 2017
-
-
beatrix authored
Allow hiding reblogs on a per-follow basis
-
- Nov 13, 2017
-
-
David Yip authored
Maintain case-insensitivity when merging multiple matchers (#213)
-
David Yip authored
When given two regexps, Regexp.union preserves the options set (or not set) on each regex; this meant that none of the multiline (m), case-insensitivity (i), or extended syntax (x) options were set. Our regexps are written expecting the m, i, and x options were set on all of them, so we need to make sure that we preserve that behavior.
-
- Nov 12, 2017
- Nov 11, 2017
-
-
aschmitz authored
Thanks, @valerauko!
-
aschmitz authored
Note that this will only hide/show *future* reblogs by a user, and does nothing to remove/add reblogs that are already in the timeline. I don't think that's a particularly confusing behavior, and it's a lot easier to implement (similar to mutes, I believe).
-
- Nov 09, 2017
-
-
aschmitz authored
TODO: * Tests (particularly for FollowRequests). * Anything to respect the setting when putting reblogs in timelines.
-
- Nov 07, 2017
- Nov 06, 2017
-
-
David Yip authored
Autocollapse boosts option
-
- Nov 05, 2017
-
-
kibigo! authored
-
- Nov 04, 2017
- Nov 03, 2017
-
-
beatrix authored
in memory of Natalie Nguyen let her name ring through the ether
-
- Oct 27, 2017
-
-
David Yip authored
-
nullkal authored
-
puckipedia authored
-
unarist authored
We have changed how we store reblogs in the redis for bigint IDs. This process is done by 1) scan all entries in users feed, and 2) re-store reblogs by 3 write commands. However, this operation is really slow for large instances. e.g. 1hrs on friends.nico (w/ 50k users). So I have tried below tweaks. * It checked non-reblogs by `entry[0] == entry[1]`, but this condition won't work because `entry[0]` is String while `entry[1]` is Float. Changing `entry[0].to_i == entry[1]` seems work. -> about 4-20x faster (feed with less reblogs will be faster) * Write operations can be batched by pipeline -> about 6x faster * Wrap operation by Lua script and execute by EVALSHA command. This really reduces packets between Ruby and Redis. -> about 3x faster I've taken Lua script way, though doing other optimizations may be enough.
-
- Oct 26, 2017
-
-
Jenkins authored
-
erin authored
-
David Yip authored
-
りんすき authored
* Fix #5314 * fix not beautiful code * fix broken design with mobile view * remove no longer needed code
-
unarist authored
Looks like copied tempfile need to be flushed before further processing. This issue won't happen if the uploaded file has enough file size.
-
Nolan Lawson authored
-
- Oct 25, 2017
-
-
beatrix authored
Keyword muting
-
beatrix authored
Direct messages timeline from tootsuite/mastodon#4514
-
David Yip authored
-
Jenkins authored
-
Ratmir Karabut authored
* Add Russian translation (ru) * Fix a missing comma * Fix the wording for better consistency * Update Russian translation * Arrange Russian setting alphabetically * Fix syntax error * Update Russian translation * Fix formatting error * Update Russian translation * Update Russian translation * Update ru.jsx * Fix syntax error * Remove two_factor_auth.warning (appears obsolete) * Add missing strings in ru.yml A lot of new strings translated, especially for the newly added admin section * Fix translation consistency * Update Russian translation * Update Russian translation (pluralizations) * Update Russian translation * Update Russian translation * Update Russian translation (pin) * Update Russian translation (account deletion) * Fix extra line * Update Russian translation (sessions) * Update Russian translation * Update Russian translation * Fix merge conflicts (revert) * Update Russian translation * Update Russian translation (fix) * Update Russian translation (fix quotes) * Update Russian translation (fix quotes) * Update Russian translation (fix) * Update Russian translation * Add quotes * bundle exec i18n-tasks normalize
-
Anna e só authored
-
Olivier Nicole authored
-
David Yip authored
@regex can no longer be nil, so we don't need to check it.
-
- Oct 24, 2017
-
-
David Yip authored
There's nothing useful we can display if the destroy action messes up, so might as well assert it does and complain loudly if it doesn't.
-
David Yip authored
-
David Yip authored
-
David Yip authored
Glitch::KeywordMute's name is inferred as glitch_keyword_mutes, and in templates this turns into e.g. settings/glitch/keyword_mutes. Going along with this convention means a lot of file movement, though, and for a UI that's as temporary and awkward as this one I think it's less effort to slap a bunch of as: options everywhere. We'll do the Right Thing when we build out the API and frontend UI.
-
David Yip authored
This example actually checks matches at the end of a string.
-
David Yip authored
Also make the keyword-building methods private: they always probably should have been private, but now I have encoded enough fun and games into them that it now seems wrong for them to *not* be private.
-