Skip to content

Commit 6b5a7de

Browse files
deps(dev): bump aegir from 42.2.11 to 45.0.8 (#509)
* deps(dev): bump aegir from 42.2.11 to 45.0.8 Bumps [aegir](https://github.com/ipfs/aegir) from 42.2.11 to 45.0.8. - [Release notes](https://github.com/ipfs/aegir/releases) - [Changelog](https://github.com/ipfs/aegir/blob/main/CHANGELOG.md) - [Commits](ipfs/aegir@v42.2.11...v45.0.8) --- updated-dependencies: - dependency-name: aegir dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * chore: fix lint after aegir update --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Russell Dempsey <[email protected]>
1 parent eb46d31 commit 6b5a7de

File tree

7 files changed

+10758
-12265
lines changed

7 files changed

+10758
-12265
lines changed

package-lock.json

Lines changed: 10711 additions & 12243 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,9 @@
7474
"@babel/preset-typescript": "^7.26.0",
7575
"@playwright/test": "^1.48.2",
7676
"@types/react": "^18.3.0",
77-
"aegir": "^42.2.9",
77+
"aegir": "^45.0.8",
7878
"cross-env": "^7.0.3",
7979
"esbuild": "^0.24.0",
80-
"eslint-config-standard-with-typescript": "^34.0.1",
8180
"execa": "^8.0.1",
8281
"glob": "^10.3.12",
8382
"http-server": "^14.1.1",

src/lib/generic-db.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ export class GenericIDB<T extends BaseDbConfig> {
1717
constructor (private readonly dbName: string, private readonly storeName: string) {
1818
}
1919

20-
#openDatabase = async (): Promise<TypedIDBDatabase<T>> => {
20+
readonly #openDatabase = async (): Promise<TypedIDBDatabase<T>> => {
2121
return new Promise((resolve, reject) => {
2222
const request = indexedDB.open(this.dbName, 1)
23-
request.onerror = () => { reject(request.error) }
23+
request.onerror = () => { reject(request.error ?? new Error('Could not open DB')) }
2424
request.onsuccess = () => { resolve(request.result as TypedIDBDatabase<T>) }
2525
request.onupgradeneeded = (event) => {
2626
const db = request.result
@@ -41,7 +41,7 @@ export class GenericIDB<T extends BaseDbConfig> {
4141
const store = transaction.objectStore(this.storeName)
4242
const request = store.put(value, key)
4343
return new Promise((resolve, reject) => {
44-
request.onerror = () => { reject(request.error) }
44+
request.onerror = () => { reject(request.error ?? new Error(`Could not set "${String(key)}" to "${value}" `)) }
4545
request.onsuccess = () => { resolve() }
4646
})
4747
}
@@ -54,7 +54,7 @@ export class GenericIDB<T extends BaseDbConfig> {
5454
const store = transaction.objectStore(this.storeName)
5555
const request = store.get(key) as IDBRequest<T[K]>
5656
return new Promise((resolve, reject) => {
57-
request.onerror = () => { reject(request.error) }
57+
request.onerror = () => { reject(request.error ?? new Error(`Could not get value for "${String(key)}"`)) }
5858
request.onsuccess = () => { resolve(request.result) }
5959
})
6060
}

test-e2e/config-loading.test.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import type { ConfigDbWithoutPrivateFields } from '../src/lib/config-db.js'
55

66
test.describe('ipfs-sw configuration', () => {
77
const testConfig: ConfigDbWithoutPrivateFields = {
8-
gateways: [process.env.KUBO_GATEWAY as string, 'http://example.com'],
9-
routers: [process.env.KUBO_GATEWAY as string, 'http://example.com/routing/v1'],
8+
gateways: ['http://example.com'],
9+
routers: ['http://example.com/routing/v1'],
1010
dnsJsonResolvers: {
1111
'.': 'example.com/dns-query'
1212
},
@@ -16,6 +16,14 @@ test.describe('ipfs-sw configuration', () => {
1616
enableRecursiveGateways: false,
1717
enableGatewayProviders: false
1818
}
19+
test.beforeAll(async () => {
20+
if (process.env.KUBO_GATEWAY == null || process.env.KUBO_GATEWAY === '') {
21+
throw new Error('KUBO_GATEWAY not set')
22+
}
23+
testConfig.gateways.unshift(process.env.KUBO_GATEWAY)
24+
testConfig.routers.unshift(process.env.KUBO_GATEWAY)
25+
})
26+
1927
test('setting the config actually works', async ({ page, baseURL }) => {
2028
await page.goto(baseURL, { waitUntil: 'networkidle' })
2129
await waitForServiceWorker(page)

test-e2e/fixtures/config-test-fixtures.ts

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,16 @@ export const testPathRouting = test.extend<{ rootDomain: string, baseURL: string
3939
testPathRouting.skip()
4040
return
4141
}
42+
if (process.env.KUBO_GATEWAY == null || process.env.KUBO_GATEWAY === '') {
43+
throw new Error('KUBO_GATEWAY not set')
44+
}
4245
await page.goto('http://127.0.0.1:3333', { waitUntil: 'networkidle' })
4346
await waitForServiceWorker(page)
4447
await setConfig({
4548
page,
4649
config: {
47-
gateways: [process.env.KUBO_GATEWAY as string],
48-
routers: [process.env.KUBO_GATEWAY as string],
50+
gateways: [process.env.KUBO_GATEWAY],
51+
routers: [process.env.KUBO_GATEWAY],
4952
dnsJsonResolvers: {
5053
'.': 'https://delegated-ipfs.dev/dns-query'
5154
}
@@ -73,6 +76,8 @@ export const testPathRouting = test.extend<{ rootDomain: string, baseURL: string
7376
* })
7477
* })
7578
* ```
79+
*
80+
* TODO: do not set config on subdomains automatically.. this should be done by the application
7681
*/
7782
export const testSubdomainRouting = test.extend<{ rootDomain: string, baseURL: string, protocol: string }>({
7883
rootDomain: [rootDomain, { scope: 'test' }],
@@ -81,6 +86,10 @@ export const testSubdomainRouting = test.extend<{ rootDomain: string, baseURL: s
8186
await page.goto(baseURL, { waitUntil: 'networkidle' })
8287
await waitForServiceWorker(page)
8388

89+
if (process.env.KUBO_GATEWAY == null || process.env.KUBO_GATEWAY === '') {
90+
throw new Error('KUBO_GATEWAY not set')
91+
}
92+
const kuboGateway = process.env.KUBO_GATEWAY
8493
const oldPageGoto = page.goto.bind(page)
8594
page.goto = async (url: Parameters<Page['goto']>[0], options: Parameters<Page['goto']>[1]): ReturnType<Page['goto']> => {
8695
const response = await oldPageGoto(url, options)
@@ -89,8 +98,8 @@ export const testSubdomainRouting = test.extend<{ rootDomain: string, baseURL: s
8998
page,
9099
config: {
91100
autoReload: true,
92-
gateways: [process.env.KUBO_GATEWAY as string],
93-
routers: [process.env.KUBO_GATEWAY as string],
101+
gateways: [kuboGateway],
102+
routers: [kuboGateway],
94103
dnsJsonResolvers: {
95104
'.': 'https://delegated-ipfs.dev/dns-query'
96105
}
@@ -107,8 +116,8 @@ export const testSubdomainRouting = test.extend<{ rootDomain: string, baseURL: s
107116
page,
108117
config: {
109118
autoReload: true,
110-
gateways: [process.env.KUBO_GATEWAY as string],
111-
routers: [process.env.KUBO_GATEWAY as string],
119+
gateways: [kuboGateway],
120+
routers: [kuboGateway],
112121
dnsJsonResolvers: {
113122
'.': 'https://delegated-ipfs.dev/dns-query'
114123
}

test-e2e/fixtures/set-sw-config.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ export async function setConfig ({ page, config }: { page: Page, config: Partial
4848
const storeName = 'config'
4949
const openDb = async (): Promise<IDBDatabase> => new Promise((resolve, reject) => {
5050
const request = indexedDB.open(dbName, 1)
51-
request.onerror = () => { reject(request.error) }
51+
request.onerror = () => { reject(request.error ?? new Error('Could not open DB')) }
5252
request.onsuccess = () => { resolve(request.result) }
5353
request.onupgradeneeded = (event) => {
5454
const db = request.result
@@ -61,7 +61,7 @@ export async function setConfig ({ page, config }: { page: Page, config: Partial
6161
const store = transaction.objectStore(storeName)
6262
const request = store.put(value, key)
6363
return new Promise((resolve, reject) => {
64-
request.onerror = () => { reject(request.error) }
64+
request.onerror = () => { reject(request.error ?? new Error(`Could not set "${String(key)}" to "${value}" `)) }
6565
request.onsuccess = () => { resolve() }
6666
})
6767
}
@@ -91,7 +91,7 @@ export async function getConfig ({ page }: { page: Page }): Promise<ConfigDb> {
9191
const storeName = 'config'
9292
const openDb = async (): Promise<IDBDatabase> => new Promise((resolve, reject) => {
9393
const request = indexedDB.open(dbName, 1)
94-
request.onerror = () => { reject(request.error) }
94+
request.onerror = () => { reject(request.error ?? new Error('Could not open DB')) }
9595
request.onsuccess = () => { resolve(request.result) }
9696
request.onupgradeneeded = (event) => {
9797
const db = request.result
@@ -104,7 +104,7 @@ export async function getConfig ({ page }: { page: Page }): Promise<ConfigDb> {
104104
const store = transaction.objectStore(storeName)
105105
const request = store.get(key)
106106
return new Promise((resolve, reject) => {
107-
request.onerror = () => { reject(request.error) }
107+
request.onerror = () => { reject(request.error ?? new Error(`Could not get value for "${String(key)}"`)) }
108108
request.onsuccess = () => { resolve(request.result) }
109109
})
110110
}

test-e2e/subdomain-detection.test.ts

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,24 @@ import { setConfig, setSubdomainConfig } from './fixtures/set-sw-config.js'
33
import { waitForServiceWorker } from './fixtures/wait-for-service-worker.js'
44

55
test.describe('subdomain-detection', () => {
6+
const gateways: string[] = []
7+
const routers: string[] = []
8+
test.beforeAll(async () => {
9+
if (process.env.KUBO_GATEWAY == null || process.env.KUBO_GATEWAY === '') {
10+
throw new Error('KUBO_GATEWAY not set')
11+
}
12+
gateways.push(process.env.KUBO_GATEWAY)
13+
routers.push(process.env.KUBO_GATEWAY)
14+
})
615
test('path requests are redirected to subdomains', async ({ page, baseURL, rootDomain, protocol }) => {
716
await page.goto(baseURL, { waitUntil: 'networkidle' })
817
await waitForServiceWorker(page)
918
await setConfig({
1019
page,
1120
config: {
1221
autoReload: false,
13-
gateways: [process.env.KUBO_GATEWAY as string],
14-
routers: [process.env.KUBO_GATEWAY as string],
22+
gateways,
23+
routers,
1524
dnsJsonResolvers: {
1625
'.': 'https://delegated-ipfs.dev/dns-query'
1726
}
@@ -36,8 +45,8 @@ test.describe('subdomain-detection', () => {
3645
page,
3746
config: {
3847
autoReload: true,
39-
gateways: [process.env.KUBO_GATEWAY as string],
40-
routers: [process.env.KUBO_GATEWAY as string],
48+
gateways,
49+
routers,
4150
dnsJsonResolvers: {
4251
'.': 'https://delegated-ipfs.dev/dns-query'
4352
}

0 commit comments

Comments
 (0)