question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Survey: How do you use Sucrase, what would make it better?

See original GitHub issue

For anyone watching this repo (or otherwise seeing this issue), it would be great to get information on how Sucrase is being used and how it could improve! Feedback of any form would be great, but here are some example questions that might provide a good template. Feel free to answer any/all that are relevant.

  • Do you use Sucrase? If not, is there something stopping you from using it?
  • Which transforms do you use? What transpiler does Sucrase replace? (Babel, TypeScript compiler, or something else?)
  • Are you using Sucrase in production or just development?
  • How big is your codebase?
  • Which integrations do you use?
  • What runtime environments do you target? (Node version, Chrome version, etc)
  • How does development performance differ with and without Sucrase?
  • Have you seen any other advantages or disadvantages from using Sucrase?
  • Are there any bugs, pain points, or missing features that you’d like to see fixed?

Some of my goals in asking these questions:

  • Understand if there are correctness or usability issues getting in the way of adoption.
  • Understand how useful further performance improvements would be compared with feature polish or other improvements.
  • Understand which transform options may be ok to remove as a breaking change. I may want to remove enableLegacyBabel5ModuleInterop and enableLegacyTypeScriptModuleInterop in a future breaking change, mostly just for simplicity. I also may want to drop support for Flow if it’s rarely or never used, since I don’t use it and it’s non-trivial to maintain (though still quite a bit easier to implement than TypeScript).

Issue Analytics

  • State:open
  • Created 5 years ago
  • Comments:19 (9 by maintainers)

github_iconTop GitHub Comments

3reactions
arvcommented, Dec 20, 2018

We use Sucrase to transform all our JSX file to JS files which are then later fed into Closure Compiler (for type checking and minification). This is both in dev and prod

We have ~1100 jsx files and most of our build tool chain is in python. Python just calls out to Node.js to do the transformation. However, since the startup time of Node.js (plus sucrase) is in the order of 200ms that is a lot of wasted time. This is why we use Nodegun. Giving us transformation times as low as 3ms and for large files around 50ms. Of course we could have refactored the build tools to hand in all the files once but that would require lots of work.

Performance is great! We started off using JSXTransformer running inside Nashorn (Java JVM) (~300ms per file). That one was discontinued and we switched to Babel (still inside Nashorn). Babel was super slow, maybe 500ms to a few seconds for large files. Also Nashorn is an ES3 environment so we had to compile Babel down to a single ES3 file (babel-standalone) which was annoying.

We might use Sucrase for ts in the future

2reactions
FDiskascommented, Feb 15, 2020

I’m using this with rollup especially for compiling typescript files. TypeDefinition generation should be available or respectable in tsconfig.json setting declaration: true

Read more comments on GitHub >

github_iconTop Results From Across the Web

Action of sucrase on sucrose - Science Learning Hub
Sucrose binds to the active site on sucrase, and this puts stress on the bond between the 2 sugars that make up sucrose....
Read more >
The patient journey to diagnosis and treatment of congenital ...
Enzyme supplementation with sacrosidase has been used to relieve clinical symptoms and sucrose malabsorption in CSID patients [11, 21–23].
Read more >
Adult sucrase-isomaltase deficiency masquerading as IBS - Gut
You will be able to get a quick price and instant permission to reuse the ... surveys,7 raise the question whether genetic defects...
Read more >
Congenital Sucrase-Isomaltase Deficiency (CSID) - IFFGD
Most affected children are better able to tolerate sucrose and maltose as they get older. Symptoms can vary for a variety of reasons...
Read more >
Congenital sucrase-isomaltase deficiency - BadGut.org
Glucose and fructose combine to form sucrose, while two glucose molecules form maltose. Without the necessary sucrase-isomaltase enzyme, ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found