Repository 'tool_factory_2'
hg clone https://toolshed.g2.bx.psu.edu/repos/fubar/tool_factory_2

Changeset 44:23ad2924bf78 (2020-08-16)
Previous changeset 43:e7e9732ebed6 (2020-08-16) Next changeset 45:668c37cc8962 (2020-08-16)
Commit message:
Deleted selected files
removed:
toolfactory/.github/workflows/commit.yml
toolfactory/.gitignore
toolfactory/.shed.yml
toolfactory/html_dir.py
toolfactory/testtf.sh
b
diff -r e7e9732ebed6 -r 23ad2924bf78 toolfactory/.github/workflows/commit.yml
--- a/toolfactory/.github/workflows/commit.yml Sun Aug 16 08:51:14 2020 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,68 +0,0 @@
-name: Galaxy Tool Linting and Tests for PR
-# run planemo on a git repository containing a single tool
-# as a github action. Does NOT run flake8. So, bite me.
-# ross lazarus august 2020
-on: [pull_request,push]
-env:
-  GALAXY_REPO: https://github.com/galaxyproject/galaxy
-  GALAXY_RELEASE: release_20.05
-jobs:
-  setup:
-    name: setup environment and python
-    runs-on: ubuntu-latest
-    strategy:
-      matrix:
-        python-version: [3.7]
-    steps:
-    - name: Print github context properties
-      run: |
-        echo 'event: ${{ github.event_name }}'
-        echo 'sha: ${{ github.sha }}'
-        echo 'ref: ${{ github.ref }}'
-        echo 'head_ref: ${{ github.head_ref }}'
-        echo 'base_ref: ${{ github.base_ref }}'
-        echo 'event.before: ${{ github.event.before }}'
-        echo 'event.after: ${{ github.event.after }}'
-    - uses: actions/setup-python@v1
-      with:
-        python-version: ${{ matrix.python-version }}
-    - uses: actions/checkout@v2
-      with:
-    # planemo does not seem to want to install the requirement galaxyxml 
-    # into the venv it manages at tool testing so do it the old skool way
-        repository: 'galaxyproject/galaxy'
-        path: 'galaxy'
-    - name: make venv ready for this galaxy and planemo 
-      run:  |
-        python3 -m venv $GITHUB_WORKSPACE/galaxy/.venv
-        . $GITHUB_WORKSPACE/galaxy/.venv/bin/activate
-        pip install --upgrade pip
-        pip install wheel
-        pip install -r $GITHUB_WORKSPACE/galaxy/requirements.txt
-        # pip install galaxyxml # currently includes a patched working version awaiting PR merge
-    - name: Upgrade pip
-      run: pip install --upgrade pip
-    # Install the `wheel` package so that when installing other packages which
-    # are not available as wheels, pip will build a wheel for them, which can be cached.
-    - name: Install wheel
-      run: pip install wheel
-    - name: Install Planemo and flake8
-      run: pip install planemo flake8 flake8-import-order
-    # galaxyxml temporarily removed until PR accepted
-    - uses: actions/checkout@v2
-      with:
-        fetch-depth: 1
-    - name: flake8
-      run: flake8 --ignore=E2,E3,E4,E5,W3,W505
-    - name: Planemo lint
-      run: planemo lint .
-    - name: Planemo test tool
-      run: planemo test --galaxy_root $GITHUB_WORKSPACE/galaxy --test_output tool_test_output.html --skip_venv --test_output_json tool_test_output.json --galaxy_python_version ${{ matrix.python-version }}  .
-    - name: Copy artifacts into place
-      run: |
-        mkdir upload
-        mv tool_test_output.json tool_test_output.html upload/
-    - uses: actions/upload-artifact@v2.0.1
-      with:
-        name: 'All tool test results'
-        path: upload
b
diff -r e7e9732ebed6 -r 23ad2924bf78 toolfactory/.gitignore
--- a/toolfactory/.gitignore Sun Aug 16 08:51:14 2020 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,129 +0,0 @@
-# Byte-compiled / optimized / DLL files
-__pycache__/
-*.py[cod]
-*$py.class
-
-# C extensions
-*.so
-
-# Distribution / packaging
-.Python
-build/
-develop-eggs/
-dist/
-downloads/
-eggs/
-.eggs/
-lib/
-lib64/
-parts/
-sdist/
-var/
-wheels/
-pip-wheel-metadata/
-share/python-wheels/
-*.egg-info/
-.installed.cfg
-*.egg
-MANIFEST
-
-# PyInstaller
-#  Usually these files are written by a python script from a template
-#  before PyInstaller builds the exe, so as to inject date/other infos into it.
-*.manifest
-*.spec
-
-# Installer logs
-pip-log.txt
-pip-delete-this-directory.txt
-
-# Unit test / coverage reports
-htmlcov/
-.tox/
-.nox/
-.coverage
-.coverage.*
-.cache
-nosetests.xml
-coverage.xml
-*.cover
-*.py,cover
-.hypothesis/
-.pytest_cache/
-
-# Translations
-*.mo
-*.pot
-
-# Django stuff:
-*.log
-local_settings.py
-db.sqlite3
-db.sqlite3-journal
-
-# Flask stuff:
-instance/
-.webassets-cache
-
-# Scrapy stuff:
-.scrapy
-
-# Sphinx documentation
-docs/_build/
-
-# PyBuilder
-target/
-
-# Jupyter Notebook
-.ipynb_checkpoints
-
-# IPython
-profile_default/
-ipython_config.py
-
-# pyenv
-.python-version
-
-# pipenv
-#   According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
-#   However, in case of collaboration, if having platform-specific dependencies or dependencies
-#   having no cross-platform support, pipenv may install dependencies that don't work, or not
-#   install all needed dependencies.
-#Pipfile.lock
-
-# PEP 582; used by e.g. github.com/David-OConnor/pyflow
-__pypackages__/
-
-# Celery stuff
-celerybeat-schedule
-celerybeat.pid
-
-# SageMath parsed files
-*.sage.py
-
-# Environments
-.env
-.venv
-env/
-venv/
-ENV/
-env.bak/
-venv.bak/
-
-# Spyder project settings
-.spyderproject
-.spyproject
-
-# Rope project settings
-.ropeproject
-
-# mkdocs documentation
-/site
-
-# mypy
-.mypy_cache/
-.dmypy.json
-dmypy.json
-
-# Pyre type checker
-.pyre/
b
diff -r e7e9732ebed6 -r 23ad2924bf78 toolfactory/.shed.yml
--- a/toolfactory/.shed.yml Sun Aug 16 08:51:14 2020 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,13 +0,0 @@
-name: toolfactory
-owner: fubar
-description: ToolFactory - tool to make Galaxy tools ready for the toolshed
-homepage_url: https://github.com/fubar2/toolfactory
-long_description: |
-    ToolFactory - turn executable packages and R/python/perl/bash scripts into ordinary Galaxy tools
-
-    Creating re-usable tools from scripts: The Galaxy Tool Factory Ross Lazarus; Antony Kaspi; Mark Ziemann; The Galaxy Team 
-    Bioinformatics 2012; doi: 10.1093/bioinformatics/bts573
-remote_repository_url: https://github.com/fubar2/toolfactory
-type: tool_dependency_definition
-categories:
-- Tool Generators
b
diff -r e7e9732ebed6 -r 23ad2924bf78 toolfactory/html_dir.py
--- a/toolfactory/html_dir.py Sun Aug 16 08:51:14 2020 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
b'@@ -1,180 +0,0 @@\n-\n-class tooloutHTMLifyer(self):\n-\n-    def compressPDF(self,inpdf=None,thumbformat=\'png\'):\n-        """need absolute path to pdf\n-           note that GS gets confoozled if no $TMP or $TEMP\n-           so we set it\n-        """\n-        assert os.path.isfile(inpdf), "## Input %s supplied to %s compressPDF not found" % (inpdf,self.myName)\n-        hlog = os.path.join(self.opts.output_dir,"compress_%s.txt" % os.path.basename(inpdf))\n-        sto = open(hlog,\'a\')\n-        our_env = os.environ.copy()\n-        our_tmp = our_env.get(\'TMP\',None)\n-        if not our_tmp:\n-            our_tmp = our_env.get(\'TEMP\',None)\n-        if not (our_tmp and os.path.exists(our_tmp)):\n-            newtmp = os.path.join(self.opts.output_dir,\'tmp\')\n-            try:\n-                os.mkdir(newtmp)\n-            except:\n-                sto.write(\'## WARNING - cannot make %s - it may exist or permissions need fixing\\n\' % newtmp)\n-            our_env[\'TEMP\'] = newtmp\n-            if not self.temp_warned:\n-               sto.write(\'## WARNING - no $TMP or $TEMP!!! Please fix - using %s temporarily\\n\' % newtmp)\n-               self.temp_warned = True          \n-        outpdf = \'%s_compressed\' % inpdf\n-        cl = ["gs", "-sDEVICE=pdfwrite", "-dNOPAUSE", "-dUseCIEColor", "-dBATCH","-dPDFSETTINGS=/printer", "-sOutputFile=%s" % outpdf,inpdf]\n-        x = subprocess.Popen(cl,stdout=sto,stderr=sto,cwd=self.opts.output_dir,env=our_env)\n-        retval1 = x.wait()\n-        sto.close()\n-        if retval1 == 0:\n-            os.unlink(inpdf)\n-            shutil.move(outpdf,inpdf)\n-            os.unlink(hlog)\n-        hlog = os.path.join(self.opts.output_dir,"thumbnail_%s.txt" % os.path.basename(inpdf))\n-        sto = open(hlog,\'w\')\n-        outpng = \'%s.%s\' % (os.path.splitext(inpdf)[0],thumbformat)\n-        if self.useGM:        \n-            cl2 = [\'gm\', \'convert\', inpdf, outpng]\n-        else: # assume imagemagick\n-            cl2 = [\'convert\', inpdf, outpng]\n-        x = subprocess.Popen(cl2,stdout=sto,stderr=sto,cwd=self.opts.output_dir,env=our_env)\n-        retval2 = x.wait()\n-        sto.close()\n-        if retval2 == 0:\n-             os.unlink(hlog)\n-        retval = retval1 or retval2\n-        return retval\n-\n-\n-    def getfSize(self,fpath,outpath):\n-        """\n-        format a nice file size string\n-        """\n-        size = \'\'\n-        fp = os.path.join(outpath,fpath)\n-        if os.path.isfile(fp):\n-            size = \'0 B\'\n-            n = float(os.path.getsize(fp))\n-            if n > 2**20:\n-                size = \'%1.1f MB\' % (n/2**20)\n-            elif n > 2**10:\n-                size = \'%1.1f KB\' % (n/2**10)\n-            elif n > 0:\n-                size = \'%d B\' % (int(n))\n-        return size\n-\n-    def makeHtml(self):\n-        """ Create an HTML file content to list all the artifacts found in the output_dir\n-        """\n-\n-        galhtmlprefix = """<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> \n-        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> \n-        <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> \n-        <meta name="generator" content="Galaxy %s tool output - see http://g2.trac.bx.psu.edu/" /> \n-        <title></title> \n-        <link rel="stylesheet" href="/static/style/base.css" type="text/css" /> \n-        </head> \n-        <body> \n-        <div class="toolFormBody"> \n-        """ \n-        galhtmlattr = """<hr/><div class="infomessage">This tool (%s) was generated by the <a href="https://bitbucket.org/fubar/galaxytoolfactory/overview">Galaxy Tool Factory</a></div><br/>""" \n-        galhtmlpostfix = """</div></body></html>\\n"""\n-\n-        flist = os.listdir(self.opts.output_dir)\n-        flist = [x for x in flist if x != \'Rplots.pdf\']\n-        flist.sort()\n-        html = []\n-        html.append(galhtmlprefix % progname)\n-        html.append(\'<div class="infomessage">Galaxy T'..b'% (fname,fname,sfsize))\n-                else:\n-                    fhtml.append(\'<tr><td><a href="%s">%s</a></td><td>%s</td></tr>\' % (fname,fname,sfsize))\n-            for logfname in logfiles: # expect at least tlog - if more\n-                if os.path.abspath(logfname) == os.path.abspath(self.tlog): # handled later\n-                    sectionname = \'All tool run\'\n-                    if (len(logfiles) > 1):\n-                        sectionname = \'Other\'\n-                    ourpdfs = pdflist\n-                else:\n-                    realname = os.path.basename(logfname)\n-                    sectionname = os.path.splitext(realname)[0].split(\'_\')[0] # break in case _ added to log\n-                    ourpdfs = [x for x in pdflist if os.path.basename(x[0]).split(\'_\')[0] == sectionname]\n-                    pdflist = [x for x in pdflist if os.path.basename(x[0]).split(\'_\')[0] != sectionname] # remove\n-                nacross = 1\n-                npdf = len(ourpdfs)\n-\n-                if npdf > 0:\n-                    nacross = math.sqrt(npdf) ## int(round(math.log(npdf,2)))\n-                    if int(nacross)**2 != npdf:\n-                        nacross += 1\n-                    nacross = int(nacross)\n-                    width = min(400,int(1200/nacross))\n-                    html.append(\'<div class="toolFormTitle">%s images and outputs</div>\' % sectionname)\n-                    html.append(\'(Click on a thumbnail image to download the corresponding original PDF image)<br/>\')\n-                    ntogo = nacross # counter for table row padding with empty cells\n-                    html.append(\'<div><table class="simple" cellpadding="2" cellspacing="2">\\n<tr>\')\n-                    for i,paths in enumerate(ourpdfs): \n-                        fname,thumb = paths\n-                        s= """<td><a href="%s"><img src="%s" title="Click to download a PDF of %s" hspace="5" width="%d" \n-                           alt="Image called %s"/></a></td>\\n""" % (fname,thumb,fname,width,fname)\n-                        if ((i+1) % nacross == 0):\n-                            s += \'</tr>\\n\'\n-                            ntogo = 0\n-                            if i < (npdf - 1): # more to come\n-                               s += \'<tr>\'\n-                               ntogo = nacross\n-                        else:\n-                            ntogo -= 1\n-                        html.append(s)\n-                    if html[-1].strip().endswith(\'</tr>\'):\n-                        html.append(\'</table></div>\\n\')\n-                    else:\n-                        if ntogo > 0: # pad\n-                           html.append(\'<td>&nbsp;</td>\'*ntogo)\n-                        html.append(\'</tr></table></div>\\n\')\n-                logt = open(logfname,\'r\').readlines()\n-                logtext = [x for x in logt if x.strip() > \'\']\n-                html.append(\'<div class="toolFormTitle">%s log output</div>\' % sectionname)\n-                if len(logtext) > 1:\n-                    html.append(\'\\n<pre>\\n\')\n-                    html += logtext\n-                    html.append(\'\\n</pre>\\n\')\n-                else:\n-                    html.append(\'%s is empty<br/>\' % logfname)\n-        if len(fhtml) > 0:\n-           fhtml.insert(0,\'<div><table class="colored" cellpadding="3" cellspacing="3"><tr><th>Output File Name (click to view)</th><th>Size</th></tr>\\n\')\n-           fhtml.append(\'</table></div><br/>\')\n-           html.append(\'<div class="toolFormTitle">All output files available for downloading</div>\\n\')\n-           html += fhtml # add all non-pdf files to the end of the display\n-        else:\n-            html.append(\'<div class="warningmessagelarge">### Error - %s returned no files - please confirm that parameters are sane</div>\' % self.opts.interpreter)\n-        html.append(galhtmlpostfix)\n-        htmlf = file(self.opts.output_html,\'w\')\n-        htmlf.write(\'\\n\'.join(html))\n-        htmlf.write(\'\\n\')\n-        htmlf.close()\n-        self.html = html\n-\n-\n'
b
diff -r e7e9732ebed6 -r 23ad2924bf78 toolfactory/testtf.sh
--- a/toolfactory/testtf.sh Sun Aug 16 08:51:14 2020 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,2 +0,0 @@
-planemo test --no_cleanup --no_dependency_resolution --skip_venv --galaxy_root ~/galaxy ~/galaxy/tools/tool_makers/toolfactory &>foo
-