* build(deps): bump pyodide from 0.23.4 to 0.24.1
Bumps [pyodide](https://github.com/pyodide/pyodide) from 0.23.4 to 0.24.1.
- [Release notes](https://github.com/pyodide/pyodide/releases)
- [Commits](https://github.com/pyodide/pyodide/compare/0.23.4...0.24.1)
---
updated-dependencies:
- dependency-name: pyodide
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* updates for pyodide 0.24.0
- fix breaking file rename
- replace use of deprecated type
* use @pyodide/webpack-plugin
Pyodide 0.24 made some breaking changes that broke the way we were
integrating it with webpack manually. We can use the official webpack
plugin instead.
* webpack: add hack for pyodide
This works around "Critical dependency: the request of a dependency is an expression"
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: David Lechner <david@pybricks.com>
This was introduced in Pyodide 0.22 and saves us from having to parse
the message for the type.
Could also affect https://github.com/pybricks/support/issues/772 (but
there is no known reproducible case to check it).
The pybricks_jedi package was filtering on only pybricks modules but
now has a feature to amend the filter to include user modules.
Fixes: https://github.com/pybricks/support/issues/759
The package we were using was only for Python 3.4 and didn't include
async/await which broke imports in any script that used async/await.
Fixes: https://github.com/pybricks/support/issues/873
This replaces the Python parsing library. The python-ast package has
really poor performance (many seconds to parse a 500 line file). The
new package can parse a file about 100 times faster.
This allows importing user-created files and getting code completion
for those imports. This is done by mirroring the dexie-based file
system used by the editor to the emscripten based file system used
by pyodide. In the future, ideally we would have some sort of shared
file system, but this works for now.
Note: completing `from ` doesn't list user files/modules because of
filters in the pybricks-jedi python package but completing
`from my_file import ` does work as expected.