- Mar 08, 2023
-
-
Christian Schmidt authored
-
- Mar 06, 2023
-
-
Matt Jankowski authored
-
- Mar 04, 2023
-
-
Jean byroot Boussier authored
Co-authored-by:
Jean Boussier <jean.boussier@gmail.com>
-
- Mar 03, 2023
-
-
Christian Schmidt authored
-
- Feb 22, 2023
-
-
Nick Schonning authored
-
- Feb 20, 2023
-
-
Nick Schonning authored
-
Nick Schonning authored
-
Nick Schonning authored
-
- Feb 18, 2023
-
-
Nick Schonning authored
-
Nick Schonning authored
-
Nick Schonning authored
-
Nick Schonning authored
-
Nick Schonning authored
-
Nick Schonning authored
-
- Feb 17, 2023
-
-
Nick Schonning authored
-
- Feb 10, 2023
-
-
Claire authored
* Add a limit to how many posts can get fetched as a result of a single request * Add tests * Always pass `request_id` when processing `Announce` activities --------- Co-authored-by:
nametoolong <nametoolong@users.noreply.github.com>
-
- Feb 08, 2023
-
-
Nick Schonning authored
* Apply Rubocop Rails/WhereNot * Update spec for where.not
-
Nick Schonning authored
* Apply Rubocop Performance/BlockGivenWithExplicitBlock * Unprefix used block parameter
-
Nick Schonning authored
-
Nick Schonning authored
-
- Feb 07, 2023
-
-
Nick Schonning authored
* Autofix Rails/EagerEvaluationLogMessage * Update spec for debug block syntax
-
- Feb 01, 2023
-
-
Eugen Rochko authored
-
- Jan 18, 2023
-
-
Claire authored
Some 7.x ElasticSearch versions support some 6.x nodes, thus the version check is inadequate. I am not sure there is a good way to check if a server implements all the 7.x APIs, so check server version and minimum wire version instead.
-
- Jan 11, 2023
-
-
Markus Unterwaditzer authored
* fix: allow verification when page size exceeds 1MB Truncates the page after 1MB instead Closes #15316 * switch to HTML5 parser, fix rubocop errors * undo rubocop fixes Co-authored-by:
Chris Zubak-Skees <chriszs@gmail.com>
-
Kaspar V authored
* fix(status): remove send usage for private unlink_from_conversations - make unlink_from_conversations public method - rename unlink_from_conversations to unlink_from_conversations! - fix send call on private method in statuses_vacuum and batched_remove_status_service * fix(feeds_vacuum): replace find_in_batches with in_batches because active record query results should be a little more efficient than itterating with map and each. Postgres can grasp such lists of ids much quicker than ruby can. Will probably make allmost no difference, but cannot hurt either.
-
- Jan 05, 2023
-
-
Vyr Cossont authored
Fixes #18535.
-
Jeong Arm authored
* Fix home tl contains post from who blocked me * Add test * Fix feed_manager's build_crutches blocked_by was not includes status' owner * Add test for status from I blocked * Fix typo
-
- Dec 15, 2022
-
-
Claire authored
-
Claire authored
Fixes #20029
-
s0 authored
Nil unwrap causes the admin dashboard to crash/500 when the Chewy client info version number value is nil. This occurs when running another ES-compatible backend such as MeiliSearch. Obviously it would be good for chewy to recognise upstream but at least avoiding the crash would be fine.
-
Jeong Arm authored
Co-authored-by:
Claire <claire.github-309c@sitedethib.com>
-
- Dec 06, 2022
-
-
Claire authored
* Fix trying to fetch posts from other users when fetching featured posts * Rate-limit discovery of new subdomains * Put a limit on recursively discovering new accounts
-
- Dec 01, 2022
-
-
Claire authored
/admin/instances?availability=failing remains wholly unefficient
-
- Nov 27, 2022
-
-
Kaspar V authored
refactor(vacuum statuses): reduce amount of db queries and load for each query - improve performance (#21487) * refactor(statuses_vacuum): remove dead code - unused Method is not called inside class and private. Clean up dead code. * refactor(statuses_vacuum): make retention_period present test explicit This private method only hides functionality. It is best practice to be as explicit as possible. * refactor(statuses_vacuum): improve query performance - fix statuses_scope having sub-select for Account.remote scope by `joins(:account).merge(Account.remote)` - fix statuses_scope unnecessary use of `Status.arel_table[:id].lt` because it is inexplicit, bad practice and even slower than normal `.where('statuses.id < ?'` - fix statuses_scope remove select(:id, :visibility) for having reusable active record query batches (no re queries) - fix vacuum_statuses! to use in_batches instead of find_in_batches, because in_batches delivers a full blown active record query result, in stead of an array - no requeries necessary - send(:unlink_from_conversations) not to perform another db query, but reuse the in_batches result instead. - remove now obsolete remove_from_account_conversations method - remove_from_search_index uses array of ids, instead of mapping the ids from an array - this should be more efficient - use the in_batches scope to call delete_all, instead of running another db query for this - because it is again more efficient - add TODO comment for calling models private method with send * refactor(status): simplify unlink_from_conversations - add `has_many through:` relation mentioned_accounts - use model scope local instead of method call `Status#local?` - more readable add account to inbox_owners when account.local? * refactor(status): searchable_by way less sub selects These queries all included a sub-select. Doing the same with a joins should be more efficient. Since this method does 5 such queries, this should be significant, since it technically halves the query count. This is how it was: ```ruby [3] pry(main)> Status.first.mentions.where(account: Account.local, silent: false).explain Status Load (1.6ms) SELECT "statuses".* FROM "statuses" WHERE "statuses"."deleted_at" IS NULL ORDER BY "statuses"."id" DESC LIMIT $1 [["LIMIT", 1]] Mention Load (1.5ms) SELECT "mentions".* FROM "mentions" WHERE "mentions"."status_id" = $1 AND "mentions"."account_id" IN (SELECT "accounts"."id" FROM "accounts" WHERE "accounts"."domain" IS NULL) AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]] => EXPLAIN for: SELECT "mentions".* FROM "mentions" WHERE "mentions"."status_id" = $1 AND "mentions"."account_id" IN (SELECT "accounts"."id" FROM "accounts" WHERE "accounts"."domain" IS NULL) AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]] QUERY PLAN ------------------------------------------------------------------------------------------------------------------ Nested Loop (cost=0.15..23.08 rows=1 width=41) -> Seq Scan on accounts (cost=0.00..10.90 rows=1 width=8) Filter: (domain IS NULL) -> Index Scan using index_mentions_on_account_id_and_status_id on mentions (cost=0.15..8.17 rows=1 width=41) Index Cond: ((account_id = accounts.id) AND (status_id = '109382923142288414'::bigint)) Filter: (NOT silent) (6 rows) ``` This is how it is with this change: ```ruby [4] pry(main)> Status.first.mentions.joins(:account).merge(Account.local).active.explain Status Load (1.7ms) SELECT "statuses".* FROM "statuses" WHERE "statuses"."deleted_at" IS NULL ORDER BY "statuses"."id" DESC LIMIT $1 [["LIMIT", 1]] Mention Load (0.7ms) SELECT "mentions".* FROM "mentions" INNER JOIN "accounts" ON "accounts"."id" = "mentions"."account_id" WHERE "mentions"."status_id" = $1 AND "accounts"."domain" IS NULL AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]] => EXPLAIN for: SELECT "mentions".* FROM "mentions" INNER JOIN "accounts" ON "accounts"."id" = "mentions"."account_id" WHERE "mentions"."status_id" = $1 AND "accounts"."domain" IS NULL AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]] QUERY PLAN ------------------------------------------------------------------------------------------------------------------ Nested Loop (cost=0.15..23.08 rows=1 width=41) -> Seq Scan on accounts (cost=0.00..10.90 rows=1 width=8) Filter: (domain IS NULL) -> Index Scan using index_mentions_on_account_id_and_status_id on mentions (cost=0.15..8.17 rows=1 width=41) Index Cond: ((account_id = accounts.id) AND (status_id = '109382923142288414'::bigint)) Filter: (NOT silent) (6 rows) ```
-
- Nov 14, 2022
-
-
Claire authored
Signed-off-by:
Claire <claire.github-309c@sitedethib.com> Signed-off-by:
Claire <claire.github-309c@sitedethib.com>
-
- Nov 11, 2022
-
-
Bearice Ren authored
* fixes ArgumentError when proxy is used * Update app/lib/request.rb Co-authored-by:
Claire <claire.github-309c@sitedethib.com> Co-authored-by:
Eugen Rochko <eugen@zeonfederated.com> Co-authored-by:
Claire <claire.github-309c@sitedethib.com>
-
- Nov 10, 2022
-
-
Eugen Rochko authored
-
James Tucker authored
```ruby 10.times { p /#{FOO}/.object_id } 10.times { p FOO_RE.object_id } ```
-
- Nov 08, 2022
-
-
Claire authored
Fixes #19751
-
James Tucker authored
Switch to monkey-patching http.rb rather than a runtime extend of each response, so as to avoid busting the global method cache. A guard is included that will provide developer feedback in development and test environments should the monkey patch ever collide.
-