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 2025-12-12 21:42:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-asdf-astropy (Old)
 and      /work/SRC/openSUSE:Factory/.python-asdf-astropy.new.1939 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-asdf-astropy"

Fri Dec 12 21:42:34 2025 rev:15 rq:1322579 version:0.9.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-asdf-astropy/python-asdf-astropy.changes  
2025-08-27 21:36:17.602725783 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-asdf-astropy.new.1939/python-asdf-astropy.changes
        2025-12-12 21:43:59.171941334 +0100
@@ -1,0 +2,7 @@
+Fri Dec 12 10:44:44 UTC 2025 - Dirk Müller <[email protected]>
+
+- update to 0.9.0:
+  * drop support for numpy 1.25.
+  * require asdf 3.3 and drop support for astropy 5.2
+
+-------------------------------------------------------------------

Old:
----
  asdf_astropy-0.8.0.tar.gz

New:
----
  asdf_astropy-0.9.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-asdf-astropy.spec ++++++
--- /var/tmp/diff_new_pack.D0Hlb7/_old  2025-12-12 21:43:59.755965974 +0100
+++ /var/tmp/diff_new_pack.D0Hlb7/_new  2025-12-12 21:43:59.759966142 +0100
@@ -27,7 +27,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-asdf-astropy%{psuffix}
-Version:        0.8.0
+Version:        0.9.0
 Release:        0
 Summary:        ASDF serialization support for astropy
 License:        BSD-3-Clause

++++++ asdf_astropy-0.8.0.tar.gz -> asdf_astropy-0.9.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/.github/workflows/ci.yml 
new/asdf_astropy-0.9.0/.github/workflows/ci.yml
--- old/asdf_astropy-0.8.0/.github/workflows/ci.yml     2025-06-11 
22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/.github/workflows/ci.yml     2025-11-17 
22:54:20.000000000 +0100
@@ -22,13 +22,13 @@
     outputs:
       requirements-hash: ${{ steps.requirements-hash.outputs.hash }}
     steps:
-      - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683  # 
v4.2.2
+      - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8  # 
v5.0.0
       - id: requirements-hash
         run: echo "::set-output name=hash::${{ hashFiles('**/pyproject.toml', 
'**/setup.*', 'tox.ini') }}"
 
   core:
     needs: [setup]
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     with:
       cache-path: ~/.cache/pip
       cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
@@ -40,11 +40,12 @@
         - linux: py311-test-parallel-cov
         - linux: py312-test-parallel-cov
         - linux: py313-test-parallel-cov
+        - linux: py314-test-parallel-cov
       coverage: codecov
 
   asdf-schemas:
     needs: [setup]
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     with:
       cache-path: ~/.cache/pip
       cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
@@ -59,7 +60,7 @@
 
   test:
     needs: [core, asdf-schemas]
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     with:
       cache-path: ~/.cache/pip
       cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
@@ -74,7 +75,7 @@
 
   dev:
     needs: [core, asdf-schemas]
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     with:
       cache-path: ~/.cache/pip
       cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
@@ -83,13 +84,13 @@
       # Any env name which does not start with `pyXY` will use this Python 
version.
       default_python: '3.13'
       envs: |
-        - linux: py313-test-predeps-parallel-cov
-        - linux: py313-test-devdeps-parallel-cov
+        - linux: py314-test-predeps-parallel-cov
+        - linux: py314-test-devdeps-parallel-cov
       coverage: codecov
 
   oldest:
     needs: [core, asdf-schemas]
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     with:
       cache-path: ~/.cache/pip
       cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
@@ -104,7 +105,7 @@
   wheel_building:
     permissions:
       contents: none
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/publish_pure_python.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/publish_pure_python.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     if: (github.event_name == 'push' || github.event_name == 'pull_request')
     with:
       upload_to_pypi: false
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/.github/workflows/downstream.yml 
new/asdf_astropy-0.9.0/.github/workflows/downstream.yml
--- old/asdf_astropy-0.8.0/.github/workflows/downstream.yml     2025-06-11 
22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/.github/workflows/downstream.yml     2025-11-17 
22:54:20.000000000 +0100
@@ -24,7 +24,7 @@
 
 jobs:
   astropy:
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     if: (github.repository == 'astropy/asdf-astropy' && (github.event_name == 
'schedule' || github.event_name == 'push' || github.event_name == 
'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 
'Downstream CI')))
     with:
       submodules: false
@@ -34,7 +34,7 @@
         - linux: specutils
 
   stsci:
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     if: (github.repository == 'astropy/asdf-astropy' && (github.event_name == 
'schedule' || github.event_name == 'push' || github.event_name == 
'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 
'Downstream CI')))
     with:
       submodules: false
@@ -47,7 +47,7 @@
         - linux: roman_datamodels
 
   third-party:
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     if: (github.repository == 'astropy/asdf-astropy' && (github.event_name == 
'schedule' || github.event_name == 'push' || github.event_name == 
'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 
'Downstream CI')))
     with:
       submodules: false
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/.github/workflows/publish-to-pypi.yml 
new/asdf_astropy-0.9.0/.github/workflows/publish-to-pypi.yml
--- old/asdf_astropy-0.8.0/.github/workflows/publish-to-pypi.yml        
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/.github/workflows/publish-to-pypi.yml        
2025-11-17 22:54:20.000000000 +0100
@@ -12,7 +12,7 @@
     permissions:
       contents: none
     if: (github.event_name == 'release')
