Closed
Description
Origin Types for Unions
- Type writer seems to emit weird circularities.
- Not a blocker? Just fix it.
- But makes cases more obscure.
- Seems like these are still regressions
- Baseline writer is taking advantage of
Foo: Foo
becauseFoo
is in scope. - This isn't related to
.d.ts
emit or quick info.- So this is only internal infrastructure.
- Downside -
.types
files won't display what a user sees.- Error and quick info tests will do that.
- If we lack the infra to print
.types
baselines, we might be doing the wrong thing for.d.ts
emit. - Around line 142 of typewriter.ts
Capture Constructor.prototype
in Emit
- Minifiers can't cache
Yadda.prototype
. - Idea: capture into a local variable called
Yadda_prototype
, minifiers can compact those into something likex
. - Downside: our own class output gets harder to analyze.
- Doesn't compression help with file size?
- Not with parse speed, but yes.
- Coming back to analyzing - could do some basic analysis for aliasing
.prototype
- In general, we want to be thoughtful about understanding our own emit.
- We believe gzip should make it "good enough", maybe changes should be made in actual minifiers.
Destructuring Patterns in for
-in
Loops
for (var [a, b] in { "🐛": 100 }) {
// ....
}
- We say the emit is invalid.
- But in ES2015+ it should be valid.
- What about
downlevelIteration
?- Could imagine a version of the
__read
helper that could do this.
- Could imagine a version of the
- Complicates emit, can be slower.
- This PR might not be the right thing - but we're open to a PR that removes the error for ES2015+.
Allow Non-super
Non-this
Code in Derived classes before super()
- Does this do any expensive sort of walks?
- Nope, already doing some work to find top-level
super()
.
- Nope, already doing some work to find top-level
- Seems good - glad to see it finally happen.
Cases for bundledPackageName
in 4.2
- Was breaky, comes down to if we want to bring it back into the master branch.
- Big thing is bike-shedding the name.
- The name has already had its shed bike'd.
- People want to be able to use paths to dig into bundles.
- System wants to discourage this sorta thing.
- System 1 and AMD are still used, sooo.
- Why can't someone do a post-processing step?
- We need the information ourselves - doesn't work with incremental mode.
- How does path mapping work with this?