-
Couldn't load subscription status.
- Fork 82
[native_toolchain_c] Skip rust_test without Rust
#2429
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
Conversation
PR Health
Breaking changes
|
| Package | Change | Current Version | New Version | Needed Version | Looking good? |
|---|---|---|---|---|---|
| native_toolchain_c | Breaking | 0.17.0 | 0.17.1-wip | 0.18.0 Got "0.17.1-wip" expected >= "0.18.0" (breaking changes) |
This check can be disabled by tagging the PR with skip-breaking-check.
Changelog Entry ✔️
| Package | Changed Files |
|---|
Changes to files need to be accounted for in their respective changelogs.
API leaks ✔️
The following packages contain symbols visible in the public API, but not exported by the library. Export these symbols or remove them from your publicly visible API.
| Package | Leaked API symbols |
|---|
License Headers ✔️
// Copyright (c) 2025, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
| Files |
|---|
| no missing headers |
All source files should start with a license header.
Unrelated files missing license headers
| Files |
|---|
| pkgs/jni/lib/src/third_party/generated_bindings.dart |
| pkgs/native_doc_dartifier/lib/native_doc_dartifier.dart |
| pkgs/native_doc_dartifier/lib/src/native_doc_dartifier_base.dart |
| pkgs/objective_c/lib/src/ns_input_stream.dart |
|
We use skips in the dart status files, e.g. https://dart-review.googlesource.com/c/sdk/+/441500 (If we want to skip tests in a different way we should probably do so consistently across the code base. For all missing tools, but then we don't have a code-reviewed list of what is skipped, so we might accidentally start skipping things if bot configurations change. So probably not worth doing a full codebase refactoring for that.) |
|
@goderbauer WDYT? Should we make smarter skips in all our tests so that you can run a subset of the tests locally with |
|
I prefer using |
We all agree on that. Do you prefer skip over status files? E.g. should we author/code-review what tests are allowed to be skipped in the different locations?
|
|
Sorry if I misunderstood the question. There wasn't much context on the PR.
Agreed with both. That would be ideal. The skips should be surfaced on local runs, though, so everyone is aware of them (this automatically happens if the test framework's
Shouldn't that be handled via
What do you mean by this? Is this just maintaining the status files, e.g. https://github.com/dart-lang/sdk/blob/main/third_party/pkg/native_toolchain_c.status? Are there any problems/issues here we need to solve?
If we can just get away with using skips in our repository, I'd prefer that over building and maintaining another system on top of it. As you point out, it would probably mean to disallow skips from happening on CI entirely to avoid that we introduce accidental testing gaps (e.g. by accidentally uninstalling the Rust chain from our bots). However, if it is not feasible to disallow skips on CI we may need status files to achieve that goal (i.e. to make sure the rust toolchain test always runs on CI). |
|
@mosuem For context directly related to this PR: What was wrong with how the skip was previously done? Is this just a usability improvement to make the skip visible? Or is there more to it? Can you maybe add some context to the PR description? |
I thought checking for the exit code of
No, it seems to not skip on Dart CI at least.
Done :) |
rust_test without Rustrust_test without Rust
I think we can start with one test, and see how it goes? |
|
I think we haven't answered the conceptual question:
We cannot merge the PR in this current state because it ignores this question. At a minimum, this PR should add the On the Dart CI we don't use I am still not convinced that auto-skipping is a good idea. Maybe we should use We can tag tests by Let's discuss our testing strategy in the sync instead of on this PR. |
It answers the question ;) Closing this PR for now then. |
This time using a
try-catchinstead of just checking the exit code - this didn't seem to work on Dart CI.Contribution guidelines:
dart format.Note that many Dart repos have a weekly cadence for reviewing PRs - please allow for some latency before initial review feedback.