Added CHANGES; updated the announcement; wording fixes in setup.py.

This commit is contained in:
Kirill Simonov 2008-12-28 23:34:19 +00:00
parent 8e88d11b41
commit 1310c51249
5 changed files with 148 additions and 30 deletions

108
CHANGES Normal file
View file

@ -0,0 +1,108 @@
For a complete Subversion changelog, see 'http://pyyaml.org/log/pyyaml'.
3.07 (2008-12-29)
-----------------
* The emitter learned to use an optional indentation indicator
for block scalar; thus scalars with leading whitespaces
could now be represented in a literal or folded style.
* The test suite is now included in the source distribution.
To run the tests, type 'python setup.py test'.
* Refactored the test suite: dropped unittest in favor of
a custom test appliance.
* Fixed the path resolver in CDumper.
* Forced an explicit document end indicator when there is
a possibility of parsing ambiguity.
* More setup.py improvements: the package should be usable
when any combination of setuptools, Pyrex and LibYAML
is installed.
* Windows binary packages are built against LibYAML-0.1.2.
* Minor typos and corrections (Thank to Ingy dot Net
and Andrey Somov).
3.06 (2008-10-03)
-----------------
* setup.py checks whether LibYAML is installed and if so, builds
and installs LibYAML bindings. To force or disable installation
of LibYAML bindings, use '--with-libyaml' or '--without-libyaml'
respectively.
* The source distribution includes compiled Pyrex sources so
building LibYAML bindings no longer requires Pyrex installed.
* 'yaml.load()' raises an exception if the input stream contains
more than one YAML document.
* Fixed exceptions produced by LibYAML bindings.
* Fixed a dot '.' character being recognized as !!float.
* Fixed Python 2.3 compatibility issue in constructing !!timestamp values.
* Windows binary packages are built against the LibYAML stable branch.
* Added attributes 'yaml.__version__' and 'yaml.__with_libyaml__'.
3.05 (2007-05-13)
-----------------
* Windows binary packages were built with LibYAML trunk.
* Fixed a bug that prevent processing a live stream of YAML documents in
timely manner (Thanks edward(at)sweetbytes(dot)net).
* Fixed a bug when the path in add_path_resolver contains boolean values
(Thanks jstroud(at)mbi(dot)ucla(dot)edu).
* Fixed loss of microsecond precision in timestamps
(Thanks edemaine(at)mit(dot)edu).
* Fixed loading an empty YAML stream.
* Allowed immutable subclasses of YAMLObject.
* Made the encoding of the unicode->str conversion explicit so that
the conversion does not depend on the default Python encoding.
* Forced emitting float values in a YAML compatible form.
3.04 (2006-08-20)
-----------------
* Include experimental LibYAML bindings.
* Fully support recursive structures.
* Sort dictionary keys. Mapping node values are now represented
as lists of pairs instead of dictionaries. No longer check
for duplicate mapping keys as it didn't work correctly anyway.
* Fix invalid output of single-quoted scalars in cases when a single
quote is not escaped when preceeded by whitespaces or line breaks.
* To make porting easier, rewrite Parser not using generators.
* Fix handling of unexpected block mapping values.
* Fix a bug in Representer.represent_object: copy_reg.dispatch_table
was not correctly handled.
* Fix a bug when a block scalar is incorrectly emitted in the simple
key context.
* Hold references to the objects being represented.
* Make Representer not try to guess !!pairs when a list is represented.
* Fix timestamp constructing and representing.
* Fix the 'N' plain scalar being incorrectly recognized as !!bool.
3.03 (2006-06-19)
-----------------
* Fix Python 2.5 compatibility issues.
* Fix numerous bugs in the float handling.
* Fix scanning some ill-formed documents.
* Other minor fixes.
3.02 (2006-05-15)
-----------------
* Fix win32 installer. Apparently bdist_wininst does not work well
under Linux.
* Fix a bug in add_path_resolver.
* Add the yaml-highlight example. Try to run on a color terminal:
`python yaml_hl.py <any_document.yaml`.
3.01 (2006-05-07)
-----------------
* Initial release. The version number reflects the codename
of the project (PyYAML 3000) and differenciates it from
the abandoned PyYaml module.

View file

@ -1,4 +1,4 @@
include README LICENSE setup.py include README LICENSE CHANGES setup.py
recursive-include examples *.py *.cfg *.yaml recursive-include examples *.py *.cfg *.yaml
recursive-include tests *.py recursive-include tests *.py
recursive-include tests/data * recursive-include tests/data *

3
README
View file

@ -15,6 +15,9 @@ parser and emitter as follows:
>>> yaml.load(stream, Loader=yaml.CLoader) >>> yaml.load(stream, Loader=yaml.CLoader)
>>> yaml.dump(data, Dumper=yaml.CDumper) >>> yaml.dump(data, Dumper=yaml.CDumper)
PyYAML includes a comprehensive test suite. To run the tests,
type 'python setup.py test'.
For more information, check the PyYAML homepage: For more information, check the PyYAML homepage:
'http://pyyaml.org/wiki/PyYAML'. 'http://pyyaml.org/wiki/PyYAML'.

View file

