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

Move installed plugins to options.ini and deprecate kolibri_settings.json #17

Closed
1 of 3 tasks
benjaoming opened this issue Feb 1, 2016 · 13 comments
Closed
1 of 3 tasks

Comments

@benjaoming
Copy link
Contributor

benjaoming commented Feb 1, 2016

Currently, we use JSON, which isn't human friendly. This was under the assumption that ConfigParser (Python 2) and configparser (Python 3) would be terrible to try and unify. However, it turns out there's a backport of Python 3's configparser for Python 2:

https://pypi.python.org/pypi/configparser

@rtibbles you asked about .ini files, thanks for reminding me about this :)

@indirectlylit
Copy link
Contributor

Note - this refers to the ~/.kolibri/kolibri_settings.json file

@indirectlylit
Copy link
Contributor

The main issue here was that the settings file is hard for a developer to manually edit.

As an easier alternative to switching formats, I submitted a quick PR to simply format the JSON in a more developer-friendly way. I think this should suffice to close this issue? (Most devs are familiar with editing JSON)

rtibbles pushed a commit that referenced this issue Jun 1, 2017
@benjaoming
Copy link
Contributor Author

Can we re-open this?

I actually liked the unreadable JSON because it avoided people messing around in it with manual edits and writing instructions with references to this file :)

It's nice that the JSON file is readable but there's still no semantic verification or documentation. This means that we're half-encouraging deployments to base things off a configuration file that we don't really support, it's an internal file still.

Being backwards compatible on an interface we didn't intend, can have serious negative consequences.

Ideally, the configuration file is a public, human interface, or it's an un-readable mess that discourages any kind of interaction.

@indirectlylit
Copy link
Contributor

Until #106 is fixed, manually editing the config file is a fairly common activity

@indirectlylit indirectlylit reopened this Jun 26, 2017
@benjaoming
Copy link
Contributor Author

True that! So you're suggesting to fix #106 - I'm stepping up to that!

@indirectlylit
Copy link
Contributor

see also #2019

@benjaoming
Copy link
Contributor Author

#3607

@rtibbles
Copy link
Member

rtibbles commented Jun 1, 2018

Shall we close this now, or maybe migrate kolibri_settings.json to an ini file?

@benjaoming benjaoming changed the title Switch kolibri.utils.conf to use configparser Move installed plugins to options.ini and depricate kolibri_options.json Jun 1, 2018
@benjaoming
Copy link
Contributor Author

@rtibbles for non-human readable settings it still serves a purpose.. but I guess we don't have any of such? 🎉

I have changed the title of the issue, reduce, reuse, recycle 💚

@benjaoming benjaoming removed their assignment Jun 1, 2018
@rtibbles
Copy link
Member

rtibbles commented Jun 1, 2018

Alas poor kolibri_settings.json, I knew him, Horatio!

@indirectlylit indirectlylit changed the title Move installed plugins to options.ini and depricate kolibri_options.json Move installed plugins to options.ini and deprecate kolibri_settings.json Jun 1, 2018
aronasorman added a commit that referenced this issue Aug 10, 2018
@indirectlylit
Copy link
Contributor

closing to consolidate. let me know if anything wasn't captured

@radinamatic
Copy link
Member

@indirectlylit

also, options.ini now exists

"Exists" as in is created by default with Kolibri installation, or as in you can create one yourself, if needed? I hope the latter, or I need to amend the documentation.

@indirectlylit
Copy link
Contributor

yup - you can create one yourself, if needed :)

jonboiser pushed a commit that referenced this issue Mar 25, 2019
Aypak referenced this issue in edulution/kolibri Jun 5, 2019
Sync develop and master
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants