Control: tags 758942 + patch I've attached a patch to update to use wxPython 3.0.
I tried to test the updated package, but wasn't able to actually convert any images. However, the same is true for the package currently in unstable using wxPython 2.8 - this issue looks like it's already filed as #759146. Let me know if you'd like me to NMU this change. Cheers, Olly
diff -Nru phatch-0.2.7.1/debian/changelog phatch-0.2.7.1/debian/changelog --- phatch-0.2.7.1/debian/changelog 2013-10-02 18:39:40.000000000 -0300 +++ phatch-0.2.7.1/debian/changelog 2014-08-31 15:19:49.000000000 -0300 @@ -1,3 +1,11 @@ +phatch (0.2.7.1-3.1) unstable; urgency=medium + + * Non-maintainer upload. + * Update for wxpython3.0 (Closes: #758942): + + New patch: wxpy3.0-compat.patch + + -- Olly Betts <o...@survex.com> Sun, 31 Aug 2014 18:10:50 +0000 + phatch (0.2.7.1-3) unstable; urgency=low * Replace python-imaging-compat dependency with python-imaging diff -Nru phatch-0.2.7.1/debian/control phatch-0.2.7.1/debian/control --- phatch-0.2.7.1/debian/control 2013-10-02 18:41:18.000000000 -0300 +++ phatch-0.2.7.1/debian/control 2014-08-31 15:11:17.000000000 -0300 @@ -23,7 +23,7 @@ phatch-cli (= ${binary:Version}), xdg-utils, # move these to phatch-wx in the future: - python-wxgtk2.8, + python-wxgtk3.0, python-wxversion, Suggests: blender, inkscape Enhances: thunar diff -Nru phatch-0.2.7.1/debian/patches/series phatch-0.2.7.1/debian/patches/series --- phatch-0.2.7.1/debian/patches/series 2011-03-16 16:17:26.000000000 -0300 +++ phatch-0.2.7.1/debian/patches/series 2014-08-31 15:15:01.000000000 -0300 @@ -1,2 +1,3 @@ do_not_raise_string_exceptions.patch pyexiv2.patch +wxpy3.0-compat.patch diff -Nru phatch-0.2.7.1/debian/patches/wxpy3.0-compat.patch phatch-0.2.7.1/debian/patches/wxpy3.0-compat.patch --- phatch-0.2.7.1/debian/patches/wxpy3.0-compat.patch 1969-12-31 21:00:00.000000000 -0300 +++ phatch-0.2.7.1/debian/patches/wxpy3.0-compat.patch 2014-08-31 15:19:06.000000000 -0300 @@ -0,0 +1,160 @@ +Description: Updates for wxPython3.0 + Retains compatibility with 2.8 - there wx.InitAllImageHandlers() is a no-op + and wx.THICK_FRAME has the same value as wx.RESIZE_BORDER. +Author: Olly Betts <o...@survex.com> +Bug-Debian: https://bugs.debian.org/758942 +Forwarded: no +Last-Update: 2014-08-31 + +--- phatch-0.2.7.1.orig/phatch/lib/pyWx/dialogsInspector.py ++++ phatch-0.2.7.1/phatch/lib/pyWx/dialogsInspector.py +@@ -76,7 +76,6 @@ if __name__ == "__main__": + gettext.install("app") # replace with the appropriate catalog name + + app = wx.PySimpleApp(0) +- wx.InitAllImageHandlers() + dialog = AddTagDialog(None, -1, "") + app.SetTopWindow(dialog) + dialog.Show() +--- phatch-0.2.7.1.orig/phatch/lib/pyWx/imageInspector.py ++++ phatch-0.2.7.1/phatch/lib/pyWx/imageInspector.py +@@ -792,7 +792,7 @@ class Grid(droplet.Mixin, gridlib.Grid): + class OpenMixin(object): + + def OnOpen(self, event): +- style = wx.OPEN | wx.CHANGE_DIR ++ style = wx.FD_OPEN | wx.FD_CHANGE_DIR + if hasattr(wx, 'FD_PREVIEW'): + style |= wx.FD_PREVIEW + path = os.path.dirname(self.image_table.images[-1].filename) +--- phatch-0.2.7.1.orig/phatch/lib/pyWx/paint.py ++++ phatch-0.2.7.1/phatch/lib/pyWx/paint.py +@@ -115,7 +115,6 @@ def example(): + + class TestApp(wx.App): + def OnInit(self): +- wx.InitAllImageHandlers() + frame = TestFrame(None, -1, "Test", size=(600, 400)) + frame.EnableBackgroundPainting(frame) # ,color=(245,245,255)) + self.SetTopWindow(frame) +--- phatch-0.2.7.1.orig/phatch/lib/pyWx/popup.py ++++ phatch-0.2.7.1/phatch/lib/pyWx/popup.py +@@ -415,7 +415,7 @@ class FileCtrl(_PathCtrl): + wildcard = _t('All files') + '|*' + + def OnBrowse(self, event): +- style = wx.OPEN | wx.CHANGE_DIR ++ style = wx.FD_OPEN | wx.FD_CHANGE_DIR + if hasattr(wx, 'FD_PREVIEW'): + style |= wx.FD_PREVIEW + dlg = wx.FileDialog(self, self._to_local("Choose a file"), +--- phatch-0.2.7.1.orig/phatch/pyWx/dialogs.py ++++ phatch-0.2.7.1/phatch/pyWx/dialogs.py +@@ -133,7 +133,7 @@ class ExecuteDialog(BrowseMixin, dialogs + self.set_drop(drop) + + def browse_files(self): +- style = wx.OPEN | wx.MULTIPLE | wx.CHANGE_DIR ++ style = wx.FD_OPEN | wx.FD_MULTIPLE | wx.FD_CHANGE_DIR + if hasattr(wx, 'FD_PREVIEW'): + style |= wx.FD_PREVIEW + dlg = wx.FileDialog( +@@ -529,7 +529,6 @@ def example(): + class App(wx.App): + + def OnInit(self): +- wx.InitAllImageHandlers() + frame = wx.Frame(None, -1, "") + self.SetTopWindow(frame) + frame.Show(False) +--- phatch-0.2.7.1.orig/phatch/pyWx/gui.py ++++ phatch-0.2.7.1/phatch/pyWx/gui.py +@@ -29,7 +29,7 @@ import sys + #check wx + from lib.pyWx.wxcheck import ensure + try: +- wx = ensure('2.8', '2.8') ++ wx = ensure('3.0', '2.8') + except: + #sphinx + import wx +@@ -560,7 +560,7 @@ class Frame(DialogsMixin, dialogs.Browse + message=_('Choose an Action List File...'), + defaultDir=os.path.dirname(self.filename), + wildcard=ct.WILDCARD, +- style=wx.OPEN, ++ style=wx.FD_OPEN, + ) + if dlg.ShowModal() == wx.ID_OK: + filename = dlg.GetPath() +@@ -592,7 +592,7 @@ class Frame(DialogsMixin, dialogs.Browse + message=_('Save Action List As...'), + defaultDir=default_dir, + wildcard=ct.WILDCARD, +- style=wx.SAVE | wx.OVERWRITE_PROMPT, ++ style=wx.FD_SAVE | wx.FD_OVERWRITE_PROMPT, + ) + if dlg.ShowModal() == wx.ID_OK: + saved = True +@@ -1054,7 +1054,6 @@ class ImageInspectorApp(wx.App): + super(ImageInspectorApp, self).__init__(*args, **keyw) + + def OnInit(self): +- wx.InitAllImageHandlers() + _theme() + frame = dialogs.ImageInspectorFrame(None, + size=dialogs.imageInspector.SIZE) +@@ -1092,7 +1092,6 @@ class DropletFrame(DialogsMixin, wx.Fram + class DropletMixin: + + def OnInit(self): +- wx.InitAllImageHandlers() + #do all application initialisation + self.init() + api.init() +@@ -1191,7 +1191,6 @@ class App(DropletMixin, wx.App): + super(App, self).__init__(*args, **keyw) + + def OnInit(self): +- wx.InitAllImageHandlers() + #frame + self.splash = self._splash() + self.splash.CentreOnScreen() +--- phatch-0.2.7.1.orig/phatch/pyWx/wxGlade/dialogs.py ++++ phatch-0.2.7.1/phatch/pyWx/wxGlade/dialogs.py +@@ -65,7 +65,7 @@ class FolderFileBrowser(ffb.PreviewMixin + class ImageTreeDialog(wx.Dialog): + def __init__(self, data, Data, headers, *args, **kwds): + # begin wxGlade: ImageTreeDialog.__init__ +- kwds["style"] = wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.THICK_FRAME ++ kwds["style"] = wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX + wx.Dialog.__init__(self, *args, **kwds) + self.panel = wx.Panel(self, -1) + self.browser = FolderFileBrowser(self.panel, -1, data, Data, headers) +@@ -232,7 +232,7 @@ class ErrorDialog(wx.Dialog): + class FilesDialog(wx.Dialog): + def __init__(self, *args, **kwds): + # begin wxGlade: FilesDialog.__init__ +- kwds["style"] = wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX|wx.THICK_FRAME ++ kwds["style"] = wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.MAXIMIZE_BOX + wx.Dialog.__init__(self, *args, **kwds) + self.icon = wx.StaticBitmap(self, -1, wx.NullBitmap) + self.message = wx.StaticText(self, -1, _("Message")) +@@ -369,7 +369,6 @@ if __name__ == "__main__": + gettext.install("app") # replace with the appropriate catalog name + + app = wx.PySimpleApp(0) +- wx.InitAllImageHandlers() + aboutDialog = StatusDialog(None, -1, "") + app.SetTopWindow(aboutDialog) + aboutDialog.Show() +--- phatch-0.2.7.1.orig/phatch/pyWx/wxGlade/frame.py ++++ phatch-0.2.7.1/phatch/pyWx/wxGlade/frame.py +@@ -383,7 +383,6 @@ class Frame(wx.Frame): + + class App(wx.App): + def OnInit(self): +- wx.InitAllImageHandlers() + frame = Frame(None, -1, "") + self.SetTopWindow(frame) + frame.Show()