Skip to content

Move to stripped TypeScript typesΒ #1480

@rowanmanning

Description

@rowanmanning

What if we moved to TypeScript + a build step that strips types and maintains the character positions and line numbers of the authored code?

What problem does this feature solve?

Back when we built this library we made a decision to use JavaScript, largely to avoid a build step and know that what we write is what runs on our servers. However:

  • TypeScript-as-JSDoc isn't very well known amongst our engineers
  • We currently maintain manual .d.ts files which is an overhead that could be removed

The difference now is that we can do this without requiring source maps or having the compiled code be radically different from the code we author.

Ideal solution

The difference now is that we can do this without requiring source maps or having the compiled code be radically different from the code we author. Now that it's an option to strip types, we should reconsider and think about moving to TypeScript.

This would involve a rewrite of our code and adding a build step before publishing. We'd also need to update documentation etc.

This could be done without a breaking change if we continue to use CommonJS, however I think the results would be better if we did this after or alongside #1479 and #945 – both tickets that focus on modernising Reliability Kit.

Alternatives

If we don't see the value in this change then we could just leave things as they, migrating to ESM and removing default exports still bring this library up-to-date but we'd have to continue to write JSDoc and maintain manual Type files.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Status

    πŸ“₯ Inbox

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions