Mirror from bluesky-social/pds

Compare changes

Choose any two refs to compare.

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