Skip to content

proposal-record-tuple #39831

Open
Open

Description

@Kingwl

https://github.com/tc39/proposal-record-tuple is stage-2.
I haven't found related issue and I created this.
I'm a little worry about the global Record object and our utils type Record<>.

Activity

  1. RyanCavanaugh commented on Jul 30, 2020

    @RyanCavanaugh
    Member

    FYI we're tracking these as part of our TC39 committee attendance, so there's not really a need to have TS issues for every stage 2 proposal - we don't want to fracture the discussion.

  2. armanozak commented on Aug 2, 2020

    @armanozak

    Hi Ryan Cavanaugh (@RyanCavanaugh),

    I understand, but also share Wenlu Wang (@Kingwl)'s concern. This is not a regular TC39 proposal. It introduces a global constructor which may cause a breaking change in TypeScript. It would be kind of you if you could share TypeScript's stance about the naming. Does it look like Record is going to be the eventual name for that constructor or is it still subject to change?

  3. Kingwl commented on Aug 2, 2020

    @Kingwl
    ContributorAuthor

    Levent Arman Özak (@armanozak) I think it's might be ok. The ctor 'Record' is value and Record<> is type. TypeScript is work fine with this case. As the result, the type of record might be 'record', the lower case. Like number and Number, string and String.

  4. Kingwl commented on Aug 2, 2020

    @Kingwl
    ContributorAuthor

    But i'm not sure the other case. eg: Array ctor has type parameter, But seems Record cannot.

  5. armanozak commented on Aug 2, 2020

    @armanozak

    Hi Wenlu Wang (@Kingwl),

    The type is record and I am not worried about that. I am not even worried about the wrapper object type (like String, Number, and Boolean), because it is stated here that there will be no wrapper object instantiation.

    However, TypeScript Record is not really a match for the proposed Record and that would cause confusion, don't you agree?

  6. Jack-Works commented on Aug 23, 2021

    @Jack-Works
    Contributor

    Working on this #45546

  7. gioragutt commented on Oct 25, 2021

    @gioragutt

    Levent Arman Özak (@armanozak) have there been cases where there was such a big possible breaking change before?

    How is TypeScript supposed to handle such a change? Hypothetically speaking, if it'll actually happen, what would be the protocol for that? Major change and GL codemodding the broken changes?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    SuggestionAn idea for TypeScriptWaiting for TC39Unactionable until TC39 reaches some conclusion

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions