fix(cargo): replace placeholder repository URLs and validate package links - #883
Merged
Nanle-code merged 8 commits intoAug 31, 2026
Merged
Conversation
Collaborator
|
@onajidavid87-web Please fix the CI issues!!! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Replaces placeholder repository URLs (such as
https://github.com/YOUR_USERNAME/starforge) inCargo.tomlfiles with the actual project repository URL (https://github.com/onajidavid87-web/StarForge), populates missinghomepageanddocumentationmetadata fields, adds a rootLICENSEfile, and introduces a Cargo metadata scanning and link validation utility (CargoMetadataFixerandCargoMetadataValidator).Closes #649
Type of Change
Changes Made
homepageanddocumentation(docs.rs) links inCargo.toml,crates/starforge-wasm/Cargo.toml,crates/starforge-plugin-sdk/Cargo.toml, andwasm/Cargo.toml.LICENSEfile at the repository root to pass license existence checks.src/utils/cargo_metadata.rs(CargoMetadataFixerandCargoMetadataValidator) for scanning workspace manifests, detecting placeholder patterns (TODO,example.com,YOUR_USERNAME), validating HTTP/HTTPS URLs, checking license file existence, and enforcing crate package naming rules.tests/cargo_metadata.rscovering primary flow (placeholder replacement), boundary cases (monorepo sub-crates), and failure paths (invalid/incomplete URLs).docs/CARGO_METADATA.mddetailing programmatic usage, Rust/Cargo compatibility, security considerations, and before/after manifest examples.Testing
How has this been tested?
Test Coverage
Describe what scenarios have been tested:
docs.rslinks for member crates.publish = falseprivate crate settings.TODO,example.com), and missing license files.Code Quality Checklist
cargo fmt)cargo clippy -- -D warnings)Breaking Changes
Documentation
Additional Context
Cargo.tomlfiles across the repository were grepped for remainingTODO,PLACEHOLDER,YOUR_USERNAME, orexample.comstrings and verified to yield 0 matches.