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

CI build should fail, if crates are not part of workspace #477

Closed
hannobraun opened this issue Apr 14, 2022 · 1 comment
Closed

CI build should fail, if crates are not part of workspace #477

hannobraun opened this issue Apr 14, 2022 · 1 comment
Labels
good first issue Good for newcomers topic: build Anything relating to the build system. type: development Work to ease development or maintenance, without direct effect on features or bugs

Comments

@hannobraun
Copy link
Owner

hannobraun commented Apr 14, 2022

As of #475 crates are organized into different directories. All crates that are targeted at ecosystem or end users are in crates/, internal tools are in tools/, and as before, all models are still in models/.

There are some rules that should be checked as part of the CI build, to prevent mistakes:

  1. All crates from all directories should be part of the workspace, i.e. be in the workspace.members list in Cargo.toml.
  2. Crates from the crates/ directory should in addition be part of the workspace.default-members list.

This could be added to the CI configuration as an additional job. That job can run only on Linux, like the Format and Clippy Check jobs. If this isn't easy to do only with GitHub Actions, we can add a new Rust program to tools/, and call that from the job using actions-rs/cargo (other jobs are already doing this).

Labeling as https://github.com/hannobraun/Fornjot/labels/good%20first%20issue, since this doesn't require lots of knowledge of Fornjot, and could serve as an introduction to the project.

Related issue: #478

@hannobraun hannobraun added good first issue Good for newcomers type: development Work to ease development or maintenance, without direct effect on features or bugs topic: build Anything relating to the build system. labels Apr 14, 2022
@hannobraun
Copy link
Owner Author

I've decided to close this. We don't add or remove crates often enough that it's worth putting the effort into custom tooling.

@hannobraun hannobraun closed this as not planned Won't fix, can't repro, duplicate, stale Jun 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers topic: build Anything relating to the build system. type: development Work to ease development or maintenance, without direct effect on features or bugs
Projects
None yet
Development

No branches or pull requests

1 participant