gh-75572: Forward-port test_xpickle from Python 2 to 3.
https://bugs.python.org/issue31391
Apart from porting test_xpickle, a resource was also added in libregrtest's command line options (as this was originally available in Py2 but removed in Py3, and the test takes considerably long).
I have tested the code against Windows 10 and Ubuntu 20.04. It is also compatible with the py launcher in Windows (PEP 397). In total, it takes around 14 minutes to run the entire test on Ubuntu 20.04, which isn't all that surprising considering the Py2 tests took a few minutes to run, and pickletester has added many more test functions since then.
Compatible versions to bounce pickles from are Python 3.6 - 3.9. Supporting Python 3.5 wasn't feasible since the pickletester library has to be imported, and it has generous use of f-strings.
This is my first time contributing to CPython, and I'd really like feedback on how I can improve this PR, thanks!
https://bugs.python.org/issue31391
- Issue: gh-75572