Merge branch 'release-prep' into wxPy-4.0.x

This commit is contained in:
Robin Dunn
2019-10-25 14:23:54 -07:00
11 changed files with 59 additions and 27 deletions

View File

@@ -8,15 +8,21 @@
wxPython Changelog
==================
4.0.7 ""
------------------
* [not yet released]
4.0.7 "one more, for the road"
------------------------------
* 25-Oct-2019
PyPI: https://pypi.org/project/wxPython/4.0.7
Extras: https://extras.wxPython.org/wxPython4/extras/
Pip: ``pip install wxPython==4.0.7``
This release provides the following fixes:
This release is comprised mostly of fixes and minor features which have been
back-ported from the master branch. This release is likely the last release of
the 4.0.x release series, and is certainly the last 4.0.x release that will
support Python 2.7. It may still continue to build for Python 2.7 for some time,
but no extra effort will be expended to keep it compatible.
This release provides the following changes:
* Bug fixes in wx.lib.calendar: key navigation across month boundaries is now
possible; key navigation now sets the date and fires the EVT_CALENDAR event;

View File

@@ -1182,7 +1182,7 @@ def cmd_bdist_docs(options, args):
with tarfile.open(name=tarfilename, mode="w:gz") as tarball:
tarball.add('docs/html', os.path.join(rootname, 'docs/html'),
filter=lambda info: None if '.svn' in info.name else info)
filter=_setTarItemPerms)
if options.upload:
uploadPackage(tarfilename, options, keep=5,
@@ -2096,7 +2096,7 @@ def cmd_sdist_demo(options, args):
tarball = tarfile.open(name=tarfilename, mode="w:gz")
pwd = pushDir(PDEST)
for name in glob.glob('*'):
tarball.add(name, os.path.join(rootname, name))
tarball.add(name, os.path.join(rootname, name), filter=_setTarItemPerms)
tarball.close()
msg('Cleaning up...')
del pwd

View File

@@ -24,7 +24,7 @@ PROJECT_NAME = 'wxPython'
# version numbers.
VER_MAJOR = 4
VER_MINOR = 0
VER_RELEASE = 7
VER_RELEASE = 8
VER_FLAGS = "a1" # wxPython release flags

View File

@@ -9,25 +9,49 @@
Announcing wxPython 4.0.6
Announcing wxPython 4.0.7
=========================
PyPI: https://pypi.org/project/wxPython/4.0.6
PyPI: https://pypi.org/project/wxPython/4.0.7
Extras: https://extras.wxPython.org/wxPython4/extras/
Pip: ``pip install wxPython==4.0.6``
Pip: ``pip install wxPython==4.0.7``
This is a quick-fix release to take care of the following issues:
This release is comprised mostly of fixes and minor features which have been
back-ported from the master branch. This release is likely the last release of
the 4.0.x release series, and is certainly the last 4.0.x release that will
support Python 2.7. It may still continue to build for Python 2.7 for some time,
but no extra effort will be expended to keep it compatible.
* Fixed a probably rare, but fatal bug on OSX when calling certain
overloaded virtual methods with implementations in Python.
Support for building for Python 3.8 has been added, as well as 3.8 binaries on
PyPI for Windows and MacOS.
* Fixed char pointers in generated stub code to have a valid
pointer value.
This release provides the following changes:
* Reverted the change that loads up install_requires from the
contents of requirements.txt. Split the requirements.txt file
into one for install and one for development.
* Bug fixes in wx.lib.calendar: key navigation across month boundaries is now
possible; key navigation now sets the date and fires the EVT_CALENDAR event;
setter APIs now set the date correctly (#1230).
* Switch to using a wx.Overlay in the Widget Inspection Tool to highlight
widgets when running on a GTK3 port.
* Fixed issue in wx.lib.agw.customtreectrl where label editor could remain
stuck forever (#1235).
* Fix a sometimes crash when using a wx.Overlay by letting the wx.DCOverlay hold
a reference to the DC, to ensure that the DCOverlay is destroyed first.
(PR#1301)
* Ported the embedding sample from Classic, which shows how to use wxPython from
a C++ wxWidgets application that embeds Python. (PR #1353)
* Fixed wx.GetApp() to use wxWidgets' global wxApp instance instead of
maintaining its own pointer. This way, if the wxApp is created by C++ code
wxPython will still be able to get access to it. (#1126)
* Several other PRs have been backported from the master branch (which will
become wxPython 4.1.0), the full list can be seen here:
https://github.com/wxWidgets/Phoenix/pull/1357
What is wxPython?

View File

@@ -1,6 +1,5 @@
# Runtime dependencies needed when using wxPython Phoenix
numpy==1.16.1 ; python_version <= '2.7'
numpy ; python_version >= '3.0'
# pillow ; sys_platform == 'win32' and python_version < '3.8'
# pillow ; sys_platform != 'win32'
pillow
six

View File

@@ -20,6 +20,10 @@ class dialog_Tests(wtc.WidgetTestCase):
dlg.Destroy()
self.assertTrue(val == wx.ID_OK)
self.myYield()
else:
dlg.Show()
dlg.Destroy()
self.myYield()
def test_dialogDefaultCtor(self):

View File

@@ -74,12 +74,14 @@ class sizer_Tests(wtc.WidgetTestCase):
def test_iter(self):
bs = wx.BoxSizer()
widgetlist = [wx.Panel(self.frame) for _ in range(5)]
for w in widgetlist:
bs.Add(w)
sizeritems = [x for x in bs]
for item in sizeritems:
self.assertTrue(isinstance(item, wx.SizerItem))
self.assertTrue([x.GetWidget() for x in bs] == widgetlist)
self.assertEqual([x.GetWindow() for x in bs], widgetlist)
def test_sizerSpacers1(self):
bs = wx.BoxSizer()

View File

@@ -57,6 +57,7 @@ class WidgetTestCase(unittest.TestCase):
if 'wxOSX' in wx.PlatformInfo:
wx.MilliSleep(40) # a little more than 1/30, just in case
window.Update()
self.myYield()
def closeDialogs(self):

View File

@@ -18,7 +18,6 @@ yum -y install gtk2 gtk2-devel gtk3 gtk3-devel \
# Install all available Python packages and their dev packages
yum -y install python python-tools python-devel python-virtualenv
yum -y install python34u python34u-tools python34u-devel
yum -y install python35u python35u-tools python35u-devel
yum -y install python36u python36u-tools python36u-devel
@@ -27,7 +26,6 @@ yum -y install python36u python36u-tools python36u-devel
# done. Set them to the vagrant user so the venvs can be updated by pip later.
mkdir venvs
virtualenv --python=python2.7 venvs/Py27
pyvenv-3.4 venvs/Py34
pyvenv-3.5 venvs/Py35
python3.6 -m venv venvs/Py36
chown -R vagrant:vagrant venvs

View File

@@ -15,14 +15,14 @@ apt-get install -y libjpeg-dev libtiff-dev \
# Install all available Python packages and their dev packages
apt-get install -y python2.7 python2.7-dev libpython2.7-dev python-virtualenv
apt-get install -y python3.4 python3.4-dev libpython3.4-dev python3.4-venv
#apt-get install -y python3.4 python3.4-dev libpython3.4-dev python3.4-venv
#apt-get install -y python3.5 python3.5-dev libpython3.5-dev python3.5-venv
# Set up virtual environments for each Python where the Phoenix builds will be
# done. set them to the vagrant user so the venv's can be updated by pip later.
mkdir venvs
virtualenv --python=python2.7 venvs/Py27
pyvenv-3.4 venvs/Py34
#pyvenv-3.4 venvs/Py34
#pyvenv-3.5 venvs/Py35
chown -R vagrant:vagrant venvs

View File

@@ -16,7 +16,6 @@ apt-get install -y libjpeg-dev libtiff-dev \
# Install all available Python packages and their dev packages
apt-get install -y python2.7 python2.7-dev libpython2.7-dev python-virtualenv
apt-get install -y python3.4 python3.4-dev libpython3.4-dev python3.4-venv
apt-get install -y python3.5 python3.5-dev libpython3.5-dev python3.5-venv
apt-get install -y python3.6 python3.6-dev libpython3.6-dev python3.6-venv
@@ -24,7 +23,6 @@ apt-get install -y python3.6 python3.6-dev libpython3.6-dev python3.6-venv
# done. set them to the vagrant user so the venv's can be updated by pip later.
mkdir venvs
virtualenv --python=python2.7 venvs/Py27
python3.4 -m venv venvs/Py34
python3.5 -m venv venvs/Py35
python3.6 -m venv venvs/Py36
chown -R vagrant:vagrant venvs