Week 10-11: Enhancing Cwltool

by Kapil Kumar — on

cover-image

GSOC’17 Tenth and Eleventh Week: 1 Aug 2017- 14 Aug 2017

We started our week with working on Python 3 compatibility for cwltool on windows. While working on this we encountered issues like avro-cwl package was downloaded as egg, hardcoded path in past module, Cryptogen (random generator) for python not working. This issue involves 3 PR’s:

  • A pull request to avro-cwl: We disabled zip_safe flag so that this package do not get installed as .egg file. here is the PR.
  • A pull request to Past module: We are using past module to run avro library which is python 2 compatible to run on python 3. In past module some of the paths were harcoded and required the presence of tmp folder in the Drive’s root. We made a correcting PR and hopes that it will be merged as soon as possible. Here is the PR.
  • A pull request for python3 comaptibility to cwltool: Here we made some changes to appveyor file, added SYSTEMROOT as an env variable when making jobs and resolved some python 3 issues that arised due to different encoding used. Here is the corresponding PR.

After these PR’s, windows documentation needed some modification. Here is the corresponding PR, currently under work in progress.

Later we worked on Loading Input over Http/Https feature. Earlier we used to load workflows over http but input files were still needed to be present locally. In this PR we added a feature to load inputs over http. File caching is used to avoid downloading files again and again. A unit test was added for this feature.

Some minor issues were also addressed like unavailability of message field inside exceptions on cwltest, corresponding PR and raising the min version required of request module.

This week I would be working on caching issues on cwltool. I am also trying to run cwltool from inside Ipython Notebook but haven’t reached any concrete results yet, I will try getting this to work.

Comments