about summary refs log tree commit diff
AgeCommit message (Collapse)Author
2022-03-07Add more migration tests (#17710)Claire
* Add migration tests for hide_network settings migration * Add tests about suspended/suspended_at * Add more tests regarding the results of migrations * Fix migration test regarding stale conflicting remote account * Add migration tests about AccountConversation
2022-03-07Change appearance of account cards in web UI (#17689)Eugen Rochko
* Change appearance of account cards in web UI * Various fixes and improvements * Various fixes and improvements
2022-03-07Fix nil error when submitting report without `rule_ids` (#17713)Eugen Rochko
2022-03-07Add `/api/v1/accounts/familiar_followers` to REST API (#17700)Eugen Rochko
* Add `/api/v1/accounts/familiar_followers` to REST API * Change hide network preference to be stored consistently for local and remote accounts * Add dummy classes to migration * Apply suggestions from code review Co-authored-by: Claire <claire.github-309c@sitedethib.com> Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2022-03-06Enable importing GIF emojis in CLI (#17706)Rens Groothuijsen
2022-03-06Spelling (#17705)Josh Soref
* spelling: account Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: affiliated Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: appearance Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: autosuggest Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: cacheable Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: component Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: conversations Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: domain.example Clarify what's distinct and use RFC friendly domain space. Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: environment Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: exceeds Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: functional Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: inefficiency Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: not Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: notifications Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: occurring Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: position Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: progress Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: promotable Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: reblogging Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: repetitive Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: resolve Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: saturated Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: similar Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: strategies Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: success Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: targeting Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: thumbnails Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: unauthorized Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: unsensitizes Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: validations Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: various Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-03-05Change autocomplete type of password input box (#17702)Mashiro
* Change autocomplete type of password input box * Update _registration.html.haml
2022-03-04Fix duplicate notifications being possible after poll expiration (#17697)Eugen Rochko
2022-03-04Fix infinite re-forwarding of update activities temporarily (#17698)Eugen Rochko
2022-03-03Add option to automatically delete toots after one week (#17691)Claire
Fixes #17658
2022-03-03Redesign /about when already logged in (#17348)Claire
* Redesign /about when already logged in * Fix sign up form still showing when OMNIAUTH_ONLY is set * Fix tests * Change wording based on suggestions Co-authored-by: Eugen Rochko <eugen@zeonfederated.com> Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2022-03-03Allow editing media attachments for scheduled toots (#17690)Claire
Fixes #17676
2022-03-03Change `follow` scope to be covered by `read` and `write` scopes in REST API ↵Eugen Rochko
(#17678) Deprecate `follow` scope
2022-03-03Fix returning empty `<p>` tag for blank account `note` in REST API (#17687)Eugen Rochko
2022-03-03Remove profile directory link from main navigation panel (#17688)Eugen Rochko
2022-03-02Change visual separation of applications in authorized apps list (#17686)Claire
2022-03-02Add descriptions to trending features in admin UI (#17677)Eugen Rochko
2022-03-02Fix leak of existence of otherwise inaccessible statuses in REST API (#17684)Eugen Rochko
2022-03-02Fix report category not being saved in REST API (#17682)Eugen Rochko
2022-03-01Fix notification about deleted statuses being too threatening (#17679)Eugen Rochko
2022-03-01Add ability to mark statuses as sensitive from reports in admin UI (#17668)Eugen Rochko
* Add ability to mark statuses as sensitive from reports in admin UI * Allow mark as sensitive action on statuses with preview cards
2022-03-01Change old moderation strikes to be displayed in a separate page (#17566)Claire
* Change old moderation strikes to be displayed in a separate page Fixes #17552 This changes the moderation strikes displayed on `/auth/edit` to be those from the past 3 months, and make all moderation strikes targeting the current user available in `/disputes`. * Add short description of what the strikes page is for * Move link to list of strikes to “Account status” instead of navigation item * Normalize i18n file * Fix layout and styling of strikes link * Revert highlights_on regexp * Reintroduce account status summary - this way, “Account status” is never empty - account status is not necessarily bound to strikes, or recent strikes
2022-03-01Change authorized applications page (#17656)Eugen Rochko
* Change authorized applications page * Hide revoke button for superapps and suspended accounts * Clean up db/schema.rb
2022-03-01New Crowdin updates (#17628)Eugen Rochko
* New translations en.yml (Swedish) * New translations en.yml (French) * New translations en.yml (French) * New translations en.yml (French) * New translations en.yml (French) * New translations en.yml (French) * New translations en.yml (Turkish) * New translations en.yml (Latvian) * New translations simple_form.en.yml (Latvian) * New translations en.yml (Turkish) * New translations en.yml (Latvian) * New translations simple_form.en.yml (Turkish) * New translations en.yml (Indonesian) * New translations en.yml (Indonesian) * New translations en.yml (Indonesian) * New translations en.yml (Kurmanji (Kurdish)) * New translations en.yml (Kurmanji (Kurdish)) * New translations en.yml (Portuguese) * New translations en.yml (Kurmanji (Kurdish)) * New translations en.yml (Portuguese) * New translations en.yml (Kurmanji (Kurdish)) * New translations en.yml (Turkish) * New translations en.yml (Italian) * New translations en.json (Spanish, Argentina) * New translations en.yml (Welsh) * New translations simple_form.en.yml (Welsh) * New translations activerecord.en.yml (Welsh) * New translations en.yml (Welsh) * New translations en.json (Welsh) * New translations activerecord.en.yml (Welsh) * New translations en.json (Portuguese, Brazilian) * New translations en.yml (Portuguese, Brazilian) * New translations en.json (Portuguese, Brazilian) * New translations en.yml (Finnish) * New translations en.yml (Finnish) * New translations simple_form.en.yml (Portuguese, Brazilian) * New translations en.yml (Finnish) * New translations en.yml (Thai) * New translations en.yml (Thai) * New translations en.yml (Thai) * New translations en.yml (Kabyle) * New translations en.json (Kabyle) * New translations en.yml (Vietnamese) * New translations en.yml (Vietnamese) * New translations simple_form.en.yml (Vietnamese) * New translations en.yml (Vietnamese) * New translations en.yml (Indonesian) * New translations en.yml (Chinese Simplified) * New translations en.yml (Standard Moroccan Tamazight) * New translations en.yml (Thai) * New translations en.yml (Thai) * New translations en.yml (Thai) * New translations en.yml (Spanish, Mexico) * New translations en.yml (Greek) * New translations en.yml (Turkish) * New translations en.yml (Latvian) * New translations en.yml (Catalan) * New translations en.yml (Portuguese) * New translations en.yml (Italian) * New translations en.yml (Russian) * New translations en.json (Russian) * New translations en.yml (Russian) * New translations en.json (Russian) * New translations en.yml (Russian) * New translations en.json (Russian) * New translations en.yml (Kurmanji (Kurdish)) * New translations en.yml (Japanese) * New translations en.yml (Chinese Traditional) * New translations en.yml (Italian) * New translations en.yml (Vietnamese) * New translations en.yml (Galician) * New translations en.yml (Spanish) * New translations en.yml (Thai) * New translations en.yml (French) * New translations en.yml (Thai) * New translations en.yml (Indonesian) * New translations en.yml (Danish) * New translations en.yml (Indonesian) * New translations simple_form.en.yml (Indonesian) * New translations en.yml (German) * New translations en.yml (Thai) * New translations en.yml (Icelandic) * New translations en.yml (Thai) * New translations en.yml (Thai) * New translations simple_form.en.yml (Thai) * New translations en.yml (Thai) * New translations en.yml (Thai) * New translations en.yml (Hungarian) * New translations en.json (Norwegian) * New translations en.json (Norwegian Nynorsk) * New translations en.json (Catalan) * New translations en.json (Slovenian) * New translations en.json (Persian) * New translations en.json (Occitan) * New translations en.json (Arabic) * New translations en.json (Thai) * New translations en.json (Hebrew) * New translations en.json (Greek) * New translations en.json (Dutch) * New translations en.json (Romanian) * New translations en.json (French) * New translations en.json (Spanish) * New translations en.json (Afrikaans) * New translations en.json (Bulgarian) * New translations en.json (Czech) * New translations en.yml (Spanish, Argentina) * New translations en.yml (Spanish, Mexico) * New translations en.json (Danish) * New translations en.json (German) * New translations en.json (Latvian) * New translations en.json (Indonesian) * New translations en.json (Tamil) * New translations en.json (Spanish, Argentina) * New translations en.json (Spanish, Mexico) * New translations en.json (Bengali) * New translations en.json (Marathi) * New translations en.json (Croatian) * New translations en.json (Kazakh) * New translations en.json (Estonian) * New translations en.json (Hindi) * New translations en.json (Icelandic) * New translations en.json (Malay) * New translations en.json (Telugu) * New translations en.json (Welsh) * New translations en.json (Esperanto) * New translations en.json (Uyghur) * New translations en.json (Chinese Traditional, Hong Kong) * New translations en.json (Tatar) * New translations en.json (Malayalam) * New translations en.json (Breton) * New translations en.json (Sinhala) * New translations en.json (Portuguese, Brazilian) * New translations en.json (Galician) * New translations en.json (Basque) * New translations en.json (Polish) * New translations en.json (Finnish) * New translations en.json (Hungarian) * New translations en.json (Armenian) * New translations en.json (Italian) * New translations en.json (Japanese) * New translations en.json (Georgian) * New translations en.json (Korean) * New translations en.json (Lithuanian) * New translations en.json (Macedonian) * New translations en.json (Punjabi) * New translations en.json (Portuguese) * New translations en.json (Vietnamese) * New translations en.json (Russian) * New translations en.json (Slovak) * New translations en.json (Albanian) * New translations en.json (Serbian (Cyrillic)) * New translations en.json (Swedish) * New translations en.json (Turkish) * New translations en.json (Ukrainian) * New translations en.json (Chinese Simplified) * New translations en.json (Chinese Traditional) * New translations en.json (Urdu (Pakistan)) * New translations en.json (Cornish) * New translations en.json (Kannada) * New translations en.json (Scottish Gaelic) * New translations en.json (Asturian) * New translations en.json (Serbian (Latin)) * New translations en.json (Kurmanji (Kurdish)) * New translations en.json (Sorani (Kurdish)) * New translations en.json (Corsican) * New translations en.json (Sardinian) * New translations en.json (Sanskrit) * New translations en.json (Ido) * New translations en.json (Taigi) * New translations en.json (Silesian) * New translations en.json (Standard Moroccan Tamazight) * New translations en.json (Catalan) * New translations en.json (French) * New translations en.json (Catalan) * New translations en.json (French) * New translations en.json (Albanian) * New translations en.json (Catalan) * New translations en.yml (Albanian) * New translations en.json (French) * New translations en.json (French) * New translations en.yml (French) * New translations en.json (French) * New translations en.json (French) * New translations en.json (Danish) * New translations en.json (Danish) * New translations en.json (Icelandic) * New translations en.json (Danish) * New translations en.json (Italian) * New translations en.json (Italian) * New translations en.json (Kurmanji (Kurdish)) * New translations en.json (Kurmanji (Kurdish)) * New translations en.json (Hungarian) * New translations en.json (Ukrainian) * New translations en.json (Kurmanji (Kurdish)) * New translations en.json (Hungarian) * New translations en.json (Greek) * New translations en.json (Finnish) * New translations en.json (Russian) * New translations en.json (Greek) * New translations en.json (Hungarian) * New translations en.json (Finnish) * New translations en.json (Hungarian) * New translations en.json (Finnish) * New translations en.json (Chinese Traditional) * New translations en.json (Finnish) * New translations en.json (Chinese Traditional) * New translations en.yml (Finnish) * New translations en.json (Finnish) * New translations en.json (Chinese Traditional) * New translations en.json (German) * New translations en.json (German) * New translations en.json (Chinese Simplified) * New translations en.yml (Thai) * New translations en.json (Thai) * New translations en.yml (Scottish Gaelic) * New translations en.json (Thai) * New translations en.json (Turkish) * New translations en.json (Scottish Gaelic) * New translations doorkeeper.en.yml (Scottish Gaelic) * New translations activerecord.en.yml (Scottish Gaelic) * New translations devise.en.yml (Scottish Gaelic) * New translations simple_form.en.yml (Thai) * New translations en.json (Spanish) * New translations en.json (Spanish) * New translations en.json (Latvian) * New translations en.json (Latvian) * New translations en.json (Latvian) * New translations en.yml (Swedish) * New translations en.json (Swedish) * New translations en.json (Asturian) * New translations en.yml (Asturian) * New translations en.json (Asturian) * New translations en.yml (Asturian) * New translations en.json (Asturian) * New translations activerecord.en.yml (Asturian) * New translations en.json (Asturian) * New translations doorkeeper.en.yml (Asturian) * New translations simple_form.en.yml (Asturian) * New translations en.json (Chinese Simplified) * New translations en.json (Chinese Simplified) * New translations en.yml (Chinese Simplified) * New translations en.yml (Danish) * New translations en.json (Turkish) * New translations en.json (Turkish) * New translations en.yml (French) * New translations en.yml (French) * New translations en.yml (French) * Run `bundle exec i18n-tasks normalize` * Fix Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-03-01Bump redis from 4.0.3 to 4.0.4 (#17671)dependabot[bot]
Bumps [redis](https://github.com/redis/node-redis) from 4.0.3 to 4.0.4. - [Release notes](https://github.com/redis/node-redis/releases) - [Changelog](https://github.com/redis/node-redis/blob/master/CHANGELOG.md) - [Commits](https://github.com/redis/node-redis/compare/redis@4.0.3...redis@4.0.4) --- updated-dependencies: - dependency-name: redis dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-01Bump eslint-plugin-react from 7.28.0 to 7.29.2 (#17672)dependabot[bot]
Bumps [eslint-plugin-react](https://github.com/yannickcr/eslint-plugin-react) from 7.28.0 to 7.29.2. - [Release notes](https://github.com/yannickcr/eslint-plugin-react/releases) - [Changelog](https://github.com/yannickcr/eslint-plugin-react/blob/master/CHANGELOG.md) - [Commits](https://github.com/yannickcr/eslint-plugin-react/compare/v7.28.0...v7.29.2) --- updated-dependencies: - dependency-name: eslint-plugin-react dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-01Bump sass from 1.49.7 to 1.49.9 (#17670)dependabot[bot]
Bumps [sass](https://github.com/sass/dart-sass) from 1.49.7 to 1.49.9. - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.49.7...1.49.9) --- updated-dependencies: - dependency-name: sass dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-01Bump url-parse from 1.5.7 to 1.5.10 (#17662)dependabot[bot]
Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.5.7 to 1.5.10. - [Release notes](https://github.com/unshiftio/url-parse/releases) - [Commits](https://github.com/unshiftio/url-parse/compare/1.5.7...1.5.10) --- updated-dependencies: - dependency-name: url-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28Bump blurhash from 0.1.5 to 0.1.6 (#17669)dependabot[bot]
Bumps [blurhash](https://github.com/Gargron/blurhash) from 0.1.5 to 0.1.6. - [Release notes](https://github.com/Gargron/blurhash/releases) - [Changelog](https://github.com/Gargron/blurhash/blob/master/CHANGELOG.md) - [Commits](https://github.com/Gargron/blurhash/compare/v0.1.5...v0.1.6) --- updated-dependencies: - dependency-name: blurhash dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28Chore: Update translatable strings (#17495)Eugen Rochko
2022-02-28Update config.yml (#17664)Shlee
2022-02-27Fix not showing loading indicator when searching in web UI (#17655)Eugen Rochko
2022-02-27Fix report submit button not being disabled during submission in web UI (#17654)Eugen Rochko
Add loading indicator for status selection step in report dialog in web UI
2022-02-26Fix remote reports with comments revealing remote reporter (#17652)Claire
* Display username rather than display name in report comment For consistency with report notes and appeals * Fix remote reports with comments revealing remote reporter * Display instance name in placeholder * Make instance name in report comment a link to the federation admin page * Normalize i18n file
2022-02-26Fix status updates not being forwarded like deletes through ActivityPub (#17648)Eugen Rochko
Fix #17521
2022-02-26Also compress SVG and ICO images in nginx (#17651)LinAGKar
2022-02-26Fix error when a MX is shared across blocked domains (#17650)Claire
2022-02-26Fix crash in EmailDomainBlockRefreshScheduler (#17649)Claire
2022-02-25Fix unable to unpin follower-only posts (#17647)MitarashiDango
2022-02-25Bump pg from 1.3.2 to 1.3.3 (#17643)dependabot[bot]
Bumps [pg](https://github.com/ged/ruby-pg) from 1.3.2 to 1.3.3. - [Release notes](https://github.com/ged/ruby-pg/releases) - [Changelog](https://github.com/ged/ruby-pg/blob/master/History.rdoc) - [Commits](https://github.com/ged/ruby-pg/compare/v1.3.2...v1.3.3) --- updated-dependencies: - dependency-name: pg dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-25Bump aws-sdk-s3 from 1.112.0 to 1.113.0 (#17642)dependabot[bot]
Bumps [aws-sdk-s3](https://github.com/aws/aws-sdk-ruby) from 1.112.0 to 1.113.0. - [Release notes](https://github.com/aws/aws-sdk-ruby/releases) - [Changelog](https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-s3/CHANGELOG.md) - [Commits](https://github.com/aws/aws-sdk-ruby/commits) --- updated-dependencies: - dependency-name: aws-sdk-s3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-25Bump nokogiri from 1.13.2 to 1.13.3 (#17641)dependabot[bot]
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.2 to 1.13.3. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.2...v1.13.3) --- updated-dependencies: - dependency-name: nokogiri dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-25Fix media modal footer's “external link” not being a link (#17561)Claire
2022-02-25Bump nokogiri from 1.13.1 to 1.13.2 (#17604)dependabot[bot]
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.13.1 to 1.13.2. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.13.1...v1.13.2) --- updated-dependencies: - dependency-name: nokogiri dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-25Escape database passwords in config/database.yml (#17627)sasanquaneuf
* Add double quotes for using passwords that start with a comma * Escape database password in yml
2022-02-25Fix reply button on media modal not giving focus to compose form (#17626)Claire
* Avoid compose form and modal management fighting for focus * Fix reply button on media modal footer not giving focus to compose form
2022-02-25Add explore page to web UI (#17123)Eugen Rochko
* Add explore page to web UI * Fix not removing loaded statuses from trends on mute/block action
2022-02-25Add trending statuses (#17431)Eugen Rochko
* Add trending statuses * Fix dangling items with stale scores in localized sets * Various fixes and improvements - Change approve_all/reject_all to approve_accounts/reject_accounts - Change Trends::Query methods to not mutate the original query - Change Trends::Query#skip to offset - Change follow recommendations to be refreshed in a transaction * Add tests for trending statuses filtering behaviour * Fix not applying filtering scope in controller
2022-02-24Change e-mail domain blocks to block IPs dynamically (#17635)Eugen Rochko
* Change e-mail domain blocks to block IPs dynamically * Update app/workers/scheduler/email_domain_block_refresh_scheduler.rb Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh> * Update app/workers/scheduler/email_domain_block_refresh_scheduler.rb Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh> Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-02-24fix #17601 change `:keys` to `:attribute_names` (#17637)Sumak