Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support TOML as another settings file format #705

Closed
PrajwalM2212 opened this issue Feb 3, 2019 · 6 comments · Fixed by #720
Closed

Support TOML as another settings file format #705

PrajwalM2212 opened this issue Feb 3, 2019 · 6 comments · Fixed by #720
Assignees

Comments

@PrajwalM2212
Copy link
Member

PrajwalM2212 commented Feb 3, 2019

According to https://github.com/toml-lang/toml
TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics. TOML is designed to map unambiguously to a hash table. TOML should be easy to parse into data structures in a wide variety of languages.

TOML has widespread acceptance, documentation and robust parsers.
Also according to https://www.python.org/dev/peps/pep-0518/, TOML is

  1. Human-usable (unlike JSON ),
  2. Flexible (unlike configparser),
  3. Stems from a standard (unlike configparser)
  4. Not overly complex (unlike YAML).

Also TOML has been recommended as the configuration file for software packages to specify their build dependencies.
pyproject.toml is being used for this purpose. https://github.com/pypa/pip/blob/master/pyproject.toml

coala could provide TOML as a additional setting format.

  1. By following a well known standard like TOML, we would reduce the learning curve involved.
  2. When the current system gets complex, TOML will be a better choice than a custom INI.
  3. It provides flexibility, consistency, backwards compatibility and stems from a standard all of which are drawbacks of configparser.

This proposal issue is about supporting a new config file like coafile.toml along with .coafile.

coala/coala#4609

@li-boxuan
Copy link
Member

Similar to #702

@PrajwalM2212
Copy link
Member Author

PrajwalM2212 commented Feb 3, 2019

Thanks @li-boxuan for pointing that out. I also think the ideas at #702 should be described individually as well.
I would like to point out the differences tough.
In a way it is a improvement over the first project idea of #702 Standardising .coafile syntax for starters using YAML.

  1. This chooses TOML as its a better choice comapred to YAML. https://www.python.org/dev/peps/pep-0518/#other-file-formats
  2. Also this does not attempt to use toml as the only config file. It will help starters as due to its popularity and reduced learning curve. But it gives more than that like flexibility, consistency, backwards compatibility and standard.

This is based partially on discussions at coala/cEPs#11 and coala/coala#4511. This issue is derived from coala/coala#4609.

@jayvdb
Copy link
Member

jayvdb commented Feb 8, 2019

See https://gitter.im/coala/coala?at=5bfe8cb5f849b222e0b8bad7 , by @underyx , which provides a very good reason for the settings to be in a standardised file format.

@PrajwalM2212
Copy link
Member Author

Thank you @jayvdb . That is one of the most compelling reasons in defence of the project idea.

PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue Mar 10, 2019
This adds new projectproposal to current projects list

Closes coala#705
PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue Mar 10, 2019
This adds new projectproposal to current projects list

Closes coala#705
PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue Mar 13, 2019
This adds new projectproposal to current projects list

Closes coala#705
@RaiVaibhav
Copy link
Member

RaiVaibhav commented Mar 20, 2019

Great idea and thank you @PrajwalM2212 for pinging me for this, I can't mentor on the project (officially) as I have not applied for the mentor but If you need any help you know how to ping me 😛 and I will try my best to assist you asap.

@RaiVaibhav
Copy link
Member

@Makman2 @jayvdb Is this possible that I can help @PrajwalM2212 officially ?

PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue Mar 22, 2019
This adds new projectproposal to current projects list

Closes coala#705
PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue May 7, 2019
This adds new project proposal to current projects list

Closes coala#705
PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue May 7, 2019
This adds new project proposal to current projects list

Closes coala#705
PrajwalM2212 added a commit to PrajwalM2212/projects that referenced this issue Aug 25, 2019
This adds new project proposal to current projects list

Closes coala#705
@jayvdb jayvdb closed this as completed in 1086365 Aug 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

4 participants