From 9118ca50d33d5dde828006422923869fc837d1dd Mon Sep 17 00:00:00 2001 From: April John Date: Wed, 10 May 2023 22:26:09 +0200 Subject: [PATCH] reintroduce async into post import --- .../src/queue/processors/db/import-posts.ts | 80 ++++++++++--------- 1 file changed, 41 insertions(+), 39 deletions(-) diff --git a/packages/backend/src/queue/processors/db/import-posts.ts b/packages/backend/src/queue/processors/db/import-posts.ts index 47096d414..73cec113e 100644 --- a/packages/backend/src/queue/processors/db/import-posts.ts +++ b/packages/backend/src/queue/processors/db/import-posts.ts @@ -81,47 +81,49 @@ export async function importPosts( } else if (parsed instanceof Object) { logger.info("Parsing animal style posts"); for (const post of parsed.orderedItems) { - try { - linenum++; - let reply: Note | null = null; - if (post.object.inReplyTo != null) { - reply = await resolveNote(post.object.inReplyTo); - } - if (post.directMessage) { - continue; - } - if (job.data.signatureCheck) { - if (!post.signature) { - continue; - } - } - let text; + async () => { try { - text = htmlToMfm(post.object.content, post.object.tag); - } catch (e) { - continue; - } - logger.info(`Posting[${linenum}] ...`); + linenum++; + let reply: Note | null = null; + if (post.object.inReplyTo != null) { + reply = await resolveNote(post.object.inReplyTo); + } + if (post.directMessage) { + return; + } + if (job.data.signatureCheck) { + if (!post.signature) { + return; + } + } + let text; + try { + text = htmlToMfm(post.object.content, post.object.tag); + } catch (e) { + return; + } + logger.info(`Posting[${linenum}] ...`); - const note = await create(user, { - createdAt: new Date(post.object.published), - files: undefined, - poll: undefined, - text: text || undefined, - reply, - renote: null, - cw: post.sensitive, - localOnly: false, - visibility: "hidden", - visibleUsers: [], - channel: null, - apMentions: new Array(0), - apHashtags: undefined, - apEmojis: undefined, - }); - } catch (e) { - logger.warn(`Error in line:${linenum} ${e}`); - } + const note = await create(user, { + createdAt: new Date(post.object.published), + files: undefined, + poll: undefined, + text: text || undefined, + reply, + renote: null, + cw: post.sensitive, + localOnly: false, + visibility: "hidden", + visibleUsers: [], + channel: null, + apMentions: new Array(0), + apHashtags: undefined, + apEmojis: undefined, + }); + } catch (e) { + logger.warn(`Error in line:${linenum} ${e}`); + } + }; } } } catch (e) {