* Enable registering of legacy attributes without...
... exact substitutes. (See diff for an example.)
* Take new callable instead of old name ...
... so we can ensure existence
* Require old names to be passed as key words
This is a lot simpler, less error prone, and works for all kinds of old
names, not only those which are proper camelcase.
This adds Python 3.9 and 3.10 typing syntax to files that import
attributions from __future___. Python 3.9 should be able to cope with
the 3.10 syntax, but Python 3.8 will no longer work.
On Windows/Mac, install the latest Python 3.9 version from python.org.
There are currently no orjson wheels for Python 3.10 on Windows/Mac,
which will break the build unless you have Rust installed separately.
On Linux, modern distros should have Python 3.9 available already. If
you're on an older distro, you'll need to build Python from source first.