Python bindings for the Syck YAML parser and emitter
NOTICE: PySyck is super out of date. Don't use it. Syck (the C library) is old and no longer used, and it supports only YAML 1.0
Use libyaml (c), and PyYaml? (python)
YAML is a data serialization format designed for human readability and interaction with scripting languages.
PySyck is aimed to update the current Python bindings for Syck. The new bindings provide a wrapper for the Syck emitter and give access to YAML representation graphs.
Projects using PySyck
If your project uses PySyck, feel free to add its URL along with a small note.
Pyramid is a simple, file based website templating system. Pyramid uses Nevow as its templating system and YAML as the format for its file based data.
Pollenation Internet use yaml and pysyck in many project sites (e.g. The Super League, The Oman Ministry of Foreign affairs, London Bridge Hospital). It is primarily used for configuration but some non technical clients also use it for general site data.
oftcdns - Geolocation aware resolver for irc
Digsby is a multiprotocol IM client with social networking and email features. It uses YAML for both configuration files and as its skinning language.
PySyck requires Python 2.3 or higher and Syck 0.55 or higher.
You may download the latest Syck release from http://whytheluckystiff.net/syck/. Alternatively you download my unofficial syck tarball. It is the code from the Syck SVN repository with my SyckPatches applied.
The latest release of PySyck is 0.61.2.
I prepared an unofficial syck tarball:
Debian GNU/Linux includes a recent snapshot of syck:
There are source/binary rpm package(s) in a yum repository compiled against Fedora Core 5 at
Changes from 0.61.1 to 0.61.2
- fix a leak in the parser (thanks to Jeff Johnson).
- bump the development status to Production/Stable?.
Changes from 0.55.1 to 0.61.1
- setup.py build: check the presence of syck.h and print a helpful message if it is not found.
- Release GIL when calling syck.
- Change the way !str-tagged scalars are converted. If a scalar contains only ASCII characters, it is converted to a plain string object. If it is a valid UTF-8 sequence, it is converted to a Unicode object. Otherwise leave it as is, and issue a warning.
- Windows binaries are built against http://pyyaml.org/download/pysyck/syck-0.61+svn231+patches.tar.gz
- The new home of PySyck is http://pyyaml.org/wiki/PySyck.
>>> from syck import * >>> print load(""" ... - foo ... - bar ... - baz ... """) ['foo', 'bar', 'baz'] >>> print dump(['foo', 'bar', 'baz']) --- - foo - bar - baz
For more details, please check README.txt.
Development and bug reports
Author and copyright
The PySyck module is written by Kirill Simonov.
PySyck is released under the BSD license like Syck itself.