DOC Update release notes for v0.16.0 (#813)

This commit is contained in:
Roman Yurchak 2020-12-24 11:31:35 +01:00 committed by GitHub
parent 25de6bd9d3
commit f6cdc1ba4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 80 additions and 19 deletions

View File

@ -2,34 +2,71 @@
# Release notes
## Version 0.16.0
*Unreleased*
*December 24, 2020*
- Pyodide includes CPython 3.8.2
[#712](https://github.com/iodide-project/pyodide/pull/712)
- Pyodide files are distributed by [JsDelivr](https://www.jsdelivr.com/),
`https://cdn.jsdelivr.net/pyodide/v0.16.0/full/pyodide.js`
The previous CDN `pyodide-cdn2.iodide.io` still works and there
are no plans for deprecating it. However please use
JsDelivr as a more sustainable solution.
JsDelivr as a more sustainable solution, including for earlier pyodide
versions.
### Python and the standard library
- Pyodide includes CPython 3.8.2
[#712](https://github.com/iodide-project/pyodide/pull/712)
- ENH Patches for the threading module were removed in all packages.
Importing the module, and a subset of functionality (e.g. locks) works,
while starting a new thread will produce an exception, as expected.
[#796](https://github.com/iodide-project/pyodide/pull/796). See
[#237](https://github.com/iodide-project/pyodide/pull/237) for the current
status of the threading support.
- ENH The multiprocessing module is now included, and will not fail at import,
thus avoiding the necessity to patch included packages. Starting a new process
will produce an exception due to the limitation of the WebAssembly VM with
the following message: `Resource temporarily unavailable`
[#796](https://github.com/iodide-project/pyodide/pull/796).
### Python / JS type conversions
- FIX Only call `Py_INCREF()` once when proxied by PyProxy
[#708](https://github.com/iodide-project/pyodide/pull/708)
- Updated docker image to Debian buster
- Javascript exceptions can now be raised and caught in Python. They are
wrapped in pyodide.JsException.
[#872](https://github.com/iodide-project/pyodide/pull/872)
### pyodide-py package and micropip
- The `pyodide.py` file was transformed to a pyodide-py package. The imports
remain the same so this change is transparent to the users
[#909](https://github.com/iodide-project/pyodide/pull/909).
- FIX Get last version from PyPi when installing a module via micropip
[#846](https://github.com/iodide-project/pyodide/pull/846).
- Suppress REPL results returned by `pyodide.eval_code` by adding a semicolon
[#876](https://github.com/iodide-project/pyodide/pull/876).
### Build system
- Updated docker image to Debian buster, resulting in smaller images.
[#815](https://github.com/iodide-project/pyodide/pull/815)
- Pre-built docker images are now available as
[`iodide-project/pyodide`](https://hub.docker.com/r/iodide/pyodide)
[#787](https://github.com/iodide-project/pyodide/pull/787)
- Host python is no longer compiled, reducing compilation time. This also
implies that python 3.8 is now required to build pyodide. It can for instance
be installed with conda.
[#830](https://github.com/iodide-project/pyodide/pull/830)
- FIX Infer package tarball directory from source url
[#687](https://github.com/iodide-project/pyodide/pull/687)
- FIX Get last version from PyPi when installing a module via micropip
[#846](https://github.com/iodide-project/pyodide/pull/846)
- Updated to emscripten 1.38.34
[#480](https://github.com/iodide-project/pyodide/pull/480)
- New packages: freesasa, lxml, python-sat, traits, astropy, pillow, scikit-image, imageio
- Updated packages: numpy 1.15.4, pandas 1.0.5, matplotlib 3.3.3 among others.
- Updated to emscripten 1.38.44 and binaryen v86
(see related [commits](https://github.com/iodide-project/pyodide/search?q=emscripten&type=commits))
- Updated default `--ldflags` argument to `pyodide_build` scripts to equal what
pyodide actually uses.
- Drop support for serving .wasm files with incorrect mime type.
- Replace C lz4 implementation with (upstream) javascript implementation.
[#817](https://github.com/iodide-project/pyodide/pull/480)
- Replace C lz4 implementation with the (upstream) Javascript implementation.
[#851](https://github.com/iodide-project/pyodide/pull/851)
- New package
[pyodide-interrupt](https://pypi.org/project/pyodide-interrupts/), useful for
handling interrupts in Pyodide (see project descripion for details).
- Pyodide deployment URL can now be specified with the `PYODIDE_BASE_URL`
environment variable during build. The `pyodide_dev.js` is no longer distributed.
To get an equivalent behavior with `pyodide.js`, set,
@ -38,12 +75,36 @@
```
before loading it.
[#855](https://github.com/iodide-project/pyodide/pull/855)
- Suppress REPL results by adding a semicolon [#876](https://github.com/iodide-project/pyodide/pull/876)
- Javascript exceptions can now be raised and caught in Python. They are wrapped in pyodide.JsException.
[#872](https://github.com/iodide-project/pyodide/pull/872)
- Build runtime C libraries (e.g. libxml) via package build system with correct
dependency resolution
[#927](https://github.com/iodide-project/pyodide/pull/927)
- Pyodide can now be built in a conda virtual environment
[#835](https://github.com/iodide-project/pyodide/pull/835)
### Other improvements
- Modifiy MEMFS timestamp handling to support better caching. This in particular allows to
import newly created python modules without invalidating
[#893](https://github.com/iodide-project/pyodide/pull/893)
### Packages
- New packages: freesasa, lxml, python-sat, traits, astropy, pillow,
scikit-image, imageio
Note that due to the large size and the experimental state of the scipy
package, packages that depend on scipy (including scikit-image, scikit-learn)
will take longer to load, use a lot of memory and may experience failures.
- Updated packages: numpy 1.15.4, pandas 1.0.5, matplotlib 3.3.3 among others.
- New package
[pyodide-interrupt](https://pypi.org/project/pyodide-interrupts/), useful for
handling interrupts in Pyodide (see project descripion for details).
### Backward incompatible changes
- Dropped support for loading .wasm files with incorrect MIME type, following
[#851](https://github.com/iodide-project/pyodide/pull/851)
## Version 0.15.0
*May 19, 2020*