Deprecate and ignore newlinestr

This commit is contained in:
Khaled Hosny 2021-07-30 04:27:02 +02:00
parent 000bf81700
commit 5af178ac8e
5 changed files with 11 additions and 10 deletions

View File

@ -4,6 +4,7 @@ from fontTools.misc.py23 import byteord, strjoin, tobytes, tostr
import sys import sys
import os import os
import string import string
import warnings
INDENT = " " INDENT = " "
@ -37,10 +38,12 @@ class XMLWriter(object):
self.file.write('') self.file.write('')
self.totype = tostr self.totype = tostr
self.indentwhite = self.totype(indentwhite) self.indentwhite = self.totype(indentwhite)
if newlinestr is None: if newlinestr != "\n":
self.newlinestr = self.totype(os.linesep) warnings.warn(
else: 'Setting "newlinestr" is deprecated and will be ignored.',
self.newlinestr = self.totype(newlinestr) DeprecationWarning,
)
self.newlinestr = self.totype("\n")
self.indentlevel = 0 self.indentlevel = 0
self.stack = [] self.stack = []
self.needindent = 1 self.needindent = 1

View File

@ -159,8 +159,7 @@ class table__g_l_y_f(DefaultTable.DefaultTable):
suffix=ext) suffix=ext)
existingGlyphFiles.add(glyphPath.lower()) existingGlyphFiles.add(glyphPath.lower())
glyphWriter = xmlWriter.XMLWriter( glyphWriter = xmlWriter.XMLWriter(
glyphPath, idlefunc=writer.idlefunc, glyphPath, idlefunc=writer.idlefunc)
newlinestr=writer.newlinestr)
glyphWriter.begintag("ttFont", ttLibVersion=version) glyphWriter.begintag("ttFont", ttLibVersion=version)
glyphWriter.newline() glyphWriter.newline()
glyphWriter.begintag("glyf") glyphWriter.begintag("glyf")

View File

@ -271,8 +271,7 @@ class TTFont(object):
tag = tables[i] tag = tables[i]
if splitTables: if splitTables:
tablePath = fileNameTemplate % tagToIdentifier(tag) tablePath = fileNameTemplate % tagToIdentifier(tag)
tableWriter = xmlWriter.XMLWriter(tablePath, tableWriter = xmlWriter.XMLWriter(tablePath)
newlinestr=writer.newlinestr)
tableWriter.begintag("ttFont", ttLibVersion=version) tableWriter.begintag("ttFont", ttLibVersion=version)
tableWriter.newline() tableWriter.newline()
tableWriter.newline() tableWriter.newline()

View File

@ -115,7 +115,7 @@ class TestXMLWriter(unittest.TestCase):
writer.write("world") writer.write("world")
writer.newline() writer.newline()
linesep = tobytes(os.linesep) if nls is None else tobytes(nls) linesep = tobytes('\n')
self.assertEqual( self.assertEqual(
header + linesep + b"hello" + linesep + b"world" + linesep, header + linesep + b"hello" + linesep + b"world" + linesep,

View File

@ -354,7 +354,7 @@ class NameRecordTest(unittest.TestCase):
writer = XMLWriter(BytesIO()) writer = XMLWriter(BytesIO())
name.toXML(writer, ttFont=None) name.toXML(writer, ttFont=None)
xml = writer.file.getvalue().decode("utf_8").strip() xml = writer.file.getvalue().decode("utf_8").strip()
return xml.split(writer.newlinestr.decode("utf_8"))[1:] return xml.split("\n")[1:]
def test_toXML_utf16be(self): def test_toXML_utf16be(self):
name = makeName("Foo Bold", 111, 0, 2, 7) name = makeName("Foo Bold", 111, 0, 2, 7)