Implemented PVLMultiDict which is based on the 3rd Party multidict.MultiDict object as an option to use instead of the default OrderedMultiDict. The new PVLMultiDict is better aligned with the Python 3 way that Mapping objects behave.
Enhanced the existing OrderedMultiDict with some functionality that extends its behavior closer to the Python 3 ideal, and inserted warnings about how the retained non-Python-3 behaviors might be removed at the next major patch.
Implemented pvl.new that can be included for those that wish to try out what getting the new PVLMultiDict returned from the loaders might be like by just changing an import statement.
Motivation and Context
Would close #52.
How Has This Been Tested?
make lint
make docs
make test-all
Types of changes
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to change)
I claim copyrights on my contributions in this pull request, and I provide those contributions via this pull request under the same license terms that the pvl project uses.
Description
multidict.MultiDict
object as an option to use instead of the default OrderedMultiDict. The new PVLMultiDict is better aligned with the Python 3 way that Mapping objects behave.Motivation and Context
Would close #52.
How Has This Been Tested?
Types of changes
Checklist:
Licensing:
This project is released under the LICENSE.