This is the release note of v6.6.0. See [here](https://github.com/cupy/cupy/milestone/61?closed=1) for the complete list of solved issues and merged PRs.
Highlights
Python 3.8 is now officially supported and we are providing wheels for this version.
Enhancements
- Support complex dtypes in `cupy.where` (2615, thanks AntoineDujardin!)
- Update `__cuda_array_interface__` to protocol version 2 (2669, thanks leofang!)
- Remove `cupy.cupyx` (2724)
- Support Python 3.8 on Windows (2751)
Bug Fixes
- Make exceptions picklable (2567)
- Support 0-sized arrays for `linalg.qr` (2602, thanks IvanYashchuk)
- Do not allow `reshape` on empty arrays (2652)
- Cache `ElementwiseKernel` kernel globally instead of per instance (2659)
- Handle tuple with value 0 and return empty array (2706, thanks quasiben!)
Code Fixes
- Remove insignificant assertion (2719)
Documentation
- Document more environment variables (2612, thanks leofang!)
- Update `CODE_OF_CONDUCT` typo (2628)
- Fix document format of `as_strided` (2713)
- Update requirements (2755)
Tests
- Add missing FlexCI configurations (2591)
- Add FlexCI configurations (2715)
- Skip tests that segfault when using SciPy 1.3.x (2721, thanks grlee77!)
- Fix broken version specification in FlexCI dockerfiles (2736)
Installation
- Package tests in sdist (2572, thanks jakirkham!)
- Fix url to use the home page address (2590)
- Import CUDA headers from CUDA 10.1 Update 2 (10.1.243) (2605)
- Fix invaild requirements (2640)
- Add software description to `setup.py` (2653)
Examples
- Show better performance improvement in `examples/stream/map_reduce.py` (2603, thanks leofang!)
Others
- Fix `AttributeError` of `stride_tricks` (2705)