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

fix: move try catch to prepareServer #4732

Merged
merged 9 commits into from
Jul 1, 2022

Conversation

jackiewmacharia
Copy link
Contributor

🎉 Thanks for submitting a pull request! 🎉

Summary

Related to #4621

  • Looks like we are going to have to have to move the initializeProxy try/catch to prepareServer after all - I've ran into a situation during testing where prepareServer breaks before it gets to Promise.all - on linux-aarch64. Because we don't await on prepareServer, it's possible that a binary error could be thrown at a different point in time breaking netlify dev before we have a chance to catch it in initializeProxy.

For us to review and ship your PR efficiently, please perform the following steps:

  • Open a bug/issue before writing your code 🧑‍💻. This ensures we can discuss the changes and get feedback from everyone that should be involved. If you`re fixing a typo or something that`s on fire 🔥 (e.g. incident related), you can skip this step.
  • Read the contribution guidelines 📖. This ensures your code follows our style guide and
    passes our tests.
  • Update or add tests (if any source code was changed or added) 🧪
  • Update or add documentation (if features were changed or added) 📝
  • Make sure the status checks below are successful ✅

A picture of a cute animal (not mandatory, but encouraged)
cute animal

@jackiewmacharia jackiewmacharia requested review from danez, eduardoboucas and a team June 23, 2022 16:51
@github-actions github-actions bot added the type: bug code to address defects in shipped code label Jun 23, 2022
@github-actions
Copy link

github-actions bot commented Jun 23, 2022

📊 Benchmark results

Comparing with 55d7013

Package size: 221 MB

⬇️ 0.00% decrease vs. 55d7013

^  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB  226 MB         
│   ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐    ┌──┐   221 MB 
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    ┌──┐  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
│   |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |  |    |▒▒|  
└───┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴────┴──┴──>
    T-12    T-11    T-10    T-9     T-8     T-7     T-6     T-5     T-4     T-3     T-2     T-1      T    
Legend

@jackiewmacharia
Copy link
Contributor Author

@eduardoboucas @danez I may have ran into a use case for the try/catch in prepareServer instead of initializeProxy (details in PR description).

@eduardoboucas
Copy link
Member

  • Looks like we are going to have to have to move the initializeProxy try/catch to prepareServer after all - I've ran into a situation during testing where prepareServer breaks before it gets to Promise.all

Can you help me understand what leads to this? If prepareServer throws, then the Promise.all will reject and our existing try/catch will kick in. What am I missing?

@jackiewmacharia
Copy link
Contributor Author

Follow up from the pairing call, I've tested this branch against both scenarios and it works for both:

Screenshot 2022-06-24 at 18 34 27

Screenshot 2022-06-24 at 18 45 16

src/lib/edge-functions/proxy.js Outdated Show resolved Hide resolved
src/lib/edge-functions/proxy.js Outdated Show resolved Hide resolved
@jackiewmacharia
Copy link
Contributor Author

@eduardoboucas this one's ready

Copy link
Member

@eduardoboucas eduardoboucas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@jackiewmacharia jackiewmacharia enabled auto-merge (squash) July 1, 2022 14:49
@jackiewmacharia jackiewmacharia merged commit 8248c35 into main Jul 1, 2022
@jackiewmacharia jackiewmacharia deleted the fix/move-try-catch-to-prepareServer branch July 1, 2022 15:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug code to address defects in shipped code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants