GSoC Project: Extend Linter Integration

42 views
Skip to first unread message

yash....@somaiya.edu

unread,
May 21, 2017, 6:23:02 AM5/21/17
to coala-newcomers
Hi there ! I am Yash Nisar, an Information Technology student from Mumbai and a developer at coala. I shall be working on the project named as Extend Linter Integration which will be mentored by @Makman2 and mainly aims at extending the modularity of coala by the addition of new bears and improving the testing API.

What the project is about ?

The aim of the project is to ease the process of testing bears in coala by significantly improving the testing API to yield favorable, easy to understand results, add support for at least 9 additional useful linter bears, integrate the MarkdownBear with useful plugins, include remark-lint to report error messages and get the MarkdownBear to a bug free state, enhance documentation to include the newly written Linter bears.


How is your project helping coala and its community ?

  • Since, I’m planning to integrate at least 9 Linter bears, coala’s codebase will be enriched with the most useful Linter bears. This will increase flexibility and modularity of coala, eliminating the need to use different third party tools every time by the end user for different programming languages.

  • The testing API will provide useful messages to the bear writer and make the writing/testing of bears experience a lot smoother. The new testing API will point out the exact difference between the expected result that the user enters and the observed result that the bear returns, excluding the hard to understand diffs generated in the present case. This will eliminate the need to use a debugger when tests fail.
  • Robust testing methods will be implemented (ie.check_results(...) will be used instead of the other methods(ie. check_validity(...) and verify_local_bear(...))) that will help developers visualise the results in a fruitful way because asserting that a given local bear either yields or does not yield any results is not very advantageous.
  • The MarkdownBear will be rewritten with a couple of useful plugins like remark-lint-no-trailing-spaces, remark-validate-links plugin, etc and will yield effective error messages with the help of remark-lint. Other issues will be addressed and robust test methods will be written for a long term maintenance and prevent bugs from creeping in.
  • Enhanced documentation about the linter bears created during the coding period that would ease the process of writing  and debugging Linter bears for newcomers and make their experience with coala richer and upgrading information about ci, code coverage, etc.


What parts of coala do you have to work with in order to complete this project ? What else are you planning on using ?

  • coala/coala - For the testing API modification (enhancement of the LocalBearTestHelper class) and to edit coala API documentation

  • coala/coala-bears - To integrate the newly written Linter bears and their corresponding tests

  • coala/documentation - To upgrade the existing documentation

  • coala/bear-docs - To update bear-docs with my additionally implemented bears


The bears that will be integrated by the end of this project include:


Looking forward to a great summer with coala. Cheers !

Reply all
Reply to author
Forward
0 new messages