Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-asdf-astropy for openSUSE:Factory checked in at 2022-04-30 22:52:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-asdf-astropy (Old) and /work/SRC/openSUSE:Factory/.python-asdf-astropy.new.1538 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-asdf-astropy" Sat Apr 30 22:52:05 2022 rev:4 rq:973222 version:0.2.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-asdf-astropy/python-asdf-astropy.changes 2022-03-22 19:40:35.051114078 +0100 +++ /work/SRC/openSUSE:Factory/.python-asdf-astropy.new.1538/python-asdf-astropy.changes 2022-04-30 22:52:11.524196185 +0200 @@ -1,0 +2,7 @@ +Wed Apr 27 10:48:56 UTC 2022 - Ben Greiner <c...@bnavigator.de> + +- Update to v0.2.1 + * Migrate documentation from astropy to asdf-astropy. + * Pin astropy min version to 5.0.4. + +------------------------------------------------------------------- Old: ---- asdf_astropy-0.2.0.tar.gz New: ---- asdf_astropy-0.2.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-asdf-astropy.spec ++++++ --- /var/tmp/diff_new_pack.3dIzRy/_old 2022-04-30 22:52:12.008196839 +0200 +++ /var/tmp/diff_new_pack.3dIzRy/_new 2022-04-30 22:52:12.008196839 +0200 @@ -28,7 +28,7 @@ %{?!python_module:%define python_module() python3-%{**}} %define skip_python2 1 Name: python-asdf-astropy%{psuffix} -Version: 0.2.0 +Version: 0.2.1 Release: 0 Summary: ASDF serialization support for astropy License: BSD-3-Clause @@ -47,7 +47,7 @@ Requires: python-asdf >= 2.8.0 Requires: python-asdf-coordinates-schemas Requires: python-asdf-transform-schemas >= 0.2.2 -Requires: python-astropy +Requires: python-astropy >= 5.0.4 Requires: python-numpy Requires: python-packaging >= 16.0 %if 0%{?python_version_nodots} < 39 ++++++ asdf_astropy-0.2.0.tar.gz -> asdf_astropy-0.2.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/.github/workflows/ci.yml new/asdf_astropy-0.2.1/.github/workflows/ci.yml --- old/asdf_astropy-0.2.0/.github/workflows/ci.yml 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/.github/workflows/ci.yml 2022-04-19 01:06:17.000000000 +0200 @@ -99,3 +99,32 @@ uses: codecov/codecov-action@v2 with: file: ./coverage.xml + + asdf-transform-schemas-dev: + name: Run asdf-transform-schemas development tests + runs-on: ubuntu-latest + steps: + - name: Checkout asdf-astropy + uses: actions/checkout@v2 + with: + fetch-depth: 0 + path: asdf-astropy + - name: Checkout asdf-transform-schemas-dev + uses: actions/checkout@v2 + with: + fetch-depth: 0 + repository: asdf-format/asdf-transform-schemas + ref: master + path: asdf-transform-schemas + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Install asdf-astropy + run: cd asdf-astropy && pip install .[test] + - name: Install asdf-transform-schemas + run: cd asdf-transform-schemas && pip install -e .[test] + - name: Pip Freeze + run: pip freeze + - name: Run asdf-transform-schemas development tests + run: cd asdf-transform-schemas && pytest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/CHANGES.rst new/asdf_astropy-0.2.1/CHANGES.rst --- old/asdf_astropy-0.2.0/CHANGES.rst 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/CHANGES.rst 2022-04-19 01:06:17.000000000 +0200 @@ -1,3 +1,9 @@ +0.2.1 (2022-04-18) +------------------ + +- Migrate documentation from ``astropy`` to ``asdf-astropy``. [#55] +- Pin astropy min version to 5.0.4. [#62] + 0.2.0 (2022-03-08) ------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/LICENSE.rst new/asdf_astropy-0.2.1/LICENSE.rst --- old/asdf_astropy-0.2.0/LICENSE.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/LICENSE.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,26 @@ +Copyright (c) 2011-2022, Astropy Developers + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. +* Neither the name of the Astropy Team nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/PKG-INFO new/asdf_astropy-0.2.1/PKG-INFO --- old/asdf_astropy-0.2.0/PKG-INFO 2022-03-08 20:26:13.438392600 +0100 +++ new/asdf_astropy-0.2.1/PKG-INFO 2022-04-19 01:06:35.284050500 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: asdf_astropy -Version: 0.2.0 +Version: 0.2.1 Summary: ASDF serialization support for astropy Home-page: https://github.com/astropy/asdf-astropy Author: The Astropy Developers @@ -11,7 +11,7 @@ Description-Content-Type: text/x-rst Provides-Extra: test Provides-Extra: docs -License-File: licenses/LICENSE.rst +License-File: LICENSE.rst ASDF serialization support for astropy -------------------------------------- @@ -32,6 +32,9 @@ :target: http://www.astropy.org :alt: Powered by Astropy Badge +.. image:: https://readthedocs.org/projects/asdf-astropy/badge/?version=latest + :target: https://asdf-astropy.readthedocs.io/en/latest/ + .. image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white :target: https://github.com/pre-commit/pre-commit :alt: pre-commit @@ -59,6 +62,94 @@ more information. +Installation +------------ + +.. _begin-pip-install-text: + +Stable releases of the asdf-astropy python package are registered `at +PyPi <https://pypi.python.org/pypi/asdf-astropy>`__. The latest stable version +can be installed using ``pip``: + +.. code-block:: console + + $ pip install asdf-astropy + +.. _end-pip-install-text: + +.. _begin-source-install-text: + +The latest development version of asdf-astropy is available from the ``main`` branch +`on github <https://github.com/astropy/asdf-astropy>`__. To clone the project: + +.. code-block:: console + + $ git clone https://github.com/astropy/asdf-astropy + +To install: + +.. code-block:: console + + $ cd asdf-astropy + $ pip install . + +To install in `development +mode <https://packaging.python.org/tutorials/distributing-packages/#working-in-development-mode>`__ + +.. code-block:: console + + $ pip install -e . + +.. _end-source-install-text: + +Testing +------- + +.. _begin-testing-text: + +To install the test dependencies from a source checkout of the repository: + +.. code-block:: console + + $ pip install -e ".[test]" + +To run the unit tests from a source checkout of the repository: + +.. code-block:: console + + $ pytest + +It is also possible to run the test suite from an installed version of +the package. + +.. code-block:: console + + $ pip install "asdf-astropy[test]" + $ pytest --pyargs asdf-astropy + +It is also possible to run the tests using `tox +<https://tox.readthedocs.io/en/latest/>`__. + +.. code-block:: console + + $ pip install tox + +To list all available environments: + +.. code-block:: console + + $ tox -va + +To run a specific environment: + +.. code-block:: console + + $ tox -e <envname> + + +.. _end-testing-text: + + Contributing ------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/README.rst new/asdf_astropy-0.2.1/README.rst --- old/asdf_astropy-0.2.0/README.rst 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/README.rst 2022-04-19 01:06:17.000000000 +0200 @@ -17,6 +17,9 @@ :target: http://www.astropy.org :alt: Powered by Astropy Badge +.. image:: https://readthedocs.org/projects/asdf-astropy/badge/?version=latest + :target: https://asdf-astropy.readthedocs.io/en/latest/ + .. image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white :target: https://github.com/pre-commit/pre-commit :alt: pre-commit @@ -44,6 +47,94 @@ more information. +Installation +------------ + +.. _begin-pip-install-text: + +Stable releases of the asdf-astropy python package are registered `at +PyPi <https://pypi.python.org/pypi/asdf-astropy>`__. The latest stable version +can be installed using ``pip``: + +.. code-block:: console + + $ pip install asdf-astropy + +.. _end-pip-install-text: + +.. _begin-source-install-text: + +The latest development version of asdf-astropy is available from the ``main`` branch +`on github <https://github.com/astropy/asdf-astropy>`__. To clone the project: + +.. code-block:: console + + $ git clone https://github.com/astropy/asdf-astropy + +To install: + +.. code-block:: console + + $ cd asdf-astropy + $ pip install . + +To install in `development +mode <https://packaging.python.org/tutorials/distributing-packages/#working-in-development-mode>`__ + +.. code-block:: console + + $ pip install -e . + +.. _end-source-install-text: + +Testing +------- + +.. _begin-testing-text: + +To install the test dependencies from a source checkout of the repository: + +.. code-block:: console + + $ pip install -e ".[test]" + +To run the unit tests from a source checkout of the repository: + +.. code-block:: console + + $ pytest + +It is also possible to run the test suite from an installed version of +the package. + +.. code-block:: console + + $ pip install "asdf-astropy[test]" + $ pytest --pyargs asdf-astropy + +It is also possible to run the tests using `tox +<https://tox.readthedocs.io/en/latest/>`__. + +.. code-block:: console + + $ pip install tox + +To list all available environments: + +.. code-block:: console + + $ tox -va + +To run a specific environment: + +.. code-block:: console + + $ tox -e <envname> + + +.. _end-testing-text: + + Contributing ------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/asdf_astropy/_version.py new/asdf_astropy-0.2.1/asdf_astropy/_version.py --- old/asdf_astropy-0.2.0/asdf_astropy/_version.py 2022-03-08 20:26:12.000000000 +0100 +++ new/asdf_astropy-0.2.1/asdf_astropy/_version.py 2022-04-19 01:06:34.000000000 +0200 @@ -1,5 +1,5 @@ # coding: utf-8 # file generated by setuptools_scm # don't change, don't track in version control -version = '0.2.0' -version_tuple = (0, 2, 0) +version = '0.2.1' +version_tuple = (0, 2, 1) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/asdf_astropy/converters/time/tests/test_time_delta.py new/asdf_astropy-0.2.1/asdf_astropy/converters/time/tests/test_time_delta.py --- old/asdf_astropy-0.2.0/asdf_astropy/converters/time/tests/test_time_delta.py 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/asdf_astropy/converters/time/tests/test_time_delta.py 2022-04-19 01:06:17.000000000 +0200 @@ -15,7 +15,7 @@ result.append(TimeDelta(Time.now() - Time.now(), format=format)) for scale in list(TimeDelta.SCALES) + [None]: - result.append(TimeDelta(0.125, scale=scale)) + result.append(TimeDelta(0.125 * u.day, scale=scale)) return result diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/asdf_astropy/converters/transform/tests/test_transform.py new/asdf_astropy-0.2.1/asdf_astropy/converters/transform/tests/test_transform.py --- old/asdf_astropy-0.2.0/asdf_astropy/converters/transform/tests/test_transform.py 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/asdf_astropy/converters/transform/tests/test_transform.py 2022-04-19 01:06:17.000000000 +0200 @@ -8,23 +8,10 @@ from asdf.tests.helpers import yaml_to_asdf from astropy import units as u from astropy.modeling import models as astropy_models -from packaging.version import Version from asdf_astropy import integration from asdf_astropy.testing.helpers import assert_model_equal -try: - from astropy.modeling.models import UnitsMapping # noqa - - HAS_NO_UNITS_MAPPING = False -except ImportError: - HAS_NO_UNITS_MAPPING = True - -if Version(astropy.__version__) < Version("4.1"): - ASTROPY_LT_41 = True -else: - ASTROPY_LT_41 = False - def assert_model_roundtrip(model, tmpdir, version=None): """ @@ -281,8 +268,7 @@ ), ] - if Version(astropy.__version__) >= Version("4.1"): - result.append(astropy_models.Plummer1D(mass=10.0, r_plum=5.0)) + result.append(astropy_models.Plummer1D(mass=10.0, r_plum=5.0)) # models with input_units_equivalencies # 1D model @@ -341,41 +327,9 @@ astropy.modeling.projections.QuadCube, astropy.modeling.projections.Sky2PixProjection, astropy.modeling.projections.Zenithal, -] - - -if Version(astropy.__version__) > Version("4.1"): # https://github.com/astropy/asdf-astropy/issues/6 - UNSUPPORTED_MODELS += [ - astropy.modeling.physical_models.NFW, - astropy.modeling.models.UnitsMapping, - ] - -if Version(astropy.__version__) < Version("4.3"): - UNSUPPORTED_MODELS.append(astropy.modeling.blackbody.BlackBody1D) -else: - UNSUPPORTED_MODELS.append(astropy.modeling.physical_models.BlackBody) - -if Version(astropy.__version__) < Version("4.999.999"): - UNSUPPORTED_MODELS.extend( - [ - astropy.modeling.models.MexicanHat1D, - astropy.modeling.models.MexicanHat2D, - ] - ) - -if Version(astropy.__version__) > Version("4.999.999"): - # https://github.com/astropy/asdf-astropy/issues/28 - UNSUPPORTED_MODELS.extend( - [ - astropy.modeling.functional_models.ArcCosine1D, - astropy.modeling.functional_models.ArcSine1D, - astropy.modeling.functional_models.ArcTangent1D, - astropy.modeling.functional_models.Cosine1D, - astropy.modeling.functional_models.Tangent1D, - astropy.modeling.spline.Spline1D, - ] - ) + astropy.modeling.physical_models.NFW, +] @pytest.mark.parametrize("model", create_single_models()) @@ -417,15 +371,17 @@ assert len(missing) == 0, message -@pytest.mark.xfail(reason="Older tag versions are difficult to test until asdf implements new config features") def test_legacy_const(tmpdir): - model = astropy_models.Const1D(amplitude=5.0) - assert_model_roundtrip(model, tmpdir, version="1.3.0") + with asdf.config_context() as config: + config.remove_extension("asdf://asdf-format.org/transform/extensions/transform-1.5.0") - model = astropy_models.Const2D(amplitude=5.0) - with pytest.raises(TypeError, match="does not support models with > 1 dimension"): + model = astropy_models.Const1D(amplitude=5.0) assert_model_roundtrip(model, tmpdir, version="1.3.0") + model = astropy_models.Const2D(amplitude=5.0) + with pytest.raises(TypeError, match=r".* does not support models with > 1 dimension"): + assert_model_roundtrip(model, tmpdir, version="1.3.0") + COMPOUND_OPERATORS = [ "__add__", @@ -458,7 +414,6 @@ assert result.op == fixed_model.op -@pytest.mark.skipif("HAS_NO_UNITS_MAPPING") def test_units_mapping(tmpdir): # Basic mapping between units: model = astropy_models.UnitsMapping(((u.m, u.dimensionless_unscaled),)) @@ -536,7 +491,6 @@ assert result.y_window == model.y_window -@pytest.mark.skip("ASTROPY_LT_41") def test_deserialize_compound_user_inverse(tmpdir): """ Confirm that we are able to correctly reconstruct a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/asdf_astropy.egg-info/PKG-INFO new/asdf_astropy-0.2.1/asdf_astropy.egg-info/PKG-INFO --- old/asdf_astropy-0.2.0/asdf_astropy.egg-info/PKG-INFO 2022-03-08 20:26:13.000000000 +0100 +++ new/asdf_astropy-0.2.1/asdf_astropy.egg-info/PKG-INFO 2022-04-19 01:06:34.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: asdf-astropy -Version: 0.2.0 +Version: 0.2.1 Summary: ASDF serialization support for astropy Home-page: https://github.com/astropy/asdf-astropy Author: The Astropy Developers @@ -11,7 +11,7 @@ Description-Content-Type: text/x-rst Provides-Extra: test Provides-Extra: docs -License-File: licenses/LICENSE.rst +License-File: LICENSE.rst ASDF serialization support for astropy -------------------------------------- @@ -32,6 +32,9 @@ :target: http://www.astropy.org :alt: Powered by Astropy Badge +.. image:: https://readthedocs.org/projects/asdf-astropy/badge/?version=latest + :target: https://asdf-astropy.readthedocs.io/en/latest/ + .. image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white :target: https://github.com/pre-commit/pre-commit :alt: pre-commit @@ -59,6 +62,94 @@ more information. +Installation +------------ + +.. _begin-pip-install-text: + +Stable releases of the asdf-astropy python package are registered `at +PyPi <https://pypi.python.org/pypi/asdf-astropy>`__. The latest stable version +can be installed using ``pip``: + +.. code-block:: console + + $ pip install asdf-astropy + +.. _end-pip-install-text: + +.. _begin-source-install-text: + +The latest development version of asdf-astropy is available from the ``main`` branch +`on github <https://github.com/astropy/asdf-astropy>`__. To clone the project: + +.. code-block:: console + + $ git clone https://github.com/astropy/asdf-astropy + +To install: + +.. code-block:: console + + $ cd asdf-astropy + $ pip install . + +To install in `development +mode <https://packaging.python.org/tutorials/distributing-packages/#working-in-development-mode>`__ + +.. code-block:: console + + $ pip install -e . + +.. _end-source-install-text: + +Testing +------- + +.. _begin-testing-text: + +To install the test dependencies from a source checkout of the repository: + +.. code-block:: console + + $ pip install -e ".[test]" + +To run the unit tests from a source checkout of the repository: + +.. code-block:: console + + $ pytest + +It is also possible to run the test suite from an installed version of +the package. + +.. code-block:: console + + $ pip install "asdf-astropy[test]" + $ pytest --pyargs asdf-astropy + +It is also possible to run the tests using `tox +<https://tox.readthedocs.io/en/latest/>`__. + +.. code-block:: console + + $ pip install tox + +To list all available environments: + +.. code-block:: console + + $ tox -va + +To run a specific environment: + +.. code-block:: console + + $ tox -e <envname> + + +.. _end-testing-text: + + Contributing ------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/asdf_astropy.egg-info/SOURCES.txt new/asdf_astropy-0.2.1/asdf_astropy.egg-info/SOURCES.txt --- old/asdf_astropy-0.2.0/asdf_astropy.egg-info/SOURCES.txt 2022-03-08 20:26:13.000000000 +0100 +++ new/asdf_astropy-0.2.1/asdf_astropy.egg-info/SOURCES.txt 2022-04-19 01:06:35.000000000 +0200 @@ -1,8 +1,10 @@ CHANGES.rst +LICENSE.rst MANIFEST.in README.rst bandit.yaml pyproject.toml +requirements-dev.txt setup.cfg setup.py tox.ini @@ -94,7 +96,11 @@ docs/conf.py docs/index.rst docs/make.bat -docs/asdf-astropy/index.rst -licenses/LICENSE.rst +docs/asdf-astropy/details.rst +docs/asdf-astropy/example.rst +docs/asdf-astropy/install.rst +docs/asdf-astropy/manifest.rst +docs/asdf-astropy/schemas.rst +docs/asdf-astropy/table.rst licenses/README.rst scripts/generate_manifest.py \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/asdf_astropy.egg-info/requires.txt new/asdf_astropy-0.2.1/asdf_astropy.egg-info/requires.txt --- old/asdf_astropy-0.2.0/asdf_astropy.egg-info/requires.txt 2022-03-08 20:26:13.000000000 +0100 +++ new/asdf_astropy-0.2.1/asdf_astropy.egg-info/requires.txt 2022-04-19 01:06:35.000000000 +0200 @@ -1,4 +1,4 @@ -astropy +astropy>=5.0.4 asdf>=2.8.0 numpy asdf-coordinates-schemas diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/details.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/details.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/details.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/details.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,38 @@ +.. _details: + +======= +Details +======= + +**ASDF** makes use of an abstract data type definition called a **tag**, which is a formed +from a **schema** or collection of **schemas**. Each **schema** encodes part of the +information that **ASDF** uses to both validate and identify the organization and types of +data within an ASDF file. Tags are assigned to specific a specific schema or collection +of schemas within a **manifest**. Finally, **ASDF** requires **converter** classes which implement +the logic of serializing and deserializing of objects (in this case **astropy** classes) into +and out of their respective **ASDF** tag representations. + +The **asdf-astropy** package primarily defines **converters** for many **astropy** +types, and then properly registers them with **ASDF**. Users should never need to refer +to converter implementations directly. Their presence should be entirely transparent +when processing ASDF files. + +The converters in **asdf-astropy** related to transforms implement the tags that are +defined by the `asdf-transform-schemas package <https://github.com/asdf-format/asdf-transform-schemas>`_. +Similarly, the converters in **asdf-astropy** related to coordinates implement +the tags that are defined by the +`asdf-coordinates-schemas package <https://github.com/asdf-format/asdf-coordinates-schemas>`_. +Moreover, many of the converters in **asdf-astropy** related to units implement tags +that are defined in the `ASDF-standard <https://asdf-standard.readthedocs.io/en/latest/>`. +Finally, there are converters in **asdf-astropy** whose tags are defined within **asdf-astropy** +itself. See :ref:`asdf-astropy_manifest` for a listing of all these tags. Documentation of the +individual schemas defined by **asdf-astropy**, which are used to assemble these tags can be +found in :ref:`asdf-astropy_schemas`. + +.. note:: + Not all **astropy** types are currently serializable by ASDF. Attempting to + write unsupported types to an ASDF file will lead to a ``RepresenterError``. In + order to support new types, new tags and converters must be created. A basic + example can be found in :ref:`basic_example`, for additional details please refer to + `Writing ASDF Extensions <https://asdf.readthedocs.io/en/latest/asdf/extending/extensions.html>`_. + If you do write additional converters or schemas please consider contributing them to **asdf-astropy**. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/example.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/example.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/example.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/example.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,166 @@ +.. _basic_example: + +======= +Example +======= + + +In this example, we will show how to implement serialization for a new +`~astropy.modeling.Model` object, but the basic principles apply to +serialization of other **astropy** objects. As mentioned, adding a new object +to **asdf-astropy** requires both a tag and a converter. + +Creating the Tag +---------------- + +All of the tags for transforms (**astropy** models) are currently defined within +the asdf-transform-schemas, along side the schemas which compose them. +Any new serializable **astropy** model will require the creation of a new tag, +which will likely require the creation of a new schema. + +Let's consider a new model called ``MyModel``, a new model in ``astropy.modeling.functional_models`` +that has two parameters ``amplitude`` and ``x_0``. We would like to strictly require both +of these parameters be set. We would also like to specify that these parameters can +either be numeric type, or ``astropy.units.quantity`` type. A schema describing this +model would look like + +.. code-block:: yaml + + %YAML 1.1 + --- + $schema: "http://stsci.edu/schemas/yaml-schema/draft-01" + id: "http://astropy.org/schemas/mymodel-1.0.0" + title: > + Example New Model. + + description: > + Example new model, which describes the distribution of ABC. + + allOf: + - $ref: "transform-1.2.0" + - type: object + properties: + amplitude: + anyOf: + - tag: tag:stsci.edu:asdf/unit/quantity-1.1.0 + - type: number + description: Amplitude of distribution. + x_0: + anyOf: + - tag: tag:stsci.edu:asdf/unit/quantity-1.1.0 + - type: number + description: X center position. + + required: ['amplitude', 'x_0] + ... + +All new transform schemas reference the base transform schema with the latest +version. This schema describes the other model attributes that are common to all +or many models, so that individual schemas only handle the parameters specific +to that model. Additionally, this schema uses the latest tag for ``quantity``, +so that models can retain information about units and quantities. References allow +previously defined schemas to be used inside new custom types, while the direct +reference to a specific tag is preferred when possible as this allows ASDF to more +confidently validate both the schema itself and the ASDF files which make use of it. + +Finally, we can create the **tag** itself. This is done by creating an entry in a +manifest for the tag. The manifest entry is where the **tag** gets associated with the +schemas that are used by **ASDF** to validate the ASDF file. An example manifest +entry for this model would look something like: + +.. code-block:: yaml + + - tag_uri: tag:stsci.edu:asdf/transform/mymodel-1.0.0 + schema_uri: http://astropy.org/schemas/mymodel-1.0.0 + title: Example New Model + description: |- + Example new model, which describes the distribution of ABC. + +If one was contributing this tag to **asdf-astropy**, this entry would be +added the :ref:`asdf-astropy_manifest` directly. Doing this will allow +**asdf-astropy** to properly register this tag and associate this tag with its underlying +schema for use by **ASDF**. Moreover, the underlying schema will need to be added to the +`asdf_astropy/resources/schemas` directly in order for **asdf-astropy** to make +use of it when creating the tag in **ASDF**. + +.. note:: + + This is not a complete manifest, instead it is a listing for a single + tag for a manifest. See :ref:`asdf-astropy_manifest` for an example of + a complete manifest. Moreover, a manifest is not strictly the only way + to create a tag for ASDF (this can be done using the ASDF context manager + for example); however, it is the standard way to create a tag for ASDF + for use with a given package. + +Creating a Converter +-------------------- + +The next component for enabling ASDF to serialize and deserialize an object +is to create a **converter** class. + +.. note:: + For most transforms the + `~asdf_astropy.converters.transform.core.SimpleTransformConverter` will be sufficient + to construct the necessary converter for your model. However, for completeness + we will describe the general procedure for writing both a transform converter + and a more general converter. + +Creating a Transform Converter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +If we want to use the **asdf-astropy** framework for writing transform converters; namely, using +`~asdf_astropy.converters.transform.core.TransformConverterBase``, we need to define two methods +``to_yaml_tree_transform`` and ``from_yaml_tree_transform``. The ``to_yaml_tree_transform`` +will perform the serialization of the parts of ``MyModel`` which are specific to ``MyModel``, +while ``from_yaml_tree_transform`` will perform the deserialization of the parts of +``MyModel`` specific to ``MyModel``. Moreover, the converter class must also +specify the `tags` corresponding to ``MyModel`` and the matching python `types` for +those `tags`. The `tags` are what **ASDF** uses to identify which converter to use when +deserializing an ASDF file, while the `types` are used by **ASDF** to identify which converter +to use when serializing an object to an ASDF file.:: + + from asdf_astropy.converters.transform.core import TransformConverterBase, parameter_to_value + + class MyModelConverter(TransformConverterBase): + tags = ["tag:stsci.edu:asdf/transform/mymodel-1.0.0"] + types = ['astropy.modeling.functional_models.MyModel'] + + def to_yaml_tree_transform(self, model, tag, ctx): + node = {'amplitude': parameter_to_value(amplitude), + 'x_0': parameter_to_value(x_0)} + return node + + def from_yaml_tree_transform(self, node, tag, ctx): + from astropy.modeling.functional_models import MyModel + + return MyModel(amplitude=node['amplitude'], x_0=node['x_0']) + +If one was contributing this converter to **asdf-astropy**, this class would +need to be instantiated and then added to the `TRANSFORM_CONVERTERS` list +in the `~asdf_astropy.extensions` module. By doing this **asdf-astropy** +will be able to properly register this converter with **ASDF** so that it +can be used seamlessly when working with **ASDF**. + +Creating a General Converter +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +If one needs to create a more general (e.g. non-transform) converter, say +``MyType``, then one will need to inherit from `asdf.extension.Converter`. +In this case `tags` and `types` must still be defined, but instead +``to_yaml_tree`` and ``from_yaml_tree`` must be defined instead:: + + from asdf.extension import Converter + + class MyTypeConverter(Converter): + tags = ["tag:<tag for MyType"] + types = ["<python import for MyType>"] + + def to_yaml_tree(self, obj, tag, ctx): + """Code to create a python dictionary representing MyType""" + ... + + def from_yaml_tree(self, node, tag, ctx): + """Code to read a python dictionary representing MyType""" + ... + +For more details please see `Writing ASDF Extensions <https://asdf.readthedocs.io/en/latest/asdf/extending/extensions.html>`_. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/index.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/index.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/index.rst 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/index.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1,6 +0,0 @@ -************************** -asdf-astropy Documentation -************************** - -.. toctree:: - :maxdepth: 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/install.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/install.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/install.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/install.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,56 @@ +.. _installation: + +************ +Installation +************ + +There are several different ways to install the `asdf-astropy` package. +Each is described in detail below. + +Requirements +============ + +The `asdf-astropy` package has several dependencies which are all listed +in the project's ``setup.cfg`` file. All dependencies are available on +pypi and will be automatically installed along with `asdf-astropy`. +Most importantly, both the `asdf` and `astropy` packages will be installed +along with `asdf-astropy` which should enable full functionality. + +Installation with pip +===================== + +.. include:: ../../README.rst + :start-after: begin-pip-install-text: + :end-before: end-pip-install-text: + +Installing with conda +===================== + +`asdf-astropy` is also distributed as a `conda <https://conda.io/docs/>`__ +package via the `conda-forge <https://conda-forge.org/>`__ channel. + +To install `asdf-astropy` within an existing conda environment + +.. code-block:: console + + $ conda install -c conda-forge asdf-astropy + +To create a new conda environment and install `asdf-astropy` + +.. code-block:: console + + $ conda create -n new-env-name -c conda-forge python asdf-astropy + +Building from source +==================== + +.. include:: ../../README.rst + :start-after: begin-source-install-text: + :end-before: end-source-install-text: + +Running the tests +================= + +.. include:: ../../README.rst + :start-after: begin-testing-text: + :end-before: end-testing-text: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/manifest.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/manifest.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/manifest.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/manifest.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,10 @@ +.. _asdf-astropy_manifest: + +===================== +asdf-astropy Manifest +===================== + +Documentation of the ASDF manifest for **asdf-astropy** can be found below: + +.. literalinclude:: ../../asdf_astropy/resources/manifests/astropy-1.0.0.yaml + :language: yaml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/schemas.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/schemas.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/schemas.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/schemas.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,70 @@ +.. _asdf-astropy_schemas: + + +==================== +asdf-astropy Schemas +==================== + +Documentation for each of the individual ASDF schemas defined by **asdf-astropy** can +be found at the links below. + +Documentation for the schemas defined in the ASDF Standard can be found `here +<https://asdf-standard.readthedocs.io/en/latest/schemas/index.html>`__. +Note that other schemas are defined in +`asdf-transform-schemas <https://github.com/asdf-format/asdf-transform-schemas>`_ +and +`asdf-coordinates-schemas <https://github.com/asdf-format/asdf-coordinates-schemas>`_. + + +.. contents:: + +FITS +---- + +The following schemas are associated with ``astropy`` types from the +:ref:`astropy-io-fits` submodule: + +fits/fits-1.0.0 +^^^^^^^^^^^^^^^ + +.. literalinclude:: ../../asdf_astropy/resources/schemas/fits/fits-1.0.0.yaml + :language: yaml + + +Table +----- + +The following schemas are associated with ``astropy`` types from the +:ref:`astropy-table` submodule: + +table/table-1.0.0 +^^^^^^^^^^^^^^^^^ + +.. literalinclude:: ../../asdf_astropy/resources/schemas/table/table-1.0.0.yaml + :language: yaml + + +Time +---- + +The following schemas are associated with ``astropy`` types from the +:ref:`astropy-time` submodule: + +time/timedelta-1.0.0 +^^^^^^^^^^^^^^^^^^^^ + +.. literalinclude:: ../../asdf_astropy/resources/schemas/time/timedelta-1.0.0.yaml + :language: yaml + + +Units +----- + +The following schemas are associated with ``astropy`` types from the +:ref:`astropy-units` submodule: + +units/equivalency-1.0.0 +^^^^^^^^^^^^^^^^^^^^^^^ + +.. literalinclude:: ../../asdf_astropy/resources/schemas/units/equivalency-1.0.0.yaml + :language: yaml diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/asdf-astropy/table.rst new/asdf_astropy-0.2.1/docs/asdf-astropy/table.rst --- old/asdf_astropy-0.2.0/docs/asdf-astropy/table.rst 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/asdf-astropy/table.rst 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,95 @@ +.. _table: + +************************* +Using ASDF with Table I/O +************************* + +ASDF provides readers and writers for `~astropy.table.Table` using the +:ref:`table_io`. This makes it convenient to read and write ASDF files with +`~astropy.table.Table` data. + +Basic Usage +=========== + +Given a table, it is possible to write it out to an ASDF file:: + + from astropy.table import Table + + # Create a simple table + t = Table(dtype=[('a', 'f4'), ('b', 'i4'), ('c', 'S2')]) + # Write the table to an ASDF file + t.write('table.asdf') + +The I/O registry automatically selects the appropriate writer function to use +based on the ``.asdf`` extension of the output file. + +Reading a file generated in this way is also possible using +`~astropy.table.Table.read`:: + + t2 = Table.read('table.asdf') + +The I/O registry automatically selects the appropriate reader function based on +the extension of the input file. + +In the case of both reading and writing, if the file extension is not ``.asdf`` +it is possible to explicitly specify the reader/writer function to be used:: + + t3 = Table.read('table.zxcv', format='asdf') + +Advanced Usage +^^^^^^^^^^^^^^ + +The fundamental ASDF data structure is the tree, which is a nested +combination of basic data structures (see `this +<https://asdf.readthedocs.io/en/latest/asdf/features.html#data-model>`_ +for a more detailed description). At the top level, the tree is a `dict`. + +The consequence of this is that a `~astropy.table.Table` object (or any object, +for that matter) can be stored at any arbitrary location within an ASDF tree. +The basic writer use case described above stores the given +`~astropy.table.Table` at the top of the tree using a default key. The basic +reader case assumes that a `~astropy.table.Table` is stored in the same place. + +However, it may sometimes be useful for users to specify a different top-level +key to be used for storage and retrieval of a `~astropy.table.Table` from an +ASDF file. For this reason, the ASDF I/O interface provides ``data_key`` as an +optional keyword when writing and reading:: + + from astropy.table import Table + + t = Table(dtype=[('a', 'f4'), ('b', 'i4'), ('c', 'S2')]) + # Write the table to an ASDF file using a non-default key + t.write('foo.asdf', data_key='foo') + +A `~astropy.table.Table` stored using a custom data key can be retrieved by +passing the same argument to `~astropy.table.Table.read`:: + + foo = Table.read('foo.asdf', data_key='foo') + +The ``data_key`` option only applies to `~astropy.table.Table` objects that are +stored at the top of the ASDF tree. For full generality, users may pass a +callback when writing or reading ASDF files to define precisely where the +`~astropy.table.Table` object should be placed in the tree. The option for the +write case is ``make_tree``. The function callback should accept exactly one +argument, which is the `~astropy.table.Table` object, and should return a +`dict` representing the tree to be stored:: + + def make_custom_tree(table): + # Return a nested tree where the table is stored at the second level + return dict(foo=dict(bar=table)) + + t = Table(dtype=[('a', 'f4'), ('b', 'i4'), ('c', 'S2')]) + # Write the table to an ASDF file using a non-default key + t.write('foobar.asdf', make_tree=make_custom_tree) + +Similarly, when reading an ASDF file, the user can pass a custom callback to +locate the table within the ASDF tree. The option in this case is +``find_table``. The callback should accept exactly one argument, which is an +`dict` representing the ASDF tree, and it should return a +`~astropy.table.Table` object:: + + def find_table(tree): + # This returns the Table that was stored by the example above + return tree['foo']['bar'] + + foo = Table.read('foobar.asdf', find_table=find_table) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/docs/index.rst new/asdf_astropy-0.2.1/docs/index.rst --- old/asdf_astropy-0.2.0/docs/index.rst 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/docs/index.rst 2022-04-19 01:06:17.000000000 +0200 @@ -1,9 +1,40 @@ -Documentation -============= +.. _asdf-astropy: -This is the documentation for asdf-astropy. +************ +asdf-astropy +************ + +The **asdf-astropy** package contains code that is used to serialize ``astropy`` +types so that they can be represented and stored using the Advanced Scientific +Data Format (ASDF). + +If **asdf-astropy** is installed, no further configuration is required in order +to process ASDF files that contain **astropy** types. Note that the **asdf** +package has been designed to automatically detect the presence of tags defined by +packages like **asdf-astropy** and automatically make use of that package's support +infrastructure to operate correctly. + +Documentation on the ASDF Standard can be found `here +<https://asdf-standard.readthedocs.io>`__. Documentation on the ASDF Python +library can be found `here <https://asdf.readthedocs.io>`__. + + +Getting Started +=============== + +.. toctree:: + :maxdepth: 2 + + asdf-astropy/install.rst + +Using asdf-astropy +================== .. toctree:: :maxdepth: 2 - asdf-astropy/index.rst + asdf-astropy/table.rst + asdf-astropy/details.rst + asdf-astropy/example.rst + asdf-astropy/manifest.rst + asdf-astropy/schemas.rst diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/licenses/LICENSE.rst new/asdf_astropy-0.2.1/licenses/LICENSE.rst --- old/asdf_astropy-0.2.0/licenses/LICENSE.rst 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/licenses/LICENSE.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1,26 +0,0 @@ -Copyright (c) 2011-2022, Astropy Developers - -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - -* Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. -* Redistributions in binary form must reproduce the above copyright notice, this - list of conditions and the following disclaimer in the documentation and/or - other materials provided with the distribution. -* Neither the name of the Astropy Team nor the names of its contributors may be - used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/requirements-dev.txt new/asdf_astropy-0.2.1/requirements-dev.txt --- old/asdf_astropy-0.2.0/requirements-dev.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/asdf_astropy-0.2.1/requirements-dev.txt 2022-04-19 01:06:17.000000000 +0200 @@ -0,0 +1,3 @@ +git+https://github.com/astropy/astropy +git+https://github.com/asdf-format/asdf +git+https://github.com/asdf-format/asdf-transform-schemas diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/setup.cfg new/asdf_astropy-0.2.1/setup.cfg --- old/asdf_astropy-0.2.0/setup.cfg 2022-03-08 20:26:13.442392800 +0100 +++ new/asdf_astropy-0.2.1/setup.cfg 2022-04-19 01:06:35.288050700 +0200 @@ -3,7 +3,7 @@ author = The Astropy Developers author_email = astropy.t...@gmail.com license = BSD-3-Clause -license_file = licenses/LICENSE.rst +license_file = LICENSE.rst url = https://github.com/astropy/asdf-astropy description = ASDF serialization support for astropy long_description = file: README.rst @@ -17,7 +17,7 @@ python_requires = >=3.6 setup_requires = setuptools_scm install_requires = - astropy + astropy>=5.0.4 asdf>=2.8.0 numpy asdf-coordinates-schemas @@ -53,12 +53,6 @@ addopts = --color=yes --doctest-rst asdf_schema_root = asdf_astropy/resources/schemas asdf_schema_tests_enabled = true -asdf_schema_xfail_tests = - asdf_astropy/resources/schemas/transform/units_mapping-1.0.0.yaml::test_schema - asdf_astropy/resources/schemas/transform/units_mapping-1.0.0.yaml::test_example_0 - asdf_astropy/resources/schemas/transform/units_mapping-1.0.0.yaml::test_example_1 - asdf_astropy/resources/schemas/transform/units_mapping-1.0.0.yaml::test_example_2 - asdf_astropy/resources/schemas/transform/units_mapping-1.0.0.yaml::test_example_3 [flake8] exclude = diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/asdf_astropy-0.2.0/tox.ini new/asdf_astropy-0.2.1/tox.ini --- old/asdf_astropy-0.2.0/tox.ini 2022-03-08 20:25:52.000000000 +0100 +++ new/asdf_astropy-0.2.1/tox.ini 2022-04-19 01:06:17.000000000 +0200 @@ -43,10 +43,7 @@ numpy119: numpy==1.19.* astropylts: astropy==5.0.* - devdeps: git+https://github.com/numpy/numpy - devdeps: git+https://github.com/astropy/astropy.git#egg=astropy - devdeps: git+https://github.com/asdf-format/asdf - devdeps: git+https://github.com/asdf-format/asdf-transform-schemas#egg=asdf_transform_schemas + devdeps: -rrequirements-dev.txt py310: git+https://github.com/pytest-dev/pytest @@ -56,6 +53,7 @@ alldeps: all commands = + devdeps: pip install -U --pre -i https://pypi.anaconda.org/scipy-wheels-nightly/simple numpy pip freeze !cov: pytest {posargs} cov: pytest --cov-report xml --cov asdf_astropy {posargs} @@ -98,7 +96,10 @@ bandit -c bandit.yaml -r . [testenv:warnings] +deps = + -rrequirements-dev.txt commands= + pip install -U --pre -i https://pypi.anaconda.org/scipy-wheels-nightly/simple numpy pip freeze pytest --remote-data -W error \ -p no:unraisableexception \