@ -1,12 +1,12 @@
From: Kirill Simonov <xi@gamma.dn.ua> From: Kirill Simonov <xi@gamma.dn.ua>
To: python-list@python.org, python-announce@python.org, yaml-core@lists.sourceforge.net To: python-list@python.org, python-announce@python.org, yaml-core@lists.sourceforge.net
Subject: [ANN] PyYAML-3.06: YAML parser and emitter for Python Subject: [ANN] PyYAML-3.07: YAML parser and emitter for Python
======================== ========================
Announcing PyYAML-3.06 Announcing PyYAML-3.07
======================== ========================
A new bug fix release of PyYAML is now available: A new release of PyYAML is now available:
http://pyyaml.org/wiki/PyYAML http://pyyaml.org/wiki/PyYAML
@ -14,18 +14,22 @@ A new bug fix release of PyYAML is now available:
Changes Changes
======= =======
* setup.py checks whether LibYAML is installed and if so, builds * The emitter learned to use an optional indentation indicator
and installs LibYAML bindings. To force or disable installation for block scalar; thus scalars with leading whitespaces
of LibYAML bindings, use '--with-libyaml' or '--without-libyaml' could now be represented in a literal or folded style.
respectively. * The test suite is now included in the source distribution.
* Building LibYAML bindings no longer requires Pyrex installed. To run the tests, type 'python setup.py test'.
* 'yaml.load()' raises an exception if the input stream contains * Refactored the test suite: dropped unittest in favor of
more than one YAML document. a custom test appliance.
* Fixed exceptions produced by LibYAML bindings. * Fixed the path resolver in the LibYAML-based dumper.
* Fixed a dot '.' character being recognized as !!float. * Forced an explicit document end indicator when there is
* Fixed Python 2.3 compatibility issue in constructing !!timestamp values. a possibility of parsing ambiguity.
* Windows binary packages are built against the LibYAML stable branch. * More setup.py improvements: the package should be usable
* Added attributes 'yaml.__version__' and 'yaml.__with_libyaml__'. when any combination of setuptools, Pyrex and LibYAML
is installed.
* Windows binary packages are built against LibYAML-0.1.2.
* Other minor fixes and improvements (Thank to Ingy dot Net
and Andrey Somov).
Resources Resources
@ -34,13 +38,13 @@ Resources
PyYAML homepage: http://pyyaml.org/wiki/PyYAML PyYAML homepage: http://pyyaml.org/wiki/PyYAML
PyYAML documentation: http://pyyaml.org/wiki/PyYAMLDocumentation PyYAML documentation: http://pyyaml.org/wiki/PyYAMLDocumentation
TAR.GZ package: http://pyyaml.org/download/pyyaml/PyYAML-3.06.tar.gz TAR.GZ package: http://pyyaml.org/download/pyyaml/PyYAML-3.07.tar.gz
ZIP package: http://pyyaml.org/download/pyyaml/PyYAML-3.06.zip ZIP package: http://pyyaml.org/download/pyyaml/PyYAML-3.07.zip
Windows installer: Windows installer:
http://pyyaml.org/download/pyyaml/PyYAML-3.06.win32-py2.3.exe http://pyyaml.org/download/pyyaml/PyYAML-3.07.win32-py2.3.exe
http://pyyaml.org/download/pyyaml/PyYAML-3.06.win32-py2.4.exe http://pyyaml.org/download/pyyaml/PyYAML-3.07.win32-py2.4.exe
http://pyyaml.org/download/pyyaml/PyYAML-3.06.win32-py2.5.exe http://pyyaml.org/download/pyyaml/PyYAML-3.07.win32-py2.5.exe
http://pyyaml.org/download/pyyaml/PyYAML-3.06.win32-py2.6.exe http://pyyaml.org/download/pyyaml/PyYAML-3.07.win32-py2.6.exe
PyYAML SVN repository: http://svn.pyyaml.org/pyyaml PyYAML SVN repository: http://svn.pyyaml.org/pyyaml
Submit a bug report: http://pyyaml.org/newticket?component=pyyaml Submit a bug report: http://pyyaml.org/newticket?component=pyyaml

View file

@ -220,12 +220,13 @@ class build_ext(_build_ext):
extra_postargs=(ext.extra_compile_args or []), extra_postargs=(ext.extra_compile_args or []),
depends=ext.depends) depends=ext.depends)
except CompileError: except CompileError:
log.warn("%s appears not to be installed: forcing --%s" log.warn("")
log.warn("%s is not found or a compiler error: forcing --%s"
% (ext.feature_name, ext.neg_option_name)) % (ext.feature_name, ext.neg_option_name))
log.warn("(if %s is installed, you may need to specify" log.warn("(if %s is installed correctly, you may need to"
% ext.feature_name) % ext.feature_name)
log.warn(" the option --include-dirs or uncomment and modify") log.warn(" specify the option --include-dirs or uncomment and")
log.warn(" the parameter include_dirs in setup.cfg)") log.warn(" modify the parameter include_dirs in setup.cfg)")
open(cache, 'w').write('0\n') open(cache, 'w').write('0\n')
return False return False
prog = 'check_%s' % ext.feature_name prog = 'check_%s' % ext.feature_name
@ -238,11 +239,13 @@ class build_ext(_build_ext):
runtime_library_dirs=ext.runtime_library_dirs, runtime_library_dirs=ext.runtime_library_dirs,
extra_postargs=(ext.extra_link_args or [])) extra_postargs=(ext.extra_link_args or []))
except LinkError: except LinkError:
log.warn("unable to link against %s" % ext.feature_name) log.warn("")
log.warn("(if %s is installed correctly, you may need to specify" log.warn("%s is not found or a linker error: forcing --%s"
% (ext.feature_name, ext.neg_option_name))
log.warn("(if %s is installed correctly, you may need to"
% ext.feature_name) % ext.feature_name)
log.warn(" the option --library-dirs or uncomment and modify") log.warn(" specify the option --library-dirs or uncomment and")
log.warn(" the parameter library_dirs in setup.cfg)") log.warn(" modify the parameter library_dirs in setup.cfg)")
open(cache, 'w').write('0\n') open(cache, 'w').write('0\n')
return False return False
open(cache, 'w').write('1\n') open(cache, 'w').write('1\n')