Files
Anthony Rose ba94d76072 Update C# YAMLs and install for Empire-Compiler dev branch (#1186)
* Update C# module/stager YAMLs and install scripts for Empire-Compiler dev branch

- Remove ReferenceAssemblies from all C# module and stager YAMLs (compiler now auto-resolves them)
- Update EmbeddedResources Location paths to use net40/ and common/ subdirectories
- Add .NET 10 SDK installation to setup/install.sh and Dockerfile

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Update Empire-Compiler to v1.0.0-a.1 pre-release

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix launcher.txt path for new compiler directory layout and add dotnet SDK to CI

- Update stager_generation_service.py to write launcher.txt to common/ subdirectory
- Fix CSharpPy.yaml launcher.txt Location to use common\ prefix
- Add .NET 10 SDK installation step to CI workflow

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Omit empty ReferenceAssemblies/EmbeddedResources from compiler YAML to enable auto-resolve

When ReferenceAssemblies or EmbeddedResources are empty, omit them from the
compiler YAML rather than passing empty lists. This allows the compiler to
auto-resolve reference assemblies from its AssemblyReferences directory.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Fix test config to use v1.0.0-a.1 compiler and revert unnecessary changes

The CI BOF test was failing because test_server_config.yaml pointed to
the old v0.4.1 compiler which doesn't support auto-resolve. Updated to
v1.0.0-a.1. Reverted the dotnet SDK CI step and module_service changes
as they are not needed — the compiler is self-contained.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Address PR feedback: revert dotnet from Dockerfile, gate install behind -c flag, simplify write_text

- Remove dotnet SDK from Dockerfile (compiler is self-contained)
- Only run install_dotnet when -c (compile from source) flag is passed
- Use write_text() instead of open/write for launcher.txt

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: restore Empire-Compiler ref to v1.0.0-a.1 after merge from private-main

The merge from private-main overwrote the compiler version back to v0.4.4,
which lacks embedded reference assemblies and fails C# compilation with
"System.Object is not defined" errors.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: extract launcher resource helper, improve install_dotnet error handling, add path consistency test

- Extract _write_launcher_resource helper to eliminate duplicated launcher.txt
  write logic and add encoding="utf-8" for consistent encoding behavior
- Improve install_dotnet: download-then-execute pattern instead of curl|bash,
  post-install verification, idempotent rc appends, symlink failure warning
- Fix COMPILE_FROM_SOURCE comparison from -eq to == for string consistency
- Add parametrized test verifying YAML EmbeddedResources paths match the
  service write path to prevent silent path drift regressions

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 15:15:05 -04:00
..
2023-02-13 22:28:58 -07:00