diff --git a/.oxlintrc.json b/.oxlintrc.json index f0f16e0..a228299 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -4,8 +4,6 @@ "./node_modules/@rlly/pedantic/oxlint/core.json", "./node_modules/@rlly/pedantic/oxlint/e18e.json", "./node_modules/@rlly/pedantic/oxlint/type-aware.json", - // remove the following as necessary - "./node_modules/@rlly/pedantic/oxlint/vitest.json", - "./node_modules/@rlly/pedantic/oxlint/library.json" + "./node_modules/@rlly/pedantic/oxlint/vitest.json" ] } diff --git a/package.json b/package.json index 286478e..a9b9d70 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "tangled-stats", + "name": "atmo-stats", "private": true, "version": "0.1.0", "type": "module", @@ -7,8 +7,8 @@ "dev": "vite dev", "build": "vite build", "preview": "vite preview", - "check": "prettier --check . && oxlint --type-aware && cargo clippy && cargo fmt --check && svelte-check --tsconfig ./tsconfig.json", - "fix": "prettier --write . && oxlint --type-aware --fix && cargo fmt", + "check": "prettier --check . && oxlint --type-aware && svelte-check --tsconfig ./tsconfig.json && pnpm --recursive check", + "fix": "prettier --write . && oxlint --type-aware --fix && pnpm --recursive fix", "prepare": "svelte-kit sync" }, "imports": { @@ -21,7 +21,7 @@ "@atcute/tangled": "^2.0.21", "@e18e/eslint-plugin": "0.8.1", "@iconify-json/lucide": "^1.2.147", - "@rlly/pedantic": "0.7.0", + "@rlly/pedantic": "0.8.0", "@sveltejs/adapter-node": "^6.0.0", "@sveltejs/kit": "^3.1.0", "@types/node": "^26.6.5", diff --git a/pds-check/package.json b/pds-check/package.json index 316a90b..e02371d 100644 --- a/pds-check/package.json +++ b/pds-check/package.json @@ -5,7 +5,8 @@ "scripts": { "dev": "wrangler dev", "deploy": "wrangler deploy --minify", - "prepare": "wrangler types", + "check": "tsc --noEmit && wrangler types --check", + "fix": "wrangler types", "test": "vitest" }, "devDependencies": { diff --git a/pds-check/tests/hosts.test.ts b/pds-check/tests/hosts.test.ts index 7362f20..2bfcc34 100644 --- a/pds-check/tests/hosts.test.ts +++ b/pds-check/tests/hosts.test.ts @@ -11,7 +11,6 @@ function setupDnsMock(aRecords: string[] = [], aaaaRecords: string[] = []) { mockedResolve6.mockResolvedValue(aaaaRecords); } -// oxlint-disable-next-line vitest/valid-title describe(isPublicHost, () => { describe('public IPv4 addresses', () => { it('returns true for public IPv4 addresses', async () => { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e09c66a..7ee45a7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -24,8 +24,8 @@ importers: specifier: ^1.2.147 version: 1.2.147 '@rlly/pedantic': - specifier: 0.7.0 - version: 0.7.0(@e18e/eslint-plugin@0.8.1(oxlint@1.89.0(oxlint-tsgolint@7.0.2004)))(oxlint-tsgolint@7.0.2004)(oxlint@1.89.0(oxlint-tsgolint@7.0.2004)) + specifier: 0.8.0 + version: 0.8.0(@e18e/eslint-plugin@0.8.1(oxlint@1.89.0(oxlint-tsgolint@7.0.2004)))(oxlint-tsgolint@7.0.2004)(oxlint@1.89.0(oxlint-tsgolint@7.0.2004)) '@sveltejs/adapter-node': specifier: ^6.0.0 version: 6.0.0(@sveltejs/kit@3.1.0(@sveltejs/vite-plugin-svelte@7.1.2(svelte@5.57.2)(vite@8.3.5(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)))(svelte@5.57.2)(typescript@6.0.3)(vite@8.3.5(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0))) @@ -120,6 +120,8 @@ importers: specifier: 4.151.3 version: 4.151.3(@types/node@26.6.5) + uplc: {} + packages: '@antfu/install-pkg@1.1.0': @@ -848,13 +850,13 @@ packages: '@poppinss/exception@1.2.3': resolution: {integrity: sha512-dCED+QRChTVatE9ibtoaxc+WkdzOSjYTKi/+uacHWIsfodVfpsueo3+DKpgU5Px8qXjgmXkSvhXvSCz3fnP9lw==} - '@rlly/pedantic@0.7.0': - resolution: {integrity: sha512-qXdMfCMtEMbBTEkPTw323ZcsAPp3IxtqjQJyFUXXoS0qZ8LTDUT6scy7yp2mjmJ8+4lS6hLi1UsNlg1P2EshFQ==} - engines: {node: ^24.0.0} + '@rlly/pedantic@0.8.0': + resolution: {integrity: sha512-U75nbtMvgqPHZ7+lE6OEadkVaa7OEWuLQR6+rGdTKz01jwNOYZ1UEW7dQ0O6jq3hK3FUe1Rw9/mNJE12zALPww==} + engines: {node: '>=26 || ^24.0.0'} peerDependencies: - '@e18e/eslint-plugin': ^0.8.0 - oxlint: 1.78.0 - oxlint-tsgolint: 7.0.2001 + '@e18e/eslint-plugin': ^0.8.1 + oxlint: ^1.89.0 + oxlint-tsgolint: ^7.0.2004 peerDependenciesMeta: '@e18e/eslint-plugin': optional: true @@ -2736,7 +2738,7 @@ snapshots: '@poppinss/exception@1.2.3': {} - '@rlly/pedantic@0.7.0(@e18e/eslint-plugin@0.8.1(oxlint@1.89.0(oxlint-tsgolint@7.0.2004)))(oxlint-tsgolint@7.0.2004)(oxlint@1.89.0(oxlint-tsgolint@7.0.2004))': + '@rlly/pedantic@0.8.0(@e18e/eslint-plugin@0.8.1(oxlint@1.89.0(oxlint-tsgolint@7.0.2004)))(oxlint-tsgolint@7.0.2004)(oxlint@1.89.0(oxlint-tsgolint@7.0.2004))': dependencies: oxlint: 1.89.0(oxlint-tsgolint@7.0.2004) optionalDependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2be8e65..5824fbf 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -3,6 +3,10 @@ allowBuilds: sharp: true workerd: true +minimumReleaseAgeExclude: + - '@rlly/pedantic@0.8.0' + packages: - ./ - ./pds-check + - ./uplc diff --git a/src/routes/plc/Uses.svelte b/src/routes/plc/Uses.svelte index 3a34780..62f111c 100644 --- a/src/routes/plc/Uses.svelte +++ b/src/routes/plc/Uses.svelte @@ -45,10 +45,5 @@ margin-top: 4px; margin-bottom: 16px; } - - small { - font-size: 0.9rem; - color: var(--text-grey); - } } diff --git a/src/routes/plc/plc.remote.ts b/src/routes/plc/plc.remote.ts index 16e4927..0f50a9d 100644 --- a/src/routes/plc/plc.remote.ts +++ b/src/routes/plc/plc.remote.ts @@ -66,6 +66,7 @@ export const getStats = query(async () => { pdsDistribution: raw.pdsDistribution, invalidPdsHosts: raw.invalidPdsHosts, history: Object.entries(raw.history) + // oxlint-disable-next-line oxc/no-map-spread .map(([date, d]) => ({ date: new Date(date), ...d, @@ -90,7 +91,6 @@ export interface Counts { dids: number; } -// oxlint-disable-next-line func-names export const getCounts = query.live(async function* () { while (true) { const raw = await fetchRawStats(); diff --git a/src/routes/ufos/[collection]/ufos.remote.ts b/src/routes/ufos/[collection]/ufos.remote.ts index 33a31d5..57a4f63 100644 --- a/src/routes/ufos/[collection]/ufos.remote.ts +++ b/src/routes/ufos/[collection]/ufos.remote.ts @@ -10,13 +10,13 @@ const InstantSchema = v.nullable( ), ); -const UfoSeries = v.object({ +const UfoSeriesSchema = v.object({ creates: v.number(), updates: v.number(), deletes: v.number(), }); -type UfoSeries = v.InferOutput; +type UfoSeries = v.InferOutput; const UfoResponse = v.object({ range: v.array(InstantSchema), @@ -69,9 +69,12 @@ export const loadStatsUfo = query(v.string(), async (collection) => { results.set(date, record); } - return results - .entries() - .toArray() - .map(([date, value]) => ({ date: new Date(date), ...value })) - .toSorted((a, b) => a.date.getTime() - b.date.getTime()); + return ( + results + .entries() + .toArray() + // oxlint-disable-next-line oxc/no-map-spread + .map(([date, value]) => ({ date: new Date(date), ...value })) + .toSorted((a, b) => a.date.getTime() - b.date.getTime()) + ); }); diff --git a/uplc/package.json b/uplc/package.json new file mode 100644 index 0000000..115192e --- /dev/null +++ b/uplc/package.json @@ -0,0 +1,8 @@ +{ + "name": "uplc", + "private": true, + "scripts": { + "check": "cargo clippy && cargo fmt --check", + "fix": "cargo fmt" + } +}