This release removes the configparser package as an alias for
ConfigParser on Py2 to improve compatibility with Lukasz Langa’s
backported configparser package.
Previously python-future and the configparser backport clashed,
causing various compatibility issues. (Issues #118, #181)
If your code previously relied on configparser being supplied by
python-future, the recommended upgrade path is to run pip install
configparser or add configparser to your requirements.txt file.
Note that, if you are upgrading future with pip, you may need to
uninstall the old version of future or manually remove the
site-packages/future-0.15.2-py2.7.egg folder for this change to take
effect on your system.
This releases also fixes these bugs:
newbytes constructor bug. (Issue #163)bool() with newobject. (Issue #211)standard_library.install_aliases() on PyPy. (Issue #205)pow and compile` on Python 3.5. (Issue #183)future.utils.ensure_new_type if conversion to
new type does not exist. (Issue #185)cmp_to_key for Py2.6. (Issue #189)old_div fixer to be disabled. (Issue #190)tkinter and tkinter.filedialog
package namespaces. (Issues #212 and #233)raise_from on PY3. (Issues #141,
#213 and #235, fix provided by Varriount)This is a minor bug-fix release:
socket.create_connection() backport on Py2.6 (issue #162)urllib.request etc.newsuper() calls from the __init__ method of PyQt subclassses
(issue #160, thanks to Christopher Arndt)This is a minor bug-fix release:
socket.create_connection() backport to restore Py2.6
compatibility in urllib.request.urlopen() (issue #162)future.backports.http.client triggered on certain
data (issue #164)exec fixer to stage 1 of futurize because the forward-compatible exec(a, b)
idiom is supported in Python 2.6 and 2.7. See
https://docs.python.org/2/reference/simple_stmts.html#exec.This release fixes compatibility bugs with CherryPy’s Py2/3 compat layer and
the latest version of the urllib3 package. It also adds some additional
backports for Py2.6 and Py2.7 from Py3.4’s standard library.
New features:
install_aliases() now exposes full backports of the Py3 urllib submodules
(parse, request etc.) from future.backports.urllib as submodules
of urllib on Py2. This implies, for example, that
urllib.parse.unquote now takes an optional encoding argument as it does
on Py3. This improves compatibility with CherryPy’s Py2/3 compat layer (issue
#158).tkinter.ttk support (issue #151)collections.ChainMap (issue #150)itertools.count for Py2.6 (issue #152)surrogateescape error handler for newstr and newbytes objects on Py2.x (issue #116). This feature is currently in alpha.http.client such as HTTP_PORT and BAD_REQUEST (issue #137)reprlib.recursive_repr to Py2Bug fixes:
HTTPMessage to http.client, which is missing from httplib.__all__ on Python <= 2.7.10. This restores compatibility with the latest urllib3 package (issue #159, thanks to Waldemar Kornewald)Counter and OrderedDict to use the newer
implementations from Py3.4. This fixes .copy() preserving subclasses etc.futurize no longer breaks working Py2 code by changing basestring to
str. Instead it imports the basestring forward-port from
past.builtins (issues #127 and #156)future.utils: add string_types etc. and update docs (issue #126)See Changes in previous versions for versions prior to v0.15.