- The environment to run unittests is now called py34 as that's the common
thing used, and will also allow us to run the tests with Python 3.5.
- The default tests now also run coverage.py and do a coverage check (on
Linux).
- The smoke tests are now part of the default environment.
https://bitbucket.org/ned/coveragepy/issues/235 confuses me - maybe the XML
format will change in the future to not contain the full filename? To make
sure I'll add this assertion, then I'll notice.
Upstream changelog:
Especially important changes:
* Added a warning when you instantiate a BeautifulSoup object without
explicitly naming a parser. [bug=1398866]
* __repr__ now returns an ASCII bytestring in Python 2, and a Unicode
string in Python 3, instead of a UTF8-encoded bytestring in both
versions. In Python 3, __str__ now returns a Unicode string instead
of a bytestring. [bug=1420131]
* The `text` argument to the find_* methods is now called `string`,
which is more accurate. `text` still works, but `string` is the
argument described in the documentation. `text` may eventually
change its meaning, but not for a very long time. [bug=1366856]
* Changed the way soup objects work under copy.copy(). Copying a
NavigableString or a Tag will give you a new NavigableString that's
equal to the old one but not connected to the parse tree. Patch by
Martijn Peters. [bug=1307490]
* Started using a standard MIT license. [bug=1294662]
* Added a Chinese translation of the documentation by Delong .w.
New features:
* Introduced the select_one() method, which uses a CSS selector but
only returns the first match, instead of a list of
matches. [bug=1349367]
* You can now create a Tag object without specifying a
TreeBuilder. Patch by Martijn Pieters. [bug=1307471]
* You can now create a NavigableString or a subclass just by invoking
the constructor. [bug=1294315]
* Added an `exclude_encodings` argument to UnicodeDammit and to the
Beautiful Soup constructor, which lets you prohibit the detection of
an encoding that you know is wrong. [bug=1469408]
* The select() method now supports selector grouping. Patch by
Francisco Canas [bug=1191917]
Bug fixes:
* Fixed yet another problem that caused the html5lib tree builder to
create a disconnected parse tree. [bug=1237763]
* Force object_was_parsed() to keep the tree intact even when an element
from later in the document is moved into place. [bug=1430633]
* Fixed yet another bug that caused a disconnected tree when html5lib
copied an element from one part of the tree to another. [bug=1270611]
* Fixed a bug where Element.extract() could create an infinite loop in
the remaining tree.
* The select() method can now find tags whose names contain
dashes. Patch by Francisco Canas. [bug=1276211]
* The select() method can now find tags with attributes whose names
contain dashes. Patch by Marek Kapolka. [bug=1304007]
* Improved the lxml tree builder's handling of processing
instructions. [bug=1294645]
* Restored the helpful syntax error that happens when you try to
import the Python 2 edition of Beautiful Soup under Python
3. [bug=1213387]
* In Python 3.4 and above, set the new convert_charrefs argument to
the html.parser constructor to avoid a warning and future
failures. Patch by Stefano Revera. [bug=1375721]
* The warning when you pass in a filename or URL as markup will now be
displayed correctly even if the filename or URL is a Unicode
string. [bug=1268888]
* If the initial <html> tag contains a CDATA list attribute such as
'class', the html5lib tree builder will now turn its value into a
list, as it would with any other tag. [bug=1296481]
* Fixed an import error in Python 3.5 caused by the removal of the
HTMLParseError class. [bug=1420063]
* Improved docstring for encode_contents() and
decode_contents(). [bug=1441543]
* Fixed a crash in Unicode, Dammit's encoding detector when the name
of the encoding itself contained invalid bytes. [bug=1360913]
* Improved the exception raised when you call .unwrap() or
.replace_with() on an element that's not attached to a tree.
* Raise a NotImplementedError whenever an unsupported CSS pseudoclass
is used in select(). Previously some cases did not result in a
NotImplementedError.
* It's now possible to pickle a BeautifulSoup object no matter which
tree builder was used to create it. However, the only tree builder
that survives the pickling process is the HTMLParserTreeBuilder
('html.parser'). If you unpickle a BeautifulSoup object created with
some other tree builder, soup.builder will be None. [bug=1231545]
Upstream changelog:
2015-06-11 Phil Thompson <phil@riverbankcomputing.com>
* .hgtags:
Added tag 5.4.2 for changeset 5a34feb6b31d
[6f80aa2771d3] [tip] <5.4-maint>
* NEWS:
Released as v5.4.2.
[5a34feb6b31d] [5.4.2] <5.4-maint>
* installers/PyQt5-Qt5-gpl.nsi:
Fixed a missing image plugin in the Windows installer.
[29760ab3d5f9] <5.4-maint>
* Makefile:
Clean up any extra Mac crap.
[dcbc92d15a8b] <5.4-maint>
2015-06-07 Phil Thompson <phil@riverbankcomputing.com>
* pyuic/uic/Compiler/compiler.py,
pyuic/uic/Compiler/qobjectcreator.py:
Make sure all generedt imports are sorted and therefore repeatable.
[9ad1a251d97b] <5.4-maint>
2015-06-05 Phil Thompson <phil@riverbankcomputing.com>
* NEWS, PyQt5.msp:
Completed the support for Qt v5.4.2.
[02c99f5affde] <5.4-maint>
* PyQt5.msp:
Scanned Qt v5.4.2.
[7fbd795f8c5e] <5.4-maint>
* installers/PyQt5-Qt5-gpl.nsi:
Updated the Windows installer for Qt v5.4.2.
[74c080b5bdb2] <5.4-maint>
* PyQt5.msp:
Added missing /Factory/ annotations from the create() and
beginCreate() methods of QQmlComponent.
[56be1a87fd2c] <5.4-maint>
2015-06-02 Phil Thompson <phil@riverbankcomputing.com>
* PyQt5.msp:
Fixed the handling of the value returned by Python re-
implementations of QSGMaterialShader.attributeNames().
[cb620297cbc8] <5.4-maint>
2015-05-23 Phil Thompson <phil@riverbankcomputing.com>
* lib/configure.py, sphinx/installation.rst:
Added the --no-python-dbus option to configure.py.
[df17d3eace7a] <5.4-maint>
2015-05-18 Phil Thompson <phil@riverbankcomputing.com>
* pyuic/uic/uiparser.py:
Fixed another deprecation warning in pyuic.
[6333c15a9a6b] <5.4-maint>
* pyuic/uic/driver.py, pyuic/uic/objcreator.py,
pyuic/uic/port_v2/load_plugin.py, pyuic/uic/port_v3/load_plugin.py:
Fixed all the deprecation warnings from pyuic.
[e8f96fbc8cf0] <5.4-maint>
2015-05-08 Phil Thompson <phil@riverbankcomputing.com>
* Makefile:
Fixed the path to SIP on OS/X.
[39ecf0bc71e1] <5.4-maint>
2015-05-06 Phil Thompson <phil@riverbankcomputing.com>
* pyuic/uic/Compiler/qobjectcreator.py,
pyuic/uic/Loader/qobjectcreator.py, pyuic/uic/icon_cache.py,
pyuic/uic/objcreator.py:
Fixed the handling of themed icons by uic.loadUi().
[506c268c8f43] <5.4-maint>
2015-04-24 Phil Thompson <phil@riverbankcomputing.com>
* qpy/QtCore/qpycore_chimera.cpp:
Handle properties that are objects that are defined in QML.
[aebd6aab85d4] <5.4-maint>
2015-04-04 Phil Thompson <phil@riverbankcomputing.com>
* pyuic/uic/properties.py, pyuic/uic/uiparser.py:
Fixed pyuic's handling of default margins.
[6a7e3e6175c8] <5.4-maint>
* pyuic/uic/properties.py, pyuic/uic/uiparser.py:
Fixed pyuic's handling of the default spacing.
[12193d5afbe1] <5.4-maint>
2015-04-03 Phil Thompson <phil@riverbankcomputing.com>
* pylupdate/main.cpp:
pylupdate now saves locations as relative to the .ts file.
[1757d2e318f6] <5.4-maint>
2015-04-01 Phil Thompson <phil@riverbankcomputing.com>
* PyQt5.msp:
Added QWIDGETSIZE_MAX to QtWidgets.
[b136fd7c485e] <5.4-maint>
2015-03-25 Phil Thompson <phil@riverbankcomputing.com>
* sphinx/static/classic.css, sphinx/static/default.css:
Fixed the stylesheet.
[d35996e57f02] <5.4-maint>
2015-03-16 Phil Thompson <phil@riverbankcomputing.com>
* PyQt5.msp:
The GIL is now released for all QImage ctors and methods that might
block.
[3fd70eec66b9] <5.4-maint>
* PyQt5.msp:
Removed the internal QGraphicsSceneEvent.setWidget().
[622e5b5ebcfc] <5.4-maint>
2015-03-11 Phil Thompson <phil@riverbankcomputing.com>
* installers/PyQt5-Qt5-gpl.nsi:
Added the OpenGL v2.1 backend to the Windows installer.
[ca1e4c121c78] <5.4-maint>
* sphinx/conf.py:
Updated for sphinx v1.3.
[1c1cd1eac7ce] <5.4-maint>
* qpy/QtCore/qsysinfo.sip:
Added Yosemite and iOS v8.0 to QSysInfo.
[01d4d1af5961] <5.4-maint>
* pyuic/uic/uiparser.py:
pyuic now handles empty zorder elements.
[a0dcd07b7e72] <5.4-maint>
* lib/configure.py:
Added nostrup to the generated .pro file.
[d6445df281a6] <5.4-maint>
2015-03-01 Phil Thompson <phil@riverbankcomputing.com>
* pyuic/uic/uiparser.py:
pyuic will now ignore spacer items when setting the z-order.
[28704a096a3a] <5.4-maint>
2015-02-26 Phil Thompson <phil@riverbankcomputing.com>
* installers/PyQt5-Qt5-gpl.nsi:
Installer fix for Qt v5.4.1.
[0b21a7fa6750] <5.4-maint>: