Skip to content

Fix repeated conflict detection and introduce optional resolver timeout - #3084

Closed
viktor-svub wants to merge 2 commits into
fsprojects:masterfrom
viktor-svub:feature/resolve-timeout
Closed

Fix repeated conflict detection and introduce optional resolver timeout#3084
viktor-svub wants to merge 2 commits into
fsprojects:masterfrom
viktor-svub:feature/resolve-timeout

Conversation

@viktor-svub

Copy link
Copy Markdown
Contributor
  • repeated conflict detection used HashSet as set item -- as it was not comparable, it was always adding new records -- it was replaced by F# Set which implements comparable as expected
  • added support for PAKET_RESOLVER_TIMEOUT environment variable, allowing to terminate the resolver in finite time -- for cases when we hit "loop of doom" on automated build agents
  • switched to UTC time handling to avoid DST glitches (plus, UtcNow is faster)

@forki
forki requested a review from matthid February 27, 2018 09:15
@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

oups ;-)

@matthid

matthid commented Feb 27, 2018

Copy link
Copy Markdown
Member

Good, maybe that explains our changing Lockfile as well.

@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

ok there are two integration tests failing. I think it's because the output changed

@viktor-svub

Copy link
Copy Markdown
Contributor Author

I may be mistaken but it looks to me like the failure is unrelated -- i.e. the #1177 should resolve with pessimistic strategy correctly failed with:

-> Could not find versions for package Castle.Windsor on http://www.nuget.org/api/v2.
-> Source 'http://www.nuget.org/api/v2' yielded no results
	-  Request 'http://www.nuget.org/api/v2/FindPackagesById()?semVerLevel=2.0.0&id='Castle.Windsor'' finished with error
	-> Could not retrieve data from 'http://www.nuget.org/api/v2/FindPackagesById()?semVerLevel=2.0.0&id='Castle.Windsor''
	-> HttpRequestException: An error occurred while sending the request
	-> WebException: Error: TrustFailure (One or more errors occurred.)
	-> AuthenticationException: A call to SSPI failed, see inner exception.
	-> MonoBtlsException: Ssl error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED
	     at /build/mono-5.4.1.7/external/boringssl/ssl/handshake_client.c:1132

And #55 should resolve with pessimistic strategy correctly is similar, just with different package.
Isn't this something changed recently on master?

@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

master is green AFAIK

@viktor-svub

Copy link
Copy Markdown
Contributor Author

Also locally (Windows only) the build RunIntegrationTestsNetCore SkipDocs=1 with PAKET_RESOLVER_WORKERS=24 and PAKET_TESTSUITE_FLAKYTESTS=false passed all tests.

Right, I have no Mono install, and master is green, but I cannot see how these changes affected certificate validation against nuget.org -- maybe this PR is not re/based correctly?

@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

ok let me try to rebase it in new PR

@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

let's see #3085

@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

the other one is green

@forki forki closed this Feb 27, 2018
@forki

forki commented Feb 27, 2018

Copy link
Copy Markdown
Member

Thx. It's released

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.

3 participants