From the 2026-08-02 full-repo review (finding F-19). Flagging for a deliberate decision / specialist review — no legal conclusion implied.
Mechanism (verified): generated spectral materials emit #include <numsim_codegen/runtime/spectral.h> (e.g. HenckyCheck.h:6 in the build tree) — a GPL-3.0 header compiled into the consumer's binary. Emitted boilerplate text also originates from GPL-licensed emitter sources. There is currently no statement anywhere about the license status of generated output.
Why it matters for adoption: MOOSE is LGPL; Abaqus/ANSYS/CalculiX user-subroutine environments are typically proprietary. If generated materials (and the runtime header they include) are GPL, downstream users' applications are plausibly pulled in — a hard blocker for most external consumers, and ambiguity alone deters adoption.
Options to consider:
- Explicit output exception (GCC-runtime-library-exception pattern) covering
runtime/ and emitted text;
- Dual/permissive license for
runtime/spectral.h + emission templates only;
- Deliberate decision that GPL reach-through is intended (matching the numsim-cas stack), documented in the README so expectations are clear.
From the 2026-08-02 full-repo review (finding F-19). Flagging for a deliberate decision / specialist review — no legal conclusion implied.
Mechanism (verified): generated spectral materials emit
#include <numsim_codegen/runtime/spectral.h>(e.g.HenckyCheck.h:6in the build tree) — a GPL-3.0 header compiled into the consumer's binary. Emitted boilerplate text also originates from GPL-licensed emitter sources. There is currently no statement anywhere about the license status of generated output.Why it matters for adoption: MOOSE is LGPL; Abaqus/ANSYS/CalculiX user-subroutine environments are typically proprietary. If generated materials (and the runtime header they include) are GPL, downstream users' applications are plausibly pulled in — a hard blocker for most external consumers, and ambiguity alone deters adoption.
Options to consider:
runtime/and emitted text;runtime/spectral.h+ emission templates only;