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

Invalid CI packaging setup, race condition in multitarget matrix #252

Closed
Arlodotexe opened this issue Jan 27, 2025 · 0 comments · Fixed by #254
Closed

Invalid CI packaging setup, race condition in multitarget matrix #252

Arlodotexe opened this issue Jan 27, 2025 · 0 comments · Fixed by #254
Assignees

Comments

@Arlodotexe
Copy link
Member

Background

See #250

Problem

Some components support only one of uwp or wasdk, plus a non-winui target like netstandard, such as uwp,netstandard or wasdk,netstandard. This creates a race condition:

  1. Building wasdk first can produce a package with netstandard but without uwp.
  2. Building uwp first can produce a package with netstandard but without wasdk.

Solution

This could be patched by deciding to build either UWP or WinUI first instead of doing it simultaneously, but there's a few reasons we don't. To understand why, consider:

  • A component supporting uwp,netstandard could be fixed by not allowing wasdk to build first.
  • A component supporting wasdk,netstandard could be fixed by not allowing uwp to build first.

Both cannot be done, meaning we must fix the issues with concurrent builds directly.

When building WinUI 2 or 3, we need to skip unsupported components.

  • Skip building any component that have no WinUI-compatible targets (e.g. only netstandard).
  • Skip building uwp,netstandard components if packaging for wasdk.
  • Don't skip building wasdk,netstandard components if packaging for wasdk.
  • Skip building wasdk,netstandard components if packaging for uwp.
  • Don't skip building uwp,netstandard components if packaging for uwp.
@Arlodotexe Arlodotexe self-assigned this Jan 27, 2025
@Arlodotexe Arlodotexe moved this to 🏗 In progress in Toolkit 8.x Jan 27, 2025
@Arlodotexe Arlodotexe moved this from 🏗 In progress to 👀 In review in Toolkit 8.x Jan 29, 2025
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Toolkit 8.x Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
1 participant