[Debian-astro-maintainers] Bug#1001718: astroscrappy breaks ccdproc autopkgtest: detect_cosmics() got an unexpected keyword argument 'pssl'

Paul Gevers elbrus at debian.org
Tue Dec 14 20:10:25 GMT 2021


Source: astroscrappy, ccdproc
Control: found -1 astroscrappy/1.1.0-1
Control: found -1 ccdproc/2.2.0-1
Severity: serious
Tags: sid bookworm
X-Debbugs-CC: debian-ci at lists.debian.org
User: debian-ci at lists.debian.org
Usertags: breaks needs-update

Dear maintainer(s),

With a recent upload of astroscrappy the autopkgtest of ccdproc fails in 
testing when that autopkgtest is run with the binary packages of 
astroscrappy from unstable. It passes when run with only packages from 
testing. In tabular form:

                        pass            fail
astroscrappy           from testing    1.1.0-1
ccdproc                from testing    2.2.0-1
all others             from testing    from testing

I copied some of the output at the bottom of this report.

Currently this regression is blocking the migration of astroscrappy to 
testing [1]. Due to the nature of this issue, I filed this bug report 
against both packages. Can you please investigate the situation and 
reassign the bug to the right package?

More information about this bug and the reason for filing it can be found on
https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation

Paul

[1] https://qa.debian.org/excuses.php?package=astroscrappy

https://ci.debian.net/data/autopkgtest/testing/amd64/c/ccdproc/17555299/log.gz


=================================== FAILURES 
===================================
________________ test_cosmicray_lacosmic_does_not_change_input 
_________________

     def test_cosmicray_lacosmic_does_not_change_input():
         ccd_data = ccd_data_func()
         original = ccd_data.copy()
         error = np.zeros_like(ccd_data)
>       ccd = cosmicray_lacosmic(ccd_data)

/usr/lib/python3/dist-packages/ccdproc/tests/test_ccdproc.py:794: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
___________________________ test_cosmicray_lacosmic 
____________________________

     def test_cosmicray_lacosmic():
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
>       data, crarr = cosmicray_lacosmic(ccd_data.data, sigclip=5)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:38: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1491: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
_______________________ test_cosmicray_lacosmic_ccddata 
________________________

     def test_cosmicray_lacosmic_ccddata():
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
>       nccd_data = cosmicray_lacosmic(ccd_data, sigclip=5)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:52: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
____________________ test_cosmicray_gain_correct[True-True] 
____________________

array_input = True, gain_correct_data = True

     @pytest.mark.parametrize('array_input', [True, False])
     @pytest.mark.parametrize('gain_correct_data', [True, False])
     def test_cosmicray_gain_correct(array_input, gain_correct_data):
         # Add regression check for #705 and for the new gain_correct
         # argument.
         # The issue is that cosmicray_lacosmic gain-corrects the
         # data and returns that gain corrected data. That is not the
         # intent...
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         # No units here on purpose.
         gain = 2.0
         # Don't really need to set this (6.5 is the default value) but 
want to
         # make lack of units explicit.
         readnoise = 6.5
         if array_input:
>           new_data, cr_mask = cosmicray_lacosmic(ccd_data.data,
                                                    gain=gain,
 
gain_apply=gain_correct_data)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:86: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1491: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
___________________ test_cosmicray_gain_correct[True-False] 
____________________

array_input = False, gain_correct_data = True

     @pytest.mark.parametrize('array_input', [True, False])
     @pytest.mark.parametrize('gain_correct_data', [True, False])
     def test_cosmicray_gain_correct(array_input, gain_correct_data):
         # Add regression check for #705 and for the new gain_correct
         # argument.
         # The issue is that cosmicray_lacosmic gain-corrects the
         # data and returns that gain corrected data. That is not the
         # intent...
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         # No units here on purpose.
         gain = 2.0
         # Don't really need to set this (6.5 is the default value) but 
want to
         # make lack of units explicit.
         readnoise = 6.5
         if array_input:
             new_data, cr_mask = cosmicray_lacosmic(ccd_data.data,
                                                    gain=gain,
 
gain_apply=gain_correct_data)
         else:
>           new_ccd = cosmicray_lacosmic(ccd_data,
                                          gain=gain,
                                          gain_apply=gain_correct_data)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:90: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
___________________ test_cosmicray_gain_correct[False-True] 
____________________

