Merge branch 'debug-improvements' into 'main'
Debug improvements See merge request soapbox-pub/ditto!94
This commit is contained in:
commit
9b68a9fc30
|
@ -1,6 +1,6 @@
|
|||
import { findUser } from '@/db/users.ts';
|
||||
import { getAuthor } from '@/queries.ts';
|
||||
import { activityJson } from '@/utils/web.ts';
|
||||
import { activityJson } from '@/utils/api.ts';
|
||||
import { renderActor } from '@/views/activitypub/actor.ts';
|
||||
|
||||
import type { AppContext, AppController } from '@/app.ts';
|
||||
|
|
|
@ -10,8 +10,7 @@ import { jsonMetaContentSchema } from '@/schemas/nostr.ts';
|
|||
import { addTag, deleteTag, getTagSet } from '@/tags.ts';
|
||||
import { uploadFile } from '@/upload.ts';
|
||||
import { lookupAccount, nostrNow } from '@/utils.ts';
|
||||
import { paginated, paginationSchema, parseBody, updateListEvent } from '@/utils/web.ts';
|
||||
import { createEvent } from '@/utils/web.ts';
|
||||
import { createEvent, paginated, paginationSchema, parseBody, updateListEvent } from '@/utils/api.ts';
|
||||
import { renderAccounts, renderEventAccounts, renderStatuses } from '@/views.ts';
|
||||
import { accountFromPubkey, renderAccount } from '@/views/mastodon/accounts.ts';
|
||||
import { renderRelationship } from '@/views/mastodon/relationships.ts';
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { AppController } from '@/app.ts';
|
||||
import { z } from '@/deps.ts';
|
||||
import { fileSchema } from '@/schema.ts';
|
||||
import { parseBody } from '@/utils/web.ts';
|
||||
import { parseBody } from '@/utils/api.ts';
|
||||
import { renderAttachment } from '@/views/mastodon/attachments.ts';
|
||||
import { uploadFile } from '@/upload.ts';
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { type AppController } from '@/app.ts';
|
||||
import { eventsDB } from '@/db/events.ts';
|
||||
import { paginated, paginationSchema } from '@/utils/web.ts';
|
||||
import { paginated, paginationSchema } from '@/utils/api.ts';
|
||||
import { renderNotification } from '@/views/mastodon/notifications.ts';
|
||||
|
||||
const notificationsController: AppController = async (c) => {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { lodash, nip19, z } from '@/deps.ts';
|
||||
import { AppController } from '@/app.ts';
|
||||
import { nostrNow } from '@/utils.ts';
|
||||
import { parseBody } from '@/utils/web.ts';
|
||||
import { parseBody } from '@/utils/api.ts';
|
||||
|
||||
const passwordGrantSchema = z.object({
|
||||
grant_type: z.literal('password'),
|
||||
|
|
|
@ -2,7 +2,7 @@ import { type AppController } from '@/app.ts';
|
|||
import { eventsDB } from '@/db/events.ts';
|
||||
import { z } from '@/deps.ts';
|
||||
import { configSchema, elixirTupleSchema } from '@/schemas/pleroma-api.ts';
|
||||
import { createAdminEvent } from '@/utils/web.ts';
|
||||
import { createAdminEvent } from '@/utils/api.ts';
|
||||
import { Conf } from '@/config.ts';
|
||||
|
||||
const frontendConfigController: AppController = async (c) => {
|
||||
|
|
|
@ -3,7 +3,7 @@ import { getUnattachedMediaByIds } from '@/db/unattached-media.ts';
|
|||
import { type Event, ISO6391, z } from '@/deps.ts';
|
||||
import { getAncestors, getAuthor, getDescendants, getEvent } from '@/queries.ts';
|
||||
import { addTag, deleteTag } from '@/tags.ts';
|
||||
import { createEvent, paginationSchema, parseBody, updateListEvent } from '@/utils/web.ts';
|
||||
import { createEvent, paginationSchema, parseBody, updateListEvent } from '@/utils/api.ts';
|
||||
import { renderEventAccounts } from '@/views.ts';
|
||||
import { renderStatus } from '@/views/mastodon/statuses.ts';
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ import { z } from '@/deps.ts';
|
|||
import { type DittoFilter } from '@/filter.ts';
|
||||
import { getFeedPubkeys } from '@/queries.ts';
|
||||
import { booleanParamSchema } from '@/schema.ts';
|
||||
import { paginated, paginationSchema } from '@/utils/web.ts';
|
||||
import { paginated, paginationSchema } from '@/utils/api.ts';
|
||||
import { renderStatus } from '@/views/mastodon/statuses.ts';
|
||||
|
||||
import type { AppContext, AppController } from '@/app.ts';
|
||||
|
|
|
@ -6,7 +6,7 @@ import {
|
|||
type ParseAuthRequestOpts,
|
||||
validateAuthEvent,
|
||||
} from '@/utils/nip98.ts';
|
||||
import { localRequest } from '@/utils/web.ts';
|
||||
import { localRequest } from '@/utils/api.ts';
|
||||
import { signEvent } from '@/sign.ts';
|
||||
import { findUser, User } from '@/db/users.ts';
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ import { connectResponseSchema } from '@/schemas/nostr.ts';
|
|||
import { jsonSchema } from '@/schema.ts';
|
||||
import { Sub } from '@/subs.ts';
|
||||
import { eventMatchesTemplate, Time } from '@/utils.ts';
|
||||
import { createAdminEvent } from '@/utils/web.ts';
|
||||
import { createAdminEvent } from '@/utils/api.ts';
|
||||
|
||||
const debug = Debug('ditto:sign');
|
||||
|
||||
|
|
|
@ -48,7 +48,7 @@ class SubscriptionStore {
|
|||
|
||||
/** Remove an entire socket. */
|
||||
close(socket: unknown): void {
|
||||
debug('close', socket);
|
||||
debug('close', (socket as any)?.constructor?.name);
|
||||
const subs = this.#store.get(socket);
|
||||
|
||||
if (subs) {
|
||||
|
|
|
@ -2,6 +2,7 @@ import { type AppContext } from '@/app.ts';
|
|||
import { Conf } from '@/config.ts';
|
||||
import {
|
||||
type Context,
|
||||
Debug,
|
||||
type Event,
|
||||
EventTemplate,
|
||||
Filter,
|
||||
|
@ -15,6 +16,8 @@ import { signAdminEvent, signEvent } from '@/sign.ts';
|
|||
import { nostrNow } from '@/utils.ts';
|
||||
import { eventsDB } from '@/db/events.ts';
|
||||
|
||||
const debug = Debug('ditto:api');
|
||||
|
||||
/** EventTemplate with defaults. */
|
||||
type EventStub<K extends number = number> = TypeFest.SetOptional<EventTemplate<K>, 'content' | 'created_at' | 'tags'>;
|
||||
|
||||
|
@ -79,6 +82,7 @@ async function createAdminEvent<K extends number>(t: EventStub<K>, c: AppContext
|
|||
|
||||
/** Push the event through the pipeline, rethrowing any RelayError. */
|
||||
async function publishEvent<K extends number>(event: Event<K>, c: AppContext): Promise<Event<K>> {
|
||||
debug('EVENT', event);
|
||||
try {
|
||||
await pipeline.handleEvent(event);
|
||||
} catch (e) {
|
|
@ -29,7 +29,8 @@ async function lookup(value: string, opts: LookupOpts = {}): Promise<string | nu
|
|||
const { names } = nostrJsonSchema.parse(await res.json());
|
||||
|
||||
return names[name] || null;
|
||||
} catch (_e) {
|
||||
} catch (e) {
|
||||
debug(e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@ -52,6 +53,14 @@ function lookupNip05Cached(value: string): Promise<string | null> {
|
|||
const result = lookup(value);
|
||||
nip05Cache.set(value, result);
|
||||
|
||||
result.then((result) => {
|
||||
if (result) {
|
||||
debug(`Found: ${value} is ${result}`);
|
||||
} else {
|
||||
debug(`Not found: ${value} is ${result}`);
|
||||
}
|
||||
});
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ import { eventsDB } from '@/db/events.ts';
|
|||
import { type Filter } from '@/deps.ts';
|
||||
import { renderAccount } from '@/views/mastodon/accounts.ts';
|
||||
import { renderStatus } from '@/views/mastodon/statuses.ts';
|
||||
import { paginated, paginationSchema } from '@/utils/web.ts';
|
||||
import { paginated, paginationSchema } from '@/utils/api.ts';
|
||||
|
||||
/** Render account objects for the author of each event. */
|
||||
async function renderEventAccounts(c: AppContext, filters: Filter[], signal = AbortSignal.timeout(1000)) {
|
||||
|
|
Loading…
Reference in New Issue