+1
-1
.github/workflows/build-and-push-ghcr.yaml
+1
-1
.github/workflows/build-and-push-ghcr.yaml
-8
README.md
-8
README.md
···
228
228
229
229
_Note: Your PDS will need to be restarted with those variables. This varies depending on your setup. If you followed this installation guide, run `systemctl restart pds`. You might need to restart the server or recreate the container, depending on what you are using._
230
230
231
-
#### Common SMTP issues
232
-
233
-
If you find that your test messages using cURL or other sources go out correctly, but you are not receiving emails from your PDS, you may need to URL encode your username and password on `/pds/pds.env` and restart the PDS service.
234
-
235
-
If the username and/or password contain special characters, the special characters will need to be [percent encoded](https://en.wikipedia.org/wiki/Percent-encoding). For some email services, the username will contain an extra `@` symbol that will also need to be percent encoded. For example, the URL `user&name@oci:p@ssword@smtphost:465` after percent encoding for the username and password fields would become `user%26name%40oci:p%40ssword@smtphost:465`.
236
-
237
-
If you are migrating an account, Bluesky's UI will ask you to confirm your email address. The confirmation code email is meant to come from your PDS. If you are encountering issues with SMTP and want to confirm the address before solving it, you can find the confirmation code on the `email_token` table on `accounts.sqlite`.
238
-
239
231
### Logging
240
232
241
233
By default, logs from the PDS are printed to `stdout` and end up in Docker's log. You can browse them by running:
+7
-1
installer.sh
+7
-1
installer.sh
···
31
31
openssl
32
32
sqlite3
33
33
xxd
34
-
jq
35
34
"
36
35
# Docker packages.
37
36
REQUIRED_DOCKER_PACKAGES="
···
215
214
fi
216
215
217
216
# Admin email
217
+
if [[ -z "${PDS_ADMIN_EMAIL}" ]]; then
218
+
read -p "Enter an admin email address (e.g. you@example.com): " PDS_ADMIN_EMAIL
219
+
fi
220
+
if [[ -z "${PDS_ADMIN_EMAIL}" ]]; then
221
+
usage "No admin email specified"
222
+
fi
223
+
218
224
if [[ -z "${PDS_ADMIN_EMAIL}" ]]; then
219
225
read -p "Enter an admin email address (e.g. you@example.com): " PDS_ADMIN_EMAIL
220
226
fi
+1
-1
service/package.json
+1
-1
service/package.json
+90
-83
service/pnpm-lock.yaml
+90
-83
service/pnpm-lock.yaml
···
6
6
7
7
dependencies:
8
8
'@atproto/pds':
9
-
specifier: 0.4.136
10
-
version: 0.4.136
9
+
specifier: 0.4.166
10
+
version: 0.4.166
11
11
12
12
packages:
13
13
14
-
/@atproto-labs/fetch-node@0.1.8:
15
-
resolution: {integrity: sha512-OOTIhZNPEDDm7kaYU8iYRgzM+D5n3mP2iiBSyKuLakKTaZBL5WwYlUsJVsqX26SnUXtGEroOJEVJ6f66OcG80w==}
14
+
/@atproto-labs/fetch-node@0.1.9:
15
+
resolution: {integrity: sha512-8sHDDXZEzQptLu8ddUU/8U+THS6dumgPynVX0/1PjUYd4S/FWyPcz6yMIiVChTfzKnZvYRRz47+qvOKhydrHQw==}
16
16
engines: {node: '>=18.7.0'}
17
17
dependencies:
18
-
'@atproto-labs/fetch': 0.2.2
19
-
'@atproto-labs/pipe': 0.1.0
18
+
'@atproto-labs/fetch': 0.2.3
19
+
'@atproto-labs/pipe': 0.1.1
20
20
ipaddr.js: 2.2.0
21
-
psl: 1.9.0
22
21
undici: 6.20.1
23
22
dev: false
24
23
25
-
/@atproto-labs/fetch@0.2.2:
26
-
resolution: {integrity: sha512-QyafkedbFeVaN20DYUpnY2hcArYxjdThPXbYMqOSoZhcvkrUqaw4xDND4wZB5TBD9cq2yqe9V6mcw9P4XQKQuQ==}
24
+
/@atproto-labs/fetch@0.2.3:
25
+
resolution: {integrity: sha512-NZtbJOCbxKUFRFKMpamT38PUQMY0hX0p7TG5AEYOPhZKZEP7dHZ1K2s1aB8MdVH0qxmqX7nQleNrrvLf09Zfdw==}
27
26
dependencies:
28
-
'@atproto-labs/pipe': 0.1.0
27
+
'@atproto-labs/pipe': 0.1.1
29
28
dev: false
30
29
31
-
/@atproto-labs/pipe@0.1.0:
32
-
resolution: {integrity: sha512-ghOqHFyJlQVFPESzlVHjKroP0tPzbmG5Jms0dNI9yLDEfL8xp4OFPWLX4f6T8mRq69wWs4nIDM3sSsFbFqLa1w==}
30
+
/@atproto-labs/pipe@0.1.1:
31
+
resolution: {integrity: sha512-hdNw2oUs2B6BN1lp+32pF7cp8EMKuIN5Qok2Vvv/aOpG/3tNSJ9YkvfI0k6Zd188LeDDYRUpYpxcoFIcGH/FNg==}
33
32
dev: false
34
33
35
34
/@atproto-labs/simple-store-memory@0.1.3:
···
43
42
resolution: {integrity: sha512-0bRbAlI8Ayh03wRwncAMEAyUKtZ+AuTS1jgPrfym1WVOAOiottI/ZmgccqLl6w5MbxVcClNQF7WYGKvGwGoIhA==}
44
43
dev: false
45
44
46
-
/@atproto-labs/xrpc-utils@0.0.14:
47
-
resolution: {integrity: sha512-/f0Dhzi08w3Oqv38wdwQ5bw238GbxhYIcxg08kVReEMTlkyRDC6H5RuqHf8Ff9J3FKqjKHGdxaOdrPNM1hCgeQ==}
45
+
/@atproto-labs/xrpc-utils@0.0.18:
46
+
resolution: {integrity: sha512-Cwrlx2JcLe0jxCK8b3GCT3HRGaH3yPhyyt+3n4JykJapCaGBKqa6FHGs9hK2Fx6lOyPF7TnV5qUPUsJ1qGEUVA==}
48
47
dependencies:
49
-
'@atproto/xrpc': 0.7.0
50
-
'@atproto/xrpc-server': 0.7.18
48
+
'@atproto/xrpc': 0.7.1
49
+
'@atproto/xrpc-server': 0.9.1
51
50
transitivePeerDependencies:
52
51
- bufferutil
53
52
- supports-color
54
53
- utf-8-validate
55
54
dev: false
56
55
57
-
/@atproto/api@0.15.6:
58
-
resolution: {integrity: sha512-hKwrBf60LcI4BqArWyrhWJWIpjwAWUJpW3PVvNzUB1q2W/ByC0JAuwq/F8tZpCEiiVBzHjHVRx4QNA2TA1cG3g==}
56
+
/@atproto/api@0.16.2:
57
+
resolution: {integrity: sha512-sSTg31J8ws8DNaoiizp+/uJideRxRaJsq+Nyl8rnSxGw0w3oCvoeRU19iRWh2t0jZEmiRJAGkveGu23NKmPYEQ==}
59
58
dependencies:
60
59
'@atproto/common-web': 0.4.2
61
-
'@atproto/lexicon': 0.4.11
60
+
'@atproto/lexicon': 0.4.12
62
61
'@atproto/syntax': 0.4.0
63
-
'@atproto/xrpc': 0.7.0
62
+
'@atproto/xrpc': 0.7.1
64
63
await-lock: 2.2.2
65
64
multiformats: 9.9.0
66
65
tlds: 1.250.0
67
66
zod: 3.23.8
68
67
dev: false
69
68
70
-
/@atproto/aws@0.2.21:
71
-
resolution: {integrity: sha512-bosExZ3YdFjOehNBcNWsC2mZBrAVLO8Ut/JquypXSahFeeXZP/9rd9F1VGf+vAmjFEKagHXQCb6CRFfJyN+I7A==}
69
+
/@atproto/aws@0.2.25:
70
+
resolution: {integrity: sha512-LT4uuda2mjXz2WT4xo7g2aWmWKl+JWusGzscqQpOlD/RFGFXKDmUcVWLVPKY+9Pys2F7X6tyDlm2aUx+/dYdYA==}
72
71
engines: {node: '>=18.7.0'}
73
72
dependencies:
74
73
'@atproto/common': 0.4.11
75
74
'@atproto/crypto': 0.4.4
76
-
'@atproto/repo': 0.8.1
75
+
'@atproto/repo': 0.8.5
77
76
'@aws-sdk/client-cloudfront': 3.515.0
78
77
'@aws-sdk/client-kms': 3.515.0
79
78
'@aws-sdk/client-s3': 3.515.0
···
135
134
uint8arrays: 3.0.0
136
135
dev: false
137
136
137
+
/@atproto/did@0.1.5:
138
+
resolution: {integrity: sha512-8+1D08QdGE5TF0bB0vV8HLVrVZJeLNITpRTUVEoABNMRaUS7CoYSVb0+JNQDeJIVmqMjOL8dOjvCUDkp3gEaGQ==}
139
+
dependencies:
140
+
zod: 3.23.8
141
+
dev: false
142
+
138
143
/@atproto/identity@0.4.8:
139
144
resolution: {integrity: sha512-Z0sLnJ87SeNdAifT+rqpgE1Rc3layMMW25gfWNo4u40RGuRODbdfAZlTwBSU2r+Vk45hU+iE+xeQspfednCEnA==}
140
145
engines: {node: '>=18.7.0'}
···
143
148
'@atproto/crypto': 0.4.4
144
149
dev: false
145
150
146
-
/@atproto/jwk-jose@0.1.6:
147
-
resolution: {integrity: sha512-r4DGMvvmazy6CxqAcnplpUxvp6Vd8UwKxQBZRpmm1aNsVonf5qj1yeDkECTiwoe/FPbvtdamlzClB3UZc7Yb5w==}
151
+
/@atproto/jwk-jose@0.1.9:
152
+
resolution: {integrity: sha512-HT9GcUe6htDxI5OSYXWdeS6QZ9lpuDDvJk508ppi8a48E/1f8eumoM0QhgbFRF9IKAnnFrtnZDOAvljQzFKwwQ==}
148
153
dependencies:
149
-
'@atproto/jwk': 0.1.5
154
+
'@atproto/jwk': 0.4.0
150
155
jose: 5.2.2
151
156
dev: false
152
157
153
-
/@atproto/jwk@0.1.5:
154
-
resolution: {integrity: sha512-OzZFLhX41TOcMeanP3aZlL5bLeaUIZT15MI4aU5cwflNq/rwpGOpz3uwDjZc8ytgUjuTQ8LabSz5jMmwoTSWFg==}
158
+
/@atproto/jwk@0.4.0:
159
+
resolution: {integrity: sha512-tvp4iZrzqEzKCeTOKz50/o6WdsZzOuWmWjF6On5QAp04fLwLpsFu2Hixgx/lA1KBO0O4sns7YSGcAqSSX6Rdog==}
155
160
dependencies:
156
161
multiformats: 9.9.0
157
162
zod: 3.23.8
158
163
dev: false
159
164
160
-
/@atproto/lexicon@0.4.11:
161
-
resolution: {integrity: sha512-btefdnvNz2Ao2I+qbmj0F06HC8IlrM/IBz6qOBS50r0S6uDf5tOO+Mv2tSVdimFkdzyDdLtBI1sV36ONxz2cOw==}
165
+
/@atproto/lexicon@0.4.12:
166
+
resolution: {integrity: sha512-fcEvEQ1GpQYF5igZ4IZjPWEoWVpsEF22L9RexxLS3ptfySXLflEyH384e7HITzO/73McDeaJx3lqHIuqn9ulnw==}
162
167
dependencies:
163
168
'@atproto/common-web': 0.4.2
164
169
'@atproto/syntax': 0.4.0
···
167
172
zod: 3.23.8
168
173
dev: false
169
174
170
-
/@atproto/oauth-provider-api@0.1.2:
171
-
resolution: {integrity: sha512-tNAuMrE6D3696euavxo1+Jh7Re0PPwJstbyY8SrdVPXgKJh/LrbpKUKiPNW/p5KyVfRs2tWeAxy+ReESu6SmXA==}
175
+
/@atproto/oauth-provider-api@0.2.0:
176
+
resolution: {integrity: sha512-u18VRCDuz5BloUQKbvTISjQk7CgpDI1hf3leoJ7ADOAo8oW71QZD0tsWDX81R2uB66mKZHptjGSSVxxqpZFipQ==}
172
177
dependencies:
173
-
'@atproto/jwk': 0.1.5
174
-
'@atproto/oauth-types': 0.2.7
178
+
'@atproto/jwk': 0.4.0
179
+
'@atproto/oauth-types': 0.4.0
175
180
dev: false
176
181
177
-
/@atproto/oauth-provider-frontend@0.1.4:
178
-
resolution: {integrity: sha512-TLKL5lTmSieHx7+3RVIx7rIxRPP1SNCwzzdTvYB46yd1XrGHdPU//M6CP5OZ1BvcxF6H4JXIkOSWvFseol+gOw==}
182
+
/@atproto/oauth-provider-frontend@0.1.11:
183
+
resolution: {integrity: sha512-MvPUI+vh8a8UWmpAV8VS2qrdJ/B6l75qDQX1z6vF1YkPR1d9SLEdOYx/O26g5ZyuN+Mk00OBdOSfjvON/UOxQA==}
179
184
engines: {node: '>=18.7.0'}
180
185
optionalDependencies:
181
-
'@atproto/oauth-provider-api': 0.1.2
186
+
'@atproto/oauth-provider-api': 0.2.0
182
187
dev: false
183
188
184
-
/@atproto/oauth-provider-ui@0.1.4:
185
-
resolution: {integrity: sha512-GTQnB7OUBFSeXcdRseAGYzKe9UUFB/kGjRcIA8+pO5pCMD7JdXI+WliUhsbdmQ2I+OK78aAlCrmygNWpLtpZgg==}
189
+
/@atproto/oauth-provider-ui@0.2.0:
190
+
resolution: {integrity: sha512-v4rzz3C8i2NBqxycWWDTeosHtv6B9+EW4ZCq9Il6thmHdtT2CmB07R5Ia7zQ1n7lylxI6mC9JqA9CLis0uLz+Q==}
186
191
engines: {node: '>=18.7.0'}
187
192
optionalDependencies:
188
-
'@atproto/oauth-provider-api': 0.1.2
193
+
'@atproto/oauth-provider-api': 0.2.0
189
194
dev: false
190
195
191
-
/@atproto/oauth-provider@0.7.6:
192
-
resolution: {integrity: sha512-4YcnddACznmpuRmHlt9G+kccdv2Gct5qQOF9Yyjse8cl2Td+Rg1gkchpRdWUnyr9fgZzmCsSBYzEfVXge3eUiQ==}
196
+
/@atproto/oauth-provider@0.10.0:
197
+
resolution: {integrity: sha512-WbDaMC/9Zd4oslA4pPvf7ozum0YAQRxNspYpEauXtJ/bjVxqViKgV158jnPhDbYfo62NkxSuSaUkTV116U/VBg==}
193
198
engines: {node: '>=18.7.0'}
194
199
dependencies:
195
-
'@atproto-labs/fetch': 0.2.2
196
-
'@atproto-labs/fetch-node': 0.1.8
197
-
'@atproto-labs/pipe': 0.1.0
200
+
'@atproto-labs/fetch': 0.2.3
201
+
'@atproto-labs/fetch-node': 0.1.9
202
+
'@atproto-labs/pipe': 0.1.1
198
203
'@atproto-labs/simple-store': 0.2.0
199
204
'@atproto-labs/simple-store-memory': 0.1.3
200
205
'@atproto/common': 0.4.11
201
-
'@atproto/jwk': 0.1.5
202
-
'@atproto/jwk-jose': 0.1.6
203
-
'@atproto/oauth-provider-api': 0.1.2
204
-
'@atproto/oauth-provider-frontend': 0.1.4
205
-
'@atproto/oauth-provider-ui': 0.1.4
206
-
'@atproto/oauth-types': 0.2.7
206
+
'@atproto/did': 0.1.5
207
+
'@atproto/jwk': 0.4.0
208
+
'@atproto/jwk-jose': 0.1.9
209
+
'@atproto/oauth-provider-api': 0.2.0
210
+
'@atproto/oauth-provider-frontend': 0.1.11
211
+
'@atproto/oauth-provider-ui': 0.2.0
212
+
'@atproto/oauth-scopes': 0.0.1
213
+
'@atproto/oauth-types': 0.4.0
207
214
'@atproto/syntax': 0.4.0
208
215
'@hapi/accept': 6.0.3
209
216
'@hapi/address': 5.1.1
210
217
'@hapi/bourne': 3.0.0
211
218
'@hapi/content': 6.0.0
212
-
cookie: 0.6.0
219
+
cookie: 0.7.2
213
220
disposable-email-domains-js: 1.5.0
214
221
forwarded: 0.2.0
215
222
http-errors: 2.0.0
216
223
ioredis: 5.3.2
217
224
jose: 5.2.2
218
-
psl: 1.9.0
219
225
zod: 3.23.8
220
226
transitivePeerDependencies:
221
227
- supports-color
222
228
dev: false
223
229
224
-
/@atproto/oauth-types@0.2.7:
225
-
resolution: {integrity: sha512-2SlDveiSI0oowC+sfuNd/npV8jw/FhokSS26qyUyldTg1g9ZlhxXUfMP4IZOPeZcVn9EszzQRHs1H9ZJqVQIew==}
230
+
/@atproto/oauth-scopes@0.0.1:
231
+
resolution: {integrity: sha512-9IGgwM0KrWUwRTg02o4GKZaoKJLOkFwtkq2i39pYQxqJm18jvEvadxW/sR1A5f9f2vbTZtECgIziU5hdd01U5Q==}
232
+
dev: false
233
+
234
+
/@atproto/oauth-types@0.4.0:
235
+
resolution: {integrity: sha512-FrRH9JsPw9H4JxfPDrbrI+pB102tbHTygajfHay7xwz78HPOjSbWPRgWW2hYS4w8vDYdB3PYbBj1jPoKetW7LA==}
226
236
dependencies:
227
-
'@atproto/jwk': 0.1.5
237
+
'@atproto/jwk': 0.4.0
228
238
zod: 3.23.8
229
239
dev: false
230
240
231
-
/@atproto/pds@0.4.136:
232
-
resolution: {integrity: sha512-sao4iq/CRWwdM0gljw7XGg/ef4OTWFc6RU2g0nNgJLvxfPO3uMG8Ze1S6tfhr9wvhIKZWVCzzPruTglrlWMEYw==}
241
+
/@atproto/pds@0.4.166:
242
+
resolution: {integrity: sha512-LwLiLQNOZsZ4LgD4qmtWf3W5FJEaTA3Bi3Y1x79TXrBfcvcmIoNYBUE0WOLmDFfLyp44caODqS6HCLvqc11T7g==}
233
243
engines: {node: '>=18.7.0'}
234
244
dependencies:
235
-
'@atproto-labs/fetch-node': 0.1.8
236
-
'@atproto-labs/xrpc-utils': 0.0.14
237
-
'@atproto/api': 0.15.6
238
-
'@atproto/aws': 0.2.21
245
+
'@atproto-labs/fetch-node': 0.1.9
246
+
'@atproto-labs/xrpc-utils': 0.0.18
247
+
'@atproto/api': 0.16.2
248
+
'@atproto/aws': 0.2.25
239
249
'@atproto/common': 0.4.11
240
250
'@atproto/crypto': 0.4.4
241
251
'@atproto/identity': 0.4.8
242
-
'@atproto/lexicon': 0.4.11
243
-
'@atproto/oauth-provider': 0.7.6
244
-
'@atproto/repo': 0.8.1
252
+
'@atproto/lexicon': 0.4.12
253
+
'@atproto/oauth-provider': 0.10.0
254
+
'@atproto/oauth-scopes': 0.0.1
255
+
'@atproto/repo': 0.8.5
245
256
'@atproto/syntax': 0.4.0
246
-
'@atproto/xrpc': 0.7.0
247
-
'@atproto/xrpc-server': 0.7.18
257
+
'@atproto/xrpc': 0.7.1
258
+
'@atproto/xrpc-server': 0.9.1
248
259
'@did-plc/lib': 0.0.4
249
260
'@hapi/address': 5.1.1
250
261
better-sqlite3: 10.1.0
···
281
292
- utf-8-validate
282
293
dev: false
283
294
284
-
/@atproto/repo@0.8.1:
285
-
resolution: {integrity: sha512-d1NtHhXYJVJlFVI6mbVOUnpB0rnhqxPnZcALkJoYJjaDPVr4NNqRFAtrwb+GHzxT6DhijoXYQf24pKGfEFDd4g==}
295
+
/@atproto/repo@0.8.5:
296
+
resolution: {integrity: sha512-QZ4UWBWDyPMXgPhktmaRYRyCXIw7lIEAyGtaFy7UmCPpJ5TtFKw3GhGrEiNz/fY3/6lrkdDj44/Tzkud/eP/VQ==}
286
297
engines: {node: '>=18.7.0'}
287
298
dependencies:
288
299
'@atproto/common': 0.4.11
289
300
'@atproto/common-web': 0.4.2
290
301
'@atproto/crypto': 0.4.4
291
-
'@atproto/lexicon': 0.4.11
302
+
'@atproto/lexicon': 0.4.12
292
303
'@ipld/dag-cbor': 7.0.3
293
304
multiformats: 9.9.0
294
305
uint8arrays: 3.0.0
···
300
311
resolution: {integrity: sha512-b9y5ceHS8YKOfP3mdKmwAx5yVj9294UN7FG2XzP6V5aKUdFazEYRnR9m5n5ZQFKa3GNvz7de9guZCJ/sUTcOAA==}
301
312
dev: false
302
313
303
-
/@atproto/xrpc-server@0.7.18:
304
-
resolution: {integrity: sha512-kjlAsI+UNbbm6AK3Y5Hb4BJ7VQHNKiYYu2kX5vhZJZHO8qfO40GPYYb/2TknZV8IG6fDPBQhUpcDRolI86sgag==}
314
+
/@atproto/xrpc-server@0.9.1:
315
+
resolution: {integrity: sha512-AJfxsKrZgKL/5362Rc0oUEjlgpDCmY/soeyLHHjid8J6clbErAdJVCuFwW4T40aHGFY1J13a29ucwbSfOROx6w==}
305
316
engines: {node: '>=18.7.0'}
306
317
dependencies:
307
318
'@atproto/common': 0.4.11
308
319
'@atproto/crypto': 0.4.4
309
-
'@atproto/lexicon': 0.4.11
310
-
'@atproto/xrpc': 0.7.0
320
+
'@atproto/lexicon': 0.4.12
321
+
'@atproto/xrpc': 0.7.1
311
322
cbor-x: 1.5.8
312
323
express: 4.18.2
313
324
http-errors: 2.0.0
···
322
333
- utf-8-validate
323
334
dev: false
324
335
325
-
/@atproto/xrpc@0.7.0:
326
-
resolution: {integrity: sha512-SfhP9dGx2qclaScFDb58Jnrmim5nk4geZXCqg6sB0I/KZhZEkr9iIx1hLCp+sxkIfEsmEJjeWO4B0rjUIJW5cw==}
336
+
/@atproto/xrpc@0.7.1:
337
+
resolution: {integrity: sha512-ANHEzlskYlMEdH18m+Itp3a8d0pEJao2qoDybDoMupTnoeNkya4VKIaOgAi6ERQnqatBBZyn9asW+7rJmSt/8g==}
327
338
dependencies:
328
-
'@atproto/lexicon': 0.4.11
339
+
'@atproto/lexicon': 0.4.12
329
340
zod: 3.23.8
330
341
dev: false
331
342
···
2188
2199
engines: {node: '>= 0.6'}
2189
2200
dev: false
2190
2201
2191
-
/cookie@0.6.0:
2192
-
resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
2202
+
/cookie@0.7.2:
2203
+
resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
2193
2204
engines: {node: '>= 0.6'}
2194
2205
dev: false
2195
2206
···
3071
3082
3072
3083
/proxy-from-env@1.1.0:
3073
3084
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
3074
-
dev: false
3075
-
3076
-
/psl@1.9.0:
3077
-
resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
3078
3085
dev: false
3079
3086
3080
3087
/pump@3.0.0: