Contents¶
Overview¶
docs | |
---|---|
tests | |
package |
An example package. Generated with cookiecutter-pylibrary.
- Free software: BSD license
Installation¶
pip install msquaredc
Documentation¶
Development¶
To run the all tests run:
tox
Note, to combine the coverage data from all the tox environments run:
Windows | set PYTEST_ADDOPTS=--cov-append
tox
|
---|---|
Other | PYTEST_ADDOPTS=--cov-append tox
|
Usage¶
Command line interface¶
To launch M²C from the command line, simply type:
msquaredc
In order to save yourself typing work, you may also pass several options:
--config-file
- The YAML-File containing the configurations of the project.
--data-file
- The CSV-File (with
;
as separator), where all the data to process is stored. --user-interface
Upcoming feature. NOT ready for usage yet! Choose your user interface.
- gui: Graphical user interface based on Tkinter (default)
- tui: Text-only user interface based on urwid (not there at all)
- web: Webbased user interface (website) based on Flask/Django (not there at all)
--loglevel
Verbosiness of the console. In parallel, all events will be logged on highest verbosity levelinto the file
logfile.log
. The options are (from silent to loud):- critical
- error
- warning
- info
- debug
--logfile
- As mentioned above, msquaredc loggs all event into a file (e.g.
logfile.log
). You can use this option to pass a different filename. --coder
- Tell msquaredc who’s the boss right now. :)
Contributing¶
Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
Bug reports¶
When reporting a bug please include:
- Your operating system name and version.
- Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug.
Documentation improvements¶
M²C could always use more documentation, whether as part of the official M²C docs, in docstrings, or even on the web in blog posts, articles, and such.
Feature requests and feedback¶
The best way to send feedback is to file an issue at https://github.com/j340m3/python-msquaredc/issues.
If you are proposing a feature:
- Explain in detail how it would work.
- Keep the scope as narrow as possible, to make it easier to implement.
- Remember that this is a volunteer-driven project, and that code contributions are welcome :)
Development¶
To set up python-msquaredc for local development:
Fork python-msquaredc (look for the “Fork” button).
Clone your fork locally:
git clone git@github.com:your_name_here/python-msquaredc.git
Create a branch for local development:
git checkout -b name-of-your-bugfix-or-feature
Now you can make your changes locally.
When you’re done making changes, run all the checks, doc builder and spell checker with tox one command:
tox
Commit your changes and push your branch to GitHub:
git add . git commit -m "Your detailed description of your changes." git push origin name-of-your-bugfix-or-feature
Submit a pull request through the GitHub website.
Pull Request Guidelines¶
If you need some code review or feedback while you’re developing the code just make the pull request.
For merging, you should:
- Include passing tests (run
tox
) [1]. - Update documentation when there’s new API, functionality etc.
- Add a note to
CHANGELOG.rst
about the changes. - Add yourself to
AUTHORS.rst
.
[1] | If you don’t have all the necessary python versions available locally you can rely on Travis - it will run the tests for each change you add in the pull request. It will be slower though … |
Tips¶
To run a subset of tests:
tox -e envname -- py.test -k test_myfeature
To run all the test environments in parallel (you need to pip install detox
):
detox
Authors¶
- Jerome Bergmann - TODO_WEBSITE
The Config File¶
This is where the magic happens. Here is a sample file which I will walk you through so that you will be able to create your own awfterwards.
questions:
- text: q1
coding:
- criteria: Criteria1
- criteria: Criteria2
- text: q2
coding:
- criteria: Was this shit useful?
- criteria: How can ths shit be useful?
show:
- item_id
Now back to the good part