Open dfreeman opened 3 years ago
@pzuraq - Have any time to poke at this?
I see this error when booting a fresh app after running ember new glimmer-app --blueprint @glimmer/blueprint@2.0.0-beta.8
.
looks like it's may be fixed by https://github.com/glimmerjs/glimmer.js/pull/305
it seems like something odd is happening due to the fact that we don't pin to an exact version of packages in the VM, but do here. We should probably start pinning exact versions everywhere, where it matters.
I was playing with updating the GlimmerX packages to use the recent 2.0.0-beta.8 release here (still on my sisyphean quest to escape the
MonomorphicTagImpl
type error), but its test suite no longer boots. While the module graph is initializing, an error is thrown along these lines:This turns out to be a TDZ error, where
scheduleRevalidate
is seemingly called before that point in the module body has actually been executed: https://github.com/glimmerjs/glimmer.js/blob/c16835410a2c5369c07d6bb8500d79691580a76f/packages/%40glimmer/core/src/render-component/index.ts#L84-L88Poking around a little bit, I'm not positive what the problem is, but there's a suspicious circular dependency between the
core/src/environment/delegates
module andcore/src/render-component
. The top of the stack when the error occurs is this module-scope warmup code in@glimmer/validator
, which also points toward a circular dependency/half-instantiated-module problem.My guess is that this is sensitive to the order modules are resolved in, which would explain why it hasn't cropped up in the tests in this repo, but here's the GlimmerX branch where I ran across this: https://github.com/glimmerjs/glimmer-experimental/compare/master...dfreeman:update-glimmer-dependencies