--- Dependency check [begin] --- --- Dependency check [end] --- --- Distribution check [begin] --- Version 0.1.1 - 2022-05-19 (AG) Information: this ChangeLog entry matches the version number: Version 0.1.1 - 2022-05-19 (AG) Information: ./config/pymakethumbs.par is an XML parameter file, I cannot yet validate it. Skipped. Now checking git repository... --- Distribution check [end] --- sed -e "s/DOC/pymakethumbs/" -e "s/TYPE/user/" < \ /workspaces/sas/packages/sas/doc/lib/package.tex | /workspaces/sas/packages/sas/bin/texcombine | \ /workspaces/sas/packages/sas/bin/fixdoc -type=user pymakethumbs 0.1.1 pymakethumbs 22.0.0-352970877-20240704 > pymakethumbs.tex including sasuser... including sasglobal... including pymakethumbs_description... latex pymakethumbs < /dev/null > makedoc.log || ( cat makedoc.log ; exit 1 ) bibtex pymakethumbs < /dev/null > makedoc.log make[5]: [/workspaces/sas/Make.include:1062: pymakethumbs.ps.gz] Error 2 (ignored) latex pymakethumbs < /dev/null > makedoc.log || ( cat makedoc.log ; exit 1 ) latex pymakethumbs < /dev/null > makedoc.log || ( cat makedoc.log ; exit 1 ) dvips -o pymakethumbs.ps pymakethumbs > makedoc.log 2>&1 || ( cat makedoc.log ; exit 1 ) dvipdf pymakethumbs > makedoc.log 2>&1 || ( cat makedoc.log ; continue ) gzip -f pymakethumbs.ps SASRELDIR=../../.. ;\ export SASRELDIR ;\ latex2html -nouse_pdftex -init_file /workspaces/sas/packages/sas/doc/lib/latex2html.init pymakethumbs > /dev/null texexpand V2020 (Released January 1, 2020) Warning: No implementation found for option: `version' for `sasdoc' package Warning: No implementation found for option: `version' for `sasdoc' package This is dvips(k) 2021.1 (TeX Live 2022/dev) Copyright 2021 Radical Eye Software (www.radicaleye.com) ' TeX output 2024.07.04:1510' -> images.ps . [1] [2] [3] [4] /usr/bin/echo "" mkpkgidx -t . > /dev/null || (rm -f pymakethumbs/index.pl ; exit 1) pointer=pymakethumbs/ChangeLog ; \ target=../../../packages/pymakethumbs/ChangeLog ; \ if [ -f $target -a \( ! -h $pointer \) ] ; then \ ln -s ../$target $pointer ; \ fi rm pymakethumbs.tex Testing testmakethumbs ... FAILED Message: will run ./testmakethumbs for no longer than 600 seconds. ============================= test session starts ============================== platform linux -- Python 3.12.4, pytest-8.2.2, pluggy-1.5.0 -- /sasbuild/tools/python-3.12.4/bin/python3 cachedir: .pytest_cache rootdir: /workspaces/sas/packages/pymakethumbs plugins: anyio-4.4.0 collecting ... collected 1 item test_pymakethumbs.py::test_general FAILED [100%] =================================== FAILURES =================================== _________________________________ test_general _________________________________ def test_general(): iparsdic = dict() iparsdic.update({'printparams' : 'no'}) iparsdic.update({'withsrclist' : 'yes'}) iparsdic.update({'imageset' : './testdata/P0094411101M1U002IMAGE_8000.FIT'}) iparsdic.update({'srclisttab' : './testdata/P0094411101EPX000OBSMLI0000.FIT'}) iparsdic.update({'withcoords' : 'no'}) iparsdic.update({'ra' : '0'}) iparsdic.update({'dec' : '0'}) iparsdic.update({'withcat' : 'no'}) iparsdic.update({'cattab' : './testdata/testcat.fits'}) iparsdic.update({'dryrun' : 'no'}) iparsdic.update({'srcnum': '0'}) iparsdic.update({'withsrcnum' : 'no'}) # text and title iparsdic.update({'outfilename' : ''}) iparsdic.update({'fnamestyle' : 'srcnum'}) iparsdic.update({'gifsuffix' : '.gif'}) iparsdic.update({'gifroot' : 'pytest'}) iparsdic.update({'autofname' : 'yes'}) iparsdic.update({'fnameseparator' : '____'}) iparsdic.update({'srcindexstyle' : 'DEFAULT'}) iparsdic.update({'srcindexseparator' : 'DEFAULT'}) iparsdic.update({'iaunameprefix' : ''}) # text to add iparsdic.update({'erangestr' : '3-12 keV'}) iparsdic.update({'obsidstr' : 'DEFAULT'}) iparsdic.update({'inststr' : 'DEFAULT'}) iparsdic.update({'commupper' : 'commupper'}) iparsdic.update({'commlower' : 'commlow'}) # plotting parameters iparsdic.update({'imagesize' : '6'}) iparsdic.update({'colourmapid' : 'blue'}) iparsdic.update({'fontnumber' : '0'}) iparsdic.update({'sizeratiocross' : '1'}) iparsdic.update({'lwidth' : 1}) > mthumbs.run(iparsdic) test_pymakethumbs.py:64: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ iparsdic = {'autofname': 'yes', 'cattab': './testdata/testcat.fits', 'colourmapid': 'blue', 'commlower': 'commlow', ...} def run(iparsdic): ''' Main function of the script. Will change for 'run'. ''' print(f'Executing {__file__} {iparsdic}') # gets the parameters... # running parameters printparams = iparsdic['printparams'] printparams = str_to_bool(printparams) if printparams: thumb_log.log('info', 'Full parameter info: {}'.format(iparsdic)) dryrun = iparsdic['dryrun'] dryrun = str_to_bool(dryrun) # main data parameters imageset = iparsdic['imageset'] if not os.path.isfile(imageset): thumb_log.log('error', 'The given imageset cannot be found.') sys.exit(0) else: with fits.open(imageset) as imset: hdu = imset[0].header data = imset[0].data # source detection withsrclist = iparsdic['withsrclist'] withsrclist = str_to_bool(withsrclist) withcoords = iparsdic['withcoords'] withcoords = str_to_bool(withcoords) if not withcoords: withsrclist = True if not withsrclist and not withcoords: thumb_log.log('error', 'Either withcoords or withsrclist must be true.') sys.exit(0) # catalogue withcat = iparsdic['withcat'] withcat = str_to_bool(withcat) # source number selection if withcat or withsrclist: withsrcnum = iparsdic['withsrcnum'] srcnum = int(iparsdic['srcnum']) if withsrclist: srclisttab = iparsdic['srclisttab'] try: src_file, src_ext = srclisttab.split(':') except ValueError: thumb_log.log('warning', 'Could not split srclisttab. Will use The first non-primary extension.') src_file = srclisttab src_ext = 1 coords, n_images, srcnums = source_from_table(src_file, src_ext, srcnum) thumb_log.log('debug', 'Info from srclisttab: coords: {}. source numbers: {}.'.format(coords, srcnums)) else: # manual coordinates selection if withcoords: ra = float(iparsdic['ra']) dec = float(iparsdic['dec']) n_images = 1 coords = [(ra, dec)] if withcat and not withcoords: cattab = iparsdic['cattab'] try: cat_file, cat_ext = cattab.split(':') except ValueError: thumb_log.log('warning', 'Could not split cattab. Will use The first non-primary extension.') cat_file = cattab cat_ext = 1 if isinstance(srcnums, int): src_nums, srcids, detids, numhex, iau_vals = info_from_catalogue(cat_file, cat_ext, srcnums) else: src_nums = [] srcids = [] detids = [] numhex = [] iau_vals = [] for src in srcnums: src_nums_i, srcids_i, detids_i, numhex_i, iau_vals_i = info_from_catalogue(cat_file, cat_ext, src) src_nums.append(src_nums_i) srcids.append(srcids_i) detids.append(detids_i) numhex.append(numhex_i) iau_vals.append(iau_vals_i) thumb_log.log('debug', 'Catalogue overall info: src_nums: {0}, srcids: {1}, detids: {2}. Num.Hex: {3}.'.format(src_nums, srcids, detids, numhex)) # formatting parameters: autofname = iparsdic['autofname'] autofname = str_to_bool(autofname) if not autofname: outfilename = iparsdic['outfilename'] plot_title = outfilename if n_images != 1: thumb_log.log('warning', 'Since a fixed filename was passed but more than one images were expected only the first one will be created.') n_images = 1 else: gifroot = iparsdic['gifroot'] fnamestyle = iparsdic['fnamestyle'] gifsuffix = iparsdic['gifsuffix'] if '.GIF' in gifsuffix.upper(): thumb_log.log('warning', 'matplotlib does not support GIF format. Changing to png.') gifsuffix = '.png' fnameseparator = iparsdic['fnameseparator'] srcindexstyle = iparsdic['srcindexstyle'] if srcindexstyle.upper() == 'DEFAULT': if withcat: srcindexstyle = 'detid' elif withsrclist: srcindexstyle = 'srcnum' else: srcindexstyle = 'none' if srcindexstyle.upper() == 'NONE': srcindexstyle = '' elif srcindexstyle.upper() == 'SRCNUM': srcindexstyle = '/' elif srcindexstyle.upper() == 'HEXSRCNUM': srcindexstyle == '' thumb_log.log('warning', 'srcindexstyle=hexsrcnum is not yet supported. Switched to none') elif srcindexstyle.upper() == 'DETID': srcindexstyle = ':' elif srcindexstyle.upper() == 'SRCID': srcindexstyle = '/' else: srcindexstyle = '' thumb_log.log('warning', 'Unrecognised format. Using none.') # plotting options iaunameprefix = iparsdic['iaunameprefix'] obsidstr = iparsdic['obsidstr'] erangestr = iparsdic['erangestr'] inststr = iparsdic['inststr'] lwidth = iparsdic['lwidth'] commupper = iparsdic['commupper'] commlower = iparsdic['commlower'] imagesize = float(iparsdic['imagesize']) # arcmin imagesize = imagesize / 60 sizeratiocross = float(iparsdic['sizeratiocross']) sizeratiocross = sizeratiocross / 100 # the ratio is in % colourmap = iparsdic['colourmapid'] # refined for matplotlib manual_parameters = (obsidstr, inststr, erangestr, commupper, commlower) try: > colourmap = plt.cm.get_cmap(colourmap) E AttributeError: module 'matplotlib.cm' has no attribute 'get_cmap' ../../../lib/python/pysas/pymakethumbs/pymakethumbs.py:650: AttributeError ----------------------------- Captured stdout call ----------------------------- Executing /workspaces/sas/lib/python/pysas/pymakethumbs/pymakethumbs.py {'printparams': 'no', 'withsrclist': 'yes', 'imageset': './testdata/P0094411101M1U002IMAGE_8000.FIT', 'srclisttab': './testdata/P0094411101EPX000OBSMLI0000.FIT', 'withcoords': 'no', 'ra': '0', 'dec': '0', 'withcat': 'no', 'cattab': './testdata/testcat.fits', 'dryrun': 'no', 'srcnum': '0', 'withsrcnum': 'no', 'outfilename': '', 'fnamestyle': 'srcnum', 'gifsuffix': '.gif', 'gifroot': 'pytest', 'autofname': 'yes', 'fnameseparator': '____', 'srcindexstyle': 'DEFAULT', 'srcindexseparator': 'DEFAULT', 'iaunameprefix': '', 'erangestr': '3-12 keV', 'obsidstr': 'DEFAULT', 'inststr': 'DEFAULT', 'commupper': 'commupper', 'commlower': 'commlow', 'imagesize': '6', 'colourmapid': 'blue', 'fontnumber': '0', 'sizeratiocross': '1', 'lwidth': 1} ----------------------------- Captured stderr call ----------------------------- makethumb - WARNING - Could not split srclisttab. Will use The first non-primary extension. makethumb - WARNING - matplotlib does not support GIF format. Changing to png. ------------------------------ Captured log call ------------------------------- WARNING makethumb:logger.py:158 Could not split srclisttab. Will use The first non-primary extension. DEBUG makethumb:logger.py:158 Getting source info from source table. INFO makethumb:logger.py:158 Selecting all sources available in file ./testdata/P0094411101EPX000OBSMLI0000.FIT:1. DEBUG makethumb:logger.py:158 Info from srclisttab: coords: [(np.float64(86.55067485057059), np.float64(-69.29027119534162)), (np.float64(86.9076226232038), np.float64(-69.27873358752079)), (np.float64(86.53322881841363), np.float64(-69.1672784938973))]. source numbers: [1 2 3]. WARNING makethumb:logger.py:158 matplotlib does not support GIF format. Changing to png. =========================== short test summary info ============================ FAILED test_pymakethumbs.py::test_general - AttributeError: module 'matplotli... ============================== 1 failed in 1.66s =============================== Error while running ./testmakethumbs ERROR: one of the tests failed