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

Port to Typescript #188

Open
26 of 47 tasks
morleyzhi opened this issue May 8, 2019 · 4 comments
Open
26 of 47 tasks

Port to Typescript #188

morleyzhi opened this issue May 8, 2019 · 4 comments

Comments

@morleyzhi
Copy link
Contributor

morleyzhi commented May 8, 2019

This is a more direct way to address #183, and to add type safety to the library.

TODOs (copied from js-stellar-sdk migration)

  • Rename files from js to ts
  • Fix errors from npx tsc
  • Make sure prettier is running on src/
  • Upgrade to Webpack 4, since ts-loader won't run on Webpack 1
  • Make codebase pass tslint
  • Make sure tslint is running on src/ on commit
  • Update types
  • Pass CI tests
  • Bump versions
  • Release the typescript branch as an alpha
  • Fix or document backwards-incompatible type definitions
  • Fix document generation
  • Upgrade in-development projects to typescript build
  • Once this has been up and used in production, merge into master
  • How to handle XDR's auto-generated code? https://github.com/stellar/js-stellar-base/blob/master/src/generated/stellar-xdr_generated.js#L1

Files WIP

  • src/account.ts @abuiles
  • src/asset.ts @abuiles
  • src/base58.ts
  • src/browser.ts
  • src/generated/stellar-xdr_generated.ts
  • src/hashing.ts @Akuukis
  • src/index.ts
  • src/keypair.ts @Akuukis (revisit)
  • src/memo.ts @abuiles
  • src/network.ts @abuiles
  • src/operation.ts
  • src/operations/account_merge.ts @abuiles
  • src/operations/allow_trust.ts @abuiles
  • src/operations/bump_sequence.ts @abuiles
  • src/operations/change_trust.ts @abuiles
  • src/operations/create_account.ts @abuiles
  • src/operations/create_passive_sell_offer.ts
  • src/operations/index.ts
  • src/operations/inflation.ts
  • src/operations/manage_buy_offer.ts
  • src/operations/manage_data.ts
  • src/operations/manage_sell_offer.ts
  • src/operations/path_payment.ts
  • src/operations/payment.ts
  • src/operations/set_options.ts
  • src/signing.ts @abuiles
  • src/strkey.ts @abuiles
  • src/transaction.ts @Akuukis
  • src/transaction_builder.ts
  • src/util/checksum.ts @abuiles
  • src/util/continued_fraction.ts @Akuukis
  • src/vendor/bs58.ts @Akuukis
@abuiles abuiles self-assigned this Jul 24, 2019
This was referenced Jul 29, 2019
@abuiles
Copy link
Contributor

abuiles commented Jul 29, 2019

@Akuukis @charlie-wasp I've kicked off gears for this, I'm pinging you since you both show interests on helping with this :).

I created a branch called typescript where we can start merging updates. The first PR was very basic, it added TS to package.json and rename all the file #216

Now we need to make npx tsc to actually work and setup the build/test pipeline. If you want to start updating files, I'll suggest you leave a comment here telling which files you are working on, so we don't overlap on each others work :). Also let's try to do small PRs so we can review and merge more easily.

Let's do this! 🚀

@Akuukis
Copy link
Contributor

Akuukis commented Aug 9, 2019

@abuiles Here's a batch of migrations:

@charlie-wasp
Copy link
Contributor

@abuiles I believe, I'm pretty late for the party 😅 But it seems, that work is not over yet. How can I help here? Should I take some unchecked points from the top comment and work on them?

@abuiles
Copy link
Contributor

abuiles commented Jan 28, 2020

@charlie-wasp hey! Better late than never -- we still got some work to do. I'm happy if you can help on this, we have a branch with the current changes - we can continue work off that branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Backlog
Development

No branches or pull requests

4 participants