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

Redesign user interface #38

Open
ferraith opened this issue Sep 2, 2018 · 0 comments
Open

Redesign user interface #38

ferraith opened this issue Sep 2, 2018 · 0 comments
Assignees
Labels
feature New feature or request
Milestone

Comments

@ferraith
Copy link
Member

ferraith commented Sep 2, 2018

The current user interface isn't as intuitive as it should be to easily configure the code generation of multiple Ecore models. This is mainly because of the limited feature set provided by setuptools and distutils to specify config parameters (see config file doc).

Also the current user interface lacks the possibility to specify several models with equal names.

To overcome this limitations and simply the configuration the current user interface should be redesigned. The configuration should be split up in a basic configuration for default values (e.g. an output folder) and a model-specific configuration.
Basic configuration should be possible on the command line and in a config file. Model-specific configuration (e.g. specific output-folders, user-models, ...) should be limited to config files in the first place.To be as close as possible and compatible to the - ini like - configuration language used by setuptools it should be still possible to use the standard python config parser.

A very basic configuration file should look like this:

# default configuration
[pyecore]
output=gen
auto-register-package=True

# model specific configuration
[pyecore:library]
ecore-model=/path/to/library.ecore
output=gen/library
auto-register-package=False

Model specific configurations should override the default configuration. The second part of the section name (e.g. [pyecore:library] ) can be freely chosen by the user and isn't bound anymore to the root package of the Ecore model.

@ferraith ferraith added the feature New feature or request label Sep 2, 2018
@ferraith ferraith added this to the 0.3.0 milestone Sep 2, 2018
@ferraith ferraith self-assigned this Oct 3, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant