Age | Commit message (Collapse) | Author |
|
|
|
|
|
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.
|
|
|
|
* Fix #5314
* fix not beautiful code
* fix broken design with mobile view
* remove no longer needed code
|
|
Looks like copied tempfile need to be flushed before further processing. This issue won't happen if the uploaded file has enough file size.
|
|
|
|
* 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
As said here https://github.com/tootsuite/mastodon/pull/5438 the point of shortening the timestamp is legit, and after some time of adaptation no mistakes can be mades.
|
|
* Swedish file added
* Swedish file added
* Swedish file updated
* Swedish languagefile added
* Add Swedish translation
* Add Swedish translation
* Started the Swedish translation
* Added Swedish lang settings
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Swedish language completed and added
* Swedish language Simple_form added
* Swedish language Divise added
* Swedish language doorkeeper added
* Swedish language - now all file complete
* Swedish - Typos and supplementation in sentence structure
* Update simple_form.sv.yml
* Update sv.yml
* Update sv.yml
Rearranged the alphabetical order.
|
|
|
|
|
|
Typo correction : https://fr.wikipedia.org/wiki/Heure#Typographie
|
|
|
|
* Dutch: A few strings I found last minute
* Update simple_form.nl.yml
|
|
* Rename application.scss
* Move to 'default' directory
* Follow review
Move directory, and Rename "mastodon".
* Revert rename
* undo removal of newline
|
|
|
|
* Update oc.json
* Update fr.json
* Update ca.json
* Update fr.json
* Update simple_form.fr.yml
* Update ca.json
* Update fr.json
* Update oc.json
* Update oc.json
* Update fr.json
|
|
|
|
Fix #5356
|
|
|
|
Specifically, this fixes status length calculation to be same as JS side.
BTW, since this pattern used in not only preview card fetching, we
should extract it (with twitter-regex?) and write tests I think.
|
|
* Update oc.json
* Update ca.json
* Update fr.json
* Update es.json
|
|
|
|
|
|
* yarn manage:translations
* Add Japanese translation for #5410
* Add Japanese translation for #5393
|
|
|
|
|
|
* Clean up reblog-tracking sets from FeedManager
Builds on #5419, with a few minor optimizations and cleanup of sets
after they are no longer needed.
* Update tests, fix multiply-reblogged case
Previously, we would have lost the fact that a given status was
reblogged if the displayed reblog of it was removed, now we don't.
Also added tests to make sure FeedManager#trim cleans up our reblog
tracking keys, fixed up FeedCleanupScheduler to use the right loop,
and fixed the test for it.
|
|
* Swedish file added
* Swedish file added
* Swedish file updated
* Swedish languagefile added
* Add Swedish translation
* Add Swedish translation
* Started the Swedish translation
* Added Swedish lang settings
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Updating Swedish language
* Swedish language completed and added
* Swedish language Simple_form added
* Swedish language Divise added
* Swedish language doorkeeper added
* Swedish language - now all file complete
|
|
* Update Dutch strings
* Update Dutch
|
|
|
|
* Keep references to all reblogs of a status on home feed
When inserting reblog: Add to set of reblogs of this status on
the feed, if original status was present in the feed, add it to
that set as well.
When removing a reblog: Remove it from that set. Take random
remaining item from the set. If one exists, re-insert it into feed,
otherwise do not re-insert anything.
Fix #4210
* When original is removed, toss out reblog references
|
|
Reported at
https://don.inux39.me/@inux39/1406082
https://don.inux39.me/@inux39/1406134
|
|
|
|
Fix #5398
Ordering the home timeline query by account_id meant that the first
100 items belonged to a single account. There was also no reason to
reverse-iterate over the statuses. Assuming the user accesses the
feed halfway-through, it's better to have recent statuses already
available at the top. Therefore working from newer->older is ideal.
If the algorithm ends up filtering all items out during last-mile
filtering, repeat again a page further. The algorithm terminates
when either at least one item has been added, or if the database
query returns nothing (end of data reached)
|
|
Possibly the cause of #5379, #5377
|
|
We've changed un-reblogging behavior when we implement Snowflake, to insert un-reblogged status at the position reblogging status existed.
However, our API expects home timeline is ordered by status ids, and max_id/since_id filters by zset score. Due to this, un-reblogged status appears as a last item of result set, and timeline expansion may skips many statuses.
So this reverts that change...reblogged status inserted at corresponding position to its id.
|
|
* chore: add Korean translation for client
* fix: change unlisted and embed Korean words
|
|
* Fix #5082 - disable retweet link for followers only toot
* Hide reblog count when it is a direct message
|
|
Signed-off-by: Marcin Mikołajczak <me@m4sk.in>
|
|
* Correction fem. form
* More dropdown title
* More dropdown title
* More dropdown title
* Add option to reduce motion (#5393)
|