mastodon/app/models
Eugen Rochko 61ed133fea
Account archive download (#6460)
* Fix #201: Account archive download

* Export actor and private key in the archive

* Optimize BackupService

- Add conversation to cached associations of status, because
  somehow it was forgotten and is source of N+1 queries
- Explicitly call GC between batches of records being fetched
  (Model class allocations are the worst offender)
- Stream media files into the tar in 1MB chunks
  (Do not allocate media file (up to 8MB) as string into memory)
- Use #bytesize instead of #size to calculate file size for JSON
  (Fix FileOverflow error)
- Segment media into subfolders by status ID because apparently
  GIF-to-MP4 media are all named "media.mp4" for some reason

* Keep uniquely generated filename in Paperclip::GifTranscoder

* Ensure dumped files do not overwrite each other by maintaing directory partitions

* Give tar archives a good name

* Add scheduler to remove week-old backups

* Fix code style issue
2018-02-21 23:21:32 +01:00
..
admin Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
concerns Fix avatar and header issues by using custom geometry detector (#6515) 2018-02-21 03:40:12 +01:00
form Add option to show only local toots in timeline preview (#6292) 2018-02-04 06:00:10 +01:00
web Change user_id column non-nullable (#6435) 2018-02-07 16:35:44 +01:00
account.rb Rename ResolveRemoteAccountService to ResolveAccountService (#6327) 2018-01-22 14:25:09 +01:00
account_domain_block.rb Cache relationships in API (#6482) 2018-02-18 03:14:46 +01:00
account_filter.rb Clean up admin UI for accounts (#6004) 2017-12-13 12:15:10 +01:00
account_moderation_note.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
admin.rb Add logging of admin actions (#5757) 2017-11-24 02:05:53 +01:00
application_record.rb Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
backup.rb Account archive download (#6460) 2018-02-21 23:21:32 +01:00
block.rb Cache relationships in API (#6482) 2018-02-18 03:14:46 +01:00
context.rb Refactor JSON templates to be generated with ActiveModelSerializers instead of Rabl (#4090) 2017-07-07 04:02:06 +02:00
conversation.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
conversation_mute.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
custom_emoji.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
custom_emoji_filter.rb Add filters to admin UI for custom emojis (#6003) 2017-12-13 13:28:31 +01:00
domain_block.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
email_domain_block.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
export.rb Settings export refactor (#1646) 2017-04-13 13:02:02 +02:00
favourite.rb Full-text search for authorized statuses (#6423) 2018-02-09 23:04:47 +01:00
feed.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
follow.rb Cache relationships in API (#6482) 2018-02-18 03:14:46 +01:00
follow_request.rb Cache relationships in API (#6482) 2018-02-18 03:14:46 +01:00
home_feed.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
identity.rb CAS + SAML authentication feature (#6425) 2018-02-04 05:42:13 +01:00
import.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
instance.rb Add Instance class to list admin records (#3443) 2017-05-31 20:38:44 +02:00
instance_filter.rb Add instance search feature (#4925) 2017-09-13 12:30:07 +02:00
invite.rb Change user_id column non-nullable (#6435) 2018-02-07 16:35:44 +01:00
invite_filter.rb Add invite filter (#5862) 2017-12-01 16:40:02 +01:00
list.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
list_account.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
list_feed.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
media_attachment.rb Fix avatar and header issues by using custom geometry detector (#6515) 2018-02-21 03:40:12 +01:00
mention.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
mute.rb Cache relationships in API (#6482) 2018-02-18 03:14:46 +01:00
notification.rb Clear account cache of notification target_status (#6442) 2018-02-08 15:33:23 +01:00
preview_card.rb Fix avatar and header issues by using custom geometry detector (#6515) 2018-02-21 03:40:12 +01:00
remote_follow.rb Using double splat operator (#5859) 2017-12-06 11:41:57 +01:00
remote_profile.rb Introduce OStatus::TagManager (#5008) 2017-09-19 18:08:08 +02:00
report.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
report_filter.rb Admin reports with accounts (#2092) 2017-04-18 19:36:18 +02:00
search.rb Refactor JSON templates to be generated with ActiveModelSerializers instead of Rabl (#4090) 2017-07-07 04:02:06 +02:00
session_activation.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
setting.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
site_upload.rb Fix avatar and header issues by using custom geometry detector (#6515) 2018-02-21 03:40:12 +01:00
status.rb Account archive download (#6460) 2018-02-21 23:21:32 +01:00
status_pin.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
stream_entry.rb Lists (#5703) 2017-11-18 00:16:48 +01:00
subscription.rb Change belongs_to_required_by_default to true (#5888) 2018-01-19 20:56:47 +01:00
tag.rb Fix account and tag searches with leading/trailing spaces (#5965) 2017-12-10 19:35:46 +01:00
user.rb Account archive download (#6460) 2018-02-21 23:21:32 +01:00
web.rb Add extended about page stub 2017-01-13 03:24:41 +01:00