pyodide-pack
pyodide-pack copied to clipboard
Python package bundler and minifier for the web
One reason why this bundler is not able to reduce sizes that much is because of the convention of using top-level imports in Python. With top-level imports, even if a...
updates: - [github.com/pre-commit/pre-commit-hooks: v4.5.0 → v4.6.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.5.0...v4.6.0) - [github.com/astral-sh/ruff-pre-commit: v0.3.5 → v0.5.0](https://github.com/astral-sh/ruff-pre-commit/compare/v0.3.5...v0.5.0) - [github.com/psf/black: 24.3.0 → 24.4.2](https://github.com/psf/black/compare/24.3.0...24.4.2) - [github.com/pre-commit/mirrors-mypy: v1.9.0 → v1.10.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.9.0...v1.10.1) - [github.com/codespell-project/codespell: v2.2.6 → v2.3.0](https://github.com/codespell-project/codespell/compare/v2.2.6...v2.3.0)
Closes #47 Closes #45
Instead of the "flat" layout, we should use the "src" layout. More here: https://www.pyopensci.org/python-package-guide/package-structure-code/python-package-structure.html#the-src-layout-and-testing
There are a bunch of tools we could run over the object files in wheels for this, but `wasm-opt` and `wasm-dce` come up in search results in the first go....
Recently, I provided [`pyodide-build`'s `unvendor_tests()` functionality](https://github.com/pyodide/pyodide-build/blob/7ebf9a274de346477910ae9b6885a5aed0b98fff/pyodide_build/buildpkg.py#L690-L741) as a separate [`unvendor_tests_from_wheel.py` CLI script](https://github.com/sympy/live/blob/9996656f89f8054f017a9257361d9bb4af6bd5db/unvendor_tests_from_wheel.py) as a part of https://github.com/sympy/live/pull/26, to reduce the size of the SymPy wheel downloaded from PyPI. Would it...
Get a release with updated metadata after #45 and #43, and with one new feature via #41 to - [ ] PyPI - [x] use GitHub releases - [x] use...
Get pyodide-pack up on conda-forge through a feedstock, similar to pyodide-build. Needs #53 as a prerequisite.
Also, drop `tomli` as a dependency as it is a part of the stdlib in Python 3.11 and later.