[prdoc] Validate crate names (#3467)
Changes: - Add CI script to check that the `crate` names that are mentioned in prdocs are valid. We can extend it lateron to also validate the correct SemVer bumps as introduced in https://github.com/paritytech/polkadot-sdk/pull/3441. Example output: ```pre $ python3 .github/scripts/check-prdoc.py Cargo.toml prdoc/*.prdoc🔎 Reading workspace polkadot-sdk/Cargo.toml.📦 Checking 36 prdocs against 494 crates.✅ All prdocs are valid. ``` Note that not all old prdocs pass the check since crates have been renamed: ```pre $ python3 .github/scripts/check-prdoc.py Cargo.toml prdoc/**/*.prdoc🔎 Reading workspace polkadot-sdk/Cargo.toml.📦 Checking 186 prdocs against 494 crates.❌ Some prdocs are invalid.💥 prdoc/1.4.0/pr_1926.prdoc lists invalid crate: node-cli💥 prdoc/1.4.0/pr_2086.prdoc lists invalid crate: xcm-executor💥 prdoc/1.4.0/pr_2107.prdoc lists invalid crate: xcm💥 prdoc/1.6.0/pr_2684.prdoc lists invalid crate: xcm-builder ``` --------- Signed-off-by: Oliver Tale-Yazdi <[email protected]>