Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-asdf for openSUSE:Factory 
checked in at 2021-02-11 12:49:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-asdf (Old)
 and      /work/SRC/openSUSE:Factory/.python-asdf.new.28504 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-asdf"

Thu Feb 11 12:49:54 2021 rev:10 rq:871173 version:2.7.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-asdf/python-asdf.changes  2020-12-09 
22:21:45.339695722 +0100
+++ /work/SRC/openSUSE:Factory/.python-asdf.new.28504/python-asdf.changes       
2021-02-11 12:53:04.197974948 +0100
@@ -1,0 +2,9 @@
+Thu Feb 11 10:18:50 UTC 2021 - Ben Greiner <c...@bnavigator.de>
+
+- Update to version 2.7.2 
+  * Fix bug causing test collection failures under Python 3.9.
+  * Fix bug when decompressing arrays with numpy 1.20.
+  * Replace assert statements with raise at the behest
+    of the bandit security linter.
+
+-------------------------------------------------------------------

Old:
----
  asdf-2.7.1.tar.gz

New:
----
  asdf-2.7.2.tar.gz

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

Other differences:
------------------
++++++ python-asdf.spec ++++++
--- /var/tmp/diff_new_pack.rsbq6r/_old  2021-02-11 12:53:04.697975637 +0100
+++ /var/tmp/diff_new_pack.rsbq6r/_new  2021-02-11 12:53:04.701975642 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-asdf
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -21,7 +21,7 @@
 # current astropy in TW requires python >= 3.7
 %define         skip_python36 1
 Name:           python-asdf
-Version:        2.7.1
+Version:        2.7.2
 Release:        0
 Summary:        Python tools to handle ASDF files
 License:        BSD-3-Clause AND BSD-2-Clause

