Rewrite Atom generation from stream entries to use Ox instead of Nokogiri (#1124)
* Rewrite Atom generation from stream entries to use Ox instead of Nokogiri::Builder StreamEntry is now limited to only statuses, which allows some optimization. Removed extra queries on AccountsController#show. AtomSerializer instead of AtomBuilderHelper used in AccountsController#show, StreamEntriesController#show, StreamEntryRenderer and PubSubHubbub::DistributionWorker PubSubHubbub::DistributionWorker moves n+1 DomainBlock query to PubSubHubbub::DeliveryWorker instead. All Salmon slaps that aren't based on StreamEntry still use AtomBuilderHelper and Nokogiri * All Salmon slaps now use Ox instead of Nokogiri. No touch from status on account
This commit is contained in:
parent
31597fd377
commit
6d6a429af8
21 changed files with 393 additions and 262 deletions
|
@ -1,27 +0,0 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
Nokogiri::XML::Builder.new do |xml|
|
||||
feed(xml) do
|
||||
simple_id xml, account_url(@account, format: 'atom')
|
||||
title xml, @account.display_name
|
||||
subtitle xml, @account.note
|
||||
updated_at xml, stream_updated_at
|
||||
logo xml, full_asset_url(@account.avatar.url(:original))
|
||||
|
||||
author(xml) do
|
||||
include_author xml, @account
|
||||
end
|
||||
|
||||
link_alternate xml, TagManager.instance.url_for(@account)
|
||||
link_self xml, account_url(@account, format: 'atom')
|
||||
link_next xml, account_url(@account, format: 'atom', max_id: @entries.last.id) if @entries.size == 20
|
||||
link_hub xml, api_push_url
|
||||
link_salmon xml, api_salmon_url(@account.id)
|
||||
|
||||
@entries.each do |stream_entry|
|
||||
entry(xml, false) do
|
||||
include_entry xml, stream_entry
|
||||
end
|
||||
end
|
||||
end
|
||||
end.to_xml
|
Loading…
Add table
Add a link
Reference in a new issue