You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
CI: migrate to per-Unity-version test projects (Unity-Tests/<version>/) #45
CI currently runs the whole Unity version matrix (2019.4 → 6000.0, editmode/playmode, base/windows-mono) against a singleUnity-Package/ project with one Packages/manifest.json.
This is fragile: any dependency that isn't compatible with the oldest editor in the matrix breaks every older-version job at compile time, before a single test runs. We just hit exactly this — a stray com.ivanmurzak.unity.mcp + com.unity.ai.navigation in the manifest failed to compile on Unity < 2022.3, taking down all 2019/2020/2021 jobs (fixed in #44 / commit e76a0a5 by restoring the clean manifest).
Goal
Adopt the more robust structure used by the sibling repo IvanMurzak/Unity-AI-Animation: a separate, self-contained test project per Unity version, each with its own manifest pinned to packages compatible with that editor.
Each test project references the library under test via a local file: dependency pointing at Unity-Package/Assets/root (or a Packages/ embed), so the shipped package source stays single-sourced.
Tasks
Create Unity-Tests/<version>/ projects for each Unity version in the matrix, each with a version-appropriate manifest.json + committed packages-lock.json.
Reference extensions.unity.imageloader (the Assets/root package) from each test project via a local file: path so there is one source of truth.
Update .github/workflows/test_pull_request.yml (and the release.yml test stage) so each matrix entry passes its own projectPath: ./Unity-Tests/<version>. The reusable test_unity_plugin.yml already accepts projectPath as an input, so no change needed there.
Confirm the in-process TestHttpServer test infrastructure still works from the relocated test projects.
Consider adding a standalone testMode (the reference project runs editmode/playmode/standalone).
Once green, remove the test-running responsibility from Unity-Package/ (it becomes purely the package-authoring project, matching the reference).
Activity