-    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/publish_pure_python.yml@8c0fde6f7e926df6ed7057255d29afa9c1ad5320
  # v1.16.0
+    uses: 
OpenAstronomy/github-actions-workflows/.github/workflows/publish_pure_python.yml@d9b81a07e789d1b1921ab5fe33de2ddcbbd02c3f
  # v2.3.0
     with:
       upload_to_pypi: true
       test_extras: test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/CHANGES.rst 
new/asdf_astropy-0.9.0/CHANGES.rst
--- old/asdf_astropy-0.8.0/CHANGES.rst  2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/CHANGES.rst  2025-11-17 22:54:20.000000000 +0100
@@ -1,3 +1,9 @@
+0.9.0 (2025-11-17)
+------------------
+
+- drop support for numpy 1.25. [#285]
+- require asdf 3.3 and drop support for astropy 5.2 [#297]
+
 0.8.0 (2025-06-11)
 ------------------
 
@@ -7,6 +13,8 @@
 - Add support for asdf-transform-schemas 0.6 and asdf-coordinates-schemas 0.4. 
[#279]
 - Ignore UnitsWarnings emitted by astropy when converting units to VO format. 
[#281]
 - Add support for new astronomy-1.1.0 manifest. [#282]
+- Serialize ``pixel_shape`` on ``astropy.wcs.WCS``. [#276]
+- Accept a gwcs object when serializing ``SlicedLowLevelWCS``. [#276]
 
 0.7.1 (2025-02-12)
 ------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/PKG-INFO 
new/asdf_astropy-0.9.0/PKG-INFO
--- old/asdf_astropy-0.8.0/PKG-INFO     2025-06-11 22:27:05.074569000 +0200
+++ new/asdf_astropy-0.9.0/PKG-INFO     2025-11-17 22:54:32.459305000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: asdf-astropy
-Version: 0.8.0
+Version: 0.9.0
 Summary: ASDF serialization support for astropy
 Author-email: The Astropy Developers <[email protected]>
 Project-URL: documentation, https://asdf-astropy.readthedocs.io/en/latest/
@@ -12,12 +12,12 @@
 Requires-Python: >=3.11
 Description-Content-Type: text/x-rst
 License-File: LICENSE.rst
-Requires-Dist: asdf>=2.15.0
+Requires-Dist: asdf>=3.3.0
 Requires-Dist: asdf-coordinates-schemas>=0.4
 Requires-Dist: asdf-transform-schemas>=0.6
 Requires-Dist: asdf-standard>=1.1.0
-Requires-Dist: astropy>=5.2.0
-Requires-Dist: numpy>=1.25
+Requires-Dist: astropy>=5.3.0
+Requires-Dist: numpy>=1.26
 Requires-Dist: packaging>=19
 Provides-Extra: docs
 Requires-Dist: docutils; extra == "docs"
@@ -31,6 +31,7 @@
 Provides-Extra: test
 Requires-Dist: coverage; extra == "test"
 Requires-Dist: pytest-astropy; extra == "test"
+Requires-Dist: pytest-asdf-plugin; extra == "test"
 Requires-Dist: pytest; extra == "test"
 Requires-Dist: scipy; extra == "test"
 Dynamic: license-file
@@ -67,9 +68,6 @@
 .. image:: https://img.shields.io/badge/code%20style-black-000000.svg
     :target: https://github.com/psf/black
 
-.. image:: 
https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336
-    :target: https://pycqa.github.io/isort/
-
 This package includes plugins that provide ASDF serialization support for 
astropy
 objects.  The plugins are automatically enabled when the package is installed.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/README.rst 
new/asdf_astropy-0.9.0/README.rst
--- old/asdf_astropy-0.8.0/README.rst   2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/README.rst   2025-11-17 22:54:20.000000000 +0100
@@ -30,9 +30,6 @@
 .. image:: https://img.shields.io/badge/code%20style-black-000000.svg
     :target: https://github.com/psf/black
 
-.. image:: 
https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336
-    :target: https://pycqa.github.io/isort/
-
 This package includes plugins that provide ASDF serialization support for 
astropy
 objects.  The plugins are automatically enabled when the package is installed.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/asdf_astropy/_version.py 
new/asdf_astropy-0.9.0/asdf_astropy/_version.py
--- old/asdf_astropy-0.8.0/asdf_astropy/_version.py     2025-06-11 
22:27:04.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/_version.py     2025-11-17 
22:54:32.000000000 +0100
@@ -1,7 +1,14 @@
 # file generated by setuptools-scm
 # don't change, don't track in version control
 
-__all__ = ["__version__", "__version_tuple__", "version", "version_tuple"]
+__all__ = [
+    "__version__",
+    "__version_tuple__",
+    "version",
+    "version_tuple",
+    "__commit_id__",
+    "commit_id",
+]
 
 TYPE_CHECKING = False
 if TYPE_CHECKING:
@@ -9,13 +16,19 @@
     from typing import Union
 
     VERSION_TUPLE = Tuple[Union[int, str], ...]
+    COMMIT_ID = Union[str, None]
 else:
     VERSION_TUPLE = object
+    COMMIT_ID = object
 
 version: str
 __version__: str
 __version_tuple__: VERSION_TUPLE
 version_tuple: VERSION_TUPLE
+commit_id: COMMIT_ID
+__commit_id__: COMMIT_ID
 
-__version__ = version = '0.8.0'
-__version_tuple__ = version_tuple = (0, 8, 0)
+__version__ = version = '0.9.0'
+__version_tuple__ = version_tuple = (0, 9, 0)
+
+__commit_id__ = commit_id = 'g2da2cd0aa'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/coordinates/tests/test_earth_location.py
 
new/asdf_astropy-0.9.0/asdf_astropy/converters/coordinates/tests/test_earth_location.py
--- 
old/asdf_astropy-0.8.0/asdf_astropy/converters/coordinates/tests/test_earth_location.py
     2025-06-11 22:26:55.000000000 +0200
+++ 
new/asdf_astropy-0.9.0/asdf_astropy/converters/coordinates/tests/test_earth_location.py
     2025-11-17 22:54:20.000000000 +0100
@@ -5,8 +5,6 @@
 from astropy.coordinates.earth import ELLIPSOIDS
 from astropy.units import Quantity
 
-from asdf_astropy.testing.helpers import assert_earth_location_equal
-
 
 def create_earth_locations():
     longitude = Longitude([0.0, 45.0, 90.0, 135.0, 180.0, -180, -90, -45], 
u.deg, wrap_angle=180 * u.deg)
@@ -33,24 +31,3 @@
 
     with asdf.open(file_path) as af:
         assert (af["earth_location"] == earth_location).all()
-
-
[email protected]
-def _builtin_site_registry():
-    orig_sites = getattr(EarthLocation, "_site_registry", None)
-    EarthLocation._get_site_registry(force_builtin=True)
-    yield
-    EarthLocation._site_registry = orig_sites
-
-
[email protected]("_builtin_site_registry")
-def test_earthlocation_site(tmp_path):
-    earth_location = EarthLocation.of_site("greenwich")
-
-    file_path = tmp_path / "test.asdf"
-    with asdf.AsdfFile() as af:
-        af["earth_location"] = earth_location
-        af.write_to(file_path)
-
-    with asdf.open(file_path) as af:
-        assert_earth_location_equal(af["earth_location"], earth_location)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/coordinates/tests/test_frame.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/coordinates/tests/test_frame.py
--- 
old/asdf_astropy-0.8.0/asdf_astropy/converters/coordinates/tests/test_frame.py  
    2025-06-11 22:26:55.000000000 +0200
+++ 
new/asdf_astropy-0.9.0/asdf_astropy/converters/coordinates/tests/test_frame.py  
    2025-11-17 22:54:20.000000000 +0100
@@ -116,6 +116,5 @@
     truth = ICRS(ra=Longitude(25, unit=u.deg), dec=Latitude(45, unit=u.deg))
 
     buff = yaml_to_asdf(f"example: {example.strip()}", version="1.5.0")
-    with asdf.AsdfFile() as af:
-        af._open_impl(af, buff, mode="rw")
+    with asdf.open(buff) as af:
         assert_frame_equal(af["example"], truth)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/time/tests/test_time.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/time/tests/test_time.py
--- old/asdf_astropy-0.8.0/asdf_astropy/converters/time/tests/test_time.py      
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/converters/time/tests/test_time.py      
2025-11-17 22:54:20.000000000 +0100
@@ -112,8 +112,7 @@
 @pytest.mark.parametrize("example", create_examples())
 def test_read_examples(example):
     buff = yaml_to_asdf(f"example: {example['example'].strip()}", 
version="1.5.0")
-    with asdf.AsdfFile() as af:
-        af._open_impl(af, buff, mode="rw")
+    with asdf.open(buff) as af:
         assert np.all(af["example"] == example["truth"])
 
 
@@ -137,6 +136,10 @@
             # stardate is not a documented format for astropy
             # https://docs.astropy.org/en/latest/time/index.html#time-format
             continue
+        if format_ == "galexsec":
+            # galexsec is unsupported until the time schema can be updated
+            # https://github.com/astropy/asdf-astropy/issues/292
+            continue
         new = Time("B2000.0")
         new.format = format_
         formats.append(new)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/unit/tests/test_magunit.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/unit/tests/test_magunit.py
--- old/asdf_astropy-0.8.0/asdf_astropy/converters/unit/tests/test_magunit.py   
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/converters/unit/tests/test_magunit.py   
2025-11-17 22:54:20.000000000 +0100
@@ -18,9 +18,8 @@
     with asdf.open(file_path) as af:
         assert af["unit"].is_equivalent(unit)
 
-    with asdf.open(file_path, _force_raw_types=True) as af:
-        assert isinstance(af["unit"], asdf.tagged.TaggedDict)
-        assert 
af["unit"]._tag.startswith("tag:astropy.org:astropy/units/magunit-")
+    with file_path.open() as f:
+        assert "tag:astropy.org:astropy/units/magunit-" in f.read()
 
 
 def create_magunits():
@@ -48,6 +47,5 @@
     with asdf.open(file_path) as af:
         assert af["unit"].is_equivalent(unit)
 
-    with asdf.open(file_path, _force_raw_types=True) as af:
-        assert isinstance(af["unit"], asdf.tagged.TaggedDict)
-        assert 
af["unit"]._tag.startswith("tag:astropy.org:astropy/units/magunit-")
+    with file_path.open() as f:
+        assert "tag:astropy.org:astropy/units/magunit-" in f.read()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/unit/tests/test_quantity.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/unit/tests/test_quantity.py
--- old/asdf_astropy-0.8.0/asdf_astropy/converters/unit/tests/test_quantity.py  
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/converters/unit/tests/test_quantity.py  
2025-11-17 22:54:20.000000000 +0100
@@ -4,18 +4,11 @@
 from asdf.testing import helpers
 from astropy import units
 from astropy.units import Quantity
-from astropy.utils.introspection import minversion
 from numpy.testing import assert_array_equal
 
 from asdf_astropy.tests.versions import ASTROPY_GE_7_1
 
 
-def asdf_open_memory_mapping_kwarg(memmap: bool) -> dict:
-    if minversion("asdf", "3.1.0"):
-        return {"memmap": memmap}
-    return {"copy_arrays": not memmap}
-
-
 def create_quantities():
     return [
         # Scalar:
@@ -104,7 +97,7 @@
         af.write_to(file_path)
 
     # Update a value in the ASDF file
-    with asdf.open(file_path, mode="rw", 
**asdf_open_memory_mapping_kwarg(memmap=True)) as af:
+    with asdf.open(file_path, mode="rw", memmap=True) as af:
         assert (af.tree["quantity"] == quantity).all()
         assert af.tree["quantity"][-1, -1] != new_value
 
@@ -114,7 +107,7 @@
         assert (af.tree["quantity"] != quantity).any()
         assert (af.tree["quantity"] == new_quantity).all()
 
-    with asdf.open(file_path, mode="rw", 
**asdf_open_memory_mapping_kwarg(memmap=True)) as af:
+    with asdf.open(file_path, mode="rw", memmap=True) as af:
         assert af.tree["quantity"][-1, -1] == new_value
         assert (af.tree["quantity"] != quantity).any()
         assert (af.tree["quantity"] == new_quantity).all()
@@ -137,7 +130,7 @@
         af.write_to(file_path)
 
     # Update a value in the ASDF file
-    with asdf.open(file_path, mode="rw", 
**asdf_open_memory_mapping_kwarg(memmap=False)) as af:
+    with asdf.open(file_path, mode="rw", memmap=False) as af:
         assert (af.tree["quantity"] == quantity).all()
         assert af.tree["quantity"][-1, -1] != new_value
 
@@ -147,13 +140,13 @@
         assert (af.tree["quantity"] != quantity).any()
         assert (af.tree["quantity"] == new_quantity).all()
 
-    with asdf.open(file_path, mode="rw", 
**asdf_open_memory_mapping_kwarg(memmap=False)) as af:
+    with asdf.open(file_path, mode="rw", memmap=False) as af:
         assert af.tree["quantity"][-1, -1] != new_value
         assert (af.tree["quantity"] != new_quantity).any()
         assert (af.tree["quantity"] == quantity).all()
 
 
[email protected](ASTROPY_GE_7_1, reason="MaskedQuantity support was added 
in astropy 7.1")
[email protected](ASTROPY_GE_7_1, reason=r"MaskedQuantity support was added 
in astropy 7.1")
 def test_masked_quantity_raises():
     yaml = """
 quantity: !unit/quantity-1.1.0
@@ -168,5 +161,5 @@
     shape: [3]
 """
     buff = helpers.yaml_to_asdf(yaml, version="1.5.0")
-    with pytest.raises(NotImplementedError, match="MaskedQuantity support 
requires astropy 7.1 or later"):
+    with pytest.raises(NotImplementedError, match=r"MaskedQuantity support 
requires astropy 7.1 or later"):
         asdf.open(buff)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/unit/tests/test_unit.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/unit/tests/test_unit.py
--- old/asdf_astropy-0.8.0/asdf_astropy/converters/unit/tests/test_unit.py      
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/converters/unit/tests/test_unit.py      
2025-11-17 22:54:20.000000000 +0100
@@ -41,9 +41,8 @@
     with asdf.open(file_path) as af:
         assert af["unit"].is_equivalent(unit)
 
-    with asdf.open(file_path, _force_raw_types=True) as af:
-        assert isinstance(af["unit"], asdf.tagged.TaggedString)
-        assert af["unit"]._tag.startswith("tag:stsci.edu:asdf/unit/unit-")
+    with file_path.open() as f:
+        assert "!unit/unit-" in f.read()
 
 
 @pytest.mark.parametrize("unit", create_non_vounits())
@@ -56,9 +55,8 @@
     with asdf.open(file_path) as af:
         assert af["unit"].is_equivalent(unit)
 
-    with asdf.open(file_path, _force_raw_types=True) as af:
-        assert isinstance(af["unit"], asdf.tagged.TaggedString)
-        assert 
af["unit"]._tag.startswith("tag:astropy.org:astropy/units/unit-")
+    with file_path.open() as f:
+        assert "tag:astropy.org:astropy/units/unit-" in f.read()
 
 
 def test_read():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/wcs/tests/test_wcs.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/wcs/tests/test_wcs.py
--- old/asdf_astropy-0.8.0/asdf_astropy/converters/wcs/tests/test_wcs.py        
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/converters/wcs/tests/test_wcs.py        
2025-11-17 22:54:20.000000000 +0100
@@ -6,11 +6,10 @@
 from astropy.utils.data import get_pkg_data_filename, get_pkg_data_filenames
 from astropy.wcs import WCS, DistortionLookupTable, FITSFixedWarning, Sip
 
+from asdf_astropy.exceptions import InconsistentWCSError
 from asdf_astropy.testing.helpers import assert_wcs_roundtrip
 
-_astropy_test_header_filenames = 
list(get_pkg_data_filenames("tests/data/maps", "astropy.wcs", "*.hdr")) + list(
-    get_pkg_data_filenames("tests/data/spectra", "astropy.wcs", "*.hdr"),
-)
+_astropy_test_header_filenames = 
list(get_pkg_data_filenames("tests/data/maps", "astropy.wcs", "*.hdr"))
 
 _astropy_test_fits_filenames = [
     get_pkg_data_filename(f"tests/data/{fn}", "astropy.wcs")
@@ -118,3 +117,11 @@
             wcs = WCS(ff[0].header, ff)
 
         assert_wcs_roundtrip(wcs, tmp_path, version)
+
+
[email protected]("attr", ["pixel_shape", "pixel_bounds"])
+def test_failure_to_convert_inconsistent(tmp_path, attr):
+    wcs = create_wcs_with_attrs()
+    wcs.naxis -= 1
+    with pytest.raises(InconsistentWCSError, match="does not match naxis"):
+        assert_wcs_roundtrip(wcs, tmp_path)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/converters/wcs/wcs.py 
new/asdf_astropy-0.9.0/asdf_astropy/converters/wcs/wcs.py
--- old/asdf_astropy-0.8.0/asdf_astropy/converters/wcs/wcs.py   2025-06-11 
22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/converters/wcs/wcs.py   2025-11-17 
22:54:20.000000000 +0100
@@ -1,8 +1,10 @@
 from asdf.extension import Converter
 
+from asdf_astropy.exceptions import InconsistentWCSError
+
 # These attributes don't end up in the hdulist and
 # instead will be stored in "attrs"
-_WCS_ATTRS = ("naxis", "colsel", "keysel", "key", "pixel_bounds")
+_WCS_ATTRS = ("naxis", "colsel", "keysel", "key", "pixel_bounds", 
"pixel_shape")
 
 
 class WCSConverter(Converter):
@@ -18,20 +20,34 @@
         if naxis := attrs.pop("naxis"):
             hdulist[0].header["naxis"] = naxis
 
+        # pop attrs that are not valid kwargs
+        pixel_shape = attrs.pop("pixel_shape")
         pixel_bounds = attrs.pop("pixel_bounds")
 
         wcs = WCS(hdulist[0].header, fobj=hdulist, **attrs)
 
+        wcs.pixel_shape = pixel_shape
+        wcs.pixel_bounds = pixel_bounds
+
         if wcs.sip is not None:
             # work around a bug in astropy where sip headers lose precision
             # see https://github.com/astropy/astropy/issues/17334
             wcs.sip = wcs._read_sip_kw(hdulist[0].header, attrs.get("key", " 
"))
             wcs.wcs.set()
 
-        wcs.pixel_bounds = pixel_bounds
         return wcs
 
     def to_yaml_tree(self, wcs, tag, ctx):
+        # Check that wcs is consistent. Astropy inconsistently checks
+        # that certain expected attributes match. We need to check this
+        # here to prevent writing inconsistent files that would be problematic
+        # to open.
+        if naxis := wcs.naxis:
+            for attr in ("pixel_shape", "pixel_bounds"):
+                if value := getattr(wcs, attr):
+                    if len(value) != naxis:
+                        msg = f"{attr} shape ({len(value)}) does not match 
naxis ({naxis})"
+                        raise InconsistentWCSError(msg)
         hdulist = wcs.to_fits(relax=True)
         attrs = {a: getattr(wcs, a) for a in _WCS_ATTRS if hasattr(wcs, a)}
         return {"hdulist": hdulist, "attrs": attrs}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/asdf_astropy/exceptions.py 
new/asdf_astropy-0.9.0/asdf_astropy/exceptions.py
--- old/asdf_astropy-0.8.0/asdf_astropy/exceptions.py   1970-01-01 
01:00:00.000000000 +0100
+++ new/asdf_astropy-0.9.0/asdf_astropy/exceptions.py   2025-11-17 
22:54:20.000000000 +0100
@@ -0,0 +1,4 @@
+class InconsistentWCSError(ValueError):
+    """
+    An error for a WCS with inconsistent attributes.
+    """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/asdf_astropy/extensions.py 
new/asdf_astropy-0.9.0/asdf_astropy/extensions.py
--- old/asdf_astropy-0.8.0/asdf_astropy/extensions.py   2025-06-11 
22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/extensions.py   2025-11-17 
22:54:20.000000000 +0100
@@ -540,6 +540,7 @@
 
 
 _ASTROPY_EXTENSION_MANIFEST_URIS = [
+    "asdf://astropy.org/astropy/manifests/astropy-1.4.0",
     "asdf://astropy.org/astropy/manifests/astropy-1.3.0",
     "asdf://astropy.org/astropy/manifests/astropy-1.2.0",
     "asdf://astropy.org/astropy/manifests/astropy-1.1.0",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/resources/manifests/astropy-1.4.0.yaml 
new/asdf_astropy-0.9.0/asdf_astropy/resources/manifests/astropy-1.4.0.yaml
--- old/asdf_astropy-0.8.0/asdf_astropy/resources/manifests/astropy-1.4.0.yaml  
1970-01-01 01:00:00.000000000 +0100
+++ new/asdf_astropy-0.9.0/asdf_astropy/resources/manifests/astropy-1.4.0.yaml  
2025-11-17 22:54:20.000000000 +0100
@@ -0,0 +1,73 @@
+id: asdf://astropy.org/astropy/manifests/astropy-1.4.0
+extension_uri: asdf://astropy.org/astropy/extensions/astropy-1.4.0
+title: Astropy extension 1.4.0
+description: |-
+  A set of tags for serializing astropy objects.  This does not include most
+  model classes, which are handled by an implementation of the ASDF
+  transform extension.
+asdf_standard_requirement:
+  gte: 1.6.0
+tags:
+- tag_uri: tag:astropy.org:astropy/time/timedelta-1.1.0
+  schema_uri: http://astropy.org/schemas/astropy/time/timedelta-1.1.0
+  title: Represents an instance of TimeDelta from astropy
+  description: |-
+    Represents the time difference between two times.
+- tag_uri: tag:astropy.org:astropy/fits/fits-1.1.0
+  schema_uri: http://astropy.org/schemas/astropy/fits/fits-1.1.0
+  title: A FITS file inside of an ASDF file.
+  description: |-
+    This schema is useful for distributing ASDF files that can
+    automatically be converted to FITS files by specifying the exact
+    content of the resulting FITS file.
+
+    Not all kinds of data in FITS are directly representable in ASDF.
+    For example, applying an offset and scale to the data using the
+    `BZERO` and `BSCALE` keywords.  In these cases, it will not be
+    possible to store the data in the native format from FITS and also
+    be accessible in its proper form in the ASDF file.
+
+    Only image and binary table extensions are supported.
+- tag_uri: tag:astropy.org:astropy/table/table-1.2.0
+  schema_uri: http://astropy.org/schemas/astropy/table/table-1.2.0
+  title: A table.
+  description: |-
+    A table is represented as a list of columns, where each entry is a
+    [column](ref:http://stsci.edu/schemas/asdf/table/column-1.1.0)
+    object, containing the data and some additional information.
+
+    The data itself may be stored inline as text, or in binary in either
+    row- or column-major order by use of the `strides` property on the
+    individual column arrays.
+
+    Each column in the table must have the same first (slowest moving)
+    dimension.
+- tag_uri: tag:astropy.org:astropy/transform/units_mapping-1.1.0
+  schema_uri: http://astropy.org/schemas/astropy/transform/units_mapping-1.1.0
+  title: Mapper that operates on the units of the input.
+  description: |-
+    This transform operates on the units of the input, first converting to
+    the expected input units, then assigning replacement output units without
+    further conversion.
+- tag_uri: tag:astropy.org:astropy/table/ndarraymixin-1.0.0
+  schema_uri: http://astropy.org/schemas/astropy/table/ndarraymixin-1.0.0
+  title: NdarrayMixin column.
+  description: |-
+    Represents an astropy.table.NdarrayMixin instance.
+- tag_uri: tag:astropy.org:astropy/wcs/slicedwcs-1.1.0
+  schema_uri: http://astropy.org/schemas/astropy/wcs/slicedwcs-1.1.0
+  title: Represents an instance of SlicedLowLevelWCS
+  description: |-
+    The SlicedLowLevelWCS class is a wrapper class for WCS that applies slices
+    to the WCS, allowing certain pixel and world dimensions to be retained or
+    dropped.
+
+    It manages the slicing and coordinate transformations while preserving
+    the underlying WCS object.
+- tag_uri: tag:astropy.org:astropy/wcs/wcs-1.0.0
+  schema_uri: http://astropy.org/schemas/astropy/wcs/wcs-1.0.0
+  title: FITS WCS (World Coordinate System) Converter
+  description: |-
+    Represents the FITS WCS object, the HDUlist of the FITS header is preserved
+    during serialization and during deserialization the WCS object is recreated
+    from the HDUlist.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/resources/schemas/wcs/slicedwcs-1.1.0.yaml 
new/asdf_astropy-0.9.0/asdf_astropy/resources/schemas/wcs/slicedwcs-1.1.0.yaml
--- 
old/asdf_astropy-0.8.0/asdf_astropy/resources/schemas/wcs/slicedwcs-1.1.0.yaml  
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/asdf_astropy-0.9.0/asdf_astropy/resources/schemas/wcs/slicedwcs-1.1.0.yaml  
    2025-11-17 22:54:20.000000000 +0100
@@ -0,0 +1,52 @@
+%YAML 1.1
+---
+$schema: "http://stsci.edu/schemas/yaml-schema/draft-01";
+id: "http://astropy.org/schemas/astropy/wcs/slicedwcs-1.1.0";
+
+title: Represents the SlicedLowLevelWCS object
+
+description: >-
+  The SlicedLowLevelWCS class is a wrapper class for WCS that applies slices
+  to the WCS, allowing certain pixel and world dimensions to be retained or
+  dropped.
+  It manages the slicing and coordinate transformations while preserving
+  the underlying WCS object.
+
+allOf:
+  - type: object
+    properties:
+      wcs:
+        anyOf:
+          # Known WCS objects
+          - tag: "tag:astropy.org:astropy/wcs/wcs-1*"
+          - tag: "tag:stsci.edu:gwcs/wcs-*"
+          - tag: "tag:astropy.org:astropy/wcs/slicedwcs-*"
+          - tag: "tag:sunpy.org:ndcube/resampledwcs-*"
+          - tag: "tag:sunpy.org:ndcube/ndcubesequence-*"
+          - tag: "tag:sunpy.org:ndcube/reorderedwcs-*"
+          - tag: "tag:sunpy.org:ndcube/compoundwcs-*"
+          # Allow anything else because any APE-14 compliant object is valid
+          - {}
+
+      slices_array:
+        type: array
+        items:
+          - oneOf:
+            - type: integer
+            - type: object
+              properties:
+                start:
+                  anyOf:
+                    - type: integer
+                    - type: "null"
+                stop:
+                  anyOf:
+                    - type: integer
+                    - type: "null"
+                step:
+                  anyOf:
+                    - type: integer
+                    - type: "null"
+
+
+    required: ["wcs", "slices_array"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy/tests/test_integration.py 
new/asdf_astropy-0.9.0/asdf_astropy/tests/test_integration.py
--- old/asdf_astropy-0.8.0/asdf_astropy/tests/test_integration.py       
2025-06-11 22:26:55.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy/tests/test_integration.py       
2025-11-17 22:54:20.000000000 +0100
@@ -80,7 +80,7 @@
     # one of the tracked astropy modules is imported
     class _Finder:
         def find_spec(self, modulename, path=None, target=None):
-            if any(modulename.startswith(m) for m in _ASTROPY_MODULES):
+            if any(modulename.startswith(m) for m in _ASTROPY_MODULES):  # 
pragma: no cover
                 msg = f"attempt to import astropy submodule({modulename}) 
during integration"
                 raise Exception(msg)  # noqa: TRY002
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/asdf_astropy.egg-info/PKG-INFO 
new/asdf_astropy-0.9.0/asdf_astropy.egg-info/PKG-INFO
--- old/asdf_astropy-0.8.0/asdf_astropy.egg-info/PKG-INFO       2025-06-11 
22:27:05.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy.egg-info/PKG-INFO       2025-11-17 
22:54:32.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: asdf-astropy
-Version: 0.8.0
+Version: 0.9.0
 Summary: ASDF serialization support for astropy
 Author-email: The Astropy Developers <[email protected]>
 Project-URL: documentation, https://asdf-astropy.readthedocs.io/en/latest/
@@ -12,12 +12,12 @@
 Requires-Python: >=3.11
 Description-Content-Type: text/x-rst
 License-File: LICENSE.rst
-Requires-Dist: asdf>=2.15.0
+Requires-Dist: asdf>=3.3.0
 Requires-Dist: asdf-coordinates-schemas>=0.4
 Requires-Dist: asdf-transform-schemas>=0.6
 Requires-Dist: asdf-standard>=1.1.0
-Requires-Dist: astropy>=5.2.0
-Requires-Dist: numpy>=1.25
+Requires-Dist: astropy>=5.3.0
+Requires-Dist: numpy>=1.26
 Requires-Dist: packaging>=19
 Provides-Extra: docs
 Requires-Dist: docutils; extra == "docs"
@@ -31,6 +31,7 @@
 Provides-Extra: test
 Requires-Dist: coverage; extra == "test"
 Requires-Dist: pytest-astropy; extra == "test"
+Requires-Dist: pytest-asdf-plugin; extra == "test"
 Requires-Dist: pytest; extra == "test"
 Requires-Dist: scipy; extra == "test"
 Dynamic: license-file
@@ -67,9 +68,6 @@
 .. image:: https://img.shields.io/badge/code%20style-black-000000.svg
     :target: https://github.com/psf/black
 
-.. image:: 
https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336
-    :target: https://pycqa.github.io/isort/
-
 This package includes plugins that provide ASDF serialization support for 
astropy
 objects.  The plugins are automatically enabled when the package is installed.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/asdf_astropy.egg-info/SOURCES.txt 
new/asdf_astropy-0.9.0/asdf_astropy.egg-info/SOURCES.txt
--- old/asdf_astropy-0.8.0/asdf_astropy.egg-info/SOURCES.txt    2025-06-11 
22:27:05.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy.egg-info/SOURCES.txt    2025-11-17 
22:54:32.000000000 +0100
@@ -14,6 +14,7 @@
 asdf_astropy/__init__.py
 asdf_astropy/_version.py
 asdf_astropy/conftest.py
+asdf_astropy/exceptions.py
 asdf_astropy/extensions.py
 asdf_astropy/integration.py
 asdf_astropy.egg-info/PKG-INFO
@@ -98,6 +99,7 @@
 asdf_astropy/resources/manifests/astropy-1.1.0.yaml
 asdf_astropy/resources/manifests/astropy-1.2.0.yaml
 asdf_astropy/resources/manifests/astropy-1.3.0.yaml
+asdf_astropy/resources/manifests/astropy-1.4.0.yaml
 asdf_astropy/resources/manifests/units-1.0.0.yaml
 asdf_astropy/resources/manifests/units-1.1.0.yaml
 asdf_astropy/resources/schemas/fits/fits-1.0.0.yaml
@@ -115,6 +117,7 @@
 asdf_astropy/resources/schemas/units/equivalency-1.1.0.yaml
 asdf_astropy/resources/schemas/units/magunit-1.0.0.yaml
 asdf_astropy/resources/schemas/wcs/slicedwcs-1.0.0.yaml
+asdf_astropy/resources/schemas/wcs/slicedwcs-1.1.0.yaml
 asdf_astropy/resources/schemas/wcs/wcs-1.0.0.yaml
 asdf_astropy/testing/__init__.py
 asdf_astropy/testing/helpers.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/asdf_astropy-0.8.0/asdf_astropy.egg-info/requires.txt 
new/asdf_astropy-0.9.0/asdf_astropy.egg-info/requires.txt
--- old/asdf_astropy-0.8.0/asdf_astropy.egg-info/requires.txt   2025-06-11 
22:27:05.000000000 +0200
+++ new/asdf_astropy-0.9.0/asdf_astropy.egg-info/requires.txt   2025-11-17 
22:54:32.000000000 +0100
@@ -1,9 +1,9 @@
-asdf>=2.15.0
+asdf>=3.3.0
 asdf-coordinates-schemas>=0.4
 asdf-transform-schemas>=0.6
 asdf-standard>=1.1.0
-astropy>=5.2.0
-numpy>=1.25
+astropy>=5.3.0
+numpy>=1.26
 packaging>=19
 
 [docs]
@@ -19,5 +19,6 @@
 [test]
 coverage
 pytest-astropy
+pytest-asdf-plugin
 pytest
 scipy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/pyproject.toml 
new/asdf_astropy-0.9.0/pyproject.toml
--- old/asdf_astropy-0.8.0/pyproject.toml       2025-06-11 22:26:55.000000000 
+0200
+++ new/asdf_astropy-0.9.0/pyproject.toml       2025-11-17 22:54:20.000000000 
+0100
@@ -14,12 +14,12 @@
   'version',
 ]
 dependencies = [
-  "asdf>=2.15.0",
+  "asdf>=3.3.0",
   "asdf-coordinates-schemas>=0.4",
   "asdf-transform-schemas>=0.6",
   "asdf-standard>=1.1.0",
-  "astropy>=5.2.0",
-  "numpy>=1.25",
+  "astropy>=5.3.0",
+  "numpy>=1.26",
   "packaging>=19",
 ]
 [project.optional-dependencies]
@@ -36,6 +36,7 @@
 test = [
   "coverage",
   "pytest-astropy",
+  "pytest-asdf-plugin",
   "pytest",
   "scipy",  # indirect requirement via astropy
 ]
@@ -138,6 +139,7 @@
     "B905", # zip with strict
     "UP038", # isinstance with | instead of ,
     "A005", # shadow builtin modules
+    "PLC0415", # import should be at the top-level of a file
 ]
 
 [tool.ruff.lint.per-file-ignores]
@@ -145,11 +147,6 @@
 "asdf_astropy/testing/helpers.py" = ["S101"]
 "scripts/generate_manifest.py" = ["S101", "SLOT000"]
 
-[tool.isort]
-profile = "black"
-filter_files = true
-line_length = 120
-
 [tool.pytest.ini_options]
 testpaths = ['asdf_astropy', 'docs']
 astropy_header = true
@@ -163,38 +160,5 @@
 asdf_schema_root = 'asdf_astropy/resources/schemas'
 asdf_schema_tests_enabled = true
 
-[tool.coverage.run]
-omit = [
-    'asdf_astropy/conftest.py',
-    'asdf_astropy/*setup_package*',
-    'asdf_astropy/tests/*',
-    'asdf_astropy/*/tests/*',
-    'asdf_astropy/extern/*',
-    'asdf_astropy/version*',
-    '*/asdf_astropy/conftest.py',
-    '*/asdf_astropy/*setup_package*',
-    '*/asdf_astropy/tests/*',
-    '*/asdf_astropy/*/tests/*',
-    '*/asdf_astropy/extern/*',
-    '*/asdf_astropy/version*',
-]
-
-[tool.coverage.report]
-exclude_lines = [
-    # Have to re-enable the standard pragma
-    'pragma: no cover',
-    # Don't complain about packages we have installed
-    'except ImportError',
-    # Don't complain if tests don't hit assertions
-    'raise AssertionError',
-    'raise NotImplementedError',
-    # Don't complain about script hooks
-    'def main\(.*\):',
-    # Ignore branches that don't pertain to this version of Python
-    'pragma: py{ignore_python_version}',
-    # Don't complain about IPython completion helper
-    'def _ipython_key_completions_',
-]
-
 [tool.codespell]
 skip="*.pdf,*.fits,*.asdf,*.egg-info,.tox,build,./tags,.git,./docs/_build"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf_astropy-0.8.0/requirements-dev.txt 
new/asdf_astropy-0.9.0/requirements-dev.txt
--- old/asdf_astropy-0.8.0/requirements-dev.txt 2025-06-11 22:26:55.000000000 
+0200
+++ new/asdf_astropy-0.9.0/requirements-dev.txt 2025-11-17 22:54:20.000000000 
+0100
@@ -4,3 +4,5 @@
 git+https://github.com/asdf-format/asdf-coordinates-schemas
 
 numpy>=0.0.dev0
+
+git+https://github.com/pytest-dev/pytest

Reply via email to