| | 20 | |
| | 21 | == What implementation should you use? == |
| | 22 | |
| | 23 | Read this if you are confused trying to choose a suitable implementation. |
| | 24 | |
| | 25 | * [wiki:PyYAML PyYAML 3000] is the most promising implementation, but it is still very young. |
| | 26 | [wiki:PyYAML PyYAML 3000] is a pure Python [http://yaml.org/spec/cvs/current.html YAML 1.1] parser supporting all the features of YAML including Unicode. |
| | 27 | It does not yet include a YAML emitter. |
| | 28 | '''Use [wiki:PyYAML PyYAML 3000] if you need a YAML parser and do not need a YAML emitter.'' |
| | 29 | For example, [wiki:PyYAML PyYAML 3000] is excellent for configuration files. |
| | 30 | * PySyck is a Python binding to the C library [http://whytheluckystiff.net/syck/ Syck]. |
| | 31 | Syck supports [http://yaml.org/spec/history/2004-01-29/2004-01-29.html YAML 1.0] (w/o Unicode) and provides both parser and emitter. |
| | 32 | '''Use PySyck if you really need a YAML emitter.''' |
| | 33 | For instance, PySyck may be used as a pickle replacement. |
| | 34 | * [wiki:PyYAMLLegacy PyYAML Legacy] is an old implementation of YAML parser and emitter for Python. It seems to be abandoned. |
| | 35 | '''Use [wiki:PyYAMLLegacy PyYAML Legacy] if your project already relies on this code.''' |