Articles on abhaykatheria's Bloghttps://blogs.python-gsoc.orgUpdates on different articles published on abhaykatheria's BlogenFri, 28 Aug 2020 04:01:11 +0000Final Blog Posthttps://blogs.python-gsoc.org/en/abhaykatherias-blog/final-blog-post/<p><img alt="laugh" src="https://blogs.python-gsoc.org/static/djangocms_text_ckeditor/ckeditor/plugins/smiley/images/teeth_smile.png"></p> <p>So this is the Final Blog post. GsoC was Super fun I learned a lot interacted with cool people, made a network of awesome developers, worked under the best mentors. You can check my work product here<br> <a href="https://gist.github.com/abhaykatheria/9b4c5186f06f8ba9ede4bb59d254644c">https://gist.github.com/abhaykatheria/9b4c5186f06f8ba9ede4bb59d254644c</a></p> <p>It was an awesome experience thanks to PSF and my mentors for such an awesome opportunity  :)</p> <p>I will keep on contrubuting to PSF after gsoc.</p> <p>Cheers, have a good one...</p>abhay.katheria1998@gmail.com (abhaykatheria)Fri, 28 Aug 2020 04:01:11 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/final-blog-post/Weekly Check-in #7https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-7-11/<div class="lead"> <div class="lead cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-759 cms-render-model"> <div class="lead cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-720 cms-render-model"> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>What did I do this week?</strong></h1> <p><strong><span style="font-family: Courier New,Courier,monospace;">I finalised my work this week and prepared for final evaluation also helped test the multistage analysis patch by ForgetMe17.</span></strong></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>What's next?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model">I will try to implement the license parser after gsoc is over I will still be contributing to tern.</p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>Did I get stuck somewhere?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model"><strong><span style="font-family: Courier New,Courier,monospace;">none</span></strong></p> </div> </div> </div>abhay.katheria1998@gmail.com (abhaykatheria)Sun, 23 Aug 2020 08:53:32 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-7-11/Weekly Blog Post #6https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-6/<p>So I took this week off to prepare for college tests meanwhile i have been working on license extraction from copyrights string i found a package called scancode toolkit which have a sub-module called licensedcode which can help in this objective but since its in early production phase i am coming across a lot of bugs like scancode library does not work on py3.7or py3.8. and its api module is also buggy so i am looking into it. I hope I will finish this by the end of this week.:P</p> <p> </p>abhay.katheria1998@gmail.com (abhaykatheria)Thu, 20 Aug 2020 03:29:20 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-6/Weekly Check-in #6https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-6-14/<div class="lead"> <div class="lead cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-720 cms-render-model"> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>What did I do this week?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-543 cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610"><strong>So Rose opened up a pr which will allow tern to set the environment variables. Which really shrinks the size of shell scripts required to get metadata. I also finalized my pr for metadata collection.</strong></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>What's next?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model"><strong>Waiting for the pr to be approved by mentors :)</strong></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>Did I get stuck somewhere?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model"><strong><span style="font-family: Courier New,Courier,monospace;">Still stuck with parsing copyrights to obtain license.</span></strong></p> </div> </div>abhay.katheria1998@gmail.com (abhaykatheria)Mon, 10 Aug 2020 15:24:43 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-6-14/Weekly Blog Post #5https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-5/<p>Hi everyone  a little late on this blog as I have to go back to college to get my stuff back. I passed the second evaluation, yay,. Till now I have been able to get the module metadata except the licenses. The licenses can be collected in 2 ways one is through making bash scripts to find and collect licenses from the module directory. Since licenses files dont have a set structure or a convention that's why its getting difficult and a foolproof  guarantee cant be given. Another way is through making an in house copyright to License parser. For debian licenses we have debut  used in tern I have to come up with similar kind of parser. I also have one idea of training a model from data collected by using github's api but thats just overkill.</p>abhay.katheria1998@gmail.com (abhaykatheria)Thu, 06 Aug 2020 04:01:04 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-5/Weekly Check-in #5https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-5-9/<div class="lead"> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>What did I do this week?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-543 cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610"><span style="font-family: Courier New,Courier,monospace;"><strong>After adding the functionality of cd ing into workdir. I was able to give more time copyright extraction. Currently its under testing but I will try to get it done asap.</strong></span></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>What's next?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model"><strong><span style="font-family: Courier New,Courier,monospace;">Some testing and getting the pr merged.</span></strong></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610 cms-plugin-aldryn_newsblog-article-lead_in-650"><strong>Did I get stuck somewhere?</strong></h1> <p class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-650 cms-render-model"><strong><span style="font-family: Courier New,Courier,monospace;">Got stuck with Shell script but managed to find a way around .</span></strong></p> </div>abhay.katheria1998@gmail.com (abhaykatheria)Tue, 28 Jul 2020 03:30:56 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-5-9/Weekly Blog Post #4https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-4/<p><span style="font-family: Courier New,Courier,monospace;">Hi everyone, Its been exciting 8 weeks my exams were scrapped this sem and I got a decent score :) . Also I am still working on go lang metadata extraction. Now the issue of cd'ing into the workdir is resolved and the PR will get merged soon :) . Now only issue left is collecting copyrights. If I can get it done by the next week it will be really great. I think thats all I have for this blog post. </span></p> <p><span style="font-family: Courier New,Courier,monospace;">Adios Amigos.</span></p>abhay.katheria1998@gmail.com (abhaykatheria)Wed, 22 Jul 2020 05:33:44 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-4/Weekly Check-in #4https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-4-9/<h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610"><strong>What did I do this week?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">T<strong>his week was mostly debugging the shell scripts for go metadata extraction.</strong></span></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610"><strong>What's next?</strong></h1> <p><strong><span style="font-family: Courier New,Courier,monospace;">I aim to complete the work by next week.</span></strong></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566 cms-plugin-aldryn_newsblog-article-lead_in-610"><strong>Did I get stuck somewhere?</strong></h1> <p><strong><span style="font-family: Courier New,Courier,monospace;">Tern is not picking up go command. and also I have to find a way to cd into wrokdir.</span></strong></p>abhay.katheria1998@gmail.com (abhaykatheria)Fri, 10 Jul 2020 15:01:16 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-4-9/Weekly Blog Post #3https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-3/<p><span style="font-family: Courier New,Courier,monospace;">So this week I had my first evaluation. It went great also I received my stipend today so hurray.Extracting golang metadata with shell is frustrating not every go lang module have licenses or the copyright text in a set format. So writing a generic script is quiet challenging I researched on how go license works turns out they have a dedicated license parser as well as scripts which can request license from github. But we can't do that. This week was mostly debugging and restarting again. Now I am trying to work on go.sum file. Extracting names and versions is easy. So all the go modules live in ~/go/pkg/mod and then repo name. But we can't cd into module dir with its name because some does which have upper case letter in their name have different directory name. My exams are also nearing so I have to study for that too . :P</span></p>abhay.katheria1998@gmail.com (abhaykatheria)Mon, 06 Jul 2020 18:09:31 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-3/Weekly Check-in #3https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-3-11/<h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566"><strong>What did I do this week?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">I mostly worked on golang module copyright extraction for tern reports. Also added tern html format to our CI.</span></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566"><strong>What's next?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">Will work on extraction of licenses this week.</span></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model cms-plugin-aldryn_newsblog-article-lead_in-566"><strong>Did I get stuck somewhere?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">Some golang modules from official registry have license of type other than conventional licenses. So that's a problem i still need to figure out.</span></p>abhay.katheria1998@gmail.com (abhaykatheria)Mon, 29 Jun 2020 06:19:48 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-3-11/Weekly Blog Post #2https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-2/<p><span style="font-family: Courier New,Courier,monospace;">Hi every one, So after 3 weeks my PR finally got merged now tern have html feature up and running. I had some quizzes at the start of week so it was a very busy start of the week.</span></p> <p><span style="font-family: Courier New,Courier,monospace;">For now I have to work on the golang modules metadata extraction. Now this is a task Ive mentioned in my earlier blog posts also. Its been quite some time since I ve been banging my head on the wall. golang does not have a singular registry and package manager like node. I thought of using github rest api with but then curl does not comes bundled with all container images.So this is my next part of proposal.</span></p> <p><span style="font-family: Courier New,Courier,monospace;">I have my meet with mentors this week I think I will find something useful by then.</span></p> <p> </p>abhay.katheria1998@gmail.com (abhaykatheria)Wed, 24 Jun 2020 04:21:13 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-2/Weekly Check-in #2https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-2-7/<h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model"><strong>What did I do this week?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">Did some code clean up for the pr to be merged. Learnt about plugin management using stevedore and tern uses it to create new formats. </span></p> <p><span style="font-family: Courier New,Courier,monospace;">Also did some research on go metadata extraction.</span></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model"><strong>What's next?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">Will try to get the pr for html format merged by this week. And learn more about retrieving licenses of go modules.</span></p> <h1 class="cms-plugin cms-plugin-aldryn_newsblog-article-lead_in-543 cms-render-model"><strong>Did I get stuck somewhere?</strong></h1> <p><span style="font-family: Courier New,Courier,monospace;">Unlike npm, pip and other package managers go does not have a way to list the metadata directly. Also there is not a singular registry where all modules can be found which makes it difficult to extract licenses of modules.</span></p>abhay.katheria1998@gmail.com (abhaykatheria)Mon, 15 Jun 2020 17:03:46 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-2-7/Weekly Blog Post #1https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-1/<h4><span style="font-family: Courier New,Courier,monospace;">Tern can generate container analysis reports in different formats like json, txt, yaml etc. but the output genrated by tern's json report</span> <span style="font-family: Courier New,Courier,monospace;">was very hard to read. So my task was to render to this json data beautifully in a html page which is more readable and intuitive. I made the code for the html page generation.</span></h4> <h4><span style="font-family: Courier New,Courier,monospace;">So this week I mostly worked on changing the UI of html page as requested by mentors.</span></h4> <h4><span style="font-family: Courier New,Courier,monospace;">My mentors suggested to preserve the json report generation of tern as it is now and create new format which will give reports in html.</span></h4> <h4><span style="font-family: Courier New,Courier,monospace;">So now users can choose html as a format from the command line and generate html reports for their container super easy to read.</span></h4> <h4><span style="font-family: Courier New,Courier,monospace;">Tern uses Stevedore as its plugin manager which makes it super easy to create new plugins.</span></h4> <h4><span style="font-family: Courier New,Courier,monospace;">But I still have a little code clean up to do. I look forward to discuss with it my mentors on our next meet.</span></h4> <h4><span style="font-family: Courier New,Courier,monospace;">In the upcoming week I will start working metadata extraction of glolang package managers.</span></h4>abhay.katheria1998@gmail.com (abhaykatheria)Sun, 07 Jun 2020 06:13:37 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-blog-post-1/Weekly Check-in #1https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-1-1/<p style="text-align: center;"><a href="https://github.com/tern-tools/tern"><img alt="" src="https://raw.githubusercontent.com/tern-tools/tern/master/docs/img/tern_logo.png"></a></p> <div> </div> <p><span style="font-family: Lucida Sans Unicode,Lucida Grande,sans-serif;"><span style="font-family: Courier New,Courier,monospace;">Hi everyone I am Abhay, I am a cse undergrad from India. I got selected in TERN sub-org to work on this summer. Tern is container analysis tool.<br> You can read my blog post here to learn more about it.<br> This first of many blog posts to come. So lets get started.</span></span></p> <h2><span style="font-family: Courier New,Courier,monospace;">What did you do this week ?</span></h2> <p><span style="font-family: Courier New,Courier,monospace;">I started working on creating UI for JSON reports generated by Tern. At first I used json2html library but that gave very ugly results :p. After that I decided to make a tree view for JSON data. I started writing recursive functions to generate the tree-view HTML report. I've opened a PR and making the changes requested by the mentors. I also had my first meeting with my mentors they are very helpful and supportive.</span></p> <h2><span style="font-family: Courier New,Courier,monospace;">Did you get stuck anywhere ?</span></h2> <p><span style="font-family: Courier New,Courier,monospace;">While writing the recursive code I struggled as the drop-down buttons didn't worked. Turns out ` &lt;ul&gt;`  tag cannot have another `&lt;ul&gt;` as its child. I found this with the help of html validator tool.</span></p> <h2><span style="font-family: Courier New,Courier,monospace;">What is comping up next?</span></h2> <ul> <li><span style="font-family: Courier New,Courier,monospace;">I have another meeting with my mentors.            </span></li> <li><span style="font-family: Courier New,Courier,monospace;">Make changes to the PR requested by mentors.            </span></li> <li><span style="font-family: Courier New,Courier,monospace;">Start working on golang modules metadata extraction.</span></li> </ul> <p> </p>abhay.katheria1998@gmail.com (abhaykatheria)Sat, 30 May 2020 05:22:59 +0000https://blogs.python-gsoc.org/en/abhaykatherias-blog/weekly-check-in-1-1/