++++++ asdf-2.7.1.tar.gz -> asdf-2.7.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/.github/workflows/asdf_ci.yml 
new/asdf-2.7.2/.github/workflows/asdf_ci.yml
--- old/asdf-2.7.1/.github/workflows/asdf_ci.yml        1970-01-01 
01:00:00.000000000 +0100
+++ new/asdf-2.7.2/.github/workflows/asdf_ci.yml        2021-01-19 
17:59:32.000000000 +0100
@@ -0,0 +1,141 @@
+name: ASDF CI
+
+on:
+  push:
+    branches:
+      - master
+      - stable
+      - '*.x'
+    tags:
+      - '*'
+  pull_request:
+
+jobs:
+  tox:
+    name: ${{ matrix.name }}
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+        include:
+          - name: Code Coverage with Python 3.9
+            os: ubuntu-latest
+            python-version: 3.9
+            toxenv: coverage
+
+          - name: Python 3.8 Testing
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: py38
+
+          - name: Python 3.7 Testing
+            os: ubuntu-latest
+            python-version: 3.7.9
+            toxenv: py37
+
+          - name: Python 3.6 Testing
+            os: ubuntu-latest
+            python-version: 3.6.10
+            toxenv: py36
+
+          - name: Python 3.5 Testing
+            os: ubuntu-latest
+            python-version: 3.5
+            toxenv: py35
+
+          - name: Documentation Build
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: docbuild
+
+          - name: Mac OS Latest
+            os: macos-latest
+            python-version: 3.9
+            toxenv: py39
+
+          - name: Compatibility
+            os: ubuntu-latest
+            python-version: 3.9
+            toxenv: compatibility
+
+          - name: Bandit Security Checks
+            os: ubuntu-latest
+            python-version: 3.9
+            toxenv: bandit
+
+          - name: Code Style Checks
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: style
+
+          - name: Twine
+            os: ubuntu-latest
+            python-version: 3.9
+            toxenv: twine
+
+          - name: Checkdocs
+            os: ubuntu-latest
+            python-version: 3.9
+            toxenv: checkdocs
+
+          - name: Numpy 1.12
+            os: ubuntu-latest
+            python-version: 3.5.10
+            toxenv: py35-numpy12
+
+          - name: Astropy Dev
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: py38-astropydev
+
+          - name: GWCS Dev
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: py38-gwcsdev
+
+          # Fail
+          - name: Numpy Dev
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: py38-numpydev
+
+          # Fail
+          - name: Pre-Release Dependencies
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: prerelease
+
+          - name: Test Against Installed Packaged
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: packaged
+
+          - name: Warnings Treated as Exceptions
+            os: ubuntu-latest
+            python-version: 3.8
+            toxenv: warnings
+
+          - name: Windows
+            os: windows-latest
+            python-version: 3.9
+            toxenv: py39
+    steps:
+      - name: Install System Packages
+        if: ${{ contains(matrix.toxenv,'docbuild') }}
+        run: |
+          sudo apt-get install graphviz texlive-latex-extra dvipng
+      - name: Checkout code
+        uses: actions/checkout@v2
+        with:
+          fetch-depth: 0
+          submodules: true
+      - name: Set up Python ${{ matrix.python-version }}
+        uses: actions/setup-python@v2
+        with:
+          python-version: ${{ matrix.python-version }}
+      - name: Install tox
+        run: |
+          pip install --upgrade pip setuptools
+          pip install tox
+      - name: Run tox
+        run: tox -e ${{ matrix.toxenv }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/.github/workflows/s390x.yml 
new/asdf-2.7.2/.github/workflows/s390x.yml
--- old/asdf-2.7.1/.github/workflows/s390x.yml  1970-01-01 01:00:00.000000000 
+0100
+++ new/asdf-2.7.2/.github/workflows/s390x.yml  2021-01-19 17:59:32.000000000 
+0100
@@ -0,0 +1,41 @@
+name: s390x
+
+on:
+  push:
+    tags:
+      - '*'
+  schedule:
+    # Run every Monday at 6am UTC
+    - cron: '0 6 * * 1'
+
+jobs:
+  pytest:
+    runs-on: ubuntu-18.04
+    name: Python 3.7
+    steps:
+      - uses: actions/checkout@v2
+        with:
+          fetch-depth: 0
+          submodules: true
+      - uses: uraimo/run-on-arch-action@v2.0.5
+        name: Run tests
+        id: build
+        with:
+          arch: s390x
+          distro: buster
+          shell: /bin/bash
+          install: |
+            apt-get update -q -y
+            apt-get install -q -y git \
+                                  python3 \
+                                  python3-astropy \
+                                  python3-lz4 \
+                                  python3-numpy \
+                                  python3-venv \
+                                  python3-wheel
+          run: |
+            python3 -m venv --system-site-packages tests
+            source tests/bin/activate
+            pip3 install --upgrade pip setuptools gwcs==0.9.1 pytest==5.4.3 
pytest-doctestplus==0.8.0
+            pip3 install .[all,tests]
+            python3 -m pytest --remote-data
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/.travis.yml new/asdf-2.7.2/.travis.yml
--- old/asdf-2.7.1/.travis.yml  2020-08-18 23:20:31.000000000 +0200
+++ new/asdf-2.7.2/.travis.yml  2021-01-19 17:59:32.000000000 +0100
@@ -1,39 +1,53 @@
 os: linux
 dist: xenial
 language: python
-python: 3.8
+python: 3.8.6
 
 jobs:
   include:
+    # Python 3.9, stable dependencies
+    - name: Python 3.9
+      env: TOXENV=py39
+      python: 3.9.0
+
     # Python 3.8, stable dependencies
-    - env: TOXENV=py38
+    - name: Python 3.8
+      env: TOXENV=py38
 
     # Python 3.7, stable dependencies
-    - env: TOXENV=py37
-      python: 3.7
+    - name: Python 3.7
+      env: TOXENV=py37
+      python: 3.7.9
 
     # Python 3.6, stable dependencies
-    - env: TOXENV=py36
-      python: 3.6
+    - name: Python 3.6
+      env: TOXENV=py36
+      python: 3.6.10
 
     # Python 3.5, stable dependencies
-    - env: TOXENV=py35
-      python: 3.5
+    - name: Python 3.5
+      env: TOXENV=py35
+      python: 3.5.9
 
     # Test ASDF file compatibility between library versions
-    - env: TOXENV=compatibility
+    - name: ASDF library version compatibility
+      env: TOXENV=compatibility
 
     # Do a coverage test
-    - env: TOXENV=coverage
+    - name: Coverage
+      env: TOXENV=coverage
 
     # Perform a sanity check of packaging using twine
-    - env: TOXENV=twine
+    - name: Twine
+      env: TOXENV=twine
 
     # Make sure README will display properly on pypi
-    - env: TOXENV=checkdocs
+    - name: Checkdocs
+      env: TOXENV=checkdocs
 
     # Check for sphinx doc build warnings
-    - env: TOXENV=docbuild
+    - name: Documentation build
+      env: TOXENV=docbuild
       addons:
         apt:
           packages:
@@ -41,40 +55,51 @@
             - texlive-latex-extra
             - dvipng
 
-    # Do a code style check
-    - env: TOXENV=style
+    - name: Code style check
+      env: TOXENV=style
 
-    # Check older numpy versions
-    - env: TOXENV=py35-numpy11
-      python: 3.5
-
-    - env: TOXENV=py36-numpy12
-      python: 3.6
-
-    # Test against oldest compatible versions of all dependencies
-    - env: TOXENV=py35-legacy
-      python: 3.5
+    - name: Numpy 1.11
+      env: TOXENV=py35-numpy11
+      python: 3.5.9
+
+    - name: Security check
+      env: TOXENV=bandit
+
+    - name: Numpy 1.12
+      env: TOXENV=py36-numpy12
+      python: 3.6.10
+
+    - name: Oldest dependency versions
+      env: TOXENV=py35-legacy
+      python: 3.5.9
 
     # Test against development version of Astropy
-    - env: TOXENV=py38-astropydev
+    - name: Astropy dev
+      env: TOXENV=py38-astropydev
 
     # Test against development version of GWCS
-    - env: TOXENV=py38-gwcsdev
+    - name: gwcs dev
+      env: TOXENV=py38-gwcsdev
 
     # Test against development version of numpy (allowed failure)
-    - env: TOXENV=py38-numpydev
+    - name: Numpy dev
+      env: TOXENV=py38-numpydev
 
     # Test against prerelease versions of all dependencies (allowed failure)
-    - env: TOXENV=prerelease
+    - name: Pre-release dependencies
+      env: TOXENV=prerelease
 
     # Test against an installed asdf package
-    - env: TOXENV=packaged
+    - name: Test against installed package
+      env: TOXENV=packaged
 
     # Test with warnings converted to errors
-    - env: TOXENV=warnings
+    - name: Warnings treated as Exceptions
+      env: TOXENV=warnings
 
     # Test on OS X
-    - env:
+    - name: MacOS
+      env:
         - TOXENV=py38
         - PATH=/usr/local/opt/python@3.8/bin:$PATH
       os: osx
@@ -88,7 +113,8 @@
         - pip3 install tox
 
     # Test on Windows
-    - env:
+    - name: Windows
+      env:
         - TOXENV=py38
         - PATH=/c/Python38:/c/Python38/Scripts:$PATH
       os: windows
@@ -97,18 +123,23 @@
         - choco install python --version=3.8
 
     # Test on big-endian platform
-    - env: TOXENV=s390x
+    - name: Big-endian platform
+      env: TOXENV=s390x
       arch: s390x
 
   allow_failures:
-    - env: TOXENV=prerelease
+    - name: Pre-release dependencies
+      env: TOXENV=prerelease
 
-    - env: TOXENV=py38-numpydev
+    - name: Numpy dev
+      env: TOXENV=py38-numpydev
 
-    - env: TOXENV=warnings
+    - name: Warnings treated as Exceptions
+      env: TOXENV=warnings
 
     # This build frequently fails due to timeout
-    - env: TOXENV=s390x
+    - name: Big-endian platform
+      env: TOXENV=s390x
       arch: s390x
 
 install: pip install tox
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/CHANGES.rst new/asdf-2.7.2/CHANGES.rst
--- old/asdf-2.7.1/CHANGES.rst  2020-08-19 00:29:22.000000000 +0200
+++ new/asdf-2.7.2/CHANGES.rst  2021-01-19 17:59:32.000000000 +0100
@@ -1,3 +1,10 @@
+2.7.2 (2020-01-15)
+------------------
+
+- Fix bug causing test collection failures in some environments. [#889]
+
+- Fix bug when decompressing arrays with numpy 1.20.  [#901, #909]
+
 2.7.1 (2020-08-18)
 ------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/PKG-INFO new/asdf-2.7.2/PKG-INFO
--- old/asdf-2.7.1/PKG-INFO     2020-08-19 00:30:16.000000000 +0200
+++ new/asdf-2.7.2/PKG-INFO     2021-01-19 18:00:11.000000000 +0100
@@ -1,11 +1,14 @@
 Metadata-Version: 2.1
 Name: asdf
-Version: 2.7.1
+Version: 2.7.2
 Summary: Python tools to handle ASDF files
-Home-page: http://github.com/spacetelescope/asdf
-Author: Erik Bray, Dan D'Avella, Michael Droettboom
-Author-email: md...@stsci.edu
-License: BSD
+Home-page: http://github.com/asdf-format/asdf
+Author: The ASDF Developers
+Author-email: h...@stsci.edu
+License: BSD-3-Clause
+Project-URL: Bug Tracker, https://github.com/asdf-format/asdf/issues
+Project-URL: Documentation, https://asdf.readthedocs.io/en/stable
+Project-URL: Source Code, https://github.com/asdf-format/asdf
 Description: ASDF - Advanced Scientific Data Format
         ======================================
         
@@ -353,9 +356,11 @@
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
 Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
 Classifier: Development Status :: 5 - Production/Stable
 Requires-Python: >=3.5
 Description-Content-Type: text/x-rst
-Provides-Extra: all
 Provides-Extra: docs
+Provides-Extra: all
 Provides-Extra: tests
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/block.py new/asdf-2.7.2/asdf/block.py
--- old/asdf-2.7.1/asdf/block.py        2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/block.py        2021-01-19 17:59:33.000000000 +0100
@@ -480,7 +480,9 @@
 
         yaml_content = content[content.find(b'\n') + 1:]
 
-        offsets = yaml.load(yaml_content,
+        # The following call to yaml.load is safe because we're
+        # using pyyaml's SafeLoader.
+        offsets = yaml.load(yaml_content, # nosec
                             Loader=yamlutil._yaml_base_loader)
 
         # Make sure the indices look sane
@@ -912,7 +914,9 @@
             self._checksum = checksum
 
     def _calculate_checksum(self, data):
-        m = hashlib.new('md5')
+        # The following line is safe because we're only using
+        # the MD5 as a checksum.
+        m = hashlib.new('md5') # nosec
         m.update(self.data.ravel('K'))
         return m.digest()
 
@@ -1118,7 +1122,9 @@
             allocated_size = self.allocated
             used_size = self._size
         self.input_compression = self.output_compression
-        assert allocated_size >= used_size
+
+        if allocated_size < used_size:
+            raise RuntimeError("Block used size {} larger than allocated size 
{}".format(used_size, allocated_size))
 
         if self.checksum is not None:
             checksum = self.checksum
@@ -1156,7 +1162,8 @@
                         used_size=self._size)
                     fd.seek(end)
             else:
-                assert used_size == data_size
+                if used_size != data_size:
+                    raise RuntimeError("Block used size {} is not equal to the 
data size {}".format(used_size, data_size))
                 fd.write_array(self._data)
 
     @property
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/commands/diff.py 
new/asdf-2.7.2/asdf/commands/diff.py
--- old/asdf-2.7.1/asdf/commands/diff.py        2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/asdf/commands/diff.py        2021-01-19 17:59:33.000000000 
+0100
@@ -103,7 +103,8 @@
         return print_list
 
     def __setitem__(self, node_list, visit):
-        assert isinstance(node_list, list)
+        if not isinstance(node_list, list):
+            raise TypeError("node_list parameter must be an instance of list")
         current = self.__tree
         for node in ['tree'] + node_list:
             if not node in current['children']:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/commands/tests/test_defragment.py 
new/asdf-2.7.2/asdf/commands/tests/test_defragment.py
--- old/asdf-2.7.1/asdf/commands/tests/test_defragment.py       2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/commands/tests/test_defragment.py       2021-01-19 
17:59:33.000000000 +0100
@@ -13,7 +13,7 @@
 
 
 def _test_defragment(tmpdir, codec):
-    x = np.arange(0, 1000, dtype=np.float)
+    x = np.arange(0, 1000, dtype=float)
 
     tree = {
         'science_data': x,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/commands/tests/test_exploded.py 
new/asdf-2.7.2/asdf/commands/tests/test_exploded.py
--- old/asdf-2.7.1/asdf/commands/tests/test_exploded.py 2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/commands/tests/test_exploded.py 2021-01-19 
17:59:33.000000000 +0100
@@ -13,7 +13,7 @@
 
 
 def test_explode_then_implode(tmpdir):
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
 
     tree = {
         'science_data': x,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/commands/tests/test_to_yaml.py 
new/asdf-2.7.2/asdf/commands/tests/test_to_yaml.py
--- old/asdf-2.7.1/asdf/commands/tests/test_to_yaml.py  2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/commands/tests/test_to_yaml.py  2021-01-19 
17:59:33.000000000 +0100
@@ -13,7 +13,7 @@
 
 
 def test_to_yaml(tmpdir):
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
 
     tree = {
         'science_data': x,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/compression.py 
new/asdf-2.7.2/asdf/compression.py
--- old/asdf-2.7.1/asdf/compression.py  2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/compression.py  2021-01-19 17:59:33.000000000 +0100
@@ -201,9 +201,11 @@
         decoded = decoder.flush()
         if i + len(decoded) > data_size:
             raise ValueError("Decompressed data too long")
-        elif i + len(decoded) < data_size:
-            raise ValueError("Decompressed data too short")
-        buffer[i:i+len(decoded)] = decoded
+        buffer.data[i:i+len(decoded)] = decoded
+        i += len(decoded)
+
+    if i < data_size:
+        raise ValueError("Decompressed data too short")
 
     return buffer
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/conftest.py 
new/asdf-2.7.2/asdf/conftest.py
--- old/asdf-2.7.1/asdf/conftest.py     2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/conftest.py     2021-01-19 17:59:33.000000000 +0100
@@ -8,7 +8,7 @@
 
 import pytest
 
-from .tests.httpserver import HTTPServer, RangeHTTPServer
+from asdf.tests.httpserver import HTTPServer, RangeHTTPServer
 
 
 @pytest.fixture()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/fits_embed.py 
new/asdf-2.7.2/asdf/fits_embed.py
--- old/asdf-2.7.1/asdf/fits_embed.py   2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/fits_embed.py   2021-01-19 17:59:33.000000000 +0100
@@ -137,8 +137,8 @@
         from astropy.io import fits
 
         hdulist = fits.HDUList()
-        hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float), 
name='SCI'))
-        hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float), 
name='DQ'))
+        hdulist.append(fits.ImageHDU(np.arange(512, dtype=float), name='SCI'))
+        hdulist.append(fits.ImageHDU(np.arange(512, dtype=float), name='DQ'))
 
         tree = {
             'model': {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/resolver.py 
new/asdf-2.7.2/asdf/resolver.py
--- old/asdf-2.7.1/asdf/resolver.py     2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/resolver.py     2021-01-19 17:59:33.000000000 +0100
@@ -60,9 +60,11 @@
     def add_mapping(self, mappings, prefix=''):
         # Deprecating this because Resolver is used as part of a dictionary key
         # and so shouldn't be mutable.
-        assert prefix == self._prefix
-
         warnings.warn("The 'add_mapping' method is deprecated.", 
AsdfDeprecationWarning)
+
+        if prefix != self._prefix:
+            raise ValueError("Prefix '{}' does not match the Resolver prefix 
'{}'".format(prefix, self._prefix))
+
         self._mappings = self._mappings + self._validate_mappings(mappings)
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/schema.py 
new/asdf-2.7.2/asdf/schema.py
--- old/asdf-2.7.1/asdf/schema.py       2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/schema.py       2021-01-19 17:59:33.000000000 +0100
@@ -329,7 +329,9 @@
             json_data = fd.read().decode('utf-8')
             result = json.loads(json_data, object_pairs_hook=OrderedDict)
         else:
-            result = yaml.load(fd, Loader=yamlutil.AsdfLoader)
+            # The following call to yaml.load is safe because we're
+            # using a loader that inherits from pyyaml's SafeLoader.
+            result = yaml.load(fd, Loader=yamlutil.AsdfLoader) # nosec
     return result, fd.uri
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tags/core/integer.py 
new/asdf-2.7.2/asdf/tags/core/integer.py
--- old/asdf-2.7.1/asdf/tags/core/integer.py    2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/asdf/tags/core/integer.py    2021-01-19 17:59:33.000000000 
+0100
@@ -51,7 +51,8 @@
     _value_cache = dict()
 
     def __init__(self, value, storage_type='internal'):
-        assert storage_type in ['internal', 'inline'], "Invalid storage type 
given"
+        if storage_type not in ['internal', 'inline']:
+            raise ValueError("storage_type '{}' is not a recognized storage 
type".format(storage_type))
         self._value = value
         self._sign = '-' if value < 0 else '+'
         self._storage = storage_type
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tags/core/ndarray.py 
new/asdf-2.7.2/asdf/tags/core/ndarray.py
--- old/asdf-2.7.1/asdf/tags/core/ndarray.py    2020-08-19 00:29:22.000000000 
+0200
+++ new/asdf-2.7.2/asdf/tags/core/ndarray.py    2021-01-19 17:59:33.000000000 
+0100
@@ -471,7 +471,9 @@
     def _assert_equality(cls, old, new, func):
         if old.dtype.fields:
             if not new.dtype.fields:
-                assert False, "arrays not equal"
+                # This line is safe because this is actually a piece of test
+                # code, even though it lives in this file:
+                assert False, "arrays not equal" # nosec
             for a, b in zip(old, new):
                 cls._assert_equality(a, b, func)
         else:
@@ -484,7 +486,9 @@
                     new = new.astype('U')
                 old = old.tolist()
                 new = new.tolist()
-                assert old == new
+                # This line is safe because this is actually a piece of test
+                # code, even though it lives in this file:
+                assert old == new # nosec
             else:
                 func(old, new)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tags/core/tests/test_ndarray.py 
new/asdf-2.7.2/asdf/tags/core/tests/test_ndarray.py
--- old/asdf-2.7.1/asdf/tags/core/tests/test_ndarray.py 2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/tags/core/tests/test_ndarray.py 2021-01-19 
17:59:33.000000000 +0100
@@ -60,7 +60,7 @@
 
 
 def test_sharing(tmpdir):
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
     tree = {
         'science_data': x,
         'subset': x[3:-3],
@@ -136,7 +136,7 @@
 
 
 def test_dont_load_data():
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
     tree = {
         'science_data': x,
         'subset': x[3:-3],
@@ -269,7 +269,7 @@
 
 
 def test_inline():
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
     tree = {
         'science_data': x,
         'subset': x[3:-3],
@@ -301,7 +301,7 @@
 
 
 def test_mask_roundtrip(tmpdir):
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
     m = ma.array(x, mask=x > 5)
     tree = {
         'masked_array': m,
@@ -321,7 +321,7 @@
     helpers.assert_roundtrip_tree(tree, tmpdir, asdf_check_func=check_asdf)
 
 def test_len_roundtrip(tmpdir):
-    sequence = np.arange(0, 10, dtype=np.int)
+    sequence = np.arange(0, 10, dtype=int)
     tree = {
         'sequence': sequence
         }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/__init__.py 
new/asdf-2.7.2/asdf/tests/__init__.py
--- old/asdf-2.7.1/asdf/tests/__init__.py       2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/asdf/tests/__init__.py       2021-01-19 17:59:33.000000000 
+0100
@@ -26,7 +26,7 @@
 
 
 def create_small_tree():
-    x = np.arange(0, 10, dtype=np.float)
+    x = np.arange(0, 10, dtype=float)
     tree = {
         'science_data': x,
         'subset': x[3:-3],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/helpers.py 
new/asdf-2.7.2/asdf/tests/helpers.py
--- old/asdf-2.7.1/asdf/tests/helpers.py        2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/asdf/tests/helpers.py        2021-01-19 17:59:33.000000000 
+0100
@@ -2,9 +2,9 @@
 
 import io
 import os
-import sys
 import warnings
 from contextlib import contextmanager
+from pathlib import Path
 
 try:
     from astropy.coordinates import ICRS
@@ -43,30 +43,21 @@
     INTERNET_OFF = False
 
 
-if sys.version_info >= (3, 7):
-    from importlib import resources
-else:
-    try:
-        import importlib_resources as resources
-    except ImportError:
-        resources = None
-
-
 __all__ = ['get_test_data_path', 'assert_tree_match', 'assert_roundtrip_tree',
            'yaml_to_asdf', 'get_file_sizes', 'display_warnings']
 
 
 def get_test_data_path(name, module=None):
-    if resources is None:
-        raise RuntimeError("The importlib_resources package is required to get"
-                           " test data on systems with Python < 3.7")
-
     if module is None:
         from . import data as test_data
         module = test_data
 
-    with resources.path(module, name) as path:
-        return str(path)
+    module_root = Path(module.__file__).parent
+
+    if name is None or name == "":
+        return str(module_root)
+    else:
+        return str(module_root/name)
 
 
 def assert_tree_match(old_tree, new_tree, ctx=None,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/test_api.py 
new/asdf-2.7.2/asdf/tests/test_api.py
--- old/asdf-2.7.1/asdf/tests/test_api.py       2020-08-19 00:29:22.000000000 
+0200
+++ new/asdf-2.7.2/asdf/tests/test_api.py       2021-01-19 17:59:33.000000000 
+0100
@@ -2,7 +2,9 @@
 
 import os
 import io
+import getpass
 import pathlib
+import sys
 
 import numpy as np
 from numpy.testing import assert_array_equal
@@ -69,6 +71,10 @@
             assert_tree_match(tree, af.tree)
 
 
+@pytest.mark.skipif(
+    not sys.platform.startswith('win') and getpass.getuser() == 'root',
+    reason="Cannot make file read-only if user is root"
+)
 def test_open_readonly(tmpdir):
 
     tmpfile = str(tmpdir.join('readonly.asdf'))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/test_file_format.py 
new/asdf-2.7.2/asdf/tests/test_file_format.py
--- old/asdf-2.7.1/asdf/tests/test_file_format.py       2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/tests/test_file_format.py       2021-01-19 
17:59:33.000000000 +0100
@@ -129,7 +129,8 @@
             ff2.blocks.get_block(2)
 
         with pytest.raises(IOError):
-            ff2.blocks.get_block("http://127.0.0.1/";)
+            # ff2.blocks.get_block("http://127.0.0.1/";)
+            ff2.blocks.get_block("http://0.42.42.42/";)
 
         with pytest.raises(TypeError):
             ff2.blocks.get_block(42.0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/test_fits_embed.py 
new/asdf-2.7.2/asdf/tests/test_fits_embed.py
--- old/asdf-2.7.1/asdf/tests/test_fits_embed.py        2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/tests/test_fits_embed.py        2021-01-19 
17:59:33.000000000 +0100
@@ -435,9 +435,9 @@
 
     # Create FITS file to use for test
     hdulist = fits.HDUList()
-    hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float)))
-    hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float)))
-    hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float)))
+    hdulist.append(fits.ImageHDU(np.arange(512, dtype=float)))
+    hdulist.append(fits.ImageHDU(np.arange(512, dtype=float)))
+    hdulist.append(fits.ImageHDU(np.arange(512, dtype=float)))
     hdulist.writeto(fits_filename)
     hdulist.close()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/test_generic_io.py 
new/asdf-2.7.2/asdf/tests/test_generic_io.py
--- old/asdf-2.7.1/asdf/tests/test_generic_io.py        2020-08-18 
23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/tests/test_generic_io.py        2021-01-19 
17:59:33.000000000 +0100
@@ -278,7 +278,8 @@
         ff.tree['science_data'][0] == 42
 
 
-@pytest.mark.remote_data
+#@pytest.mark.remote_data
+@pytest.mark.skip(reason="The _roundtrip assert isn't well defined and 
returning different lengths in different environments.")
 def test_http_connection_range(tree, rhttpserver):
     path = os.path.join(rhttpserver.tmpdir, 'test.asdf')
     connection = [None]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/tests/test_reference.py 
new/asdf-2.7.2/asdf/tests/test_reference.py
--- old/asdf-2.7.1/asdf/tests/test_reference.py 2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/asdf/tests/test_reference.py 2021-01-19 17:59:33.000000000 
+0100
@@ -21,13 +21,13 @@
 def test_external_reference(tmpdir):
     exttree = {
         'cool_stuff': {
-            'a': np.array([0, 1, 2], np.float),
-            'b': np.array([3, 4, 5], np.float)
+            'a': np.array([0, 1, 2], float),
+            'b': np.array([3, 4, 5], float)
             },
         'list_of_stuff': [
             'foobar',
             42,
-            np.array([7, 8, 9], np.float)
+            np.array([7, 8, 9], float)
             ]
         }
     external_path = os.path.join(str(tmpdir), 'external.asdf')
@@ -172,7 +172,7 @@
         'list_of_stuff': [
             'foobar',
             42,
-            np.array([7, 8, 9], np.float)
+            np.array([7, 8, 9], float)
             ]
         }
     external_path = os.path.join(str(tmpdir), 'external.asdf')
@@ -207,8 +207,8 @@
         # Include some ~ and / in the name to make sure that escaping
         # is working correctly
         'f~o~o/': {
-            'a': np.array([0, 1, 2], np.float),
-            'b': np.array([3, 4, 5], np.float)
+            'a': np.array([0, 1, 2], float),
+            'b': np.array([3, 4, 5], float)
             }
         }
     external_path = os.path.join(str(tmpdir), 'external.asdf')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/versioning.py 
new/asdf-2.7.2/asdf/versioning.py
--- old/asdf-2.7.1/asdf/versioning.py   2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/versioning.py   2021-01-19 17:59:33.000000000 +0100
@@ -51,7 +51,9 @@
             '{url_suffix}', 'asdf/version_map-{0}'.format(version))
         try:
             with generic_io.get_file(version_map_path, 'r') as fd:
-                version_map = yaml.load(
+                # The following call to yaml.load is safe because we're
+                # using a loader that inherits from pyyaml's SafeLoader.
+                version_map = yaml.load( # nosec
                     fd, Loader=_yaml_base_loader)
         except Exception:
             raise ValueError(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf/yamlutil.py 
new/asdf-2.7.2/asdf/yamlutil.py
--- old/asdf-2.7.1/asdf/yamlutil.py     2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/asdf/yamlutil.py     2021-01-19 17:59:33.000000000 +0100
@@ -304,7 +304,9 @@
     stream : readable file-like object
         Stream containing the raw YAML content.
     """
-    return yaml.load(stream, Loader=AsdfLoader)
+    # The following call to yaml.load is safe because we're
+    # using a loader that inherits from pyyaml's SafeLoader.
+    return yaml.load(stream, Loader=AsdfLoader) # nosec
 
 
 def dump_tree(tree, fd, ctx):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf.egg-info/PKG-INFO 
new/asdf-2.7.2/asdf.egg-info/PKG-INFO
--- old/asdf-2.7.1/asdf.egg-info/PKG-INFO       2020-08-19 00:30:15.000000000 
+0200
+++ new/asdf-2.7.2/asdf.egg-info/PKG-INFO       2021-01-19 18:00:10.000000000 
+0100
@@ -1,11 +1,14 @@
 Metadata-Version: 2.1
 Name: asdf
-Version: 2.7.1
+Version: 2.7.2
 Summary: Python tools to handle ASDF files
-Home-page: http://github.com/spacetelescope/asdf
-Author: Erik Bray, Dan D'Avella, Michael Droettboom
-Author-email: md...@stsci.edu
-License: BSD
+Home-page: http://github.com/asdf-format/asdf
+Author: The ASDF Developers
+Author-email: h...@stsci.edu
+License: BSD-3-Clause
+Project-URL: Bug Tracker, https://github.com/asdf-format/asdf/issues
+Project-URL: Documentation, https://asdf.readthedocs.io/en/stable
+Project-URL: Source Code, https://github.com/asdf-format/asdf
 Description: ASDF - Advanced Scientific Data Format
         ======================================
         
@@ -353,9 +356,11 @@
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
 Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
 Classifier: Development Status :: 5 - Production/Stable
 Requires-Python: >=3.5
 Description-Content-Type: text/x-rst
-Provides-Extra: all
 Provides-Extra: docs
+Provides-Extra: all
 Provides-Extra: tests
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/asdf.egg-info/SOURCES.txt 
new/asdf-2.7.2/asdf.egg-info/SOURCES.txt
--- old/asdf-2.7.1/asdf.egg-info/SOURCES.txt    2020-08-19 00:30:15.000000000 
+0200
+++ new/asdf-2.7.2/asdf.egg-info/SOURCES.txt    2021-01-19 18:00:10.000000000 
+0100
@@ -12,6 +12,8 @@
 setup.cfg
 setup.py
 tox.ini
+.github/workflows/asdf_ci.yml
+.github/workflows/s390x.yml
 asdf/__init__.py
 asdf/_convenience.py
 asdf/_display.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/conftest.py new/asdf-2.7.2/conftest.py
--- old/asdf-2.7.1/conftest.py  2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/conftest.py  2021-01-19 17:59:33.000000000 +0100
@@ -1,10 +1,4 @@
-# Licensed under a 3-clause BSD style license - see LICENSE.rst
-# -*- coding: utf-8 -*-
-import os
-
 import pytest
-from _pytest.doctest import DoctestItem
-
 
 @pytest.fixture(autouse=True)
 def _docdir(request):
@@ -12,19 +6,15 @@
     Make sure that doctests run in a temporary directory so that any files that
     are created as part of the test get removed automatically.
     """
-
-    # Trigger ONLY for the doctests.
-    if isinstance(request.node, DoctestItem):
-
-        # Get the fixture dynamically by its name.
-        tmpdir = request.getfixturevalue('tmpdir')
-
-        # Chdir only for the duration of the test.
-        olddir = os.getcwd()
-        tmpdir.chdir()
-        yield
-        os.chdir(olddir)
-
-    else:
-        # For normal tests, we have to yield, since this is a yield-fixture.
+    # Trigger ONLY for doctestplus.
+    try:
+        doctest_plugin = request.config.pluginmanager.getplugin("doctestplus")
+        if isinstance(request.node.parent, 
doctest_plugin._doctest_textfile_item_cls):
+            tmpdir = request.getfixturevalue('tmpdir')
+            with tmpdir.as_cwd():
+                yield
+        else:
+            yield
+    # Handle case where doctestplus is not available
+    except AttributeError:
         yield
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/docs/asdf/changes.rst 
new/asdf-2.7.2/docs/asdf/changes.rst
--- old/asdf-2.7.1/docs/asdf/changes.rst        2020-08-19 00:29:22.000000000 
+0200
+++ new/asdf-2.7.2/docs/asdf/changes.rst        2021-01-19 17:59:33.000000000 
+0100
@@ -4,6 +4,20 @@
 Changes
 *******
 
+What's New in ASDF 2.7.2?
+=========================
+
+The ASDF Standard is at v1.5.0.
+
+Changes include:
+
+* Fix bug causing test collection failures under Python 3.9.
+
+* Fix bug when decompressing arrays with numpy 1.20.
+
+* Replace ``assert`` statements with ``raise`` at the behest
+  of the bandit security linter.
+
 What's New in ASDF 2.7.1?
 =========================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/docs/asdf/extensions.rst 
new/asdf-2.7.2/docs/asdf/extensions.rst
--- old/asdf-2.7.1/docs/asdf/extensions.rst     2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/docs/asdf/extensions.rst     2021-01-19 17:59:33.000000000 
+0100
@@ -721,7 +721,7 @@
 
 All custom types to be serialized by ASDF require custom schemas. The best
 resource for creating ASDF schemas can be found in the `ASDF Standard
-<http://asdf-standard.readthedocs.io/en/latest/extending.html>`_ documentation.
+<https://asdf-standard.readthedocs.io/en/latest/schemas.html>`_ documentation.
 
 In most cases, ASDF schemas will be included as part of a packaged software
 distribution. In these cases, it is important for the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/docs/asdf/features.rst 
new/asdf-2.7.2/docs/asdf/features.rst
--- old/asdf-2.7.1/docs/asdf/features.rst       2020-08-18 23:20:32.000000000 
+0200
+++ new/asdf-2.7.2/docs/asdf/features.rst       2021-01-19 17:59:33.000000000 
+0100
@@ -434,8 +434,8 @@
     from astropy.io import fits
 
     hdulist = fits.HDUList()
-    hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float), name='SCI'))
-    hdulist.append(fits.ImageHDU(np.arange(512, dtype=np.float), name='DQ'))
+    hdulist.append(fits.ImageHDU(np.arange(512, dtype=float), name='SCI'))
+    hdulist.append(fits.ImageHDU(np.arange(512, dtype=float), name='DQ'))
 
 Next we make a tree structure out of the data in the FITS file.  Importantly,
 we use the *same* array references in the FITS `~astropy.io.fits.HDUList` and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/setup.cfg new/asdf-2.7.2/setup.cfg
--- old/asdf-2.7.1/setup.cfg    2020-08-19 00:30:16.000000000 +0200
+++ new/asdf-2.7.2/setup.cfg    2021-01-19 18:00:11.000000000 +0100
@@ -2,18 +2,23 @@
 name = asdf
 description = Python tools to handle ASDF files
 long_description_content_type = text/x-rst
-author = Erik Bray, Dan D'Avella, Michael Droettboom
-author_email = md...@stsci.edu
-license = BSD
-url = http://github.com/spacetelescope/asdf
-edit_on_github = False
-github_project = spacetelescope/asdf
+author = The ASDF Developers
+author_email = h...@stsci.edu
+license = BSD-3-Clause
+license_file = licenses/LICENSE.rst
+url = http://github.com/asdf-format/asdf
+project_urls = 
+       Bug Tracker = https://github.com/asdf-format/asdf/issues
+       Documentation = https://asdf.readthedocs.io/en/stable
+       Source Code = https://github.com/asdf-format/asdf
 classifiers = 
        Programming Language :: Python
        Programming Language :: Python :: 3
        Programming Language :: Python :: 3.5
        Programming Language :: Python :: 3.6
        Programming Language :: Python :: 3.7
+       Programming Language :: Python :: 3.8
+       Programming Language :: Python :: 3.9
        Development Status :: 5 - Production/Stable
 
 [options]
@@ -45,6 +50,8 @@
        matplotlib
        docutils
 tests = 
+       # As of 2020-07-28, pytest-doctestplus is not compatible
+       # with pytest 6.0.0.
        pytest<6
        astropy
        gwcs
@@ -75,7 +82,7 @@
 
 [tool:pytest]
 testpaths = asdf docs asdf-standard/schemas
-minversion = 3.1
+minversion = 4.6
 norecursedirs = build docs/_build docs/sphinxext
 doctest_plus = enabled
 remote_data_strict = True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/asdf-2.7.1/tox.ini new/asdf-2.7.2/tox.ini
--- old/asdf-2.7.1/tox.ini      2020-08-18 23:20:32.000000000 +0200
+++ new/asdf-2.7.2/tox.ini      2021-01-19 17:59:33.000000000 +0100
@@ -7,9 +7,9 @@
     pytest-sugar
     pytest-faulthandler
     pytest-openfiles>=0.3.2
-    astropydev: git+git://github.com/astropy/astropy
-    gwcsdev: git+git://github.com/spacetelescope/gwcs
-    numpydev: git+git://github.com/numpy/numpy
+    astropydev: git+https://github.com/astropy/astropy
+    gwcsdev: git+https://github.com/spacetelescope/gwcs
+    numpydev: git+https://github.com/numpy/numpy
     py35,py36: importlib_resources
     # Newer versions of gwcs require astropy 4.x, which
     # isn't compatible with the older versions of numpy
@@ -36,16 +36,13 @@
 install_command= python -m pip install --no-cache-dir {opts} {packages}
 
 [testenv:prerelease]
-basepython= python3.8
 pip_pre= true
 
 [testenv:warnings]
-basepython= python3.8
 commands=
     pytest --remote-data -W error -W 
ignore::asdf.exceptions.AsdfDeprecationWarning:asdf.asdftypes
 
 [testenv:packaged]
-basepython= python3.8
 # The default tox working directory is in .tox in the source directory.  If we
 # execute pytest from there, it will discover tox.ini in the source directory
 # and load the asdf module from the unpackaged sourcee, which is not what we
@@ -67,13 +64,11 @@
     twine check {distdir}/*
 
 [testenv:docbuild]
-basepython= python3.8
 extras= docs
 commands=
     sphinx-build -W docs build/docs
 
 [testenv:checkdocs]
-basepython= python3.8
 deps=
     collective.checkdocs
     pygments
@@ -81,14 +76,12 @@
     python setup.py checkdocs
 
 [testenv:style]
-basepython= python3.8
 deps=
     flake8
 commands=
     flake8 --count
 
 [testenv:coverage]
-basepython= python3.8
 deps=
     gwcs
     pytest<5.1
@@ -104,9 +97,14 @@
 passenv= TOXENV CI TRAVIS TRAVIS_* CODECOV_* DISPLAY
 
 [testenv:compatibility]
-basepython= python3.8
 deps=
     virtualenv
 extras= all,tests
 commands=
     pytest compatibility_tests/ --remote-data
+
+[testenv:bandit]
+deps=
+    bandit
+commands=
+    bandit -r -x 
asdf/tests,asdf/commands/tests,asdf/tags/core/tests,asdf/extern asdf

Reply via email to