[gutenprint] More Python 3 fixes for scripts (bug #1134092).
Tim Waugh
twaugh at fedoraproject.org
Fri Aug 29 13:27:50 UTC 2014
commit e67195d0fcb6289bd574add07a3870c147ae5f3e
Author: Tim Waugh <twaugh at redhat.com>
Date: Fri Aug 29 13:31:36 2014 +0100
More Python 3 fixes for scripts (bug #1134092).
cups-genppdupdate.py.in | 22 +++++++++++++---------
gutenprint-foomaticppdupdate | 8 ++++----
gutenprint.spec | 5 ++++-
3 files changed, 21 insertions(+), 14 deletions(-)
---
diff --git a/cups-genppdupdate.py.in b/cups-genppdupdate.py.in
index 1a4c5ce..513eddf 100755
--- a/cups-genppdupdate.py.in
+++ b/cups-genppdupdate.py.in
@@ -111,6 +111,9 @@ def get_driver_version():
except OSError:
return None
+ if stdout != None:
+ stdout = stdout.decode ()
+
return stdout
stdout = run_with_arg ("org.gutenprint.extensions")
@@ -268,7 +271,7 @@ def update_ppd (ppd_source_filename):
ppd_dest_filename = "%s/%s" % (ppd_out_dir,
os.path.basename (ppd_dest_filename))
- orig = io.FileIO (ppd_source_filename)
+ orig = open (ppd_source_filename, encoding="utf-8")
orig_metadata = os.fstat (orig.fileno ())
if debug & 1:
print ("Source Filename: %s" % ppd_source_filename)
@@ -596,7 +599,7 @@ def update_ppd (ppd_source_filename):
# Write new PPD...
tmpnew = "%s.new" % ppd_dest_filename
try:
- newppd = io.FileIO (tmpnew, "w")
+ newppd = open (tmpnew, "w")
except IOError as err:
(e, s) = err.args
print ("Can't create %s: %s" % (tmpnew, s))
@@ -774,10 +777,11 @@ def get_ppd_fh (ppd_source_filename, filename, driver, locale, region):
stderr=subprocess.DEVNULL)
server_multicat_initialized = mc_proc
- print ("%s" % url, file=server_multicat_initialized.stdin)
- server_multicat_initialized.stdin.flush ()
+ mc_in = io.TextIOWrapper (server_multicat_initialized.stdin)
+ print ("%s" % url, file=mc_in)
+ mc_in.flush ()
return (new_ppd_filename,
- server_multicat_initialized.stdout)
+ io.TextIOWrapper (server_multicat_initialized.stdout))
except OSError:
pass
@@ -787,7 +791,7 @@ def get_ppd_fh (ppd_source_filename, filename, driver, locale, region):
stdin=subprocess.DEVNULL,
stdout=subprocess.PIPE,
stderr=subprocess.DEVNULL)
- return (new_ppd_filename, proc.stdout)
+ return (new_ppd_filename, io.TextIOWrapper (proc.stdout))
except OSError:
pass
@@ -821,9 +825,9 @@ def get_ppd_fh (ppd_source_filename, filename, driver, locale, region):
print ("can't open for decompression: %s" % s)
sys.exit (1)
- return (new_ppd_filename, proc.stdout)
+ return (new_ppd_filename, io.TextIOWrapper (proc.stdout))
else:
- return (new_ppd_filename, io.FileIO (new_ppd_filename))
+ return (new_ppd_filename, open (new_ppd_filename))
def find_ppd (gutenprintfilename, drivername, lang, region):
global file_version
@@ -909,7 +913,7 @@ def find_ppd (gutenprintfilename, drivername, lang, region):
new_file_version = ""
else:
(stdin, stderr) = p.communicate ()
- new_file_version = stdin.rstrip ()
+ new_file_version = stdin.decode ().rstrip ()
if new_file_version != "":
if debug & 8:
diff --git a/gutenprint-foomaticppdupdate b/gutenprint-foomaticppdupdate
index 5e35ee0..b6f4a13 100644
--- a/gutenprint-foomaticppdupdate
+++ b/gutenprint-foomaticppdupdate
@@ -24,7 +24,6 @@
import sys
import glob
-import io
import os
import subprocess
import tempfile
@@ -46,7 +45,8 @@ def generate_ppd (ppdfile, printer, driver):
(ppd, stderr) = p.communicate ()
fname = ppdfile + ".tmp"
try:
- io.FileIO (fname, "w").write (ppd)
+ with open (fname, "w") as f:
+ f.write (ppd)
except IOError as e:
print (e)
raise
@@ -129,8 +129,8 @@ def update_ppdfile (ppdfile):
if ps:
update_options ([ps], genppd, ppd)
- f = io.FileIO (ppdfile, "w")
- genppd.writeFd (f.fileno ())
+ with open (ppdfile, "w") as f:
+ genppd.writeFd (f.fileno ())
print ("Updated PPD file %s" % ppdfile)
for ppdfile in glob.glob ("/etc/cups/ppd/*.ppd"):
diff --git a/gutenprint.spec b/gutenprint.spec
index 6a348de..2fe1a0d 100644
--- a/gutenprint.spec
+++ b/gutenprint.spec
@@ -3,7 +3,7 @@
Name: gutenprint
Summary: Printer Drivers Package
Version: 5.2.10
-Release: 7%{?dist}
+Release: 8%{?dist}
URL: http://gimp-print.sourceforge.net/
Source0: http://downloads.sourceforge.net/gimp-print/%{name}-%{version}.tar.bz2
# Post-install script to update foomatic PPDs.
@@ -281,6 +281,9 @@ fi
/bin/rm -f /var/cache/foomatic/*
%changelog
+* Fri Aug 29 2014 Tim Waugh <twaugh at redhat.com> - 5.2.10-8
+- More Python 3 fixes for scripts (bug #1134092).
+
* Fri Aug 22 2014 Tim Waugh <twaugh at redhat.com> - 5.2.10-7
- Python 3 fixes for scripts (bug #1132924).
More information about the scm-commits
mailing list