Skip to content

Preserve Glow metadata and templates in XML round trips - #142

Open
dajiaohuang wants to merge 1 commit into
Lawo:masterfrom
dajiaohuang:fix/glow-xml-roundtrip
Open

dajiaohuang wants to merge 1 commit into
Lawo:masterfrom
dajiaohuang:fix/glow-xml-roundtrip

Conversation

@dajiaohuang

Copy link
Copy Markdown

Fixes #134.

Keep the public Glow XML exporter and importer consistent:

  • Export the parameter field as isOnline, matching the importer, and import the existing default value.
  • Import Template and QualifiedTemplate, preserving descriptions and their Node/Parameter/Matrix/Function element types with the required template-element tag.
  • Return the actual GlowFunction type from ConvertFunction so the template-element conversion compiles without a cast or fallback.

Validation reuses the recorded native public-component run from 2026-10-15:

  • Real GlowXmlExport -> GlowXmlImport round trips: baseline fails 7/7; corrected candidate passes 7/7 (IsOnline=false, default=5, four template element types and a qualified template).
  • The original uncorrected candidate had CS0266 at the function return boundary. The included narrow return-type correction is the same one that passed the native component run.
  • Both production files match the executed corrected source after line-end normalization. Only newly changed line endings were normalized for the default whitespace check; existing lines remain intact.
  • The same public round-trip regression is included at tests/regressions/glow_xml_roundtrip.cs with a zero-mismatches exit condition. Staged whitespace check passed.

The validation used separate native BerLib/EmberLib/Glow libraries and the XML-only PowerPack component with unchanged helpers. It does not establish the original signed .NET Framework projects, full PowerPack/framing/formula integration, devices or hosted CI acceptance. No historical signed commit or signing key is added.

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.

Glow XML round-trip loses parameter metadata

1 participant