array_input = True, gain_correct_data = False

     @pytest.mark.parametrize('array_input', [True, False])
     @pytest.mark.parametrize('gain_correct_data', [True, False])
     def test_cosmicray_gain_correct(array_input, gain_correct_data):
         # Add regression check for #705 and for the new gain_correct
         # argument.
         # The issue is that cosmicray_lacosmic gain-corrects the
         # data and returns that gain corrected data. That is not the
         # intent...
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         # No units here on purpose.
         gain = 2.0
         # Don't really need to set this (6.5 is the default value) but 
want to
         # make lack of units explicit.
         readnoise = 6.5
         if array_input:
>           new_data, cr_mask = cosmicray_lacosmic(ccd_data.data,
                                                    gain=gain,
 
gain_apply=gain_correct_data)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:86: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1491: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
___________________ test_cosmicray_gain_correct[False-False] 
___________________

array_input = False, gain_correct_data = False

     @pytest.mark.parametrize('array_input', [True, False])
     @pytest.mark.parametrize('gain_correct_data', [True, False])
     def test_cosmicray_gain_correct(array_input, gain_correct_data):
         # Add regression check for #705 and for the new gain_correct
         # argument.
         # The issue is that cosmicray_lacosmic gain-corrects the
         # data and returns that gain corrected data. That is not the
         # intent...
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         # No units here on purpose.
         gain = 2.0
         # Don't really need to set this (6.5 is the default value) but 
want to
         # make lack of units explicit.
         readnoise = 6.5
         if array_input:
             new_data, cr_mask = cosmicray_lacosmic(ccd_data.data,
                                                    gain=gain,
 
gain_apply=gain_correct_data)
         else:
>           new_ccd = cosmicray_lacosmic(ccd_data,
                                          gain=gain,
                                          gain_apply=gain_correct_data)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:90: _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
________________ test_cosmicray_lacosmic_accepts_quantity_gain 
_________________

     def test_cosmicray_lacosmic_accepts_quantity_gain():
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         # The units below are the point of the test
         gain = 2.0 * u.electron / u.adu
             # Since gain and ccd_data have units, the readnoise should too.
         readnoise = 6.5 * u.electron
>       new_ccd = cosmicray_lacosmic(ccd_data,
                                      gain=gain,
                                      gain_apply=True)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:118: _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in 
cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
______________ test_cosmicray_lacosmic_accepts_quantity_readnoise 
______________

     def test_cosmicray_lacosmic_accepts_quantity_readnoise():
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         gain = 2.0 * u.electron / u.adu
         # The units below are the point of this test
         readnoise = 6.5 * u.electron
>       new_ccd = cosmicray_lacosmic(ccd_data,
                                      gain=gain,
                                      gain_apply=True,
                                      readnoise=readnoise)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:132: _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in 
cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
______________ test_cosmicray_lacosmic_warns_on_ccd_in_electrons 
_______________

recwarn = WarningsRecorder(record=True)

     def test_cosmicray_lacosmic_warns_on_ccd_in_electrons(recwarn):
         # Check that an input ccd in electrons raises a warning.
         ccd_data = ccd_data_func(data_scale=DATA_SCALE)
         # The unit below is important for the test; this unit on
         # input is supposed to raise an error.
         ccd_data.unit = u.electron
         threshold = 5
         add_cosmicrays(ccd_data, DATA_SCALE, threshold, ncrays=NCRAYS)
         noise = DATA_SCALE * np.ones_like(ccd_data.data)
         ccd_data.uncertainty = noise
         # No units here on purpose.
         gain = 2.0
         # Don't really need to set this (6.5 is the default value) but 
want to
         # make lack of units explicit.
         readnoise = 6.5
>       new_ccd = cosmicray_lacosmic(ccd_data,
                                      gain=gain,
                                      gain_apply=True,
                                      readnoise=readnoise)

/usr/lib/python3/dist-packages/ccdproc/tests/test_cosmicray.py:175: _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ /usr/lib/python3/dist-packages/ccdproc/core.py:1525: in 
cosmicray_lacosmic
     crmask, cleanarr = detect_cosmics(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _
>   ???
E   TypeError: detect_cosmics() got an unexpected keyword argument 'pssl'

astroscrappy/astroscrappy.pyx:26: TypeError
----------------------------- Captured stdout call 
-----------------------------
INFO: array provided for uncertainty; assuming it is a 
StdDevUncertainty. [astropy.nddata.ccddata]
------------------------------ Captured log call 
-------------------------------
INFO     astropy:ccddata.py:263 array provided for uncertainty; assuming 
it is a StdDevUncertainty.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/debian-astro-maintainers/attachments/20211214/bdb557d7/attachment-0001.sig>


More information about the Debian-astro-maintainers mailing list