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

[vcpkg] Fix more cases of semicolon mishandling in "scripts" - follow-up to PR #12926 #13968

Merged
merged 38 commits into from
Oct 27, 2020

Conversation

jgehw
Copy link
Contributor

@jgehw jgehw commented Oct 10, 2020

jgehw and others added 20 commits August 17, 2020 15:58
incorporate changes from microsoft:master
Revert "incorporate changes from microsoft:master"
Copy link
Contributor

@JackBoosY JackBoosY left a comment

Choose a reason for hiding this comment

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

Please bump the port version. See documentation.

@JackBoosY JackBoosY added category:port-bug The issue is with a library, which is something the port should already support category:tool-update The issue is with build tool or build script, which requires update or should be executed correctly requires:discussion labels Oct 12, 2020
…s from vcpkg_configure_cmake

bump gdal port version
remove semicolon-workaround from aws-sdk-cpp port
@jgehw
Copy link
Contributor Author

jgehw commented Oct 15, 2020

I don't see any relation between remaining CI failures and code changes of this PR. Over the last 3 CI runs, errors appeared and disappeared without any code changes in this PR, just by re-running and/or merging master. In particular:

last but 2nd run:
x86-windows: ois osgearth
x64-windows: plib osgearth
x64-windows-static: openxr-loader qt5-tools
x64-uwp: vcpkg-gfortran protobuf
arm-windows: protobuf boost*
x64-linux: openxr-loader qt5-tools

last but 1st run:
x86-windows: ogre sqlcipher
x64-windows: ogre parmetis qt5-scxml qt5-sensors qt5-serialport sqlcipher
x64-windows-static: ogre openxr-loader
x64-linux: openxr-loader

last run:
x86-windows: sqlcipher
x64-windows: apr sqlcipher
x64-windows-static: ogre
x64-linux: apr

sqlcipher is currently broken also in master (Error: There are invalid field types in the CONTROL or manifest file of C:\work\tools\vcpkg\ports\sqlcipher\vcpkg.json). apr has transient error (SSL connection while downloading).

@JackBoosY
Copy link
Contributor

sqlcipher:

couldn't read file ";TCLVERSION=90;ORIGINAL_SRC=D:\buildtrees\sqlcipher\src\v4.4.0-36c69edad7.clean;EXT_FEATURE_FLAGS=-DSQLITE_TEMP_STORE=2": no such file or directory

I think that's related to your changes.

@JackBoosY
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jgehw
Copy link
Contributor Author

jgehw commented Oct 16, 2020

sqlcipher:

couldn't read file ";TCLVERSION=90;ORIGINAL_SRC=D:\buildtrees\sqlcipher\src\v4.4.0-36c69edad7.clean;EXT_FEATURE_FLAGS=-DSQLITE_TEMP_STORE=2": no such file or directory

I think that's related to your changes.

Sorry, you're right. It turned out that the error I was seeing on my machine (Error: There are invalid field types in the CONTROL or manifest file) was hiding the error you quoted. After I rebuilt vcpkg.exe, I was able to reproduce the issue. I'll push a fix.

@jgehw
Copy link
Contributor Author

jgehw commented Oct 16, 2020

just re-running CI lead to these changes in CI failures:

previous run:
x86-windows: sqlcipher
x64-windows: apr sqlcipher
x64-windows-static: ogre
x64-linux: apr

after re-running:
x86-windows: sqlcipher osgearth
x64-windows: sqlcipher osgearth
x64-windows-static: plib ogre
arm-uwp: anyrpc

I then fixed sqlcipher to work wit my changes of this PR. Now all tests succeed. Thus, apr, ogre, osgearth, anyrpc were unrelated and transient issue.

Anyway, the main thing is: is working now :-) So, this PR is ready for final review and merge.

@jgehw
Copy link
Contributor Author

jgehw commented Oct 20, 2020

Merging master caused these new CI failures:
x86-windows: akali, libpqxx, moos-core, osgearth
x64-windows-static: ogre, qt5-tools
arm64-windows: libpqxx

Looking through the logs, it's mostly some file or lib not found. I observed similar transient issues on my local machine, where the culprit was the anti-virus scanner locking a file while scanning and thus making it unavailable to the build process. As

  • ogre, osgearth, qt5-tools already had transient issues appearing and disappearing without code changes during the history of this PR (see above),
  • libpqxx was updated in master but I don't see any changes in the diff being affected by this PR,
  • akali, moos-core had no relevant code changes since previous merge of master,

can you please re-run all failed CI to see which of them are not transient errors?

@ianier
Copy link

ianier commented Oct 20, 2020

Looking through the logs, it's mostly some file or lib not found. I observed similar transient issues on my local machine, where the culprit was the anti-virus scanner locking a file while scanning and thus making it unavailable to the build process.

As someone interested in getting this PR through to ultimately get tensorflow-cc back to life, I can see that this is much more painful than it should be. Please don’t give up, @jgehw, the world is counting on you :-)

@BillyONeal
Copy link
Member

Unfortunately the nature of this PR causes the entire binary cache to be invalidated, so that PR build tries to build everything, so you're subject to the union of build flakiness of all ~1350 ports and their associated servers. We are always working to make things more reliable and things are better now than they were a few months ago, but still not "rock solid". @ras0219 / @ras0219-msft is working on caching package sources rather than just outputs which will help a lot since it will mean we don't break because some server is down.

@jgehw
Copy link
Contributor Author

jgehw commented Oct 21, 2020

Today's CI failures:

  • libpqxx (x86-windows, x64-windows, arm64-windows) "dl.lib" not found - seems to be an issue with the build environment, it's compiling fine on my machine
  • qt5-multimedia (x86-windows, x64-windows, x64-windows-static) network issues while download -> transient error
  • freetds (x64-windows) permission denied on temp file -> transient error
  • ogre (x64-windows-static) compile error "definition of dllimport static data member not allowed" - not reproducable on my machine - either transient or specific to build environment

@BillyONeal @JackBoosY can you please re-run failed CIs? (I can't, insufficient permissions)

@BillyONeal
Copy link
Member

We talked about this today and resolved that for "rebuild the world from contributors" changes like this we will merge them upon manual review that all the failures match a previous CI nightly build (currently https://dev.azure.com/vcpkg/public/_build?definitionId=29 )

@BillyONeal BillyONeal self-assigned this Oct 22, 2020
@BillyONeal BillyONeal changed the title follow-up to PR #12926 [vcpkg] Fix more cases of semicolon mishandling in "scripts" - follow-up to PR #12926 Oct 26, 2020
@BillyONeal
Copy link
Member

Well I was going to merge this anyway with potential failures but it passed now, yay! :D :D :D :D

@BillyONeal BillyONeal merged commit 0ff75ac into microsoft:master Oct 27, 2020
@BillyONeal
Copy link
Member

Thanks so much for your contribution and dealing with our PR / CI system issues :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support category:tool-update The issue is with build tool or build script, which requires update or should be executed correctly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants