Skip to content

Merge the ctest2 repository into libc #4361

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

Merged
merged 353 commits into from
Apr 2, 2025
Merged

Conversation

tgross35
Copy link
Contributor

@tgross35 tgross35 commented Apr 2, 2025

libc's testing is pretty tightly coupled to ctest2, which is a reasonably simple crate that maps Rust syntax to C syntax and creates tests based off of that. ctest2 itself is a fork of ctest.

Unfortunately, relying on ctest(2) has been somewhat of a problem since it supports only a very outdated version of Rust's syntax, and there are a handful of other bugs. There have been some GSoC proposals to modernize libc and its test crates; moving ctest to a rust-lang repo makes that easier and should come with some maintenance benefits.

On Zulip, Alex confirmed ownership of the original ctest crate could be transferred to rust-lang so we can continue publishing under that name, for other repos that make use of ctest/ctest2.

This pull only brings over the repo source and history as it currently exists. I will need to follow up with integration of the CI and release workflows.

alexcrichton and others added 30 commits April 10, 2018 21:09
Add target_endian to the set of #[cfg()] items that are considered.
Add support for unions without typedefs
Being able to call `const fn` on stable is a relatively new addition.

CC rust-lang#1075
Revert bump in the minimum supported Rust version
Minimal support for fn types in extern statics
Add support for arrays in extern statics
Skip signedness checks for type aliases of non-integer types
@rustbot
Copy link
Collaborator

rustbot commented Apr 2, 2025

@tgross35: no appropriate reviewer found, use r? to override

@tgross35
Copy link
Contributor Author

tgross35 commented Apr 2, 2025

Recreated from #4361 which GH closed on me

@tgross35 tgross35 force-pushed the absorb-ctest branch 3 times, most recently from 047e4a1 to e3e77b9 Compare April 2, 2025 22:08
@tgross35 tgross35 added stable-declined This change is breaking, difficult to backport, low priority, or otherwise not relevant for 0.2 stable-unneeded This PR is applied to main but already exists on libc-0.2 and removed stable-declined This change is breaking, difficult to backport, low priority, or otherwise not relevant for 0.2 labels Apr 2, 2025
@tgross35 tgross35 enabled auto-merge April 2, 2025 22:14
@tgross35 tgross35 disabled auto-merge April 2, 2025 22:17
tgross35 added 3 commits April 2, 2025 22:36
Absorb the `ctest2` project and its history into `libc`.

Original HEAD: https://github.com/JohnTitor/ctest2.git
Latest HEAD ref: 0563471
We will be able to publish the crate under the original `ctest` name, so
update its name and URLS here.
@tgross35 tgross35 enabled auto-merge April 2, 2025 22:38
@tgross35 tgross35 added this pull request to the merge queue Apr 2, 2025
Merged via the queue into rust-lang:main with commit d5278fd Apr 2, 2025
43 checks passed
@tgross35 tgross35 deleted the absorb-ctest branch April 2, 2025 23:33
@tgross35 tgross35 restored the absorb-ctest branch April 2, 2025 23:38
@tgross35 tgross35 deleted the absorb-ctest branch April 3, 2025 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review stable-unneeded This PR is applied to main but already exists on libc-0.2
Projects
None yet
Development

Successfully merging this pull request may close these issues.