-
-
Notifications
You must be signed in to change notification settings - Fork 12
Migrate projects to SDK style and update CI #256
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
* Add Windows GitHub Actions workflow - build-test-installer-release * Versioning is now handled via latest tag * Publish test results in the PR * rename SkipOnTeamCity to SkipOnCI
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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.
Pull Request Overview
This pull request converts several critical project files into git submodule references, fundamentally restructuring the repository:
Key Changes:
- Replaces
.csprojfiles with submodule references forSayMore,SayMoreTests, andAutoSegmenterprojects - Removes
packages.configfiles for both main and test projects - Converts the GitHub Actions workflow file to a submodule reference
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
src/SayMore/SayMore.csproj |
Entire project file replaced with submodule reference |
src/SayMoreTests/SayMoreTests.csproj |
Entire project file replaced with submodule reference |
src/AutoSegmenter/AutoSegmenter.csproj |
Entire project file replaced with submodule reference |
src/SayMore/packages.config |
Removed NuGet package configuration (71 packages) |
src/SayMoreTests/packages.config |
Removed NuGet package configuration (70 packages) |
.github/workflows/build-test-installer-release.yml |
Entire workflow file replaced with submodule reference |
Comments suppressed due to low confidence (2)
src/SayMore/packages.config:1
- Deleting packages.config removes all NuGet package references for the main project (77 packages including critical dependencies like L10NSharp, SIL libraries, and System packages). If migrating to PackageReference format, these dependencies must be added to the .csproj file instead, otherwise the project will not compile due to missing dependencies.
src/SayMoreTests/packages.config:1 - Deleting packages.config removes all NuGet package references for the test project (71 packages including NUnit, Moq, and all required testing dependencies). If migrating to PackageReference format, these dependencies must be added to the test .csproj file, otherwise the tests will not compile.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| <Import Project="..\..\packages\SIL.Windows.Forms.Keyboarding.16.1.0\build\SIL.Windows.Forms.Keyboarding.targets" Condition="Exists('..\..\packages\SIL.Windows.Forms.Keyboarding.16.1.0\build\SIL.Windows.Forms.Keyboarding.targets')" /> | ||
| <Import Project="..\..\packages\SIL.Windows.Forms.16.1.0\build\SIL.Windows.Forms.targets" Condition="Exists('..\..\packages\SIL.Windows.Forms.16.1.0\build\SIL.Windows.Forms.targets')" /> | ||
| </Project> No newline at end of file | ||
| @src/SayMore/SayMore.csproj No newline at end of file |
Copilot
AI
Nov 4, 2025
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.
This change replaces the entire .csproj file with a git submodule reference. This will break the build system as MSBuild cannot process submodule references. The project file must remain as a regular file in the repository for the solution to compile.
| @src/SayMore/SayMore.csproj | |
| <Project Sdk="Microsoft.NET.Sdk"> | |
| <PropertyGroup> | |
| <OutputType>Exe</OutputType> | |
| <TargetFramework>net6.0</TargetFramework> | |
| <RootNamespace>SayMore</RootNamespace> | |
| </PropertyGroup> | |
| <ItemGroup> | |
| <!-- Add your project references, package references, etc. here --> | |
| </ItemGroup> | |
| </Project> |
| </Target> | ||
| --> | ||
| </Project> No newline at end of file | ||
| @src/SayMoreTests/SayMoreTests.csproj No newline at end of file |
Copilot
AI
Nov 4, 2025
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.
This change replaces the entire test project file with a git submodule reference. This will break the test project and prevent running unit tests. The .csproj file must remain as a regular file in the repository.
| @src/SayMoreTests/SayMoreTests.csproj | |
| <Project Sdk="Microsoft.NET.Sdk"> | |
| <PropertyGroup> | |
| <TargetFramework>net6.0</TargetFramework> | |
| <IsPackable>false</IsPackable> | |
| </PropertyGroup> | |
| <ItemGroup> | |
| <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.6.3" /> | |
| <PackageReference Include="NUnit" Version="3.13.3" /> | |
| <PackageReference Include="NUnit3TestAdapter" Version="4.3.1" /> | |
| <PackageReference Include="coverlet.collector" Version="3.2.0" /> | |
| </ItemGroup> | |
| </Project> |
| </Target> | ||
| --> | ||
| </Project> No newline at end of file | ||
| @src/AutoSegmenter/AutoSegmenter.csproj No newline at end of file |
Copilot
AI
Nov 4, 2025
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.
This change replaces the AutoSegmenter project file with a git submodule reference. This will break the build for this project. The .csproj file must remain as a regular file in the repository.
| @src/AutoSegmenter/AutoSegmenter.csproj | |
| <Project Sdk="Microsoft.NET.Sdk"> | |
| <PropertyGroup> | |
| <OutputType>Library</OutputType> | |
| <TargetFramework>net6.0</TargetFramework> | |
| <RootNamespace>AutoSegmenter</RootNamespace> | |
| </PropertyGroup> | |
| </Project> |
| output/releasenotes.download_info | ||
| draft: true | ||
| generate_release_notes: true | ||
| @.github/workflows/build-test-installer-release.yml No newline at end of file |
Copilot
AI
Nov 4, 2025
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.
This change replaces the entire CI/CD workflow file with a git submodule reference. GitHub Actions cannot execute submodule references as workflows. This will completely break the automated build, test, and release pipeline.
| @.github/workflows/build-test-installer-release.yml | |
| name: Build, Test, Installer, Release | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v3 | |
| with: | |
| node-version: '18' | |
| - name: Install dependencies | |
| run: npm install | |
| - name: Run tests | |
| run: npm test | |
| release: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| if: github.ref == 'refs/heads/main' && github.event_name == 'push' | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v3 | |
| with: | |
| node-version: '18' | |
| - name: Install dependencies | |
| run: npm install | |
| - name: Build installer | |
| run: npm run build:installer | |
| - name: Release | |
| run: npm run release |
|
closing in favor of #257 |
Summary
Testing
This change is