Patch #1647484: Renamed GzipFile's filename attribute to name. The · python/cpython@5b1a785 (original) (raw)
`@@ -106,7 +106,7 @@ def init(self, filename=None, mode=None,
`
106
106
`self._new_member = True
`
107
107
`self.extrabuf = ""
`
108
108
`self.extrasize = 0
`
109
``
`-
self.filename = filename
`
``
109
`+
self.name = filename
`
110
110
`# Starts small, scales exponentially
`
111
111
`self.min_readsize = 100
`
112
112
``
`@@ -127,14 +127,20 @@ def init(self, filename=None, mode=None,
`
127
127
`if self.mode == WRITE:
`
128
128
`self._write_gzip_header()
`
129
129
``
``
130
`+
@property
`
``
131
`+
def filename(self):
`
``
132
`+
import warnings
`
``
133
`+
warnings.warn("use the name attribute", DeprecationWarning)
`
``
134
`+
if self.mode == WRITE and self.name[-3:] != ".gz":
`
``
135
`+
return self.name + ".gz"
`
``
136
`+
return self.name
`
``
137
+
130
138
`def repr(self):
`
131
139
`s = repr(self.fileobj)
`
132
140
`return '<gzip ' + s[1:-1] + ' ' + hex(id(self)) + '>'
`
133
141
``
134
142
`def _init_write(self, filename):
`
135
``
`-
if filename[-3:] != '.gz':
`
136
``
`-
filename = filename + '.gz'
`
137
``
`-
self.filename = filename
`
``
143
`+
self.name = filename
`
138
144
`self.crc = zlib.crc32("")
`
139
145
`self.size = 0
`
140
146
`self.writebuf = []
`
`@@ -143,16 +149,15 @@ def _init_write(self, filename):
`
143
149
`def _write_gzip_header(self):
`
144
150
`self.fileobj.write('\037\213') # magic header
`
145
151
`self.fileobj.write('\010') # compression method
`
146
``
`-
fname = self.filename[:-3]
`
147
152
`flags = 0
`
148
``
`-
if fname:
`
``
153
`+
if self.name:
`
149
154
`flags = FNAME
`
150
155
`self.fileobj.write(chr(flags))
`
151
156
`write32u(self.fileobj, long(time.time()))
`
152
157
`self.fileobj.write('\002')
`
153
158
`self.fileobj.write('\377')
`
154
``
`-
if fname:
`
155
``
`-
self.fileobj.write(fname + '\000')
`
``
159
`+
if self.name:
`
``
160
`+
self.fileobj.write(self.name + '\000')
`
156
161
``
157
162
`def _init_read(self):
`
158
163
`self.crc = zlib.crc32("")
`