From f248fb336e7953b53dba2851c6eb4bc4fe8c7de3 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 18 Apr 2024 14:28:38 +0200 Subject: [PATCH 1/7] Remove puppeteer This introduces a needless system dependency on chromium. Puppeteer is only necessary for instrumenting tests on a headless browser, which is seemingly not needed here given the absence of tests. --- package.json | 1 - yarn.lock | 246 +++------------------------------------------------ 2 files changed, 14 insertions(+), 233 deletions(-) diff --git a/package.json b/package.json index 9dd79870..5758f3f9 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,6 @@ "path-browserify": "^1.0.1", "posthog-js": "^1.76.0", "prism-react-renderer": "^2.3.0", - "puppeteer": "^5.3.1", "react": "^18.0.0", "react-dom": "^18.0.0", "react-google-recaptcha": "^3.1.0", diff --git a/yarn.lock b/yarn.lock index 0259f718..47343321 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1547,7 +1547,7 @@ "@docusaurus/theme-search-algolia" "3.1.1" "@docusaurus/types" "3.1.1" -"@docusaurus/react-loadable@5.5.2", "react-loadable@npm:@docusaurus/react-loadable@5.5.2": +"@docusaurus/react-loadable@5.5.2": version "5.5.2" resolved "https://registry.yarnpkg.com/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz#81aae0db81ecafbdaee3651f12804580868fa6ce" integrity sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ== @@ -3096,13 +3096,6 @@ dependencies: "@types/yargs-parser" "*" -"@types/yauzl@^2.9.1": - version "2.10.3" - resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.3.tgz#e9b2808b4f109504a03cda958259876f61017999" - integrity sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q== - dependencies: - "@types/node" "*" - "@ungap/structured-clone@^1.0.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" @@ -3272,11 +3265,6 @@ address@^1.0.1, address@^1.1.2: resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== -agent-base@5: - version "5.1.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-5.1.1.tgz#e8fb3f242959db44d63be665db7a8e739537a32c" - integrity sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g== - aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -3615,15 +3603,6 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -bl@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" - integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== - dependencies: - buffer "^5.5.0" - inherits "^2.0.4" - readable-stream "^3.4.0" - bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: version "4.12.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" @@ -3784,11 +3763,6 @@ browserslist@^4.0.0, browserslist@^4.18.1, browserslist@^4.21.10, browserslist@^ node-releases "^2.0.14" update-browserslist-db "^1.0.13" -buffer-crc32@~0.2.3: - version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== - buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" @@ -3804,14 +3778,6 @@ buffer-xor@^1.0.3: resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== -buffer@^5.2.1, buffer@^5.5.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" - integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== - dependencies: - base64-js "^1.3.1" - ieee754 "^1.1.13" - buffer@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" @@ -4039,11 +4005,6 @@ chokidar@^3.4.2, chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" -chownr@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== - chrome-trace-event@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" @@ -4872,11 +4833,6 @@ devlop@^1.0.0, devlop@^1.1.0: dependencies: dequal "^2.0.0" -devtools-protocol@0.0.818844: - version "0.0.818844" - resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.818844.tgz#d1947278ec85b53e4c8ca598f607a28fa785ba9e" - integrity sha512-AD1hi7iVJ8OD0aMLQU5VK0XH9LDlA1+BcPIgrAxPfaibx2DbWucuyOhc4oyQCbnvDDO68nN6/LcKfqTP343Jjg== - diffie-hellman@^5.0.0: version "5.0.3" resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" @@ -5093,13 +5049,6 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== -end-of-stream@^1.1.0, end-of-stream@^1.4.1: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - enhanced-resolve@^5.15.0: version "5.15.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35" @@ -5361,17 +5310,6 @@ extend@^3.0.0: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -extract-zip@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" - integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== - dependencies: - debug "^4.1.1" - get-stream "^5.1.0" - yauzl "^2.10.0" - optionalDependencies: - "@types/yauzl" "^2.9.1" - fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -5421,13 +5359,6 @@ faye-websocket@^0.11.3: dependencies: websocket-driver ">=0.5.1" -fd-slicer@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" - integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== - dependencies: - pend "~1.2.0" - feed@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.2.tgz#865783ef6ed12579e2c44bbef3c9113bc4956a7e" @@ -5498,14 +5429,6 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -find-up@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - find-up@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" @@ -5583,11 +5506,6 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -fs-constants@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" - integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== - fs-extra@^11.1.1: version "11.2.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" @@ -5648,13 +5566,6 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== -get-stream@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== - dependencies: - pump "^3.0.0" - get-stream@^6.0.0, get-stream@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" @@ -6280,14 +6191,6 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== -https-proxy-agent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz#702b71fb5520a132a66de1f67541d9e62154d82b" - integrity sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg== - dependencies: - agent-base "5" - debug "4" - human-signals@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" @@ -6310,7 +6213,7 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== -ieee754@^1.1.13, ieee754@^1.2.1: +ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -6992,13 +6895,6 @@ locate-path@^3.0.0: p-locate "^3.0.0" path-exists "^3.0.0" -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - locate-path@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" @@ -7922,11 +7818,6 @@ minimist@^1.2.0, minimist@~1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -mkdirp-classic@^0.5.2: - version "0.5.3" - resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" - integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== - moment@^2.30.1: version "2.30.1" resolved "https://registry.yarnpkg.com/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae" @@ -8001,13 +7892,6 @@ node-emoji@^2.1.0: emojilib "^2.4.0" skin-tone "^2.0.0" -node-fetch@^2.6.1: - version "2.7.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" - integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== - dependencies: - whatwg-url "^5.0.0" - node-forge@^1: version "1.3.1" resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" @@ -8142,7 +8026,7 @@ on-headers@~1.0.2: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== -once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -8180,7 +8064,7 @@ p-cancelable@^3.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050" integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw== -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -8208,13 +8092,6 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - p-locate@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" @@ -8450,11 +8327,6 @@ pbkdf2@^3.0.3, pbkdf2@^3.1.2: safe-buffer "^5.0.1" sha.js "^2.4.8" -pend@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== - periscopic@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/periscopic/-/periscopic-3.1.0.tgz#7e9037bf51c5855bd33b48928828db4afa79d97a" @@ -8474,13 +8346,6 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - pkg-dir@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-7.0.0.tgz#8f0c08d6df4476756c5ff29b3282d0bab7517d11" @@ -8849,11 +8714,6 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== -progress@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - prompts@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -8896,11 +8756,6 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" -proxy-from-env@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" - integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== - public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -8913,14 +8768,6 @@ public-encrypt@^4.0.0: randombytes "^2.0.1" safe-buffer "^5.1.2" -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - punycode@^1.3.2, punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" @@ -8938,24 +8785,6 @@ pupa@^3.1.0: dependencies: escape-goat "^4.0.0" -puppeteer@^5.3.1: - version "5.5.0" - resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-5.5.0.tgz#331a7edd212ca06b4a556156435f58cbae08af00" - integrity sha512-OM8ZvTXAhfgFA7wBIIGlPQzvyEETzDjeRa4mZRCRHxYL+GNH5WAuYUQdja3rpWZvkX/JKqmuVgbsxDNsDFjMEg== - dependencies: - debug "^4.1.0" - devtools-protocol "0.0.818844" - extract-zip "^2.0.0" - https-proxy-agent "^4.0.0" - node-fetch "^2.6.1" - pkg-dir "^4.2.0" - progress "^2.0.1" - proxy-from-env "^1.0.0" - rimraf "^3.0.2" - tar-fs "^2.0.0" - unbzip2-stream "^1.3.3" - ws "^7.2.3" - qs@6.11.0: version "6.11.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" @@ -9170,6 +8999,14 @@ react-loadable-ssr-addon-v5-slorber@^1.0.1: dependencies: "@babel/runtime" "^7.10.3" +"react-loadable@npm:@docusaurus/react-loadable@5.5.2": + version "5.5.2" + resolved "https://registry.yarnpkg.com/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz#81aae0db81ecafbdaee3651f12804580868fa6ce" + integrity sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ== + dependencies: + "@types/react" "*" + prop-types "^15.6.2" + react-markdown@^4.2.2: version "4.3.1" resolved "https://registry.yarnpkg.com/react-markdown/-/react-markdown-4.3.1.tgz#39f0633b94a027445b86c9811142d05381300f2f" @@ -9257,7 +9094,7 @@ readable-stream@^2.0.1, readable-stream@^2.0.2: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0, readable-stream@^3.6.2: +readable-stream@^3.0.6, readable-stream@^3.5.0, readable-stream@^3.6.0, readable-stream@^3.6.2: version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== @@ -10292,27 +10129,6 @@ tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar-fs@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" - integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== - dependencies: - chownr "^1.1.1" - mkdirp-classic "^0.5.2" - pump "^3.0.0" - tar-stream "^2.1.4" - -tar-stream@^2.1.4: - version "2.2.0" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" - integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== - dependencies: - bl "^4.0.3" - end-of-stream "^1.4.1" - fs-constants "^1.0.0" - inherits "^2.0.3" - readable-stream "^3.1.1" - terser-webpack-plugin@^5.3.10, terser-webpack-plugin@^5.3.9: version "5.3.10" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" @@ -10396,11 +10212,6 @@ totalist@^3.0.0: resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== -tr46@~0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== - trim-lines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" @@ -10471,14 +10282,6 @@ typescript@~5.2.2: resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78" integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== -unbzip2-stream@^1.3.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz#b0da04c4371311df771cdc215e87f2130991ace7" - integrity sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg== - dependencies: - buffer "^5.2.1" - through "^2.3.8" - undici-types@~5.26.4: version "5.26.5" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" @@ -11224,11 +11027,6 @@ web-namespaces@^2.0.0: resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== -webidl-conversions@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== - webpack-bundle-analyzer@^4.9.0: version "4.10.1" resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.1.tgz#84b7473b630a7b8c21c741f81d8fe4593208b454" @@ -11363,14 +11161,6 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== -whatwg-url@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== - dependencies: - tr46 "~0.0.3" - webidl-conversions "^3.0.0" - which-typed-array@^1.1.14, which-typed-array@^1.1.2: version "1.1.14" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.14.tgz#1f78a111aee1e131ca66164d8bdc3ab062c95a06" @@ -11432,7 +11222,7 @@ write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -ws@^7.2.3, ws@^7.3.1: +ws@^7.3.1: version "7.5.9" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== @@ -11486,14 +11276,6 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yauzl@^2.10.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" - integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== - dependencies: - buffer-crc32 "~0.2.3" - fd-slicer "~1.1.0" - yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" From be6398d5c50ce2e74d8ce781f4a90ed1d2a414e8 Mon Sep 17 00:00:00 2001 From: Matthias Benkort <5680256+KtorZ@users.noreply.github.com> Date: Thu, 18 Apr 2024 14:23:06 +0200 Subject: [PATCH 2/7] Update 01-installing-the-cardano-node.mdx - Adjust some wording to be more accurate - Link to Docker - Adjust links to cardano-node now living in intersectMBO - Re-order section from the most recommended to least recommended --- .../01-installing-the-cardano-node.mdx | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/docs/07-development-guidelines/01-installing-the-cardano-node.mdx b/docs/07-development-guidelines/01-installing-the-cardano-node.mdx index a27ed2bf..6c5a23fb 100644 --- a/docs/07-development-guidelines/01-installing-the-cardano-node.mdx +++ b/docs/07-development-guidelines/01-installing-the-cardano-node.mdx @@ -6,25 +6,24 @@ metaTitle: Installing the Cardano node ## Downloading pre-compiled executables You can install the Cardano node and the CLI using -[pre-compiled executable files](https://github.com/input-output-hk/cardano-node#executables) +[pre-compiled executable files](https://github.com/intersectmbo/cardano-node/releases/latest) for your platform. +## Using Docker + +You can also use a [Docker](https://www.docker.com/) image to run your Cardano node in a container. For more details, see [this explainer](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/Docker.md). + ## Building from source Alternatively, if you want to build from source, there are two options available to you. Depending on your build tool preference, you can build from the source code using either of the following: -- [Cabal: building the node](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/install.md) -- [Nix: building the node](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/building-the-node-using-nix.md) +- [Assisted with Nix](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/building-the-node-using-nix.md) (recommended) +- [Manually with Cabal](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/install.md) -Please refer to the [cardano-node releases page](https://github.com/input-output-hk/cardano-node/releases/latest) to ensure you are working with the latest version of the node. - -Once you have installed the node, you need to -[specify the configuration parameters](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/understanding-config-files.md). - -## Using Docker +Please refer to the [cardano-node releases page](https://github.com/intersectmbo/cardano-node/releases/latest) to ensure you are working with the latest version of the node. -You can also use a Docker image to build your Cardano node. For more details, see [this explainer](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/Docker.md). +Once you have installed the node, you need to [configure it](https://github.com/input-output-hk/cardano-node-wiki/blob/main/docs/getting-started/understanding-config-files.md). From f67551d7b484f9ffe936a3d196fd711e466b4fea Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 18 Apr 2024 14:40:08 +0200 Subject: [PATCH 3/7] Remove noise, separate instructor name, specify title. --- .../02-cardano-node-course.mdx | 65 ++++++++++--------- 1 file changed, 34 insertions(+), 31 deletions(-) diff --git a/docs/07-development-guidelines/02-cardano-node-course.mdx b/docs/07-development-guidelines/02-cardano-node-course.mdx index 895efb8e..74ec7bbf 100644 --- a/docs/07-development-guidelines/02-cardano-node-course.mdx +++ b/docs/07-development-guidelines/02-cardano-node-course.mdx @@ -3,36 +3,39 @@ title: The Cardano node video course metaTitle: The Cardano node video course --- +The IOG Academy provides this course on YouTube. -The IOG Academy provides this course on YouTube. +

