Skip to content

Conversation

vnbaaij
Copy link
Collaborator

@vnbaaij vnbaaij commented Oct 5, 2021

Pull Request

📖 Description

The solution has been upgraded to .NET 6.

  • Hot reload has been enable,
  • Nullability has been enabled (and all compiler warnings fixed)
  • RTL/Theme switches have been moved to top of webcomponents page and work for all components now

🎫 Issues

This PR contains the work described in #78

👩‍💻 Reviewer Notes

📑 Test Plan

Go through all web componentspage items and validate correct working

✅ Checklist

General

  • I have added tests for my changes.
  • I have tested my changes.
  • I have updated the project documentation to reflect my changes.
  • I have read the CONTRIBUTING documentation and followed the standards for this project.

Component-specific

  • I have added a new component
  • I have modified an existing component

⏭ Next Steps

@@ -2,9 +2,9 @@ name: CI - Validation for Blazor / FluentUI

on:
push:
branches: [ main ]
branches: [ net6 ]
Copy link
Contributor

Choose a reason for hiding this comment

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

This part doesn't seem correct. Shouldn't it be main still?
Same below.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yes, it should be main once it is merged. Set it to net6 to be able to run the workflow in my fork

Copy link
Contributor

Choose a reason for hiding this comment

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

Gotcha. Sounds good. This looks nice! Thanks once again for putting in the work to make this happen.

@EisenbergEffect
Copy link
Contributor

@vnbaaij Is this ready for final review? I'd love to merge and keep moving forward if you're ready.

@vnbaaij
Copy link
Collaborator Author

vnbaaij commented Oct 20, 2021

Yes, It is good to go!

@EisenbergEffect EisenbergEffect self-requested a review October 20, 2021 18:49
Copy link
Contributor

@EisenbergEffect EisenbergEffect left a comment

Choose a reason for hiding this comment

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

@vnbaaij Assuming it's all working in your branch, can you add another commit to switch the pipeline branch back to main?

@awentzel Do we need to make any updates to our pipelines or publish process in order to publish the .NET 6 package or can I just "click the magic button" once this is merged?

@vnbaaij
Copy link
Collaborator Author

vnbaaij commented Oct 21, 2021

latest commit reverts ci-daily back to main branch.

The Setup .NET action has been adjusted to use .NET 6 and pre release version:

- name: Setup .NET
      uses: actions/setup-dotnet@v1
      with:
        dotnet-version: 6.0.x
        include-prerelease: true

@EisenbergEffect
Copy link
Contributor

@vnbaaij I'm seeing an error in our security scanning task as follows

error NETSDK1045: The current .NET SDK does not support targeting .NET 6.0. Either target .NET 5.0 or lower, or use a version of the .NET SDK that supports .NET 6.0.

Is this because .NET 6.0 is not yet released or because some other configuration option is incorrect or missing? I'm a little out of my comfort zone with some of this so I just wanted to double check before merging.

@EisenbergEffect
Copy link
Contributor

@awentzel @nicholasrice Can you both do a quick review of the code. @vnbaaij has updated us to .NET 6.0 and taken advantage of some of the new features as appropriate. I'd like to get this merged, and then focus in on the current-value feature. With those two things done, we should be in a good position for the official .NET 6.0 release.

@vnbaaij
Copy link
Collaborator Author

vnbaaij commented Oct 21, 2021

Is this because .NET 6.0 is not yet released or because some other configuration option is incorrect or missing? I'm a little out of my comfort zone with some of this so I just wanted to double check before merging.
@EisenbergEffect yes, it is because .NET 6 has not yet been released. In the ci-daily.yml I explicitly had to include a setting for using prerelease version. Probably also need to do something like that for security scan.

@EisenbergEffect
Copy link
Contributor

Is this because .NET 6.0 is not yet released or because some other configuration option is incorrect or missing? I'm a little out of my comfort zone with some of this so I just wanted to double check before merging.
@EisenbergEffect yes, it is because .NET 6 has not yet been released. In the ci-daily.yml I explicitly had to include a setting for using prerelease version. Probably also need to do something like that for security scan.

@awentzel Can you look into whether we can configure this for the security scan?

@EisenbergEffect
Copy link
Contributor

@vnbaaij Thank you!
@awentzel I'd like to merge this but still would like to make sure we can move forward with the security scan issue. Time is getting short, so I don't want to hold much longer.

@vnbaaij
Copy link
Collaborator Author

vnbaaij commented Oct 25, 2021

@EisenbergEffect
Copy link
Contributor

@awentzel I know you are out today. Let's make this top priority for review when you are back in office. I'd like to get this merged ASAP but want to have you look at it first. See comments above.

@awentzel
Copy link
Contributor

awentzel commented Oct 27, 2021

@awentzel Do we need to make any updates to our pipelines or publish process in order to publish the .NET 6 package or can I just "click the magic button" once this is merged?

I don't see any issues with the existing pipelines, so they should still work, with the exception of the CodeQL which has already been pointed out. I'll look into that next. Also, it would probably be best to do a publish immediately once this gets in and the main branch is updated to vet that part of the system so we don't run into any fire drills.

@awentzel
Copy link
Contributor

awentzel commented Oct 27, 2021

https://codeql.github.com/docs/codeql-overview/supported-languages-and-frameworks/

@vnbaaij Thanks for digging into this. I tried to push a new commit to this branch and I don't have permissions so I will relay it here instead. I believe these are the "steps" we want to replace. Simply copy and paste over all existing steps in the codeql-analysis.yml with the following, essentially, adding Setup.Net step and manually build for csharp step.

steps:
    - name: Checkout repository
      uses: actions/checkout@v2

    - name: Setup .NET
      uses: actions/setup-dotnet@v1
      with:
        dotnet-version: 6.0.x
        include-prerelease: true
        
    - name: Initialize CodeQL
      uses: github/codeql-action/init@v1
      with:
        languages: ${{ matrix.language }}

    - if: matrix.language == 'csharp' 
      name: Manually build CSharp on .NET 6
      run: |
        dotnet build

    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v1

It may require a little trial and error. If this commit doesn't immediately work, I'd recommend pushing into main anyhow, and then I can work through remaining code security configuration issues in a new PR.

@awentzel
Copy link
Contributor

We probably will have to update the ADO pipeline as well for publishing to use pre-release, but once the code is in I can follow-up until that gets resolved. We use ADO to simplify code signing of internal libraries.

@EisenbergEffect
Copy link
Contributor

@awentzel Just to confirm, should I go ahead and merge, and then you'll follow up with the fixes?

@awentzel
Copy link
Contributor

awentzel commented Oct 27, 2021

@awentzel Just to confirm, should I go ahead and merge, and then you'll follow up with the fixes?

@EisenbergEffect yes, let's do that.

@EisenbergEffect EisenbergEffect merged commit fc00f86 into microsoft:main Oct 27, 2021
@EisenbergEffect
Copy link
Contributor

Done.

@vnbaaij vnbaaij deleted the net6 branch November 1, 2021 19:55
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.

4 participants