Open implementation questions
- [ ] Bundle modules with the extension vs hit a CDN (desktop)
- [ ] Which modules should we bundle
- [ ] What extension bundle size is tolerable
- [ ] Investigate cost of loading libraries from CDN
- [ ] Spawn web worker
- [ ] Can VS Code expose the ability to create web workers to extensions, so that extension authors can move long running computation out of the main renderer process
- [ ] Explore loading Pyodide and packages in Node instead of in the renderer preloads or web worker
- [ ] Test: are existing packages trivially supported with the tweaks to Pyodide that @rebornix has made?
- [ ] How will users transition from Pyolite to a 'real' Python kernel?
Hi @joyceerhl This is a really exciting project and could be hand supporting educational uses where setup/installation of anything can be a hassle.
To what extent might you be able to cache things (and also bust the cache if there are updates available)?
Explore loading Pyodide and packages in Node instead of in the renderer preloads or web worker
To what extent might you be able to cache things (and also bust the cache if there are updates available)?
I'm not sure how things currently work in VS Code, but it's worth mentioning that while in a browser would take care of caching downloads, that's not the case in Node.js. There is a WIP effort to add caching to Pyodide for Node.js in https://github.com/pyodide/pyodide/pull/1776 If you are have specific requirements in vscode-pyodide on that, please let us now.