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

Consolidated ProjectHeads and supporting infrastructure #360

Merged
merged 65 commits into from
Feb 21, 2023

Conversation

Arlodotexe
Copy link
Member

@Arlodotexe Arlodotexe commented Feb 1, 2023

Closes #358

This PR makes several improvements:

  • All prop files and scripts related to project heads have been moved to ./common/ProjectHeads/
  • All prop files and scripts related to multitargeting have been moved to ./common/MultiTarget/
  • The all-component heads in ./Platforms have been moved to ./common/ProjectHeads/AllComponents/
  • The project heads for individual components are now generated from ./common/ProjectHeads/SingleComponent/.
  • The script ./common/ProjectHeads/GenerateSingleSampleHeads.ps1 has been added to copy the single-component heads into a component folder and update the names to reflect the component.
  • All non-essential MSBuild declarations in Sample project .csproj files have been moved to ./common/ToolkitComponent.SampleProject.props.
  • All non-essential MSBuild declarations in Source project .csproj files have been moved to ./common/ToolkitComponent.SourceProject.props.
  • The macOS, iOS, GTK, Android and WPF heads have been removed. These used the old Xamarin-based Uno template, and will soon be replaced with the newest Uno template in Update all projects to use .NET 7 where available Tooling-Windows-Submodule#12.

This needs #350 to be merged upstream before it can be completed

@michael-hawker
Copy link
Member

Arlodotexe and others added 19 commits February 7, 2023 11:45
Update WindowsAppSDK version and MSTest tools
Add properties to allow tests to run on 1.2.x, see microsoft/testfx#1127
Remove solution files from experiments
Add bat file to copy heads and run slngen
Tested locally running all heads and tests for an experiment
@michael-hawker michael-hawker force-pushed the refactor/generated-project-heads branch from 841b02a to aa01d88 Compare February 16, 2023 17:33
@michael-hawker
Copy link
Member

This PR should be good to go once the slngen PR merges: microsoft/slngen#455 (and we take that version here)

See private check here build: https://github.com/CommunityToolkit/Labs-Windows/actions/runs/4196634011

Copy link
Member

@michael-hawker michael-hawker left a comment

Choose a reason for hiding this comment

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

Couple of quick questions about props file moves, but once-over looks good.

Copy link
Member

@michael-hawker michael-hawker left a comment

Choose a reason for hiding this comment

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

Everything is building now, if we missed anything we'll fix it forward. Let's go!

@michael-hawker michael-hawker merged commit 10640a3 into main Feb 21, 2023
@delete-merged-branch delete-merged-branch bot deleted the refactor/generated-project-heads branch February 21, 2023 21:44
@Arlodotexe Arlodotexe linked an issue Mar 3, 2023 that may be closed by this pull request
Martin1994 pushed a commit to Martin1994/Labs-Windows that referenced this pull request Sep 2, 2023
…lkit#360)

* Moved project heads to common folder

* Fixed broken reference to props file

* Fix broken path references

* Fixed broken file references

* Fixed broken path

* Move asset references to props file

* Consolidated ProjectHeads and supporting infrastructure

* Migrating projects to new infra

* Migrating files to new infra

* Added missing assemblyname and rootnamespace declaration

* Fixed building WinAppSdk

* Fixed build errors for UWP under "All" solution

* Fixed working directory for UseTargetFrameworks.ps1

* Switch GenerateSingleSampleHeads.ps1 to use dotnet templating tool

Update WindowsAppSDK version and MSTest tools
Add properties to allow tests to run on 1.2.x, see microsoft/testfx#1127
Remove solution files from experiments
Add bat file to copy heads and run slngen
Tested locally running all heads and tests for an experiment

* Update folder for linux CI build and Codespaces to WASM project

* Clean-up and re-work build script for testing the project template

* Use expanded form for environment variables everywhere

* Use repo root path for script when in working directory of template

* Use github syntax for environment variable for path, see actions/runner-images#1794

* Re-work path structure for project template test in ci

* Setup paths again to use full path into GenerateSingleSampleHeads script

* Fixed comment referencing outdated file name

* Use absolute path for project references in the "All" solution

* Removed leading directory separator on generated path

* Update slngen to fix build issues with not finding SDK due to global.json

See details in microsoft/slngen#453

* Add flag to build to enable easily getting diagnostics from tools

* Clean-up labels and conditions for diagnostics

* Add COREHOST_TRACE diagnostics for dotnet

* Move conditional for COREHOST_TRACE into step

* Just have COREHOST_TRACE defined at top

* Add calling dotnet --info

* Fixed missing markdown/cs files. Changed "Experiment" to "ToolkitComponent"

* Revert initial work renaming Experiment to Component.

* Fixed markdown exclude path

* Moved project out of double nested folder

* Removed restored files that should have been deleted

* Move SourceGenerators.Tests project up a folder and fix in build.yml path

Wasn't being built as was excluded from wildcard in solution generator

* Fixed path for test output

* Improved and shortened project names

* Rename LabsUITestMethod to UIThreadTestMethod

* Renamed to CommunityToolkit.Tooling.TestGen

* New names for UITestMethodAttribute and UITestMethodGenerator

* Fixed incorrect namespace

* Fixed a bad find/replace

* Renamed "all" component heads and App/Test shared projects

* Added "App" to app head names

* Fixed runtime error

* Move SourceGenerators.Tests project up a folder and fix in build.yml path

Wasn't being built as was excluded from wildcard in solution generator

* Fixed path for test output

* Improved and shortened project names

* Rename LabsUITestMethod to UIThreadTestMethod

* Renamed to CommunityToolkit.Tooling.TestGen

* New names for UITestMethodAttribute and UITestMethodGenerator

* Renamed "all" component heads and App/Test shared projects

* Added "App" to app head names

* Turn off diagnostics for our powershell scripts as slngen has error with diagnostics

Fix diagnostic flag detection

* Enable git long path support for the clean operation

* Update microsoft/setup-msbuild github action

* Cleaned up moved files that weren't deleted properly

* Update slngen to 9.5.4

Should hopefully resolve CI issues from microsoft/slngen#453 and its initial fix

---------

Co-authored-by: michael-hawker <24302614+michael-hawker@users.noreply.github.com>
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.

Generate project heads from common template Remove all references to "Labs" in the ./common/ folder
2 participants