Week 2: A Roller Coaster Ride!!

by Kapil Kumar — on

cover-image

GSOC’17 Second Week: 5 June 2017- 11 June 2017

This week I worked on windows compatibility for cwltool. In first few days I documented roadblocks in windows compatibility and tried to find their solution. Initially some of the issues that I faced were:

  • Unsupported Scheme
  • Windows path separator
  • Symlinks

First two issues didn’t took much time as I confronted them in schema-salad as well.
Third one took time as Symlinks or symbolic links doesn’t work on windows(..or it does but you need admin privileges everytime you execute your program)
Creating an alternative path for execution on windows to avoid use of symlinks took second half of the week.

Over the weekend I worked on other unexpected issues like

  • NamedTempFile: Apparently on unix we can open a temp file and read/write on it without first closing it while on windows you can’t. And once you close a NamedTempFile object it gets deleted by default.
  • windows environment: On windows, a subprocess class expects only string as its environment input.
  • TEMP variable: Subprocess executionn on windows need TEMP variable always set, there is no such requirement on linux though.

Once this task gets over I am thinking of writing a blog discussing possible problems you may encounter in porting a linux based software to windows.

I also made a PR to allow builds on merging but avoiding double builds on each Pull Request on Travis.

Overall, this week was like a roller coaster ride with many ups and down moments.
In the upcoming week I will be working on remaining problems in windows compatibility. Here is my current progess

Comments