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

run some tests with minimal-versions on CI #5856

Merged
merged 7 commits into from
Aug 15, 2018
Merged

Conversation

Eh2406
Copy link
Contributor

@Eh2406 Eh2406 commented Aug 2, 2018

In #5757 we discovered that sum test don't pass with minimal-versions, and so only added CI for cargo check. This PR is to see if that is still needed, and if it is then which test rely on upstream bugfix.

@rust-highfive
Copy link

r? @matklad

(rust_highfive has picked a reviewer for you, use r? to override)

Copy link
Member

@dwijnand dwijnand left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, if it passes 😄

@Eh2406
Copy link
Contributor Author

Eh2406 commented Aug 2, 2018

Travis:

failures:
    rustc_info_cache::rustc_info_cache
    shell_quoting::features_are_quoted

@alexcrichton
Copy link
Member

Thanks! I think we can probably afford to do this on Travis, but I don't think we have enough capacity to do this on AppVeyor :(

(we're already getting pretty backed up by just adding check run)

@Eh2406
Copy link
Contributor Author

Eh2406 commented Aug 2, 2018

I got features_are_quoted working. But I have no idea what dep is preventing rustc_info_cache. @matklad you wrote that test, do you have a gess?

@matklad
Copy link
Member

matklad commented Aug 2, 2018

I have a guess!

Rustc cache works by saving a Serialize POD struct in a file and then reading it back. Once of the fields in the struct is u64. Judging by the error message, looks like it was saved as string, and can't be read back as u64.

I guess that serde_json changed serialization of long integers some time in the past: you can't save integers with more than 53 as ints, b/c JavaScript does not have integers, and that explains where the strings might come from.

I've done zero real investigation though, but let's try to pin-up serde-[json] version?

@Eh2406
Copy link
Contributor Author

Eh2406 commented Aug 3, 2018

Now appear is complaining

failures:
build_script::custom_build_env_var_rustc_linker

But I will not be able too work on OSS stuff for the next week.

@Eh2406
Copy link
Contributor Author

Eh2406 commented Aug 14, 2018

Back and rebased. This time it is:

appveyor:

  • build_script::custom_build_env_var_rustc_linker

travis:

  • check::short_message_format

Ideays?

@ehuss
Copy link
Contributor

ehuss commented Aug 14, 2018

The short_message_format test should probably check if !is_nightly() (see doc::short_message_format for the exact same reason). 1.27 does not support the short message format.

custom_build_env_var_rustc_linker only works if there is a cross-compile target to test against. Either you can set the CFG_DISABLE_CROSS_TESTS environment variable to disable cross tests when on stable, or install an alternate stable toolchain. For example, this is where it installs the alternate toolchain for nightly:

- rustup target add %OTHER_TARGET%

@dwijnand
Copy link
Member

The short_message_format test should probably check if !is_nightly() (see doc::short_message_format for the exact same reason). 1.27 does not support the short message format.

1.28 does (rust-lang/rust#49546). Shouldn't that CI setup be upgrade to Rust 1.28 instead?

@@ -724,6 +724,10 @@ fn check_artifacts() {

#[test]
fn short_message_format() {
if !is_nightly() {
// This can be removed once 1.30 is stable (rustdoc --error-format stabilized).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The message here is wrong. This relies on rustc --error-format which is stable as of 1.28, but we're (currently) using 1.27.2.

I propose we upgrade to that CI setup to 1.28 and remove this guard.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. Can we also remove this from doc::short_message_format?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That one not till 1.30.

@dwijnand
Copy link
Member

In other news, this went ✅❗️❗️

@alexcrichton
Copy link
Member

With green tests, this may be good to land? My main concern would be about CI time on AppVeyor (40m minimum) which is a bit excessive, could we perhaps stick to check on Windows but run the tests on Travis? Or were Windows-specific runtime bugs found here?

@Eh2406
Copy link
Contributor Author

Eh2406 commented Aug 15, 2018

I am just commiting a back out on AppVeyor.

The inspiration for doing this work was all the libgit2 windows bugs around / vs \. Each PR came with a bump in the toml, but only because we were vigilant not because CI tested it. I.e. you release a bug fix to libgit2 our CI is green as it uses the new version, nothing reminds us that we need to bump.

@alexcrichton
Copy link
Member

Gah bummer :(

We can try to be vigilant about those sorts of fixes for now, and otherwise if we feel like we have more appveyor capacity in the future we can always reenable!

@bors: r+

@bors
Copy link
Contributor

bors commented Aug 15, 2018

📋 Looks like this PR is still in progress, ignoring approval.

Hint: Remove [WIP] from this PR's title when it is ready for review.

@Eh2406 Eh2406 changed the title [WIP] try running tests with minimal-versions on CI try running tests with minimal-versions on CI Aug 15, 2018
@Eh2406 Eh2406 changed the title try running tests with minimal-versions on CI run some tests with minimal-versions on CI Aug 15, 2018
@Eh2406
Copy link
Contributor Author

Eh2406 commented Aug 15, 2018

@bors: r=alexcrichton

@bors
Copy link
Contributor

bors commented Aug 15, 2018

📌 Commit 620d5cc has been approved by alexcrichton

@bors
Copy link
Contributor

bors commented Aug 15, 2018

⌛ Testing commit 620d5cc with merge a284c3f...

bors added a commit that referenced this pull request Aug 15, 2018
run some tests with minimal-versions on CI

In #5757 we discovered that sum test don't pass with minimal-versions, and so only added CI for `cargo check`. This PR is to see if that is still needed, and if it is then which test rely on upstream bugfix.
@bors
Copy link
Contributor

bors commented Aug 15, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing a284c3f to master...

@bors bors merged commit 620d5cc into rust-lang:master Aug 15, 2018
@Eh2406 Eh2406 deleted the min-test branch August 19, 2018 16:35
@ehuss ehuss added this to the 1.30.0 milestone Feb 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants