collaborating_projects | desc | developers_involved | difficulty | status | initiatives | issues | markdown | mentors | name | requirements | tags | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Extract useful data from a project's configuration files to build a relevant `.coafile`. |
medium |
completed |
|
enhance-coala-quickstart.md |
|
Enhance coala-quickstart |
|
|
coala-quickstart is a tool that
helps users to quickly get started with coala. It generates a .coafile
(coala's configuration file) that is tailored to the project. Currently,
coala-quickstart automatically identifies relevant bears for the project
based on the languages used and has a clean and simple command-line interface
for taking user’s input when required.
However, there’s scope for improvement in the following areas:
- Utilizing information from common configuration files: Some projects have
configuration files like
Gruntfile.js
,Gulpfile.js
,rakefile
,package.json
, etc., which may contain useful data that's relevant to coala-quickstart. For example, if a project's Gulpfile.js specifies which files are to be linted with csslint, we could use this information to target CSSLintBear at exactly these files. - Improving the interface:
- Removing non user-friendly warnings.
- Increasing automation.
- Validate user input before writing to the generated coafile.
- Continuous Integration: Like other coala repositories, add Appveyor (Windows) and Travis (OSX) integartions.
PREPARATION/BONDING 4th May - 29th May
- Identified all the kinds of configuration files to be worked on in the project.
- Figure out all the useful information that could be extracted from these files.
- Get the cEP coala/cEPs#80 merged.
CODING PHASE 1: Extracting Information 30th May - 26th June
- The basic structure of the information extraction system is implemented.
- Extract information from
Gruntfile.js
,package.json
andGemfile
.
CODING PHASE 2: Utilizing the Information 30th June - 24th July
- CLI: Add autocomplete feature, add prompts for "detect" and "fix" capabilities.
- Collect and organize bears' metadata.
- Filter and recommend bears after utilizing extracted information.
CODING PHASE 3: CLI enhancements 28th July - 21st August
- Validate user input.
- Fix warning and formattings on the CLI.
- Continuous Integration.
- Complete Pending tasks (if any).
- Implement
.editorconfig
parser and extract information from.editorconfig
- Extract information from other meta-files.
- Smart update of generated
.coafile
w.r.t. changes in meta-files. - Installing required bear-dependencies using cib.