Debugging YAML Parse Errors
In case something goes wrong and you get errors like this:
ValueError: YAML error found in file config/config.yaml. Line 22,Position 10: mapping values are not allowed here
in "config/config.yaml", line 22, column 10
This means that the error might be at line 22, just before it or shortly after it. Sometimes it is tricky to tell whats wrong when one space is off. A good editor might help but it might be still hard to spot the exact point.
Install an IDE
We recommend the MPF language server with a supported IDE for that.
Install the extension
If you are struggling to find the problem you can reformat your file
using ruamel.yaml
. To do that you first need to install the
ruamel.yaml.cmd
extension:
pip3 install ruamel.yaml.cmd==0.2
Make a backup
Before you continue: Make a backup of your machine config. Seriously, do it! Even better, use git and commit right now!
Reformatting YAML files
After that you can reformat single files using the round-trip
command.
For example if you want to reformat your_file.yaml
first check the
changes it would make:
yaml round-trip your_file.yaml
If that looks alright perform them by adding the --save
flag:
yaml round-trip --save your_file.yaml
This will keep comments but reformat all your indents to two spaces per level. It should be easier now to spot the problem.
Reformat Your Config Using MPF format
Run mpf format
on your config. See
Format And Lint Config Files for details.
What if it did not help?
If this did not help you can ask in the mpf-users Google group. Please post the full error message, your log file and the relevant config file.
Something missing or wrong? You can fix it!
This website is edited by people like you! Is something wrong or missing? Is something out of date, or can you explain it better?
Please help us! You can fix it yourself and be an official "open source" contributor!
It's easy! See our Beginner's guide to editing the docs.
Page navigation via the keyboard: < >
You can navigate this site via the keyboard. There are two modes:
General navigation, when search is not focused:
- F , S , / : open search dialog
- P , , : go to previous page
- N , . : go to next page
While using the search function:
- Down , Up : select next / previous result
- Esc , Tab : close search
- Enter : go to highlighted page in the results