+ Instructor: Carlos Lopez de Lara, product owner at [Input Output](https://iohk.io/). +

-| Video | Summary | -| -------- | --------- | -| [Cardano node course](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR) | Instructor: Carlos Lopez de Lara, product owner, Cardano node. | -| [Building the node with Cabal](https://www.youtube.com/watch?v=csqvbw3F_BU&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=1) | Video 1. Step-by-step demonstration of the whole installation, with prerequisites. | -| [Building the node with Nix](https://www.youtube.com/watch?v=iREukg3-JSM&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=2&pp=iAQB) | Video 2. Another full demonstration, this time using Nix. | -| [Running the node](https://www.youtube.com/watch?v=YlUljmlCPYs&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=3&pp=iAQB) | Video 3. Running the node and connecting to a network. | -| [Generating keys and addresses](https://www.youtube.com/watch?v=8ZYuiRxPAZc&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=4&pp=iAQB) | Video 4. A detailed explanation of generating the different types of keys and addresses used in Cardano. | -| [Simple transactions with the build-raw command](https://www.youtube.com/watch?v=rbst_uiGpI4&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=5&pp=iAQB) | Video 5. Carlos describes the two commands used to build a transaction, and demonstrates the hard way; using the `build-raw` command. | -| [Simple transaction with the build command](https://www.youtube.com/watch?v=AVz_zsDd6wE&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=6&pp=iAQB) | Video 6. A demonstration of the power and convenience of using the `build` command. | -| [Register stake address and delegate to a stake pool](https://www.youtube.com/watch?v=m0BmjjNt19w&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=7&pp=iAQB) | Video 7. Carlos explains certificates and demonstrates the process of delegating ada to the stake pool using the Cardano command line interface. | -| [Protocol parameters 1/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=8&pp=iAQB) | Video 8. Parameters, one of four. These videos explain what the protocol parameters are, and how they influence the behavior of Cardano. | -| [Protocol parameters 2/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=9&pp=iAQB) | Video 9. Parameters, two of four. | -| [Protocol parameters 3/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=10&pp=iAQB) | Video 10. Parameters, three of four. | -| [Protocol parameters 4/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=11&pp=iAQB) | Video 11. Parameters, four of four. | -| [Peer-to-peer (P2P) networking](https://www.youtube.com/watch?v=7YyCJ3fDN0I&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=12&pp=iAQB) | Video 12. P2P networking; a detailed explanation of Dynamic P2P networking and its advantages. | -| [P2P networking; topology and configuration](https://www.youtube.com/watch?v=hOFVL6gjFrw&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=13&pp=iAQB) | Video 13. P2P networking; how to configure the topology and configuration files for the different types of nodes. | -| [Creating a stake pool. The setup](https://www.youtube.com/watch?v=6AQaPdmxnfo&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=14&pp=iAQB) | Video 14. Creating a stake pool; recommended hardware layout and software configuration. | -| [Creating a stake pool. Generating stake pool keys](https://www.youtube.com/watch?v=xydi4_pqOdo&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=15&pp=iAQB) | Video 15. Creating a stake pool; a detailed demonstration and explanation of generating the required keys and other artifacts. | -| [Creating a stake pool. Registering the stake pool](https://www.youtube.com/watch?v=9UK_EFG-nkA&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=16&pp=iAQB) | Video 16. Creating a stake pool; using the artifacts created earlier to complete the registration. | -| [Creating a stake pool. RTS, topology, and systemd](https://www.youtube.com/watch?v=1CaMmsgFPnw&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=17&pp=iAQB) | Video 17. Creating a stake pool; the Haskell runtime options, and how to extend and override them. Details of the topology files and the startup scripts. Using systemd to restart your node as required. | -| [Stake snapshots](https://www.youtube.com/watch?v=t5BOFmy6IYg&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=18&pp=iAQB) | Video 18. How to request test funds from the faucet. Details of stake distribution snapshots. | -| [Stake pool operations. Useful commands 1/2](https://www.youtube.com/watch?v=NCdsk75-7NA&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=19&pp=iAQB) | Video 19. Stake pool operations; useful commands for managing your stake pool; video one of two. | -| [Stake pool operations. Useful commands 2/2](https://www.youtube.com/watch?v=NCdsk75-7NA&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=20&pp=iAQB) | Video 20. Stake pool operations; useful commands two of two. | -| [Monitoring with Prometheus](https://www.youtube.com/watch?v=iqAmwhk7djE&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=21&pp=iAQB) | Video 22. Stake pool operations; how to install and configure Prometheus to monitor your Cardano node. | -| [Cardano governance](https://www.youtube.com/watch?v=biUHK1UDkAY&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=22&pp=iAQB) | Video 23. Carlos discusses the history and mechanism of implementing Cardano updates. -| [Creating a local cluster](https://www.youtube.com/watch?v=2oAonlDUcNY&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=23&pp=iAQB) | Video 24. Creating a local cluster; using the `create-cardano` command. | -| [Local cluster from Byron to Shelley](https://www.youtube.com/watch?v=8Sp2ljOrXXw&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=24&pp=iAQB) | Video 25. Creating a local cluster; moving from genesis to Byron to Shelley. | -| [Creating a stake pool on the local cluster](https://www.youtube.com/watch?v=0svni-Dy4zM&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=25&pp=iAQB) | Video 26. Creating a local cluster; providing funds, keys, and configuration files for a new stake pool. | -| [Bringing the d parameter down](https://www.youtube.com/watch?v=LNUzmhdGPbY&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=26&pp=iAQB) | Video 27. Creating a local cluster; submitting a proposal to bring the decentralization parameter (d) down from 1 to 0.80. | -| [From Shelley to Alonzo](https://www.youtube.com/watch?v=mFyutul_5mU&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=27&pp=iAQB) | Video 28. Creating a local cluster; moving our local cluster from the Shelley era to Alonzo. | +| Video | Summary | +| -------- | --------- | +| [Cardano node course](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR) | Introduction to the course. | +| [Building the node with Cabal](https://www.youtube.com/watch?v=csqvbw3F_BU&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=1) | Step-by-step demonstration of the whole installation, with prerequisites. | +| [Building the node with Nix](https://www.youtube.com/watch?v=iREukg3-JSM&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=2&pp=iAQB) | Another full demonstration, this time using Nix. | +| [Running the node](https://www.youtube.com/watch?v=YlUljmlCPYs&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=3&pp=iAQB) | Running the node and connecting to a network. | +| [Generating keys and addresses](https://www.youtube.com/watch?v=8ZYuiRxPAZc&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=4&pp=iAQB) | A detailed explanation of generating the different types of keys and addresses used in Cardano. | +| [Simple transactions with the build-raw command](https://www.youtube.com/watch?v=rbst_uiGpI4&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=5&pp=iAQB) | Carlos describes the two commands used to build a transaction, and demonstrates the hard way; using the `build-raw` command. | +| [Simple transaction with the build command](https://www.youtube.com/watch?v=AVz_zsDd6wE&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=6&pp=iAQB) | A demonstration of the power and convenience of using the `build` command. | +| [Register stake address and delegate to a stake pool](https://www.youtube.com/watch?v=m0BmjjNt19w&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=7&pp=iAQB) | Carlos explains certificates and demonstrates the process of delegating ada to the stake pool using the Cardano command line interface. | +| [Protocol parameters 1/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=8&pp=iAQB) | Parameters, one of four. These videos explain what the protocol parameters are, and how they influence the behavior of Cardano. | +| [Protocol parameters 2/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=9&pp=iAQB) | Parameters, two of four. | +| [Protocol parameters 3/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=10&pp=iAQB) | Parameters, three of four. | +| [Protocol parameters 4/4](https://www.youtube.com/watch?v=Czwc4U3B5k8&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=11&pp=iAQB) | Parameters, four of four. | +| [Peer-to-peer (P2P) networking](https://www.youtube.com/watch?v=7YyCJ3fDN0I&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=12&pp=iAQB) | P2P networking; a detailed explanation of Dynamic P2P networking and its advantages. | +| [P2P networking; topology and configuration](https://www.youtube.com/watch?v=hOFVL6gjFrw&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=13&pp=iAQB) | P2P networking; how to configure the topology and configuration files for the different types of nodes. | +| [Creating a stake pool. The setup](https://www.youtube.com/watch?v=6AQaPdmxnfo&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=14&pp=iAQB) | Creating a stake pool; recommended hardware layout and software configuration. | +| [Creating a stake pool. Generating stake pool keys](https://www.youtube.com/watch?v=xydi4_pqOdo&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=15&pp=iAQB) | Creating a stake pool; a detailed demonstration and explanation of generating the required keys and other artifacts. | +| [Creating a stake pool. Registering the stake pool](https://www.youtube.com/watch?v=9UK_EFG-nkA&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=16&pp=iAQB) | Creating a stake pool; using the artifacts created earlier to complete the registration. | +| [Creating a stake pool. RTS, topology, and systemd](https://www.youtube.com/watch?v=1CaMmsgFPnw&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=17&pp=iAQB) | Creating a stake pool; the Haskell runtime options, and how to extend and override them. Details of the topology files and the startup scripts. Using systemd to restart your node as required. | +| [Stake snapshots](https://www.youtube.com/watch?v=t5BOFmy6IYg&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=18&pp=iAQB) | How to request test funds from the faucet. Details of stake distribution snapshots. | +| [Stake pool operations. Useful commands 1/2](https://www.youtube.com/watch?v=NCdsk75-7NA&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=19&pp=iAQB) | Stake pool operations; useful commands for managing your stake pool; video one of two. | +| [Stake pool operations. Useful commands 2/2](https://www.youtube.com/watch?v=NCdsk75-7NA&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=20&pp=iAQB) | Stake pool operations; useful commands two of two. | +| [Monitoring with Prometheus](https://www.youtube.com/watch?v=iqAmwhk7djE&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=21&pp=iAQB) | Stake pool operations; how to install and configure Prometheus to monitor your Cardano node. | +| [Cardano governance](https://www.youtube.com/watch?v=biUHK1UDkAY&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=22&pp=iAQB) | Carlos discusses the history and mechanism of implementing Cardano updates. +| [Creating a local cluster](https://www.youtube.com/watch?v=2oAonlDUcNY&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=23&pp=iAQB) | Creating a local cluster; using the `create-cardano` command. | +| [Local cluster from Byron to Shelley](https://www.youtube.com/watch?v=8Sp2ljOrXXw&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=24&pp=iAQB) | Creating a local cluster; moving from genesis to Byron to Shelley. | +| [Creating a stake pool on the local cluster](https://www.youtube.com/watch?v=0svni-Dy4zM&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=25&pp=iAQB) | Creating a local cluster; providing funds, keys, and configuration files for a new stake pool. | +| [Bringing the d parameter down](https://www.youtube.com/watch?v=LNUzmhdGPbY&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=26&pp=iAQB) | Creating a local cluster; submitting a proposal to bring the decentralization parameter (d) down from 1 to 0.80. | +| [From Shelley to Alonzo](https://www.youtube.com/watch?v=mFyutul_5mU&list=PLNEK_Ejlx3x2ut-Pq-hi0NFVsgKB3EddR&index=27&pp=iAQB) | Creating a local cluster; moving our local cluster from the Shelley era to Alonzo. | From 7fc63185541a41cbb340947b415dedd65c18bbd4 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 18 Apr 2024 14:40:51 +0200 Subject: [PATCH 4/7] Remove 'node tests' page. This is superfluous information to have at this level. This is truly only relevant to maintainers and contributors to the node. This information betters lives in contribution instructions (e.g. CONTRIBUTING.md) at the root of specific projects. --- .../03-node-tests.mdx | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 docs/07-development-guidelines/03-node-tests.mdx diff --git a/docs/07-development-guidelines/03-node-tests.mdx b/docs/07-development-guidelines/03-node-tests.mdx deleted file mode 100644 index 836400c2..00000000 --- a/docs/07-development-guidelines/03-node-tests.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: Cardano node tests -metaTitle: Cardano node tests ---- - -*Cardano node tests* are CLI-based system and end-to-end tests for the Cardano node. - -Node tests are open source for Cardano node users running the CLI, SPOs, third-party tool developers, and others to test Cardano functionality from the end-user perspective. - -## References - -You can access [**Cardano node tests documentation here**](https://tests.cardano.intersectmbo.org/). - -Documentation includes such sections as: - -- [Getting started](https://tests.cardano.intersectmbo.org/readme.html). Explains the process of setup, usage, test variables, and more. -- [Test results](https://tests.cardano.intersectmbo.org/test_results.html). Includes details about Nightly tests, sync tests, and node tag testing. -- [Process](https://tests.cardano.intersectmbo.org/process.html). Covers the types and levels of tests, quality control strategy, and user acceptance test strategy with more processes to be added soon. -- [How-to guides](https://tests.cardano.intersectmbo.org/how-tos.html). Guides on starting a local cluster, testing MIR certificate submission, stake credentials, and SMASH usage. - -**Contributing to the Cardano node tests repository** - -Community contributions are highly appreciated. For more details and tips, [see these contribution guidelines](https://tests.cardano.intersectmbo.org/contribute/contributing.html). From 5b03eb860b894035900621add96c4491f96e18ab Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 18 Apr 2024 14:49:24 +0200 Subject: [PATCH 5/7] Move logging and monitoring under stake pool operation This is mostly only relevant to SPOs. --- .../05-node-monitoring.mdx} | 0 ...and-certificates.mdx => 06-creating-keys-and-certificates.mdx} | 0 .../{06-public-stake-pools.mdx => 07-public-stake-pools.mdx} | 0 docs/08-operating-a-stake-pool/{07-SMASH.mdx => 08-SMASH.mdx} | 0 .../{08-performance.mdx => 09-performance.mdx} | 0 docs/08-operating-a-stake-pool/{09-ranking.mdx => 10-ranking.mdx} | 0 ...elines-for-large-spos.mdx => 11-guidelines-for-large-spos.mdx} | 0 7 files changed, 0 insertions(+), 0 deletions(-) rename docs/{07-development-guidelines/04-node-monitoring.mdx => 08-operating-a-stake-pool/05-node-monitoring.mdx} (100%) rename docs/08-operating-a-stake-pool/{05-creating-keys-and-certificates.mdx => 06-creating-keys-and-certificates.mdx} (100%) rename docs/08-operating-a-stake-pool/{06-public-stake-pools.mdx => 07-public-stake-pools.mdx} (100%) rename docs/08-operating-a-stake-pool/{07-SMASH.mdx => 08-SMASH.mdx} (100%) rename docs/08-operating-a-stake-pool/{08-performance.mdx => 09-performance.mdx} (100%) rename docs/08-operating-a-stake-pool/{09-ranking.mdx => 10-ranking.mdx} (100%) rename docs/08-operating-a-stake-pool/{10-guidelines-for-large-spos.mdx => 11-guidelines-for-large-spos.mdx} (100%) diff --git a/docs/07-development-guidelines/04-node-monitoring.mdx b/docs/08-operating-a-stake-pool/05-node-monitoring.mdx similarity index 100% rename from docs/07-development-guidelines/04-node-monitoring.mdx rename to docs/08-operating-a-stake-pool/05-node-monitoring.mdx diff --git a/docs/08-operating-a-stake-pool/05-creating-keys-and-certificates.mdx b/docs/08-operating-a-stake-pool/06-creating-keys-and-certificates.mdx similarity index 100% rename from docs/08-operating-a-stake-pool/05-creating-keys-and-certificates.mdx rename to docs/08-operating-a-stake-pool/06-creating-keys-and-certificates.mdx diff --git a/docs/08-operating-a-stake-pool/06-public-stake-pools.mdx b/docs/08-operating-a-stake-pool/07-public-stake-pools.mdx similarity index 100% rename from docs/08-operating-a-stake-pool/06-public-stake-pools.mdx rename to docs/08-operating-a-stake-pool/07-public-stake-pools.mdx diff --git a/docs/08-operating-a-stake-pool/07-SMASH.mdx b/docs/08-operating-a-stake-pool/08-SMASH.mdx similarity index 100% rename from docs/08-operating-a-stake-pool/07-SMASH.mdx rename to docs/08-operating-a-stake-pool/08-SMASH.mdx diff --git a/docs/08-operating-a-stake-pool/08-performance.mdx b/docs/08-operating-a-stake-pool/09-performance.mdx similarity index 100% rename from docs/08-operating-a-stake-pool/08-performance.mdx rename to docs/08-operating-a-stake-pool/09-performance.mdx diff --git a/docs/08-operating-a-stake-pool/09-ranking.mdx b/docs/08-operating-a-stake-pool/10-ranking.mdx similarity index 100% rename from docs/08-operating-a-stake-pool/09-ranking.mdx rename to docs/08-operating-a-stake-pool/10-ranking.mdx diff --git a/docs/08-operating-a-stake-pool/10-guidelines-for-large-spos.mdx b/docs/08-operating-a-stake-pool/11-guidelines-for-large-spos.mdx similarity index 100% rename from docs/08-operating-a-stake-pool/10-guidelines-for-large-spos.mdx rename to docs/08-operating-a-stake-pool/11-guidelines-for-large-spos.mdx From 1f45ac6e131ff0bd4cd62e28c6372316c9b73cc3 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Thu, 18 Apr 2024 14:56:43 +0200 Subject: [PATCH 6/7] Update instructions about stake pool metadata Mostly everything about SMASH is now deprecated, and the project has been absorbed by db-sync. Plus, projects now mostly rely on 3rd party services like blockfrost & al or gateways like Ogmios to get access to this data. --- docs/08-operating-a-stake-pool/08-SMASH.mdx | 104 ++------------------ 1 file changed, 10 insertions(+), 94 deletions(-) diff --git a/docs/08-operating-a-stake-pool/08-SMASH.mdx b/docs/08-operating-a-stake-pool/08-SMASH.mdx index 1c29a3f4..c146e7a0 100644 --- a/docs/08-operating-a-stake-pool/08-SMASH.mdx +++ b/docs/08-operating-a-stake-pool/08-SMASH.mdx @@ -1,106 +1,22 @@ --- -title: SMASH metadata management -metaTitle: SMASH metadata management +title: Pool metadata management +metaTitle: Pool metadata management --- -SMASH is a metadata aggregation server that manages metadata for stake pools. -The functionality provided by SMASH supports stake pool operations and the -delegation ecosystem with its standardized framework for listing valid stake -pools with verified metadata. +## Overview -Each stake pool that participates in the network includes metadata that helps -users to make a rational delegation choice. This metadata contains owner -details, pool name, pool ticker, homepage, and a short description. It is -crucial to ensure that registered stake pools are valid, that they do not -duplicate ticker names or trademarks, and do not feature content that users are -likely to find offensive. SMASH was designed to improve visibility on verified -stake pool information for Cardano users, as well as to enable convenient -navigation options. +Stake pools are registered on-chain, and their on-chain data (such as information required to calculate rewards) is critical to the operation of the ledger. Stake pools also possess metadata that helps users to make a rational choice of a stake pool to delegate to. This metadata is stored off-chain as it might reflect sensitive content, and such an approach allows for a degree of decentralized censorship. -A SMASH server can aggregate stake pool metadata, fetch it, and store it in a -semi-centralized environment. The server is typically owned by a specific -operator, who is then responsible for its maintenance, and can curate and review -stake pool metadata. Importantly, it makes it possible to resolve disputes over -offending or duplicated stake pool ticker names and delist operators if they are -proven to be bad actors. +On the other hand, off-chain metadata storage prerequisites a challenge of open access by different users. On-chain stake pool registrations contain an URL pointer to the off-chain metadata and a content hash that can be fetched from a specific stake pool. This might cause both performance and privacy issues. Another crucial aspect to address is the stake pool’s “ticker” name, which is the short name a stake pool is recognized by. Ticker names might reflect prominent brands or trademarks which should not be duplicated as this leads to confusion. Stake pool operators (SPOs) running multiple pools might want to use the same metadata for all their pools and then, this might also lead to these pools appearing with the same ticker name. -The SMASH server code is open source and anyone can deploy it and become an -operator. In the due course, Daedalus will allow users to configure any server -of their choice and browse custom stake pool lists. -> If you want to install and run the SMASH server, you can use [these instructions](https://github.com/input-output-hk/smash/blob/master/doc/getting-started/how-to-install-smash.md). +## Use cases -### How does the IOHK SMASH server work? +A Stake pool Meta Aggregation Server (SMASH) is introduced to address metadata performance and privacy issues. Delegators, stake pool operators, exchanges, or wallets can deploy and use SMASH to ensure a higher level of metadata accountability and maintenance. SMASH aggregates metadata from existing stake pools and provides an efficient way to fetch it and store it in a semi-centralized environment. SMASH operators (exchanges, wallets, SPOs) are then enabled to validate and manage this metadata curating it for censorship via the delisting feature. -The first generation of SMASH is initially deployed by IOHK and is used in the -Daedalus delegation center, where it provides the ability to view available -stake pools with verified names, ticker symbols, and websites. -Below is a step-by-step description of actions that can be taken when you -identify a pool with a duplicated ticker name or offensive content. Please note -that this applies to the SMASH server that is run and maintained by IOHK. +## Run your own -**Stake pool delisting reasons** +The first generation of SMASH server has been deployed by Input Output Global (IOG). It aggregated stake pool metadata and offered a list of valid stake pools with reviewed content and ticker names. Nowadays, various solutions exist to synchronize data from the chain and a SMASH server is provided out-of-the-box as part of the cardano-db-sync project. -First, please ensure that there is a reason for a stake pool to be delisted. -There are certain reasons that influence the decision for a stake pool to be -delisted. These include: - -- **illegal or malicious content**: a stake pool that features any illegal, - abusive, or malicious content as part of the stake pool metadata (for example - via the link to the SPO’s homepage). -- **impersonation**: stake pools that attempt to impersonate other individuals, - groups, or organizations in a manner that misleads, confuses, or deceives - others. For example, a successful stake pool called POOL being obviously - impersonated by another called P00L (by linking to the same website). -- **previous ‘claim’**: ticker names can be registered by SPOs on a ‘first - come - first served’ basis, however, a ticker name which was registered on the - Incentivized Testnet (ITN), may only be registered on the Cardano mainnet by - the same SPO that registered such a ticker on the ITN. Ticker names that were - registered on the ITN but were not re-registered on the Cardano mainnet by - 19th June 2020 will be released and available for registration on the Cardano - mainnet. -- **an inappropriate ticker name**: a ticker name that is obscene, sexually - explicit, offensive, hurtful, profane, or otherwise inappropriate. This is a - subjective judgment in some cases, so best efforts will always be made. -- **intellectual property rights (IPR) violations**: SPOs that violate the - intellectual property rights of others including copyright and trademarks, - where proof can be supplied. -- **inactive or retired pools**: stake pools that are retired or have not - produced blocks in a long time, or whose SPO cannot be contacted. Retired - pools on the mainnet have a limit of six months within which to make a request - for their ticker name to be reregistered. - -**How to request a delisting** - -1. When you identify a stake pool that you believe should be delisted, you can - send an official request for delisting to smash@iohk.io. Please include your - rationale and any proof of why this stake pool should be delisted. In - particular, state one of the above reasons and provide a detailed - explanation. Stake pools impersonating trademarks should be reported by the - trademark holder or their authorized representative. -2. After your request, you will receive an email that acknowledges that your - request is taken into consideration. -3. A SMASH operator will review the request to ensure that the reasoning and - proofs are accurate and will make a decision whether or not to delist the - stake pool. It may also be determined that further arbitration or community - consultation may be required. However, the ultimate decision will always be - reserved by the entity operating the SMASH server in question. -4. When a decision is made, you will receive an email outlining whether the - stake pool will be delisted or whether the ticker listing will be allowed to - remain. In either case, we shall always provide an explanation or - justification for the choice. Please note that in some cases, a stake pool - can be delisted proactively - whether temporarily or permanently. With - delisting applied, the stake pool will not be visible on SMASH and its - operator will need to make a case if they want the decision reversed. -5. If a stake pool operator believes that delisting of their stake pool has - happened by mistake, they can submit an appeal by emailing to smash@iohk.io. - -IOHK’s SMASH operator is constantly reviewing all requests from the Cardano -community and SPOs to ensure that all the stake pool information is tracked and -managed accurately. A request is usually processed in 7 working days. - -It is important to note that delisting refers _only_ to the display of metadata -and listing with SMASH. As a decentralized network, at no point, will stake pool -operations themselves be affected. For more information or any clarifications, -you can email smash@iohk.io. +For running your own, see [the instructions on IntersectMBO/cardano-db-sync](https://github.com/IntersectMBO/cardano-db-sync/blob/master/doc/smash.md#smash-characteristics). From b215f5e1c209228c9d8289fa03faf03d22e44d31 Mon Sep 17 00:00:00 2001 From: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com> Date: Thu, 18 Apr 2024 16:07:22 +0300 Subject: [PATCH 7/7] Update 08-SMASH.mdx --- docs/08-operating-a-stake-pool/08-SMASH.mdx | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/docs/08-operating-a-stake-pool/08-SMASH.mdx b/docs/08-operating-a-stake-pool/08-SMASH.mdx index c146e7a0..789f7e6f 100644 --- a/docs/08-operating-a-stake-pool/08-SMASH.mdx +++ b/docs/08-operating-a-stake-pool/08-SMASH.mdx @@ -3,20 +3,16 @@ title: Pool metadata management metaTitle: Pool metadata management --- -## Overview - -Stake pools are registered on-chain, and their on-chain data (such as information required to calculate rewards) is critical to the operation of the ledger. Stake pools also possess metadata that helps users to make a rational choice of a stake pool to delegate to. This metadata is stored off-chain as it might reflect sensitive content, and such an approach allows for a degree of decentralized censorship. - -On the other hand, off-chain metadata storage prerequisites a challenge of open access by different users. On-chain stake pool registrations contain an URL pointer to the off-chain metadata and a content hash that can be fetched from a specific stake pool. This might cause both performance and privacy issues. Another crucial aspect to address is the stake pool’s “ticker” name, which is the short name a stake pool is recognized by. Ticker names might reflect prominent brands or trademarks which should not be duplicated as this leads to confusion. Stake pool operators (SPOs) running multiple pools might want to use the same metadata for all their pools and then, this might also lead to these pools appearing with the same ticker name. +Stake pools are registered on-chain, and their on-chain data (such as information required to calculate rewards) is critical to the operation of the ledger. Stake pools also possess metadata that helps users make a rational choice of a stake pool to delegate to. This metadata is stored off-chain as it might reflect sensitive content, and such an approach allows for a degree of decentralized censorship. +On the other hand, off-chain metadata storage prerequisites a challenge of open access by different users. On-chain stake pool registrations contain a URL pointer to the off-chain metadata and a content hash that can be fetched from a specific stake pool. This might cause both performance and privacy issues. Another crucial aspect to address is the stake pool’s 'ticker' name, which is the short name a stake pool is recognized by. Ticker names might reflect prominent brands or trademarks which should not be duplicated as this leads to confusion. Stake pool operators (SPOs) running multiple pools might want to use the same metadata for all their pools and then, this might also lead to these pools appearing with the same ticker name. ## Use cases -A Stake pool Meta Aggregation Server (SMASH) is introduced to address metadata performance and privacy issues. Delegators, stake pool operators, exchanges, or wallets can deploy and use SMASH to ensure a higher level of metadata accountability and maintenance. SMASH aggregates metadata from existing stake pools and provides an efficient way to fetch it and store it in a semi-centralized environment. SMASH operators (exchanges, wallets, SPOs) are then enabled to validate and manage this metadata curating it for censorship via the delisting feature. - +A stake pool metadata aggregation server (SMASH) is introduced to address metadata performance and privacy issues. Delegators, SPOs, exchanges, or wallets can deploy and use SMASH to ensure a higher level of metadata accountability and maintenance. SMASH aggregates metadata from existing stake pools and provides an efficient way to fetch it and store it in a semi-centralized environment. SMASH operators (exchanges, wallets, SPOs) are then enabled to validate and manage this metadata curating it for censorship via the delisting feature. ## Run your own -The first generation of SMASH server has been deployed by Input Output Global (IOG). It aggregated stake pool metadata and offered a list of valid stake pools with reviewed content and ticker names. Nowadays, various solutions exist to synchronize data from the chain and a SMASH server is provided out-of-the-box as part of the cardano-db-sync project. +The first generation of the SMASH server has been deployed by Input Output Global (IOG). It aggregated stake pool metadata and offered a list of valid stake pools with reviewed content and ticker names. Nowadays, various solutions exist to synchronize data from the chain and a SMASH server is provided out-of-the-box as part of the cardano-db-sync project. -For running your own, see [the instructions on IntersectMBO/cardano-db-sync](https://github.com/IntersectMBO/cardano-db-sync/blob/master/doc/smash.md#smash-characteristics). +For running your own, see [these Cardano DB Sync instructions](https://github.com/IntersectMBO/cardano-db-sync/blob/master/doc/smash.md#smash-characteristics).