• xmunk@sh.itjust.works
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    I don’t follow, stamping every function with : any lets you merge the branch and deploy it… trying to properly type everything extends the initial migration time likely to a level where management just says no.

    • folkrav@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      edit-2
      1 year ago

      Use a combination of allowJs and ts-ignore, do progressive enhancement, and convert your codebase file by file. Adding any everywhere literally turns off type checking altogether codebase wide, including type inference. It also means a huge PR that’s both just noise that needs to be fixed later, and messes with your git history (good luck getting anything useful out of blame or bisect now).

      Just getting a green build doesn’t mean things are okay. You’re worse off than before doing that.

      • xmunk@sh.itjust.works
        link
        fedilink
        arrow-up
        4
        ·
        edit-2
        1 year ago

        I disagree that you’re worse off (the core of my comment was that even a shitty migration encourages better practices)… but I wasn’t super familiar with TS hinting - using ts-ignore would be preferable.

        Personally, I mostly work in PHP and we use a similar system. Strict typing is default off so we’ve slowly propagated declare(strict_types=1); to enable compile and runtime checking on a per file basis.