Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Design Meeting Notes, 4/28/2021 #43871

Closed
DanielRosenwasser opened this issue Apr 28, 2021 · 0 comments
Closed

Design Meeting Notes, 4/28/2021 #43871

DanielRosenwasser opened this issue Apr 28, 2021 · 0 comments
Labels
Design Notes Notes from our design meetings

Comments

@DanielRosenwasser
Copy link
Member

override on Parameter Properties

#43831

  • No reason not to do this.
  • Stronger than that - would probably block people from otherwise adopting a feature that they're the most likely to use. Would otherwise be blocking-ish.

abstract and override Ordering

#43829

{ a: number } -> Partial<Omit, "a"> & A

#43846

type Foo = {
    x: string,
    y: number,
};

declare let x = { y: "hello" };
declare let y: Partial<Omit<Foo, "y">> & { y: string } = x
  • Assignment doesn't work.
  • Unclear what rule would make this work.

@deprecate Annex B Methods

#43709
#43710
#43796

  • Let's do this.

Import string names from Modules

tc39/ecma262#2154

import { "😊" as yay } from "...";

yay();

export { yay as "🦈" };
  • ESBuild, Babel, V8 all support this.

  • New module target? Yes.

    • ESNext
    • ES2022? Depends when the PR gets merged.
  • Start small: ESNext, maybe CommonJS?

  • This sort of thing could also allow namespace syntax.

    • Don't do that just yet.
  • What about import types?

  • In some cases, these declarations become un-nameable.

    // @filename: bradsad.ts
    
    class Foo {
    }
    
    export { Foo as "Foo Bar" };
    
    // @filename: yadda.ts
    
    let x: import("./bradsad")["Foo Bar"] // uh oh
  • Some declarations won't be accessible with import() types.

    • That's fine initially.
  • Schedule the base feature for 4.4.

@DanielRosenwasser DanielRosenwasser added the Design Notes Notes from our design meetings label Apr 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Design Notes Notes from our design meetings
Projects
None yet
Development

No branches or pull requests

1 participant