Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert as much scripts as possible to xtask #208

Open
ia0 opened this issue Aug 22, 2023 · 0 comments
Open

Convert as much scripts as possible to xtask #208

ia0 opened this issue Aug 22, 2023 · 0 comments
Labels
crate:xtask Modifies the maintainers CLI for:maintainability Improves maintainers life for:usability Improves users (and maintainers) life good first issue Good for newcomers needs:implementation Needs implementation to complete

Comments

@ia0
Copy link
Member

ia0 commented Aug 22, 2023

The shell scripts start to get more/too complex. We should migrate them to xtask as modules (or even libraries). Ideally, the only remaining script would be setup.sh to install enough things for xtask to run (probably rustup and build-essential).

Can use cargo_toml to parse Cargo.toml files. Description of configurations for cargo check and cargo test (from which cargo clippy are derived) can be in package.metadata like for package.metadata.docs.rs from which cargo doc is derived. Note that cargo fmt is always the same.

Other useful crates: git2, semver.

Related tasks:

We might want to also make use of cargo-script to keep the script feeling.

In addition to the logic in ci-changelog.sh regarding Cargo.toml files, an additional rule should be that publish = false crate should not use version in local dependencies (i.e. with path).

Another rule could be that optional dependencies should not define any features. The features should be added by the features that enable the dependency.

@ia0 ia0 added needs:implementation Needs implementation to complete crate:xtask Modifies the maintainers CLI for:usability Improves users (and maintainers) life for:maintainability Improves maintainers life labels Aug 22, 2023
ia0 added a commit to ia0/wasefire that referenced this issue Oct 27, 2023
Ideally all scripts should be implemented in Rust, see google#208.
ia0 added a commit that referenced this issue Oct 27, 2023
Ideally all scripts should be implemented in Rust, see #208.
kofls pushed a commit to kofls/wasefire that referenced this issue Nov 27, 2023
Ideally all scripts should be implemented in Rust, see google#208.
@ia0 ia0 added the good first issue Good for newcomers label Jul 29, 2024
ia0 added a commit that referenced this issue Oct 22, 2024
Part of #448 and #208.

---------

Co-authored-by: Zachary Vander Velden <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crate:xtask Modifies the maintainers CLI for:maintainability Improves maintainers life for:usability Improves users (and maintainers) life good first issue Good for newcomers needs:implementation Needs implementation to complete
Projects
None yet
Development

No branches or pull requests

1 participant