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

☂️Umbrella: TypeScript migration #683

Closed
31 tasks done
thymikee opened this issue Sep 9, 2019 · 30 comments · Fixed by #788
Closed
31 tasks done

☂️Umbrella: TypeScript migration #683

thymikee opened this issue Sep 9, 2019 · 30 comments · Fixed by #788
Labels
good first issue Good for newcomers help wanted infra Internal work not facing public APIs

Comments

@thymikee
Copy link
Member

thymikee commented Sep 9, 2019

Describe the Feature

Some time ago we started migrating CLI to TS package by package. The infrastructure is already set up, so we can work with TS and Flow files without issues.

Currently all packages except for packages/cli are converted. We need your help in converting the rest of the codebase 💪.

Work plan

If you'd like to help with migrating any of the packages mentioned below, please leave a comment and we'll assign it to you.

Commands

Commands live in separate directories. It makes sense to tackle them one by one.

Tools

Tools are helpers we use throughout the cli package. They have corresponding test files, which can be found in commands/tools/__tests__ directory. Those should also be converted.

Root index files in src/

Let's tackle this once we have all commands converted.

@FLGMwt
Copy link
Contributor

FLGMwt commented Sep 9, 2019

👋 Hey stranger ; D

I'm happy to give it a shot. I'd like to try to start with something small like commands/info. Could use some guidance about what to do about ConfigT from types which seems to be the only imported flow type.

@thymikee
Copy link
Member Author

thymikee commented Sep 9, 2019

Hey! You can find shared types like Config, Command etc in @react-native-community/cli-types package.

@netochaves
Copy link
Contributor

I would like to work in config if that's ok.

@thib92
Copy link
Contributor

thib92 commented Sep 9, 2019

Would love to take the ˋdoctor` command!

@thymikee
Copy link
Member Author

thymikee commented Sep 9, 2019

@netochaves @thib92 go for it!

@FLGMwt
Copy link
Contributor

FLGMwt commented Sep 9, 2019

I was pulling the thread on tools/releaseChecker so I can pull that and replacePathSepForRegex + walk + yarn in too.

@thymikee thymikee added good first issue Good for newcomers infra Internal work not facing public APIs labels Sep 9, 2019
@gvarandas
Copy link

I can tackle the commands/init 🤖

@DanielUche
Copy link

DanielUche commented Sep 9, 2019

I will like to tackle commands/install

@Naturalclar
Copy link
Member

I'd like to help with commands/tools/merge.js

@sasurau4
Copy link
Contributor

I'd like to help with commands/tools/copyFiles.js 👍

@anikethsaha
Copy link
Contributor

I can help with link command

@luizcieslak
Copy link

I'd like to work with commands/tools/copyAndReplace.js!

Esemesek pushed a commit that referenced this issue Sep 10, 2019
* chore: rename merge.js to merge.ts (#683)

* chore: add type to deepmerge(#683)

* chore: add FlowFixMe temporarily for files converted to TS (#683)

* chore: add underscore in arg for unused param
@pveyes
Copy link
Contributor

pveyes commented Sep 10, 2019

I'd like to help with command/tools/findSymlinkedModules.js 👋

Esemesek pushed a commit that referenced this issue Sep 10, 2019
* convert copyFiles from flow to typescript

* add ts-ignore for FIXME comment

* fix flow-check
@konojunya
Copy link
Contributor

I'd like to help with commands/tools/assertRequiredOptions.js💪

@moriyuu
Copy link
Contributor

moriyuu commented Sep 10, 2019

I'd like to help with commands/tools/packageManager.js !

@radko93
Copy link
Contributor

radko93 commented Sep 10, 2019

I can do loadMetroConfig.js, isValidPackageName.js and assign.js

@assuncaocharles
Copy link
Contributor

Hey, I do like to start helping with
commands/tools/gracefulifyFs.js and then take something bigger. :D

Btw, it seems commands/tools/install.js is done

@Quadriphobs1
Copy link
Contributor

I'd like to help with commands/bundle 😄

Esemesek pushed a commit that referenced this issue Sep 10, 2019
* convert packageManager from flow to TS

* fix flow-check

* fix: remove Flow annotation

* convert packageManager-test from flow to TS

* fix eslint
@troZee
Copy link
Member

troZee commented Sep 10, 2019

I would like to help with commands/tools/config/

WIP MR #710

@Noeza
Copy link

Noeza commented Sep 10, 2019

I would like to help if there are any files left, not yet taken

@thymikee
Copy link
Member Author

@Noeza you could take a look at e2e directory and convert tests. We would also use some help with reviewing PRs :)

@nitaking
Copy link

I want to raise my hand for the next help!

@Sly777
Copy link

Sly777 commented Sep 10, 2019

I can also help with code review or for converting tests.

@nickytonline
Copy link

Anything else to grab? I helped migrate the Refined GitHub extension to TS. Happy to work on any part of this.

@thymikee
Copy link
Member Author

Looks like we're out of work that's not assigned to anybody. But maybe we missed something, so feel free to identify that. If not, code review is always welcome. Or PRs improving type coverage!

@troZee
Copy link
Member

troZee commented Sep 11, 2019

@nitaking @Sly777 @nickytonline
I am struggling with this PR #710 . Can you help me with this ?

@nickytonline
Copy link

I'll take a peek tonight @PTROCKI.

@grabbou
Copy link
Member

grabbou commented Oct 14, 2019

We have just replaced the remaining files as a part of #783.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted infra Internal work not facing public APIs
Projects
None yet
Development

Successfully merging a pull request may close this issue.