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

Use TypeScript #10524

Closed
8 tasks
turt2live opened this issue Aug 8, 2019 · 2 comments
Closed
8 tasks

Use TypeScript #10524

turt2live opened this issue Aug 8, 2019 · 2 comments
Assignees
Labels
P1 T-Enhancement T-Task Tasks for the team like planning

Comments

@turt2live
Copy link
Member

turt2live commented Aug 8, 2019

Implement in a way that makes things easier for development (add on rather than rewrite).

  • Remove flow
  • Fix i18n scripts (they rely on JS/flow)
  • Fix linting
  • Fix Platform stuff (has flow annotations)
  • Add to babel pipeline on js-sdk
  • Add to babel pipeline on react-sdk
  • Add to pipeline on riot-web
  • Convert something to TypeScript to prove it still works (SdkConfig looks like a good candidate)
@turt2live turt2live added feature T-Task Tasks for the team like planning P1 labels Aug 8, 2019
@turt2live turt2live self-assigned this Aug 8, 2019
turt2live added a commit to matrix-org/matrix-react-sdk that referenced this issue Aug 8, 2019
For element-hq/element-web#10524

Upgrading to babel 7 gets a lot of the compilation stuff for free. The major changes we care about are:
* The packages are now namespaced (hence all the package changes)
* We use the `env` preset instead of the long-since deprecated es20XX packages. 
* Added `--verbose` to maintain log output from the previous version.

This also meant fixing `ScalarAuthClient`: we can no longer mix `module.exports` and `import` in the same file. 

The SdkConfig was converted to TypeScript to prove this works (it does).
turt2live added a commit to matrix-org/matrix-react-sdk that referenced this issue Aug 8, 2019
For element-hq/element-web#10524

Upgrading to babel 7 gets a lot of the compilation stuff for free. The major changes we care about are:
* The packages are now namespaced (hence all the package changes)
* We use the `env` preset instead of the long-since deprecated es20XX packages. 
* Added `--verbose` to maintain log output from the previous version.

This also meant fixing `ScalarAuthClient`: we can no longer mix `module.exports` and `import` in the same file. 

The SdkConfig was converted to TypeScript to prove this works (it does).
@turt2live
Copy link
Member Author

See matrix-org/matrix-react-sdk#3292 (comment) for why this is harder than expected.

Any domain experts are welcome to comment (please do!).

@turt2live
Copy link
Member Author

We have an amount of TypeScript now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P1 T-Enhancement T-Task Tasks for the team like planning
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants