-
Notifications
You must be signed in to change notification settings - Fork 352
Ease builds on CI and locally #364
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
- react to a smallish breaking change in newer Owin packages - gather more information when restoring RuntimePortable.sln - use `$(RestoreUseSkipNonexistentTargets)` as well - ignore binary logs - ensure the .NET Core 2.1 VS component is installed - allow use of any 2.1.5xx .NET SDK - add a few words to code analysis dictionary - exclude files generated for `net45` legacy projects don't cause problems when compiling for `netstandard2.0` - handle additional `ReflectionTypeLoadException`s when using the xUnit `msbuild` runner
Building on TeamCity for validation |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't have too much context here, but looks good overall. Few quick comments.
@@ -429,7 +429,7 @@ public async Task Invoke_BuildsUriWithHostAndPort() | |||
[InlineData(@"-_.~+""<>^`{|}")] | |||
// random unicode characters | |||
[InlineData("激光這")] | |||
[InlineData("%24")] | |||
[InlineData("%24", Skip="Decoded to '$' at the moment. !!! Investigate !!!")] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we link an issue here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Tratcher is this related to a known breaking change in the underlying Owin packages❔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think so. What versions did you update from and to?
'$' is not a reserved character in request paths, it's supposed to be un-escaped.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We went from Microsoft.Owin v2.0.2 to v4.2.2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe aspnet/AspNetKatana@7db01eb, but that was 4.0.0, years ago.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That makes sense given how aged our dependency was. I'll create a Invoke_CreatesUri_ContainingCorrectlyDecodedStrings(string encoded, string decoded)
alternative to this test. Will include [InlineData("%24", "$")]
. Do you have a suggestion or two for additional encodings that should be decoded when presented to the application❔
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://www.rfc-editor.org/rfc/rfc3986#appendix-A
pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
/ "*" / "+" / "," / ";" / "="
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I saw that BNF and realized the comments w/ the [TheoryData(...)]
above are pretty off-base. Decided to just test percent encodings of $
, (
, )
, [
, ]
, {
, and }
rather than recategorizing things here.
nits: - capitalize "MSBuild" consistently - reduce indentation slightly
This PR is sufficient for successful WSR builds on TeamCity; should be enough for successful builds on AzDO (w/ VS 2017) as well. I need to make TFS changes (related to recent Microsoft.Owin version bumps in this repo) to make TC builds entirely successful. |
react to a smallish breaking change in newer Owin packages - add new test of `%` decoding to URI - do not restore RuntimePortable.sln directly - NuGet.exe is no longer happy w/ that solution - ignore binary logs - ensure the .NET Core 2.1 VS component is installed - allow use of any 2.1.5xx .NET SDK - add a few words to code analysis dictionary - exclude files generated for `net45` legacy projects don't cause problems when compiling for `netstandard2.0` - handle additional `ReflectionTypeLoadException`s when using the xUnit `msbuild` runner nits: - capitalize "MSBuild" consistently - reduce indentation slightly
$(RestoreUseSkipNonexistentTargets)
as wellnet45
legacy projects don't cause problems when compiling fornetstandard2.0
ReflectionTypeLoadException
s when using the xUnitmsbuild
runner