Enhancements
* Enhance compatibility with EAGLE files (j-davies-astro in https://github.com/pynbody/pynbody/pull/645)
* Add support for GadgetHDF SIMBA variant (https://github.com/pynbody/pynbody/pull/651)
* Support reading ramses hydro file descriptor blocks (cphyc in https://github.com/pynbody/pynbody/pull/649)
* Auto-convert ramses conformal times (for star birth) to physical time (cphyc in https://github.com/pynbody/pynbody/pull/650)
* Added ability to select between different SPH smoothing kernels when making images, and implement Wendland kernel (j-davies-astro in https://github.com/pynbody/pynbody/pull/648)
* Cache unit conversion, giving 13× speedup in halo catalogue access (cphyc in https://github.com/pynbody/pynbody/pull/635)
Bug fixes
* Fix bug in theta velocity and adding tests on spherical derivations (Martin-Rey in https://github.com/pynbody/pynbody/pull/637)
* Fix a bug where one-indexed halo catalogues would not iterate correctly (cphyc in https://github.com/pynbody/pynbody/pull/643)
* Fixed issue where velocity images would sometimes fail to plot due to incorrect indexing (j-davies-astro in https://github.com/pynbody/pynbody/pull/647)
* Fix selecting SUBFIND haloes with precalculated indices (j-davies-astro in https://github.com/pynbody/pynbody/pull/646)
Other
* Modernize the codebase with pyupgrade (cphyc in https://github.com/pynbody/pynbody/pull/653)
* Modernize the installation somewhat, removing support for using non-OpenMP compilers since this was anyway _broken_!
* Start supporting Apple Silicon; this will be experimental until GitHub provide arm64-hosted MacOS runners
* Switch to pytests since nose is no longer supported
* Note that version 1.2.0 was not released due to a problem building the wheels, which is resolved in 1.2.1
**Full Changelog**: https://github.com/pynbody/pynbody/compare/v1.1.0...v1.2.1