bidict/.appveyor.yml

19 lines
350 B
YAML
Raw Normal View History

skip_tags: true
os: Visual Studio 2015
environment:
matrix:
- PYTHON: "C:\\Python27-x64"
- PYTHON: "C:\\Python36-x64"
build_script:
- "git --no-pager log -n2"
- "echo %APPVEYOR_REPO_COMMIT%"
- "SET PATH=%PYTHON%;%PYTHON%\\Scripts;;%PATH%"
- "python --version"
- "pip install -e .[test]"
test_script:
Various improvements. - Refactor proxied- (i.e. delegated-) to-``_fwdm`` logic for better composability and interoperability. Drop the ``_Proxied*`` mixin classes and instead move their methods into :class:`~bidict.BidictBase`, which now checks for an object defined by the :attr:`~bidict.BidictBase.__delegate__` attribute. The :attr:`~bidict.BidictBase.__delegate__` object will be delegated to if the method is available on it, otherwise a default implementation (e.g. inherited from :class:`~collections.abc.Mapping`) will be used otherwise. Subclasses may set ``__delegate__ = None`` to opt out. - Consolidate ``_MutableBidict`` into :class:`bidict.bidict` now that the dropped mixin classes make it unnecessary. - Change :attr:`~bidict.BidictBase.__repr_delegate__` to take simply a type like :class:`dict` or :class:`list`. - Upgrade to latest major `sortedcontainers <https://github.com/grantjenks/python-sortedcontainers>`__ version (from v1 to v2) for the :ref:`extending:Sorted Bidict Recipes`. - ``bidict.compat.{view,iter}{keys,values,items}`` on Python2 no longer assumes the target object implements these methods, as they're not actually part of the :class:`~collections.abc.Mapping` interface, and provides fallback implementations when the methods are unavailable. This allows the :ref:`extending:Sorted Bidict Recipes` to continue to work with sortedcontainers v2 on Python2. - Test code in docs via Sphinx rather than pytest. Enables running Python version-dependent tests conditionally rather than skipping them altogether, as well as hiding import statements (via `testsetup`) that otherwise just add noise. Run tests (viz. pytest and Sphinx doctest) via a new run-tests.py script.
2018-11-05 20:52:59 +00:00
- "python run-tests.py"